turns printfs back on
[freebsd-src/fkvm-freebsd.git] / share / mk / bsd.own.mk
blob6249084c76f4c88859a7440c8f24aba045802642
1 # $FreeBSD$
3 # The include file <bsd.own.mk> set common variables for owner,
4 # group, mode, and directories. Defaults are in brackets.
7 # +++ variables +++
9 # DESTDIR Change the tree where the file gets installed. [not set]
11 # DISTDIR Change the tree where the file for a distribution
12 # gets installed (see /usr/src/release/Makefile). [not set]
14 # COMPRESS_CMD Program to compress documents.
15 # Output is to stdout. [gzip -cn]
17 # COMPRESS_EXT File name extension of ${COMPRESS_CMD} command. [.gz]
19 # BINOWN Binary owner. [root]
21 # BINGRP Binary group. [wheel]
23 # BINMODE Binary mode. [555]
25 # NOBINMODE Mode for non-executable files. [444]
27 # LIBDIR Base path for libraries. [/usr/lib]
29 # LIBCOMPATDIR Base path for compat libraries. [/usr/lib/compat]
31 # LIBDATADIR Base path for misc. utility data files. [/usr/libdata]
33 # LINTLIBDIR Base path for lint libraries. [/usr/libdata/lint]
35 # SHLIBDIR Base path for shared libraries. [${LIBDIR}]
37 # LIBOWN Library owner. [${BINOWN}]
39 # LIBGRP Library group. [${BINGRP}]
41 # LIBMODE Library mode. [${NOBINMODE}]
44 # KMODDIR Base path for loadable kernel modules
45 # (see kld(4)). [/boot/kernel]
47 # KMODOWN KLD owner. [${BINOWN}]
49 # KMODGRP KLD group. [${BINGRP}]
51 # KMODMODE KLD mode. [${BINMODE}]
54 # SHAREDIR Base path for architecture-independent ascii
55 # text files. [/usr/share]
57 # SHAREOWN ASCII text file owner. [root]
59 # SHAREGRP ASCII text file group. [wheel]
61 # SHAREMODE ASCII text file mode. [${NOBINMODE}]
64 # DOCDIR Base path for system documentation (e.g. PSD, USD,
65 # handbook, FAQ etc.). [${SHAREDIR}/doc]
67 # DOCOWN Documentation owner. [${SHAREOWN}]
69 # DOCGRP Documentation group. [${SHAREGRP}]
71 # DOCMODE Documentation mode. [${NOBINMODE}]
74 # INFODIR Base path for GNU's hypertext system
75 # called Info (see info(1)). [${SHAREDIR}/info]
77 # INFOOWN Info owner. [${SHAREOWN}]
79 # INFOGRP Info group. [${SHAREGRP}]
81 # INFOMODE Info mode. [${NOBINMODE}]
84 # MANDIR Base path for manual installation. [${SHAREDIR}/man/man]
86 # MANOWN Manual owner. [${SHAREOWN}]
88 # MANGRP Manual group. [${SHAREGRP}]
90 # MANMODE Manual mode. [${NOBINMODE}]
93 # NLSDIR Base path for National Language Support files
94 # installation. [${SHAREDIR}/nls]
96 # NLSOWN National Language Support files owner. [${SHAREOWN}]
98 # NLSGRP National Language Support files group. [${SHAREGRP}]
100 # NLSMODE National Language Support files mode. [${NOBINMODE}]
102 # INCLUDEDIR Base path for standard C include files [/usr/include]
104 .if !target(__<bsd.own.mk>__)
105 __<bsd.own.mk>__:
107 .if !defined(_WITHOUT_SRCCONF)
108 SRCCONF?= /etc/src.conf
109 .if exists(${SRCCONF})
110 .include "${SRCCONF}"
111 .endif
112 .endif
114 # Binaries
115 BINOWN?= root
116 BINGRP?= wheel
117 BINMODE?= 555
118 NOBINMODE?= 444
120 .if defined(MODULES_WITH_WORLD)
121 KMODDIR?= /boot/modules
122 .else
123 KMODDIR?= /boot/kernel
124 .endif
125 KMODOWN?= ${BINOWN}
126 KMODGRP?= ${BINGRP}
127 KMODMODE?= ${BINMODE}
129 LIBDIR?= /usr/lib
130 LIBCOMPATDIR?= /usr/lib/compat
131 LIBDATADIR?= /usr/libdata
132 LINTLIBDIR?= /usr/libdata/lint
133 SHLIBDIR?= ${LIBDIR}
134 LIBOWN?= ${BINOWN}
135 LIBGRP?= ${BINGRP}
136 LIBMODE?= ${NOBINMODE}
139 # Share files
140 SHAREDIR?= /usr/share
141 SHAREOWN?= root
142 SHAREGRP?= wheel
143 SHAREMODE?= ${NOBINMODE}
145 MANDIR?= ${SHAREDIR}/man/man
146 MANOWN?= ${SHAREOWN}
147 MANGRP?= ${SHAREGRP}
148 MANMODE?= ${NOBINMODE}
150 DOCDIR?= ${SHAREDIR}/doc
151 DOCOWN?= ${SHAREOWN}
152 DOCGRP?= ${SHAREGRP}
153 DOCMODE?= ${NOBINMODE}
155 INFODIR?= ${SHAREDIR}/info
156 INFOOWN?= ${SHAREOWN}
157 INFOGRP?= ${SHAREGRP}
158 INFOMODE?= ${NOBINMODE}
160 NLSDIR?= ${SHAREDIR}/nls
161 NLSOWN?= ${SHAREOWN}
162 NLSGRP?= ${SHAREGRP}
163 NLSMODE?= ${NOBINMODE}
165 INCLUDEDIR?= /usr/include
167 # Common variables
168 .if !defined(DEBUG_FLAGS)
169 STRIP?= -s
170 .endif
172 COMPRESS_CMD?= gzip -cn
173 COMPRESS_EXT?= .gz
175 .if !defined(_WITHOUT_SRCCONF)
177 # Define MK_* variables (which are either "yes" or "no") for users
178 # to set via WITH_*/WITHOUT_* in /etc/src.conf and override in the
179 # make(1) environment.
180 # These should be tested with `== "no"' or `!= "no"' in makefiles.
181 # The NO_* variables should only be set by makefiles.
185 # Supported NO_* options (if defined, MK_* will be forced to "no",
186 # regardless of user's setting).
188 .for var in \
189 INSTALLLIB \
190 MAN \
191 PROFILE
192 .if defined(NO_${var})
193 WITHOUT_${var}=
194 .endif
195 .endfor
198 # Compat NO_* options (same as above, except their use is deprecated).
200 .if !defined(BURN_BRIDGES)
201 .for var in \
202 ACPI \
203 ATM \
204 AUDIT \
205 AUTHPF \
206 BIND \
207 BIND_DNSSEC \
208 BIND_ETC \
209 BIND_LIBS_LWRES \
210 BIND_MTREE \
211 BIND_NAMED \
212 BIND_UTILS \
213 BLUETOOTH \
214 BOOT \
215 CALENDAR \
216 CPP \
217 CRYPT \
218 CVS \
219 CXX \
220 DICT \
221 DYNAMICROOT \
222 EXAMPLES \
223 FORTH \
224 FP_LIBC \
225 GAMES \
226 GCOV \
227 GDB \
228 GNU \
229 GPIB \
230 GROFF \
231 HTML \
232 INET6 \
233 INFO \
234 IPFILTER \
235 IPX \
236 KERBEROS \
237 LIB32 \
238 LIBPTHREAD \
239 LIBTHR \
240 LOCALES \
241 LPR \
242 MAILWRAPPER \
243 NETCAT \
244 NIS \
245 NLS \
246 NLS_CATALOGS \
247 NS_CACHING \
248 OBJC \
249 OPENSSH \
250 OPENSSL \
251 PAM \
252 PF \
253 RCMDS \
254 RCS \
255 RESCUE \
256 SENDMAIL \
257 SETUID_LOGIN \
258 SHAREDOCS \
259 SYSCONS \
260 TCSH \
261 TOOLCHAIN \
262 USB \
263 WPA_SUPPLICANT_EAPOL
264 .if defined(NO_${var})
265 #.warning NO_${var} is deprecated in favour of WITHOUT_${var}=
266 WITHOUT_${var}=
267 .endif
268 .endfor
269 .endif # !defined(BURN_BRIDGES)
272 # Older-style variables that enabled behaviour when set.
274 .if defined(YES_HESIOD)
275 WITH_HESIOD=
276 .endif
277 .if defined(MAKE_IDEA)
278 WITH_IDEA=
279 .endif
282 # MK_* options which default to "yes".
284 .for var in \
285 ACPI \
286 ASSERT_DEBUG \
287 ATM \
288 AUDIT \
289 AUTHPF \
290 BIND \
291 BIND_DNSSEC \
292 BIND_ETC \
293 BIND_LIBS_LWRES \
294 BIND_MTREE \
295 BIND_NAMED \
296 BIND_UTILS \
297 BLUETOOTH \
298 BOOT \
299 BSD_CPIO \
300 BZIP2 \
301 CALENDAR \
302 CDDL \
303 CPP \
304 CRYPT \
305 CVS \
306 CXX \
307 DICT \
308 DYNAMICROOT \
309 EXAMPLES \
310 FORTH \
311 FP_LIBC \
312 GAMES \
313 GCOV \
314 GDB \
315 GNU \
316 GNU_GREP \
317 GPIB \
318 GROFF \
319 HTML \
320 INET6 \
321 INFO \
322 INSTALLLIB \
323 IPFILTER \
324 IPX \
325 KERBEROS \
326 KVM \
327 LIB32 \
328 LIBPTHREAD \
329 LIBTHR \
330 LOCALES \
331 LPR \
332 MAILWRAPPER \
333 MAN \
334 NCP \
335 NETCAT \
336 NIS \
337 NLS \
338 NLS_CATALOGS \
339 NS_CACHING \
340 OBJC \
341 OPENSSH \
342 OPENSSL \
343 PAM \
344 PF \
345 PROFILE \
346 RCMDS \
347 RCS \
348 RESCUE \
349 SENDMAIL \
350 SETUID_LOGIN \
351 SHAREDOCS \
352 SSP \
353 SYMVER \
354 SYSCONS \
355 TCSH \
356 TOOLCHAIN \
357 USB \
358 WPA_SUPPLICANT_EAPOL \
359 ZFS \
360 ZONEINFO
361 .if defined(WITH_${var}) && defined(WITHOUT_${var})
362 .error WITH_${var} and WITHOUT_${var} can't both be set.
363 .endif
364 .if defined(MK_${var})
365 .error MK_${var} can't be set by a user.
366 .endif
367 .if defined(WITHOUT_${var})
368 MK_${var}:= no
369 .else
370 MK_${var}:= yes
371 .endif
372 .endfor
375 # MK_* options which default to "no".
377 .for var in \
378 BIND_LIBS \
379 GNU_CPIO \
380 HESIOD \
381 IDEA
382 .if defined(WITH_${var}) && defined(WITHOUT_${var})
383 .error WITH_${var} and WITHOUT_${var} can't both be set.
384 .endif
385 .if defined(MK_${var})
386 .error MK_${var} can't be set by a user.
387 .endif
388 .if defined(WITH_${var})
389 MK_${var}:= yes
390 .else
391 MK_${var}:= no
392 .endif
393 .endfor
396 # Force some options off if their dependencies are off.
397 # Order is somewhat important.
399 .if ${MK_LIBPTHREAD} == "no"
400 MK_LIBTHR:= no
401 .endif
403 .if ${MK_LIBTHR} == "no"
404 MK_BIND:= no
405 .endif
407 .if ${MK_BIND} == "no"
408 MK_BIND_DNSSEC:= no
409 MK_BIND_ETC:= no
410 MK_BIND_LIBS:= no
411 MK_BIND_LIBS_LWRES:= no
412 MK_BIND_MTREE:= no
413 MK_BIND_NAMED:= no
414 MK_BIND_UTILS:= no
415 .endif
417 .if ${MK_BIND_MTREE} == "no"
418 MK_BIND_ETC:= no
419 .endif
421 .if ${MK_CDDL} == "no"
422 MK_ZFS:= no
423 .endif
425 .if ${MK_CRYPT} == "no"
426 MK_OPENSSL:= no
427 MK_OPENSSH:= no
428 MK_KERBEROS:= no
429 .endif
431 .if ${MK_IPX} == "no"
432 MK_NCP:= no
433 .endif
435 .if ${MK_OPENSSL} == "no"
436 MK_OPENSSH:= no
437 MK_KERBEROS:= no
438 .endif
440 .if ${MK_PF} == "no"
441 MK_AUTHPF:= no
442 .endif
444 .if ${MK_TOOLCHAIN} == "no"
445 MK_GDB:= no
446 .endif
449 # Set defaults for the MK_*_SUPPORT variables.
453 # MK_*_SUPPORT options which default to "yes" unless their corresponding
454 # MK_* variable is set to "no".
456 .for var in \
457 BZIP2 \
458 GNU \
459 INET6 \
460 IPX \
461 KERBEROS \
462 KVM \
464 .if defined(WITH_${var}_SUPPORT) && defined(WITHOUT_${var}_SUPPORT)
465 .error WITH_${var}_SUPPORT and WITHOUT_${var}_SUPPORT can't both be set.
466 .endif
467 .if defined(MK_${var}_SUPPORT)
468 .error MK_${var}_SUPPORT can't be set by a user.
469 .endif
470 .if defined(WITHOUT_${var}_SUPPORT) || ${MK_${var}} == "no"
471 MK_${var}_SUPPORT:= no
472 .else
473 MK_${var}_SUPPORT:= yes
474 .endif
475 .endfor
478 # MK_* options whose default value depends on another option.
480 .for vv in \
481 GSSAPI/KERBEROS
482 .if defined(WITH_${vv:H}) && defined(WITHOUT_${vv:H})
483 .error WITH_${vv:H} and WITHOUT_${vv:H} can't both be set.
484 .endif
485 .if defined(MK_${vv:H})
486 .error MK_${vv:H} can't be set by a user.
487 .endif
488 .if defined(WITH_${vv:H})
489 MK_${vv:H}:= yes
490 .elif defined(WITHOUT_${vv:H})
491 MK_${vv:H}:= no
492 .else
493 MK_${vv:H}:= ${MK_${vv:T}}
494 .endif
495 .endfor
497 .endif # !_WITHOUT_SRCCONF
499 .endif # !target(__<bsd.own.mk>__)