bsd.x11.mk revision 1.8 1 # $NetBSD: bsd.x11.mk,v 1.8 2003/11/17 05:14:21 lukem Exp $
2
3 .include <bsd.init.mk>
4
5
6 BINDIR= ${X11BINDIR}
7 LIBDIR= ${X11USRLIBDIR}
8 MANDIR= ${X11MANDIR}
9
10
11 X11FLAGS.VERSION= -DOSMAJORVERSION=1 -DOSMINORVERSION=6 # XXX
12
13 # THREADS_DEFINES
14 X11FLAGS.THREADS= -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_API \
15 -DXNO_MTSAFE_PWDAPI
16
17 # THREADS_DEFINES for libraries
18 X11FLAGS.THREADLIB= ${X11FLAGS.THREADS} -DUSE_NBSD_THREADLIB
19
20 # CONNECTION_FLAGS
21 X11FLAGS.CONNECTION= -DTCPCONN -DUNIXCONN -DHAS_STICKY_DIR_BIT -DHAS_FCHOWN
22
23 # EXT_DEFINES
24 X11FLAGS.EXTENSION= -DMITMISC -DXTEST -DXTRAP -DXSYNC -DXCMISC -DXRECORD \
25 -DMITSHM -DBIGREQS -DXF86VIDMODE -DXF86MISC -DDBE \
26 -DDPMSExtension -DEVI -DSCREENSAVER -DXV -DXVMC \
27 -DGLXEXT -DGLX_USE_MESA -DFONTCACHE -DRES
28
29 # ServerDefines
30 X11FLAGS.SERVER= -DSHAPE -DXINPUT -DXKB -DLBX -DXAPPGROUP -DXCSECURITY \
31 -DTOGCUP -DXF86BIGFONT -DDPMSExtension -DPIXPRIV \
32 -DPANORAMIX -DRENDER -DRANDR -DGCCUSESGAS \
33 -DAVOID_GLYPHBLT -DPIXPRIV -DSINGLEDEPTH -DXFreeXDGA \
34 -DXvExtension -DXFree86LOADER -DXFree86Server \
35 -DXF86VIDMODE -DXvMCExtension -DSMART_SCHEDULE \
36 -DBUILDDEBUG -DXResExtension -DNDEBUG -DX_BYTE_ORDER=0
37
38 # OS_DEFINES
39 X11FLAGS.OS_DEFINES= -DDDXOSINIT -DSERVER_LOCK -DDDXOSFATALERROR \
40 -DDDXOSVERRORF -DDDXTIME
41
42
43 # Commandline to convert 'XCOMM' comments to #
44 #
45 X11TOOL_UNXCOMM= sed -e '/^\# *[0-9][0-9]* *.*$$/d' \
46 -e '/^XCOMM$$/s//\#/' \
47 -e '/^XCOMM[^a-zA-Z0-9_]/s/^XCOMM/\#/'
48
49
50 CPPFLAGS+= -DCSRG_BASED -DFUNCPROTO=15 -DNARROWPROTO
51 CPPFLAGS+= -I${DESTDIR}${X11INCDIR}
52
53 LDFLAGS+= -Wl,-rpath-link,${DESTDIR}${X11USRLIBDIR} \
54 -R${X11USRLIBDIR} \
55 -L${DESTDIR}${X11USRLIBDIR}
56
57
58 #
59 # .cpp -> "" handling
60 # CPPSCRIPTS list of files/scripts to run through cpp
61 # CPPSCRIPTFLAGS extra flags to ${CPP}
62 # CPPSCRIPTFLAGS_fn extra flags to ${CPP} for file `fn'
63 #
64 .if defined(CPPSCRIPTS) # {
65 .SUFFIXES: .cpp
66
67 .cpp:
68 ${_MKTARGET_CREATE}
69 rm -f ${.TARGET}
70 ${CPP} -undef -traditional \
71 ${CPPSCRIPTFLAGS_${.TARGET}:U${CPPSCRIPTFLAGS}} \
72 < ${.IMPSRC} | ${X11TOOL_UNXCOMM} > ${.TARGET}
73
74 realall: ${CPPSCRIPTS}
75
76 clean: cleancppscripts
77 cleancppscripts:
78 rm -f ${CPPSCRIPTS}
79 .endif # }
80
81
82 #
83 # APPDEFS (app defaults) handling
84 #
85 .if defined(APPDEFS) # {
86 appdefsinstall:: ${APPDEFS:@S@${DESTDIR}${X11LIBDIR}/app-defaults/${S:T:R}@}
87 .PRECIOUS: ${APPDEFS:@S@${DESTDIR}${X11LIBDIR}/app-defaults/${S:T:R}@}
88
89 __appdefinstall: .USE
90 ${INSTALL_FILE} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
91 ${SYSPKGTAG} ${.ALLSRC} ${.TARGET}
92
93 .for S in ${APPDEFS:O:u}
94 ${DESTDIR}${X11LIBDIR}/app-defaults/${S:T:R}: ${S} __appdefinstall
95 .endfor
96
97 realinstall: appdefsinstall
98 .endif # }
99
100
101 #
102 # .man page handling
103 #
104 .if (${MKMAN} != "no" && (${MAN:U} != "" || ${PROG:U} != "")) # {
105 cleandir: cleanx11man
106 cleanx11man:
107 rm -f ${MAN:U${PROG:D${PROG.1}}}
108 .endif # }
109
110 .SUFFIXES: .man .1 .3 .7
111
112 .man.1 .man.3 .man.7:
113 ${_MKTARGET_CREATE}
114 rm -f ${.TARGET}
115 ${CPP} -undef -traditional \
116 -D__apploaddir__=${X11ROOTDIR}/lib/X11/app-defaults \
117 -D__filemansuffix__=5 -D__libmansuffix__=3 \
118 -D__miscmansuffix__=7 -D__drivermansuffix__=4 \
119 -D__projectroot__=${X11ROOTDIR} \
120 -D__xorgversion__='"Release 6.6" "X Version 11"' \
121 -D__vendorversion__="XFree86 4.3.0-imakeicideII" \
122 ${X11EXTRAMANDEFS} \
123 < ${.IMPSRC} | ${X11TOOL_UNXCOMM} > ${.TARGET}
124