]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - share/mk/bsd.own.mk
Merge latest (commit c8c1b3a77934768c7f7a4a9c10140c8bec529059) files
[FreeBSD/FreeBSD.git] / share / mk / bsd.own.mk
1 # $FreeBSD$
2 #
3 # The include file <src.opts.mk> set common variables for owner,
4 # group, mode, and directories. Defaults are in brackets.
5 #
6 #
7 # +++ variables +++
8 #
9 # DESTDIR       Change the tree where the file gets installed. [not set]
10 #
11 # DISTDIR       Change the tree where the file for a distribution
12 #               gets installed (see /usr/src/release/Makefile). [not set]
13 #
14 # COMPRESS_CMD  Program to compress documents.
15 #               Output is to stdout. [gzip -cn]
16 #
17 # COMPRESS_EXT  File name extension of ${COMPRESS_CMD} command. [.gz]
18 #
19 # BINOWN        Binary owner. [root]
20 #
21 # BINGRP        Binary group. [wheel]
22 #
23 # BINMODE       Binary mode. [555]
24 #
25 # NOBINMODE     Mode for non-executable files. [444]
26 #
27 # LIBDIR        Base path for libraries. [/usr/lib]
28 #
29 # LIBCOMPATDIR  Base path for compat libraries. [/usr/lib/compat]
30 #
31 # LIBPRIVATEDIR Base path for private libraries. [/usr/lib/private]
32 #
33 # LIBDATADIR    Base path for misc. utility data files. [/usr/libdata]
34 #
35 # LIBEXECDIR    Base path for system daemons and utilities. [/usr/libexec]
36 #
37 # LINTLIBDIR    Base path for lint libraries. [/usr/libdata/lint]
38 #
39 # SHLIBDIR      Base path for shared libraries. [${LIBDIR}]
40 #
41 # LIBOWN        Library owner. [${BINOWN}]
42 #
43 # LIBGRP        Library group. [${BINGRP}]
44 #
45 # LIBMODE       Library mode. [${NOBINMODE}]
46 #
47 #
48 # DEBUGDIR      Base path for standalone debug files. [/usr/lib/debug]
49 #
50 # DEBUGMODE     Mode for debug files. [${NOBINMODE}]
51 #
52 #
53 # KMODDIR       Base path for loadable kernel modules
54 #               (see kld(4)). [/boot/kernel]
55 #
56 # KMODOWN       Kernel and KLD owner. [${BINOWN}]
57 #
58 # KMODGRP       Kernel and KLD group. [${BINGRP}]
59 #
60 # KMODMODE      KLD mode. [${BINMODE}]
61 #
62 #
63 # SHAREDIR      Base path for architecture-independent ascii
64 #               text files. [/usr/share]
65 #
66 # SHAREOWN      ASCII text file owner. [root]
67 #
68 # SHAREGRP      ASCII text file group. [wheel]
69 #
70 # SHAREMODE     ASCII text file mode. [${NOBINMODE}]
71 #
72 #
73 # CONFDIR       Base path for configuration files. [/etc]
74 #
75 # CONFOWN       Configuration file owner. [root]
76 #
77 # CONFGRP       Configuration file group. [wheel]
78 #
79 # CONFMODE      Configuration file mode. [644]
80 #
81 #
82 # DOCDIR        Base path for system documentation (e.g. PSD, USD,
83 #               handbook, FAQ etc.). [${SHAREDIR}/doc]
84 #
85 # DOCOWN        Documentation owner. [${SHAREOWN}]
86 #
87 # DOCGRP        Documentation group. [${SHAREGRP}]
88 #
89 # DOCMODE       Documentation mode. [${NOBINMODE}]
90 #
91 #
92 # INFODIR       Base path for GNU's hypertext system
93 #               called Info (see info(1)). [${SHAREDIR}/info]
94 #
95 # INFOOWN       Info owner. [${SHAREOWN}]
96 #
97 # INFOGRP       Info group. [${SHAREGRP}]
98 #
99 # INFOMODE      Info mode. [${NOBINMODE}]
100 #
101 #
102 # MANDIR        Base path for manual installation. [${SHAREDIR}/man/man]
103 #
104 # MANOWN        Manual owner. [${SHAREOWN}]
105 #
106 # MANGRP        Manual group. [${SHAREGRP}]
107 #
108 # MANMODE       Manual mode. [${NOBINMODE}]
109 #
110 #
111 # NLSDIR        Base path for National Language Support files
112 #               installation. [${SHAREDIR}/nls]
113 #
114 # NLSOWN        National Language Support files owner. [${SHAREOWN}]
115 #
116 # NLSGRP        National Language Support files group. [${SHAREGRP}]
117 #
118 # NLSMODE       National Language Support files mode. [${NOBINMODE}]
119 #
120 # INCLUDEDIR    Base path for standard C include files [/usr/include]
121
122 .if !target(__<bsd.own.mk>__)
123 __<bsd.own.mk>__:
124
125 .include <bsd.opts.mk>          # options now here or src.opts.mk
126
127 .if !defined(_WITHOUT_SRCCONF)
128
129 .if ${MK_CTF} != "no"
130 CTFCONVERT_CMD= ${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
131 .elif defined(.PARSEDIR) || (defined(MAKE_VERSION) && ${MAKE_VERSION} >= 5201111300)
132 CTFCONVERT_CMD=
133 .else
134 CTFCONVERT_CMD= @:
135 .endif 
136
137 .if ${MK_INSTALL_AS_USER} != "no"
138 _uid!=  id -u
139 .if ${_uid} != 0
140 .if !defined(USER)
141 USER!=  id -un
142 .endif
143 _gid!=  id -gn
144 .for x in BIN CONF DOC DTB INFO KMOD LIB MAN NLS SHARE
145 $xOWN=  ${USER}
146 $xGRP=  ${_gid}
147 .endfor
148 .endif
149 .endif
150
151 .endif # !_WITHOUT_SRCCONF
152
153 # Binaries
154 BINOWN?=        root
155 BINGRP?=        wheel
156 BINMODE?=       555
157 NOBINMODE?=     444
158
159 .if defined(MODULES_WITH_WORLD)
160 KMODDIR?=       /boot/modules
161 .else
162 KMODDIR?=       /boot/kernel
163 .endif
164 KMODOWN?=       ${BINOWN}
165 KMODGRP?=       ${BINGRP}
166 KMODMODE?=      ${BINMODE}
167 DTBDIR?=        /boot/dtb
168 DTBOWN?=        root
169 DTBGRP?=        wheel
170 DTBMODE?=       444
171
172 LIBDIR?=        /usr/lib
173 LIBCOMPATDIR?=  /usr/lib/compat
174 LIBPRIVATEDIR?= /usr/lib/private
175 LIBDATADIR?=    /usr/libdata
176 LIBEXECDIR?=    /usr/libexec
177 LINTLIBDIR?=    /usr/libdata/lint
178 SHLIBDIR?=      ${LIBDIR}
179 LIBOWN?=        ${BINOWN}
180 LIBGRP?=        ${BINGRP}
181 LIBMODE?=       ${NOBINMODE}
182
183 DEBUGDIR?=      /usr/lib/debug
184 DEBUGMODE?=     ${NOBINMODE}
185
186
187 # Share files
188 SHAREDIR?=      /usr/share
189 SHAREOWN?=      root
190 SHAREGRP?=      wheel
191 SHAREMODE?=     ${NOBINMODE}
192
193 CONFDIR?=       /etc
194 CONFOWN?=       root
195 CONFGRP?=       wheel
196 CONFMODE?=      644
197
198 MANDIR?=        ${SHAREDIR}/man/man
199 MANOWN?=        ${SHAREOWN}
200 MANGRP?=        ${SHAREGRP}
201 MANMODE?=       ${NOBINMODE}
202
203 DOCDIR?=        ${SHAREDIR}/doc
204 DOCOWN?=        ${SHAREOWN}
205 DOCGRP?=        ${SHAREGRP}
206 DOCMODE?=       ${NOBINMODE}
207
208 INFODIR?=       ${SHAREDIR}/info
209 INFOOWN?=       ${SHAREOWN}
210 INFOGRP?=       ${SHAREGRP}
211 INFOMODE?=      ${NOBINMODE}
212
213 NLSDIR?=        ${SHAREDIR}/nls
214 NLSOWN?=        ${SHAREOWN}
215 NLSGRP?=        ${SHAREGRP}
216 NLSMODE?=       ${NOBINMODE}
217
218 INCLUDEDIR?=    /usr/include
219
220 #
221 # install(1) parameters.
222 #
223 HRDLINK?=       -l h
224 SYMLINK?=       -l s
225
226 INSTALL_LINK?=          ${INSTALL} ${HRDLINK}
227 INSTALL_SYMLINK?=       ${INSTALL} ${SYMLINK}
228
229 # Common variables
230 .if !defined(DEBUG_FLAGS)
231 STRIP?=         -s
232 .endif
233
234 COMPRESS_CMD?=  gzip -cn
235 COMPRESS_EXT?=  .gz
236
237 # Set XZ_THREADS to 1 to disable multi-threading.
238 XZ_THREADS?=    0
239
240 .if !empty(XZ_THREADS)
241 XZ_CMD?=        xz -T ${XZ_THREADS}
242 .else
243 XZ_CMD?=        xz
244 .endif
245
246 # Pointer to the top directory into which tests are installed.  Should not be
247 # overriden by Makefiles, but the user may choose to set this in src.conf(5).
248 TESTSBASE?= /usr/tests
249
250 # Compat for the moment
251 .include <bsd.compiler.mk>
252
253 .endif  # !target(__<bsd.own.mk>__)