aboutsummaryrefslogtreecommitdiff
path: root/x11-servers/xorg-server/Makefile.inc
blob: 79a81701d363456eae4c91d8cb4f97db956b6322 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# Include before bsd.port.pre.mk for XFree86-4 ports which share 
# XFree86-4-libraries's patches.
# The purpose of this file is to reduce the duplicated code among the XFree86-4
# ports which each do only part of a standard XFree86 build.
#
# XBUILD_DIRS is the group of directories under ${WRKSRC} that will 
#   be built in.
# XINCLUDE_DIRS is the group of directories under ${WRKSRC} that need
#   to be Makefilesed or included in besides XBUILD_DIRS
# XINSTALL_DIRS is the group of directories which will have 
#   their install targets run.
# XMAN_DIRS is the group of directories which will have 
#   their install.man targets run.

DIST_SUBDIR?=	xorg
WRKSRC?=	${WRKDIR}/xc
USE_X_PREFIX?=	no
PREFIX?=	${X11BASE}

USE_IMAKE=	YES
.if defined(XMAN_DIRS)
XFREE86_HTML_MAN?=	yes
.else
XFREE86_HTML_MAN?=	no
.endif
SCRIPTS_ENV+=	CC="${CC}" \
		CXX="${CXX}" \
		CFLAGS="${CFLAGS}" \
		PTHREAD_LIBS="${PTHREAD_LIBS}" \
		PTHREAD_CFLAGS="${PTHREAD_CFLAGS}"

XINSTALL_DIRS?=	${XBUILD_DIRS}
_XINCLUDE_DIRS=	include ${XBUILD_DIRS} ${XINCLUDE_DIRS}

CF_PATCHES=	${PORTSDIR}/x11-servers/xorg-server/files/patch-FreeBSD.cf \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-Imake.rules \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-Imake.tmpl \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-Library.tmpl \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-X11.rules \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-X11.tmpl

SERVER_PATCHES=	${PORTSDIR}/x11-servers/xorg-server/files/patch-Xserver-Imakefile \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-alpha_video.c \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-bus-Imakefile \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-fb-renderfixes.diff \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-kernel-Imakefile \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-loadmod.c \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-man-Imakefile \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-os-Imakefile \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-savage-pci-id \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-xf86Events.c \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-xf86fbman.c \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-xf86sym.c \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-xf86drmCompat.c \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-xkbout.c \
		${PORTSDIR}/x11-servers/xorg-server/files/patch-xorgconfig.c

.if !target(do-configure)
do-configure:
	@cp ${X11BASE}/lib/X11/config/version.def ${WRKSRC}/config/cf
	@cp ${X11BASE}/lib/X11/config/date.def ${WRKSRC}/config/cf
	@cd ${.CURDIR} && ${SETENV} ${SCRIPTS_ENV} ${SH} ${SCRIPTDIR}/configure
	@cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE} Makefile.boot
	@for dir in ${_XINCLUDE_DIRS}; do \
		cd ${WRKSRC}/$${dir} && ${WRKSRC}/config/imake/imake \
			-DTOPDIR=${WRKSRC} -DCURDIR=$${dir} -I${WRKSRC}/config/cf; \
	done
	@for dir in ${_XINCLUDE_DIRS}; do \
		cd ${WRKSRC}/$${dir} && ${SETENV} ${MAKE_ENV} ${MAKE} Makefiles; \
	done
	@for dir in ${_XINCLUDE_DIRS}; do \
		cd ${WRKSRC}/$${dir} && ${SETENV} ${MAKE_ENV} ${MAKE} includes; \
	done
	@for dir in include ${XBUILD_DIRS}; do \
		cd ${WRKSRC}/$${dir} && ${SETENV} ${MAKE_ENV} ${MAKE} depend; \
	done
.endif

.if !target(do-build)
do-build:
	@for dir in ${XBUILD_DIRS}; do \
		cd ${WRKSRC}/$${dir} && ${SETENV} ${MAKE_ENV} ${MAKE} all; \
	done
.endif

.if !target(do-install)
do-install:
	@for dir in ${XINSTALL_DIRS}; do \
		cd ${WRKSRC}/$${dir} && ${SETENV} ${MAKE_ENV} ${MAKE} install; \
	done
	@for dir in ${XMAN_DIRS}; do \
		cd ${WRKSRC}/$${dir} && ${SETENV} ${MAKE_ENV} ${MAKE} install.man; \
	done
	@${MKHTMLINDEX} ${PREFIX}/lib/X11/doc/html
.endif