aboutsummaryrefslogtreecommitdiff
path: root/x11/XFree86-4/Makefile
blob: 890a66127a183e68d5738d8acd2ad8d04877a30e (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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
# New ports collection makefile for:    XFree86
# Date created:         5 January 1995
# Whom:                 jmz
#
# $FreeBSD$
#

PORTNAME=	XFree86
PORTVERSION=	4.0.3
PORTREVISION=	1
CATEGORIES=	x11
MASTER_SITES=	${MASTER_SITE_XFREE}
MASTER_SITE_SUBDIR=	4.0.2
DISTFILES=	X402src-1.tgz X402src-2.tgz
PATCH_SITES=	${MASTER_SITE_XFREE:S,%SUBDIR%/source,4.0.3/patches,g}
PATCHFILES=	4.0.2-4.0.3.diff.gz
EXTRACT_ONLY=	X402src-1.tgz X402src-2.tgz
MAINTAINER=	jmz@FreeBSD.org

WRKSRC=		${WRKDIR}/${DIST_SUBDIR}
.if (${MACHINE} != "alpha")
#NO_PACKAGE=	package available from XFree86
.endif
ALL_TARGET=	World
INSTALL_TARGET=	install install.man
DIST_SUBDIR=	xc
PATCH_DIST_ARGS=-p0 -E -d ${WRKDIR} --quiet
SCRIPTS_ENV=	OSVERSION=${OSVERSION}
MTREE_FILE=	/etc/mtree/BSD.x11-4.dist
.ifdef DISTRIB
DESTDIR=	${WRKDIR}/distrib
MAKE_ENV+=	DESTDIR=${DESTDIR}
MAKE_ARGS=	WORLDOPTS=
NO_PKG_REGISTER=yes
SCRIPTS_ENV+=	NO_INPUT=yes
.endif
# can't use USE_X_PREFIX here -- it will cause a circular dependency
PREFIX=		${X11BASE}
.if defined(DISTRIB) || defined(PACKAGE_BUILDING)
#IS_INTERACTIVE is boolean -- "no" is the same as defining it "yes"!
#IS_INTERACTIVE=	no
.else
IS_INTERACTIVE=	yes	# configure script asks questions
.endif
MTREE_FILE=	/etc/mtree/BSD.x11-4.dist
.if (${MACHINE} == "pc98")
SCRIPTS_ENV+=	MACHINE=pc98
PLIST=		${PKGDIR}/pkg-plist.pc98
.endif
.if (${MACHINE} == "alpha")
SCRIPTS_ENV+=	MACHINE=alpha
PLIST=		${PKGDIR}/pkg-plist.alpha
.endif

pre-configure:
	@if ${ECHO} "$(CFLAGS)" |${GREP} -q O[3456789]; then \
		${ECHO} "XFree86-4 with thread support does not build with optimization"; \
		${ECHO} "flags different from O or -O2"; \
		${FALSE}; fi

.if defined(XDM_DES) && (${USA_RESIDENT} != YES && ${USA_RESIDENT} != NO)
pre-fetch:
	@${ECHO}
	@${ECHO} You must set variable USA_RESIDENT to YES or NO.
	@${FALSE}
.elif defined(USA_RESIDENT)
.if ${USA_RESIDENT} == NO
pre-fetch:
.ifndef WITH_MATROX_GXX_DRIVER
	@${ECHO} Define WITH_MATROX_GXX_DRIVER if you want to enable Matrox driver for 
	@${ECHO} G200, G400 and G450 graphic adapters
.endif
MASTER_SITES+=	ftp://psych.psy.uq.oz.au/pub/X11R5/ \
		ftp://ftp.internat.freebsd.org/pub/FreeBSD/X11-Crypto/ \
		ftp://ftp3.za.freebsd.org/pub/FreeBSD/X11-Crypto/
DISTFILES+=	Wraphelp.c
IGNOREFILES=	Wraphelp.c
.else # ${USA_RESIDENT} == YES
pre-fetch:
	@${ECHO}
	@${ECHO} Assuming that you have fetched a USA-Legal Wraphelp.c.
.ifndef WITH_MATROX_GXX_DRIVER
	@${ECHO} Define WITH_MATROX_GXX_DRIVER if you want to enable Matrox driver for 
	@${ECHO} G200, G400 and G450 graphic adapters
.endif
.endif # ${USA_RESIDENT}
.endif

.include <bsd.port.pre.mk>

.if ${OSVERSION} < 410000
BROKEN=	"can't be compiled on this system (missing headers)"
.endif

.if defined(WITH_MATROX_GXX_DRIVER)
MGA_DRIVER_VERSION=	1_01_05beta
MASTER_SITES+=	ftp://ftp.matrox.com/pub/mga/archive/linux/2001/beta_${MGA_DRIVER_VERSION:S/beta//}/
DISTFILES+=	mga-${MGA_DRIVER_VERSION}.tgz
.endif # WITH_MATROX_GXX_DRIVER

.if ${OSVERSION} > 500012
post-patch:
	@if [ ! -e ${WRKSRC}/include/Xarch.h.orig ]; then\
	  mv ${WRKSRC}/include/Xarch.h ${WRKSRC}/include/Xarch.h.orig;\
	  ${SED} -e 52d -e 54d < ${WRKSRC}/include/Xarch.h.orig > \
	  ${WRKSRC}/include/Xarch.h; fi
.endif # ${OSVERSION} > 500012
.if defined(WITH_MATROX_GXX_DRIVER)
.if !target(post-patch)
post-patch:
.endif # !target(post-patch)
	@${MV} ${WRKSRC}/programs/Xserver/hw/xfree86/drivers/mga \
		${WRKSRC}/programs/Xserver/hw/xfree86/drivers/mga.old
	@${TAR} -xzf ${DISTDIR}/${DIST_SUBDIR}/mga-${MGA_DRIVER_VERSION}.tgz \
		-C ${WRKSRC}/programs/Xserver/hw/xfree86/drivers
	@${CP} ${WRKSRC}/config/cf/xf86site.def ${WRKSRC}/config/cf/host.def
	@${ECHO} "#define HaveMatroxHal YES" >> ${WRKSRC}/config/cf/host.def
.endif # WITH_MATROX_GXX_DRIVER

pre-install:
	${MKDIR} ${PREFIX}

post-install:
.ifndef DISTRIB
	${SETENV} OBJFORMAT=${PORTOBJFORMAT} ${LDCONFIG} -m ${PREFIX}/lib
.endif
	@${CAT} ${PKGMESSAGE}

.ifdef DISTRIB
distrib: all install
	@cd ../XFree86-contrib && \
	    ${MAKE} NO_PKG_REGISTER=yes WRKDIR=${WRKDIR}/contrib-work \
	    PREFIX=${X11BASE} PREFIX=${DESTDIR}/${PREFIX} all install
	@${MKDIR} ${WRKDIR}/bindist
	@${CP} ${WRKSRC}/programs/Xserver/hw/xfree86/etc/bindist/FreeBSD-ELF/* \
	    ${WRKDIR}/bindist
	@${SED} -e 's:TAR="gnu-tar":TAR="${TAR}":g' \
	    -e 's/EXTRACTLOPTS="-t -v"/TARLOPTS="-t -v -z"/g' \
	    -e 's/\(#\)\(      echo $$i >> $$LISTFILE\)/\2/g' \
	    -e 's/\(#\)\(      echo "------------" >> $$LISTFILE\)/\2/g' \
	    -e 's/\(#\)\(      $$TAR $$TARLOPTS -f $$i >> $$LISTFILE\)/\2/g' \
	    -e 's/\(#\)\(      echo "" >> $$LISTFILE\)/\2/g' \
	    -e 's/\(      $$EXTRACT $$EXTRACTLOPTS $$i >> $$LISTFILE\)/#\1/g' \
	    < ${WRKSRC}/programs/Xserver/hw/xfree86/etc/bindist/build-bindist \
	    > ${WRKDIR}/build-bindist
	@${CHMOD} 0555 ${WRKDIR}/build-bindist
	@${WRKDIR}/build-bindist X ${WRKDIR}/distrib ${WRKDIR}/bindist
.else
distrib:
	@${ECHO_MSG} '>> The DISTRIB variable must be set when building ' \
	    '"distrib".'
	@exit 1
.endif

.include <bsd.port.post.mk>