3 # The include file <bsd.own.mk> set common variables for owner,
4 # group, mode, and directories. Defaults are in brackets.
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 # LIBEXECDIR Base path for system daemons and utilities. [/usr/libexec]
35 # SHLIBDIR Base path for shared libraries. [${LIBDIR}]
37 # LIBOWN Library owner. [${BINOWN}]
39 # LIBGRP Library group. [${BINGRP}]
41 # LIBMODE Library mode. [${NOBINMODE}]
44 # DEBUGDIR Base path for standalone debug files. [/usr/lib/debug]
46 # DEBUGMODE Mode for debug files. [${NOBINMODE}]
49 # KMODDIR Base path for loadable kernel modules
50 # (see kld(4)). [/boot/modules]
52 # KMODOWN Kernel and KLD owner. [${BINOWN}]
54 # KMODGRP Kernel and KLD group. [${BINGRP}]
56 # KMODMODE KLD mode. [${BINMODE}]
59 # EFIDIR Base path for the UEFI ESP [/boot/efi]
61 # EFIOWN EFIDIR owner. [root]
63 # EFIGRP EFIDIR group. [wheel]
65 # EFIMODE EFIDIR mode. [555]
68 # SHAREDIR Base path for architecture-independent ascii
69 # text files. [/usr/share]
71 # SHAREOWN ASCII text file owner. [root]
73 # SHAREGRP ASCII text file group. [wheel]
75 # SHAREMODE ASCII text file mode. [${NOBINMODE}]
78 # CONFDIR Base path for configuration files. [/etc]
80 # CONFOWN Configuration file owner. [root]
82 # CONFGRP Configuration file group. [wheel]
84 # CONFMODE Configuration file mode. [644]
87 # DIROWN Directory owner. [root]
89 # DIRGRP Directory group. [wheel]
91 # DIRMODE Directory mode. [755]
94 # DOCDIR Base path for system documentation (e.g. PSD, USD,
95 # handbook, FAQ etc.). [${SHAREDIR}/doc]
97 # DOCOWN Documentation owner. [${SHAREOWN}]
99 # DOCGRP Documentation group. [${SHAREGRP}]
101 # DOCMODE Documentation mode. [${NOBINMODE}]
104 # INFODIR Base path for GNU's hypertext system
105 # called Info (see info(1)). [${SHAREDIR}/info]
107 # INFOOWN Info owner. [${SHAREOWN}]
109 # INFOGRP Info group. [${SHAREGRP}]
111 # INFOMODE Info mode. [${NOBINMODE}]
114 # MANDIR Base path for manual installation. [${SHAREDIR}/man/man]
116 # MANOWN Manual owner. [${SHAREOWN}]
118 # MANGRP Manual group. [${SHAREGRP}]
120 # MANMODE Manual mode. [${NOBINMODE}]
123 # NLSDIR Base path for National Language Support files
124 # installation. [${SHAREDIR}/nls]
126 # NLSOWN National Language Support files owner. [${SHAREOWN}]
128 # NLSGRP National Language Support files group. [${SHAREGRP}]
130 # NLSMODE National Language Support files mode. [${NOBINMODE}]
132 # INCLUDEDIR Base path for standard C include files [/usr/include]
134 # PKG_CMD Program for creating and manipulating packages.
137 # LINKOWN Hard link owner [${BINOWN}]
139 # LINKGRP Hard link group [${BINGRP}]
141 # LINKMODE Hard link mode [${NOBINMODE}]
143 # SYMLINKOWN Symbolic link owner [${BINOWN} or ${LIBOWN}]
145 # SYMLINKGRP Symbolic link group [${BINGRP} or ${LIBGRP}]
147 # SYMLINKMODE Symbolic link mode [755]
149 .if !target(__<bsd.own.mk>__)
152 .include <bsd.opts.mk> # options now here or src.opts.mk
154 .if !defined(_WITHOUT_SRCCONF)
156 .if ${MK_CTF} != "no"
157 CTFCONVERT_CMD= ${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
158 .elif defined(.PARSEDIR) || (defined(MAKE_VERSION) && ${MAKE_VERSION} >= 5201111300)
164 .endif # !_WITHOUT_SRCCONF
172 KMODDIR?= /boot/modules
175 KMODMODE?= ${BINMODE}
177 DTBODIR?= /boot/dtb/overlays
186 # Use make.conf / environment LIBDIR as default if set...
187 .if !empty(_PREMK_LIBDIR)
188 LIBDIR_BASE?= ${_PREMK_LIBDIR}
190 # otherwise use our expected default value.
191 LIBDIR_BASE?= /usr/lib
192 LIBDIR?= ${LIBDIR_BASE}
193 LIBCOMPATDIR?= /usr/lib/compat
194 LIBDATADIR?= /usr/libdata
195 LIBEXECDIR?= /usr/libexec
199 LIBMODE?= ${NOBINMODE}
201 DEBUGDIR?= /usr/lib/debug
202 DEBUGMODE?= ${NOBINMODE}
206 SHAREDIR?= /usr/share
209 SHAREMODE?= ${NOBINMODE}
216 MANDIR?= ${SHAREDIR}/man/man
219 MANMODE?= ${NOBINMODE}
225 DOCDIR?= ${SHAREDIR}/doc
228 DOCMODE?= ${NOBINMODE}
230 INFODIR?= ${SHAREDIR}/info
231 INFOOWN?= ${SHAREOWN}
232 INFOGRP?= ${SHAREGRP}
233 INFOMODE?= ${NOBINMODE}
235 NLSDIR?= ${SHAREDIR}/nls
238 NLSMODE?= ${NOBINMODE}
240 INCLUDEDIR?= /usr/include
243 # install(1) parameters.
245 _LINKOWN?= ${LINKOWN:U${BINOWN}}
246 _LINKGRP?= ${LINKGRP:U${BINGRP}}
247 _LINKMODE?= ${LINKMODE:U${NOBINMODE}}
248 _SYMLINKOWN?= ${SYMLINKOWN:U${BINOWN}}
249 _SYMLINKGRP?= ${SYMLINKGRP:U${BINGRP}}
250 _SYMLINKMODE?= ${SYMLINKMODE:U755}
251 HRDLINK?= -l h -o ${_LINKOWN} -g ${_LINKGRP} -m ${_LINKMODE}
252 MANHRDLINK?= -l h -o ${MANOWN} -g ${MANGRP} -m ${MANMODE}
253 SYMLINK?= -l s -o ${_SYMLINKOWN} -g ${_SYMLINKGRP} -m ${_SYMLINKMODE}
254 LSYMLINK?= -l s -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE}
255 RSYMLINK?= -l rs -o ${_SYMLINKOWN} -g ${_SYMLINKGRP} -m ${_SYMLINKMODE}
257 INSTALL_LINK?= ${INSTALL} ${HRDLINK}
258 INSTALL_MANLINK?= ${INSTALL} ${MANHRDLINK}
259 INSTALL_SYMLINK?= ${INSTALL} ${SYMLINK}
260 INSTALL_LIBSYMLINK?= ${INSTALL} ${LSYMLINK}
261 INSTALL_RSYMLINK?= ${INSTALL} ${RSYMLINK}
264 .if !defined(DEBUG_FLAGS)
268 COMPRESS_CMD?= gzip -cn
271 # Set XZ_THREADS to 1 to disable multi-threading.
274 .if !empty(XZ_THREADS)
275 XZ_CMD?= xz -T ${XZ_THREADS}
282 # Pointer to the top directory into which tests are installed. Should not be
283 # overridden by Makefiles, but the user may choose to set this in src.conf(5).
284 TESTSBASE?= /usr/tests
288 # Compat for the moment -- old bsd.own.mk only included this when _WITHOUT_SRCCONF
289 # wasn't defined. bsd.ports.mk and friends depend on this behavior. Remove in 12.
290 .if !defined(_WITHOUT_SRCCONF)
291 .include <bsd.compiler.mk>
292 .endif # !_WITHOUT_SRCCONF
294 .endif # !target(__<bsd.own.mk>__)