bsd.own.mk revision 246131
1193326Sed# $FreeBSD: head/share/mk/bsd.own.mk 246131 2013-01-30 19:51:16Z dim $
2193326Sed#
3193326Sed# The include file <bsd.own.mk> set common variables for owner,
4193326Sed# group, mode, and directories. Defaults are in brackets.
5193326Sed#
6193326Sed#
7193326Sed# +++ variables +++
8193326Sed#
9193326Sed# DESTDIR	Change the tree where the file gets installed. [not set]
10193326Sed#
11193326Sed# DISTDIR	Change the tree where the file for a distribution
12193326Sed# 		gets installed (see /usr/src/release/Makefile). [not set]
13193326Sed#
14249423Sdim# COMPRESS_CMD	Program to compress documents.
15207619Srdivacky#		Output is to stdout. [gzip -cn]
16243830Sdim#
17193326Sed# COMPRESS_EXT	File name extension of ${COMPRESS_CMD} command. [.gz]
18207619Srdivacky#
19234353Sdim# BINOWN	Binary owner. [root]
20243830Sdim#
21249423Sdim# BINGRP	Binary group. [wheel]
22198398Srdivacky#
23221345Sdim# BINMODE	Binary mode. [555]
24193326Sed#
25193326Sed# NOBINMODE	Mode for non-executable files. [444]
26226633Sdim#
27193326Sed# LIBDIR	Base path for libraries. [/usr/lib]
28193326Sed#
29226633Sdim# LIBCOMPATDIR	Base path for compat libraries. [/usr/lib/compat]
30198398Srdivacky#
31226633Sdim# LIBDATADIR	Base path for misc. utility data files. [/usr/libdata]
32224145Sdim#
33234353Sdim# LIBEXECDIR	Base path for system daemons and utilities. [/usr/libexec]
34193326Sed#
35193326Sed# LINTLIBDIR	Base path for lint libraries. [/usr/libdata/lint]
36193326Sed#
37193326Sed# SHLIBDIR	Base path for shared libraries. [${LIBDIR}]
38193326Sed#
39226633Sdim# LIBOWN	Library owner. [${BINOWN}]
40234353Sdim#
41243830Sdim# LIBGRP	Library group. [${BINGRP}]
42226633Sdim#
43243830Sdim# LIBMODE	Library mode. [${NOBINMODE}]
44243830Sdim#
45212904Sdim#
46212904Sdim# KMODDIR	Base path for loadable kernel modules
47212904Sdim#		(see kld(4)). [/boot/kernel]
48193326Sed#
49193326Sed# KMODOWN	Kernel and KLD owner. [${BINOWN}]
50193326Sed#
51226633Sdim# KMODGRP	Kernel and KLD group. [${BINGRP}]
52201361Srdivacky#
53193326Sed# KMODMODE	KLD mode. [${BINMODE}]
54198092Srdivacky#
55239462Sdim#
56239462Sdim# SHAREDIR	Base path for architecture-independent ascii
57239462Sdim#		text files. [/usr/share]
58210299Sed#
59193326Sed# SHAREOWN	ASCII text file owner. [root]
60198092Srdivacky#
61207619Srdivacky# SHAREGRP	ASCII text file group. [wheel]
62207619Srdivacky#
63234353Sdim# SHAREMODE	ASCII text file mode. [${NOBINMODE}]
64198092Srdivacky#
65212904Sdim#
66193326Sed# CONFDIR	Base path for configuration files. [/etc]
67193326Sed#
68226633Sdim# CONFOWN	Configuration file owner. [root]
69218893Sdim#
70218893Sdim# CONFGRP	Configuration file group. [wheel]
71193326Sed#
72193326Sed# CONFMODE	Configuration file mode. [644]
73226633Sdim#
74226633Sdim#
75218893Sdim# DOCDIR	Base path for system documentation (e.g. PSD, USD,
76218893Sdim#		handbook, FAQ etc.). [${SHAREDIR}/doc]
77218893Sdim#
78218893Sdim# DOCOWN	Documentation owner. [${SHAREOWN}]
79218893Sdim#
80218893Sdim# DOCGRP	Documentation group. [${SHAREGRP}]
81198092Srdivacky#
82226633Sdim# DOCMODE	Documentation mode. [${NOBINMODE}]
83218893Sdim#
84198092Srdivacky#
85198092Srdivacky# INFODIR	Base path for GNU's hypertext system
86226633Sdim#		called Info (see info(1)). [${SHAREDIR}/info]
87218893Sdim#
88198092Srdivacky# INFOOWN	Info owner. [${SHAREOWN}]
89198092Srdivacky#
90218893Sdim# INFOGRP	Info group. [${SHAREGRP}]
91218893Sdim#
92218893Sdim# INFOMODE	Info mode. [${NOBINMODE}]
93218893Sdim#
94218893Sdim#
95198092Srdivacky# MANDIR	Base path for manual installation. [${SHAREDIR}/man/man]
96198092Srdivacky#
97198092Srdivacky# MANOWN	Manual owner. [${SHAREOWN}]
98226633Sdim#
99212904Sdim# MANGRP	Manual group. [${SHAREGRP}]
100249423Sdim#
101212904Sdim# MANMODE	Manual mode. [${NOBINMODE}]
102224145Sdim#
103212904Sdim#
104212904Sdim# NLSDIR	Base path for National Language Support files
105212904Sdim#		installation. [${SHAREDIR}/nls]
106212904Sdim#
107226633Sdim# NLSOWN	National Language Support files owner. [${SHAREOWN}]
108226633Sdim#
109224145Sdim# NLSGRP	National Language Support files group. [${SHAREGRP}]
110212904Sdim#
111249423Sdim# NLSMODE	National Language Support files mode. [${NOBINMODE}]
112212904Sdim#
113221345Sdim# INCLUDEDIR	Base path for standard C include files [/usr/include]
114221345Sdim
115221345Sdim.if !target(__<bsd.own.mk>__)
116221345Sdim__<bsd.own.mk>__:
117221345Sdim
118221345Sdim.if !defined(_WITHOUT_SRCCONF)
119221345SdimSRCCONF?=	/etc/src.conf
120221345Sdim.if exists(${SRCCONF})
121221345Sdim.include "${SRCCONF}"
122239462Sdim.endif
123212904Sdim.endif
124193326Sed
125226633Sdim# Binaries
126234353SdimBINOWN?=	root
127206084SrdivackyBINGRP?=	wheel
128206084SrdivackyBINMODE?=	555
129206084SrdivackyNOBINMODE?=	444
130206084Srdivacky
131206084Srdivacky.if defined(MODULES_WITH_WORLD)
132206084SrdivackyKMODDIR?=	/boot/modules
133206084Srdivacky.else
134206084SrdivackyKMODDIR?=	/boot/kernel
135226633Sdim.endif
136206084SrdivackyKMODOWN?=	${BINOWN}
137206084SrdivackyKMODGRP?=	${BINGRP}
138206084SrdivackyKMODMODE?=	${BINMODE}
139206084Srdivacky
140206084SrdivackyLIBDIR?=	/usr/lib
141206084SrdivackyLIBCOMPATDIR?=	/usr/lib/compat
142226633SdimLIBDATADIR?=	/usr/libdata
143226633SdimLIBEXECDIR?=	/usr/libexec
144218893SdimLINTLIBDIR?=	/usr/libdata/lint
145218893SdimSHLIBDIR?=	${LIBDIR}
146218893SdimLIBOWN?=	${BINOWN}
147198092SrdivackyLIBGRP?=	${BINGRP}
148239462SdimLIBMODE?=	${NOBINMODE}
149239462Sdim
150239462Sdim
151218893Sdim# Share files
152218893SdimSHAREDIR?=	/usr/share
153218893SdimSHAREOWN?=	root
154193326SedSHAREGRP?=	wheel
155218893SdimSHAREMODE?=	${NOBINMODE}
156218893Sdim
157218893SdimCONFDIR?=	/etc
158218893SdimCONFOWN?=	root
159218893SdimCONFGRP?=	wheel
160218893SdimCONFMODE?=	644
161218893Sdim
162218893SdimMANDIR?=	${SHAREDIR}/man/man
163193326SedMANOWN?=	${SHAREOWN}
164193326SedMANGRP?=	${SHAREGRP}
165226633SdimMANMODE?=	${NOBINMODE}
166234353Sdim
167218893SdimDOCDIR?=	${SHAREDIR}/doc
168218893SdimDOCOWN?=	${SHAREOWN}
169218893SdimDOCGRP?=	${SHAREGRP}
170218893SdimDOCMODE?=	${NOBINMODE}
171218893Sdim
172218893SdimINFODIR?=	${SHAREDIR}/info
173239462SdimINFOOWN?=	${SHAREOWN}
174193326SedINFOGRP?=	${SHAREGRP}
175239462SdimINFOMODE?=	${NOBINMODE}
176218893Sdim
177234353SdimNLSDIR?=	${SHAREDIR}/nls
178234353SdimNLSOWN?=	${SHAREOWN}
179234353SdimNLSGRP?=	${SHAREGRP}
180234353SdimNLSMODE?=	${NOBINMODE}
181234353Sdim
182234353SdimINCLUDEDIR?=	/usr/include
183226633Sdim
184234353Sdim#
185226633Sdim# install(1) parameters.
186218893Sdim#
187218893SdimHRDLINK?=	-l h
188226633SdimSYMLINK?=	-l s
189218893Sdim
190193326SedINSTALL_LINK?=		${INSTALL} ${HRDLINK}
191198092SrdivackyINSTALL_SYMLINK?=	${INSTALL} ${SYMLINK}
192218893Sdim
193218893Sdim# Common variables
194218893Sdim.if !defined(DEBUG_FLAGS)
195218893SdimSTRIP?=		-s
196221345Sdim.endif
197218893Sdim
198218893SdimCOMPRESS_CMD?=	gzip -cn
199218893SdimCOMPRESS_EXT?=	.gz
200218893Sdim
201226633Sdim.if !defined(_WITHOUT_SRCCONF)
202218893Sdim#
203193326Sed# Define MK_* variables (which are either "yes" or "no") for users
204193326Sed# to set via WITH_*/WITHOUT_* in /etc/src.conf and override in the
205218893Sdim# make(1) environment.
206218893Sdim# These should be tested with `== "no"' or `!= "no"' in makefiles.
207198092Srdivacky# The NO_* variables should only be set by makefiles.
208218893Sdim#
209218893Sdim
210198092Srdivacky#
211218893Sdim# Supported NO_* options (if defined, MK_* will be forced to "no",
212218893Sdim# regardless of user's setting).
213218893Sdim#
214226633Sdim.for var in \
215193326Sed    CTF \
216193326Sed    INSTALLLIB \
217218893Sdim    MAN \
218218893Sdim    PROFILE
219226633Sdim.if defined(NO_${var})
220218893Sdim.if defined(WITH_${var})
221198092Srdivacky.undef WITH_${var}
222193326Sed.endif
223218893SdimWITHOUT_${var}=
224218893Sdim.endif
225218893Sdim.endfor
226218893Sdim
227218893Sdim#
228226633Sdim# Older-style variables that enabled behaviour when set.
229218893Sdim#
230218893Sdim.if defined(YES_HESIOD)
231218893SdimWITH_HESIOD=
232212904Sdim.endif
233226633Sdim.if defined(MAKE_IDEA)
234226633SdimWITH_IDEA=
235226633Sdim.endif
236226633Sdim
237249423Sdim__DEFAULT_YES_OPTIONS = \
238226633Sdim    ACCT \
239226633Sdim    ACPI \
240226633Sdim    AMD \
241226633Sdim    APM \
242226633Sdim    ASSERT_DEBUG \
243226633Sdim    AT \
244226633Sdim    ATF \
245226633Sdim    ATM \
246226633Sdim    AUDIT \
247226633Sdim    AUTHPF \
248234353Sdim    BIND \
249234353Sdim    BIND_DNSSEC \
250234353Sdim    BIND_ETC \
251234353Sdim    BIND_LIBS_LWRES \
252234353Sdim    BIND_MTREE \
253234353Sdim    BIND_NAMED \
254234353Sdim    BIND_UTILS \
255234353Sdim    BINUTILS \
256234353Sdim    BLUETOOTH \
257234353Sdim    BOOT \
258234353Sdim    BSD_CPIO \
259234353Sdim    BSNMP \
260234353Sdim    BZIP2 \
261234353Sdim    CALENDAR \
262234353Sdim    CAPSICUM \
263234353Sdim    CDDL \
264234353Sdim    CPP \
265234353Sdim    CRYPT \
266226633Sdim    CTM \
267226633Sdim    CVS \
268226633Sdim    CXX \
269226633Sdim    DICT \
270226633Sdim    DYNAMICROOT \
271226633Sdim    ED_CRYPTO \
272226633Sdim    EXAMPLES \
273226633Sdim    FLOPPY \
274226633Sdim    FORTH \
275226633Sdim    FP_LIBC \
276226633Sdim    FREEBSD_UPDATE \
277249423Sdim    GAMES \
278226633Sdim    GCC \
279226633Sdim    GCOV \
280226633Sdim    GDB \
281226633Sdim    GNU \
282226633Sdim    GPIB \
283226633Sdim    GPIO \
284226633Sdim    GROFF \
285226633Sdim    HTML \
286226633Sdim    INET \
287226633Sdim    INET6 \
288226633Sdim    INFO \
289226633Sdim    INSTALLLIB \
290226633Sdim    IPFILTER \
291226633Sdim    IPFW \
292226633Sdim    IPX \
293226633Sdim    JAIL \
294226633Sdim    KDUMP \
295226633Sdim    KERBEROS \
296234353Sdim    KERNEL_SYMBOLS \
297234353Sdim    KVM \
298234353Sdim    LEGACY_CONSOLE \
299234353Sdim    LIB32 \
300234353Sdim    LIBPTHREAD \
301234353Sdim    LIBTHR \
302234353Sdim    LOCALES \
303234353Sdim    LOCATE \
304234353Sdim    LPR \
305234353Sdim    LS_COLORS \
306234353Sdim    MAIL \
307234353Sdim    MAILWRAPPER \
308234353Sdim    MAKE \
309234353Sdim    MAN \
310234353Sdim    NDIS \
311234353Sdim    NETCAT \
312234353Sdim    NETGRAPH \
313226633Sdim    NIS \
314226633Sdim    NLS \
315226633Sdim    NLS_CATALOGS \
316226633Sdim    NS_CACHING \
317226633Sdim    NTP \
318226633Sdim    OPENSSH \
319226633Sdim    OPENSSL \
320226633Sdim    PAM \
321226633Sdim    PC_SYSINSTALL \
322226633Sdim    PF \
323226633Sdim    PKGBOOTSTRAP \
324249423Sdim    PKGTOOLS \
325226633Sdim    PMC \
326226633Sdim    PORTSNAP \
327226633Sdim    PPP \
328226633Sdim    PROFILE \
329226633Sdim    QUOTAS \
330226633Sdim    RCMDS \
331226633Sdim    RCS \
332226633Sdim    RESCUE \
333226633Sdim    ROUTED \
334226633Sdim    SENDMAIL \
335226633Sdim    SETUID_LOGIN \
336226633Sdim    SHAREDOCS \
337226633Sdim    SOURCELESS \
338226633Sdim    SOURCELESS_HOST \
339226633Sdim    SOURCELESS_UCODE \
340226633Sdim    SSP \
341226633Sdim    SYMVER \
342234353Sdim    SYSCONS \
343234353Sdim    SYSINSTALL \
344234353Sdim    TCSH \
345249423Sdim    TELNET \
346234353Sdim    TEXTPROC \
347234353Sdim    TOOLCHAIN \
348234353Sdim    USB \
349234353Sdim    UTMPX \
350234353Sdim    WIRELESS \
351234353Sdim    WPA_SUPPLICANT_EAPOL \
352234353Sdim    ZFS \
353234353Sdim    ZONEINFO
354226633Sdim
355223017Sdim__DEFAULT_NO_OPTIONS = \
356223017Sdim    ARM_EABI \
357223017Sdim    BSD_PATCH \
358223017Sdim    BIND_IDN \
359223017Sdim    BIND_LARGE_FILE \
360223017Sdim    BIND_LIBS \
361223017Sdim    BIND_SIGCHASE \
362234353Sdim    BIND_XML \
363223017Sdim    BMAKE \
364223017Sdim    BSDCONFIG \
365223017Sdim    BSD_GREP \
366223017Sdim    CLANG_EXTRAS \
367223017Sdim    CTF \
368223017Sdim    GPL_DTC \
369223017Sdim    HESIOD \
370234353Sdim    ICONV \
371234353Sdim    IDEA \
372234353Sdim    INSTALL_AS_USER \
373223017Sdim    NMTREE \
374223017Sdim    NAND \
375223017Sdim    OFED \
376234353Sdim    OPENSSH_NONE_CIPHER \
377223017Sdim    SHARED_TOOLCHAIN
378226633Sdim
379223017Sdim#
380226633Sdim# Default behaviour of some options depends on the architecture.  Unfortunately
381223017Sdim# this means that we have to test TARGET_ARCH (the buildworld case) as well
382223017Sdim# as MACHINE_ARCH (the non-buildworld case).  Normally TARGET_ARCH is not
383226633Sdim# used at all in bsd.*.mk, but we have to make an exception here if we want
384223017Sdim# to allow defaults for some things like clang and fdt to vary by target
385223017Sdim# architecture.
386223017Sdim#
387223017Sdim.if defined(TARGET_ARCH)
388223017Sdim__T=${TARGET_ARCH}
389223017Sdim.else
390239462Sdim__T=${MACHINE_ARCH}
391239462Sdim.endif
392206084Srdivacky# Clang is only for x86 and powerpc right now, by default.
393239462Sdim.if ${__T} == "amd64" || ${__T} == "i386" || ${__T:Mpowerpc*}
394239462Sdim__DEFAULT_YES_OPTIONS+=CLANG
395239462Sdim.else
396239462Sdim__DEFAULT_NO_OPTIONS+=CLANG
397239462Sdim.endif
398239462Sdim# Clang the default system compiler only on x86.
399239462Sdim.if ${__T} == "amd64" || ${__T} == "i386"
400239462Sdim__DEFAULT_YES_OPTIONS+=CLANG_IS_CC
401239462Sdim.else
402239462Sdim__DEFAULT_NO_OPTIONS+=CLANG_IS_CC
403239462Sdim.endif
404239462Sdim# FDT is needed only for arm, mips and powerpc
405239462Sdim.if ${__T:Marm*} || ${__T:Mpowerpc*} || ${__T:Mmips*}
406239462Sdim__DEFAULT_YES_OPTIONS+=FDT
407239462Sdim.else
408239462Sdim__DEFAULT_NO_OPTIONS+=FDT
409239462Sdim.endif
410239462Sdim.undef __T
411239462Sdim
412206084Srdivacky#
413234353Sdim# MK_* options which default to "yes".
414234353Sdim#
415206084Srdivacky.for var in ${__DEFAULT_YES_OPTIONS}
416206084Srdivacky.if defined(WITH_${var}) && defined(WITHOUT_${var})
417239462Sdim.error WITH_${var} and WITHOUT_${var} can't both be set.
418234353Sdim.endif
419206084Srdivacky.if defined(MK_${var})
420206084Srdivacky.error MK_${var} can't be set by a user.
421206084Srdivacky.endif
422206084Srdivacky.if defined(WITHOUT_${var})
423206084SrdivackyMK_${var}:=	no
424226633Sdim.else
425193326SedMK_${var}:=	yes
426226633Sdim.endif
427226633Sdim.endfor
428218893Sdim.undef __DEFAULT_YES_OPTIONS
429218893Sdim
430193326Sed#
431226633Sdim# MK_* options which default to "no".
432218893Sdim#
433226633Sdim.for var in ${__DEFAULT_NO_OPTIONS}
434218893Sdim.if defined(WITH_${var}) && defined(WITHOUT_${var})
435218893Sdim.error WITH_${var} and WITHOUT_${var} can't both be set.
436218893Sdim.endif
437193326Sed.if defined(MK_${var})
438193326Sed.error MK_${var} can't be set by a user.
439193326Sed.endif
440193326Sed.if defined(WITH_${var})
441193326SedMK_${var}:=	yes
442193326Sed.else
443193326SedMK_${var}:=	no
444202379Srdivacky.endif
445202379Srdivacky.endfor
446202379Srdivacky.undef __DEFAULT_NO_OPTIONS
447202379Srdivacky
448202379Srdivacky#
449202379Srdivacky# Force some options off if their dependencies are off.
450202379Srdivacky# Order is somewhat important.
451202379Srdivacky#
452202379Srdivacky.if ${MK_LIBPTHREAD} == "no"
453202379SrdivackyMK_LIBTHR:=	no
454202379Srdivacky.endif
455202379Srdivacky
456202379Srdivacky.if ${MK_LIBTHR} == "no"
457202379SrdivackyMK_BIND:=	no
458202379Srdivacky.endif
459202379Srdivacky
460249423Sdim.if ${MK_BIND} == "no"
461249423SdimMK_BIND_DNSSEC:= no
462202379SrdivackyMK_BIND_ETC:=	no
463202379SrdivackyMK_BIND_LIBS:=	no
464202379SrdivackyMK_BIND_LIBS_LWRES:= no
465202379SrdivackyMK_BIND_MTREE:=	no
466202379SrdivackyMK_BIND_NAMED:=	no
467202379SrdivackyMK_BIND_UTILS:=	no
468202379Srdivacky.endif
469202379Srdivacky
470202379Srdivacky.if ${MK_BIND_MTREE} == "no"
471193326SedMK_BIND_ETC:=	no
472193326Sed.endif
473193326Sed
474193326Sed.if ${MK_SOURCELESS} == "no"
475193326SedMK_SOURCELESS_HOST:=	no
476226633SdimMK_SOURCELESS_UCODE:= no
477193326Sed.endif
478226633Sdim
479193326Sed.if ${MK_CDDL} == "no"
480198092SrdivackyMK_ZFS:=	no
481193326SedMK_CTF:=	no
482193326Sed.endif
483202379Srdivacky
484193326Sed.if ${MK_CRYPT} == "no"
485193326SedMK_OPENSSL:=	no
486193326SedMK_OPENSSH:=	no
487193326SedMK_KERBEROS:=	no
488193326Sed.endif
489198092Srdivacky
490193326Sed.if ${MK_CXX} == "no"
491202379SrdivackyMK_CLANG:=	no
492202379SrdivackyMK_GROFF:=	no
493202379Srdivacky.endif
494202379Srdivacky
495193326Sed.if ${MK_MAIL} == "no"
496193326SedMK_MAILWRAPPER:= no
497193326SedMK_SENDMAIL:=	no
498193326Sed.endif
499193326Sed
500193326Sed.if ${MK_NETGRAPH} == "no"
501226633SdimMK_ATM:=	no
502193326SedMK_BLUETOOTH:=	no
503193326Sed.endif
504193326Sed
505193326Sed.if ${MK_OPENSSL} == "no"
506202379SrdivackyMK_OPENSSH:=	no
507202379SrdivackyMK_KERBEROS:=	no
508202379Srdivacky.endif
509202379Srdivacky
510202379Srdivacky.if ${MK_PF} == "no"
511226633SdimMK_AUTHPF:=	no
512202379Srdivacky.endif
513193326Sed
514202379Srdivacky.if ${MK_TEXTPROC} == "no"
515202379SrdivackyMK_GROFF:=	no
516202379Srdivacky.endif
517202379Srdivacky
518243830Sdim.if ${MK_TOOLCHAIN} == "no"
519202379SrdivackyMK_BINUTILS:=	no
520202379SrdivackyMK_CLANG:=	no
521202379SrdivackyMK_GCC:=	no
522193326SedMK_GDB:=	no
523193326Sed.endif
524193326Sed
525193326Sed.if ${MK_CLANG} == "no"
526193326SedMK_CLANG_EXTRAS:= no
527193326SedMK_CLANG_IS_CC:= no
528193326Sed.endif
529193326Sed
530193326Sed#
531193326Sed# Set defaults for the MK_*_SUPPORT variables.
532193326Sed#
533193326Sed
534193326Sed#
535193326Sed# MK_*_SUPPORT options which default to "yes" unless their corresponding
536193326Sed# MK_* variable is set to "no".
537193326Sed#
538193326Sed.for var in \
539193326Sed    BZIP2 \
540193326Sed    GNU \
541193326Sed    INET \
542193326Sed    INET6 \
543193326Sed    IPX \
544193326Sed    KERBEROS \
545193326Sed    KVM \
546193326Sed    NETGRAPH \
547193326Sed    PAM \
548193326Sed    WIRELESS
549193326Sed.if defined(WITH_${var}_SUPPORT) && defined(WITHOUT_${var}_SUPPORT)
550193326Sed.error WITH_${var}_SUPPORT and WITHOUT_${var}_SUPPORT can't both be set.
551193326Sed.endif
552193326Sed.if defined(MK_${var}_SUPPORT)
553193326Sed.error MK_${var}_SUPPORT can't be set by a user.
554193326Sed.endif
555193326Sed.if defined(WITHOUT_${var}_SUPPORT) || ${MK_${var}} == "no"
556193326SedMK_${var}_SUPPORT:= no
557193326Sed.else
558193326SedMK_${var}_SUPPORT:= yes
559193326Sed.endif
560193326Sed.endfor
561193326Sed
562193326Sed#
563193326Sed# MK_* options whose default value depends on another option.
564193326Sed#
565193326Sed.for vv in \
566193326Sed    GSSAPI/KERBEROS \
567193326Sed    MAN_UTILS/MAN
568193326Sed.if defined(WITH_${vv:H}) && defined(WITHOUT_${vv:H})
569193326Sed.error WITH_${vv:H} and WITHOUT_${vv:H} can't both be set.
570193326Sed.endif
571193326Sed.if defined(MK_${vv:H})
572193326Sed.error MK_${vv:H} can't be set by a user.
573193326Sed.endif
574193326Sed.if defined(WITH_${vv:H})
575193326SedMK_${vv:H}:=	yes
576193326Sed.elif defined(WITHOUT_${vv:H})
577193326SedMK_${vv:H}:=	no
578198092Srdivacky.else
579193326SedMK_${vv:H}:=	${MK_${vv:T}}
580193326Sed.endif
581193326Sed.endfor
582193326Sed
583193326Sed#
584193326Sed# MK_* options that default to "yes" if the compiler is a C++11 compiler.
585193326Sed#
586193326Sed.include <bsd.compiler.mk>
587193326Sed.for var in \
588193326Sed    LIBCPLUSPLUS
589193326Sed.if defined(WITH_${var}) && defined(WITHOUT_${var})
590193326Sed.error WITH_${var} and WITHOUT_${var} can't both be set.
591193326Sed.endif
592193326Sed.if defined(MK_${var})
593193326Sed.error MK_${var} can't be set by a user.
594193326Sed.endif
595193326Sed.if ${COMPILER_FEATURES:Mc++11}
596193326Sed.if defined(WITHOUT_${var})
597193326SedMK_${var}:=	no
598193326Sed.else
599193326SedMK_${var}:=	yes
600193326Sed.endif
601193326Sed.else
602193326Sed.if defined(WITH_${var})
603193326SedMK_${var}:=	yes
604193326Sed.else
605193326SedMK_${var}:=	no
606193326Sed.endif
607193326Sed.endif
608193326Sed.endfor
609193326Sed
610193326Sed.if ${MK_CTF} != "no"
611193326SedCTFCONVERT_CMD=	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
612193326Sed.elif defined(.PARSEDIR) || (defined(MAKE_VERSION) && ${MAKE_VERSION} >= 5201111300)
613193326SedCTFCONVERT_CMD=
614193326Sed.else
615193326SedCTFCONVERT_CMD=	@:
616193326Sed.endif 
617193326Sed
618226633Sdim.if ${MK_INSTALL_AS_USER} != "no"
619193326Sed_uid!=	id -u
620226633Sdim.if ${_uid} != 0
621193326Sed.if !defined(USER)
622193326SedUSER!=	id -un
623193326Sed.endif
624193326Sed_gid!=	id -gn
625193326Sed.for x in BIN CONF DOC INFO KMOD LIB MAN NLS SHARE
626193326Sed$xOWN=	${USER}
627193326Sed$xGRP=	${_gid}
628193326Sed.endfor
629193326Sed.endif
630193326Sed.endif
631202379Srdivacky
632218893Sdim.endif # !_WITHOUT_SRCCONF
633218893Sdim
634218893Sdim.endif	# !target(__<bsd.own.mk>__)
635218893Sdim