bsd.own.mk revision 291323
1145510Sdarrenr# $FreeBSD: head/share/mk/bsd.own.mk 291323 2015-11-25 19:44:58Z bdrewery $
2145510Sdarrenr#
3145510Sdarrenr# The include file <bsd.own.mk> set common variables for owner,
4145510Sdarrenr# group, mode, and directories. Defaults are in brackets.
5145510Sdarrenr#
6145510Sdarrenr#
7145510Sdarrenr# +++ variables +++
8145510Sdarrenr#
9145510Sdarrenr# DESTDIR	Change the tree where the file gets installed. [not set]
10145510Sdarrenr#
11145510Sdarrenr# DISTDIR	Change the tree where the file for a distribution
12145510Sdarrenr# 		gets installed (see /usr/src/release/Makefile). [not set]
13145510Sdarrenr#
14145510Sdarrenr# COMPRESS_CMD	Program to compress documents.
15145510Sdarrenr#		Output is to stdout. [gzip -cn]
16145510Sdarrenr#
17145510Sdarrenr# COMPRESS_EXT	File name extension of ${COMPRESS_CMD} command. [.gz]
18145510Sdarrenr#
19145510Sdarrenr# BINOWN	Binary owner. [root]
20145510Sdarrenr#
21145510Sdarrenr# BINGRP	Binary group. [wheel]
22145510Sdarrenr#
23145510Sdarrenr# BINMODE	Binary mode. [555]
24145510Sdarrenr#
25145510Sdarrenr# NOBINMODE	Mode for non-executable files. [444]
26145510Sdarrenr#
27145510Sdarrenr# LIBDIR	Base path for libraries. [/usr/lib]
28145510Sdarrenr#
29145510Sdarrenr# LIBCOMPATDIR	Base path for compat libraries. [/usr/lib/compat]
30145510Sdarrenr#
31145510Sdarrenr# LIBDATADIR	Base path for misc. utility data files. [/usr/libdata]
32145510Sdarrenr#
33145510Sdarrenr# LIBEXECDIR	Base path for system daemons and utilities. [/usr/libexec]
34145510Sdarrenr#
35145510Sdarrenr# LINTLIBDIR	Base path for lint libraries. [/usr/libdata/lint]
36145510Sdarrenr#
37145510Sdarrenr# SHLIBDIR	Base path for shared libraries. [${LIBDIR}]
38145510Sdarrenr#
39145510Sdarrenr# LIBOWN	Library owner. [${BINOWN}]
40145510Sdarrenr#
41145510Sdarrenr# LIBGRP	Library group. [${BINGRP}]
42145510Sdarrenr#
43145510Sdarrenr# LIBMODE	Library mode. [${NOBINMODE}]
44145510Sdarrenr#
45145510Sdarrenr#
46145510Sdarrenr# DEBUGDIR	Base path for standalone debug files. [/usr/lib/debug]
47145510Sdarrenr#
48145510Sdarrenr# DEBUGMODE	Mode for debug files. [${NOBINMODE}]
49145510Sdarrenr#
50145510Sdarrenr#
51145510Sdarrenr# KMODDIR	Base path for loadable kernel modules
52145510Sdarrenr#		(see kld(4)). [/boot/kernel]
53145510Sdarrenr#
54145510Sdarrenr# KMODOWN	Kernel and KLD owner. [${BINOWN}]
55145510Sdarrenr#
56145510Sdarrenr# KMODGRP	Kernel and KLD group. [${BINGRP}]
57145510Sdarrenr#
58145510Sdarrenr# KMODMODE	KLD mode. [${BINMODE}]
59145510Sdarrenr#
60145510Sdarrenr#
61145510Sdarrenr# SHAREDIR	Base path for architecture-independent ascii
62145510Sdarrenr#		text files. [/usr/share]
63145510Sdarrenr#
64145510Sdarrenr# SHAREOWN	ASCII text file owner. [root]
65145510Sdarrenr#
66145510Sdarrenr# SHAREGRP	ASCII text file group. [wheel]
67145510Sdarrenr#
68145510Sdarrenr# SHAREMODE	ASCII text file mode. [${NOBINMODE}]
69145510Sdarrenr#
70145510Sdarrenr#
71145510Sdarrenr# CONFDIR	Base path for configuration files. [/etc]
72145510Sdarrenr#
73145510Sdarrenr# CONFOWN	Configuration file owner. [root]
74145510Sdarrenr#
75145510Sdarrenr# CONFGRP	Configuration file group. [wheel]
76145510Sdarrenr#
77145510Sdarrenr# CONFMODE	Configuration file mode. [644]
78145510Sdarrenr#
79145510Sdarrenr#
80145510Sdarrenr# DOCDIR	Base path for system documentation (e.g. PSD, USD,
81145510Sdarrenr#		handbook, FAQ etc.). [${SHAREDIR}/doc]
82145510Sdarrenr#
83145510Sdarrenr# DOCOWN	Documentation owner. [${SHAREOWN}]
84145510Sdarrenr#
85145510Sdarrenr# DOCGRP	Documentation group. [${SHAREGRP}]
86145510Sdarrenr#
87145510Sdarrenr# DOCMODE	Documentation mode. [${NOBINMODE}]
88145510Sdarrenr#
89145510Sdarrenr#
90145510Sdarrenr# INFODIR	Base path for GNU's hypertext system
91145510Sdarrenr#		called Info (see info(1)). [${SHAREDIR}/info]
92145510Sdarrenr#
93145510Sdarrenr# INFOOWN	Info owner. [${SHAREOWN}]
94145510Sdarrenr#
95145510Sdarrenr# INFOGRP	Info group. [${SHAREGRP}]
96145510Sdarrenr#
97145510Sdarrenr# INFOMODE	Info mode. [${NOBINMODE}]
98145510Sdarrenr#
99145510Sdarrenr#
100145510Sdarrenr# MANDIR	Base path for manual installation. [${SHAREDIR}/man/man]
101145510Sdarrenr#
102145510Sdarrenr# MANOWN	Manual owner. [${SHAREOWN}]
103145510Sdarrenr#
104145510Sdarrenr# MANGRP	Manual group. [${SHAREGRP}]
105145510Sdarrenr#
106145510Sdarrenr# MANMODE	Manual mode. [${NOBINMODE}]
107145510Sdarrenr#
108145510Sdarrenr#
109145510Sdarrenr# NLSDIR	Base path for National Language Support files
110145510Sdarrenr#		installation. [${SHAREDIR}/nls]
111145510Sdarrenr#
112145510Sdarrenr# NLSOWN	National Language Support files owner. [${SHAREOWN}]
113145510Sdarrenr#
114145510Sdarrenr# NLSGRP	National Language Support files group. [${SHAREGRP}]
115145510Sdarrenr#
116145510Sdarrenr# NLSMODE	National Language Support files mode. [${NOBINMODE}]
117145510Sdarrenr#
118145510Sdarrenr# INCLUDEDIR	Base path for standard C include files [/usr/include]
119145510Sdarrenr
120145510Sdarrenr.if !target(__<bsd.own.mk>__)
121145510Sdarrenr__<bsd.own.mk>__:
122145510Sdarrenr
123145510Sdarrenr.include <bsd.opts.mk>		# options now here or src.opts.mk
124145510Sdarrenr
125145510Sdarrenr.if !defined(_WITHOUT_SRCCONF)
126145510Sdarrenr
127145510Sdarrenr.if ${MK_CTF} != "no"
128145510SdarrenrCTFCONVERT_CMD=	${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
129145510Sdarrenr.elif defined(.PARSEDIR) || (defined(MAKE_VERSION) && ${MAKE_VERSION} >= 5201111300)
130145510SdarrenrCTFCONVERT_CMD=
131145510Sdarrenr.else
132145510SdarrenrCTFCONVERT_CMD=	@:
133145510Sdarrenr.endif 
134145510Sdarrenr
135145510Sdarrenr.if ${MK_INSTALL_AS_USER} != "no"
136145510Sdarrenr.if !defined(_uid)
137145510Sdarrenr_uid!=	id -u
138145510Sdarrenr.export _uid
139145510Sdarrenr.endif
140145510Sdarrenr.if ${_uid} != 0
141145510Sdarrenr.if !defined(USER)
142145510Sdarrenr# Avoid exporting USER
143145510Sdarrenr.if !defined(_USER)
144145510Sdarrenr_USER!=	id -un
145145510Sdarrenr.export _USER
146145510Sdarrenr.endif
147145510SdarrenrUSER=	${_USER}
148145510Sdarrenr.endif
149145510Sdarrenr.if !defined(_gid)
150145510Sdarrenr_gid!=	id -g
151145510Sdarrenr.export _gid
152145510Sdarrenr.endif
153145510Sdarrenr.for x in BIN CONF DOC DTB INFO KMOD LIB MAN NLS SHARE
154145510Sdarrenr$xOWN=	${USER}
155145510Sdarrenr$xGRP=	${_gid}
156145510Sdarrenr.endfor
157145510Sdarrenr.endif
158145510Sdarrenr.endif
159145510Sdarrenr
160145510Sdarrenr.endif # !_WITHOUT_SRCCONF
161145510Sdarrenr
162145510Sdarrenr# Binaries
163145510SdarrenrBINOWN?=	root
164145510SdarrenrBINGRP?=	wheel
165145510SdarrenrBINMODE?=	555
166145510SdarrenrNOBINMODE?=	444
167145510Sdarrenr
168145510Sdarrenr.if defined(MODULES_WITH_WORLD)
169145510SdarrenrKMODDIR?=	/boot/modules
170145510Sdarrenr.else
171145510SdarrenrKMODDIR?=	/boot/kernel
172145510Sdarrenr.endif
173145510SdarrenrKMODOWN?=	${BINOWN}
174145510SdarrenrKMODGRP?=	${BINGRP}
175145510SdarrenrKMODMODE?=	${BINMODE}
176145510SdarrenrDTBDIR?=	/boot/dtb
177145510SdarrenrDTBOWN?=	root
178145510SdarrenrDTBGRP?=	wheel
179145510SdarrenrDTBMODE?=	444
180145510Sdarrenr
181145510SdarrenrLIBDIR?=	/usr/lib
182145510SdarrenrLIBCOMPATDIR?=	/usr/lib/compat
183145510SdarrenrLIBDATADIR?=	/usr/libdata
184145510SdarrenrLIBEXECDIR?=	/usr/libexec
185145510SdarrenrLINTLIBDIR?=	/usr/libdata/lint
186145510SdarrenrSHLIBDIR?=	${LIBDIR}
187145510SdarrenrLIBOWN?=	${BINOWN}
188145510SdarrenrLIBGRP?=	${BINGRP}
189145510SdarrenrLIBMODE?=	${NOBINMODE}
190145510Sdarrenr
191145510SdarrenrDEBUGDIR?=	/usr/lib/debug
192145510SdarrenrDEBUGMODE?=	${NOBINMODE}
193145510Sdarrenr
194145510Sdarrenr
195145510Sdarrenr# Share files
196145510SdarrenrSHAREDIR?=	/usr/share
197145510SdarrenrSHAREOWN?=	root
198145510SdarrenrSHAREGRP?=	wheel
199145510SdarrenrSHAREMODE?=	${NOBINMODE}
200145510Sdarrenr
201145510SdarrenrCONFDIR?=	/etc
202145510SdarrenrCONFOWN?=	root
203145510SdarrenrCONFGRP?=	wheel
204145510SdarrenrCONFMODE?=	644
205145510Sdarrenr
206145510SdarrenrMANDIR?=	${SHAREDIR}/man/man
207145510SdarrenrMANOWN?=	${SHAREOWN}
208145510SdarrenrMANGRP?=	${SHAREGRP}
209145510SdarrenrMANMODE?=	${NOBINMODE}
210145510Sdarrenr
211145510SdarrenrDOCDIR?=	${SHAREDIR}/doc
212145510SdarrenrDOCOWN?=	${SHAREOWN}
213145510SdarrenrDOCGRP?=	${SHAREGRP}
214145510SdarrenrDOCMODE?=	${NOBINMODE}
215145510Sdarrenr
216145510SdarrenrINFODIR?=	${SHAREDIR}/info
217145510SdarrenrINFOOWN?=	${SHAREOWN}
218145510SdarrenrINFOGRP?=	${SHAREGRP}
219145510SdarrenrINFOMODE?=	${NOBINMODE}
220145510Sdarrenr
221145510SdarrenrNLSDIR?=	${SHAREDIR}/nls
222145510SdarrenrNLSOWN?=	${SHAREOWN}
223145510SdarrenrNLSGRP?=	${SHAREGRP}
224145510SdarrenrNLSMODE?=	${NOBINMODE}
225145510Sdarrenr
226145510SdarrenrINCLUDEDIR?=	/usr/include
227145510Sdarrenr
228145510Sdarrenr#
229145510Sdarrenr# install(1) parameters.
230145510Sdarrenr#
231145510SdarrenrHRDLINK?=	-l h
232145510SdarrenrSYMLINK?=	-l s
233145510SdarrenrRSYMLINK?=	-l rs
234145510Sdarrenr
235145510SdarrenrINSTALL_LINK?=		${INSTALL} ${HRDLINK}
236145510SdarrenrINSTALL_SYMLINK?=	${INSTALL} ${SYMLINK}
237145510SdarrenrINSTALL_RSYMLINK?=	${INSTALL} ${RSYMLINK}
238145510Sdarrenr
239145510Sdarrenr# Common variables
240145510Sdarrenr.if !defined(DEBUG_FLAGS)
241145510SdarrenrSTRIP?=		-s
242145510Sdarrenr.endif
243145510Sdarrenr
244145510SdarrenrCOMPRESS_CMD?=	gzip -cn
245145510SdarrenrCOMPRESS_EXT?=	.gz
246145510Sdarrenr
247145510Sdarrenr# Set XZ_THREADS to 1 to disable multi-threading.
248145510SdarrenrXZ_THREADS?=	0
249145510Sdarrenr
250145510Sdarrenr.if !empty(XZ_THREADS)
251145510SdarrenrXZ_CMD?=	xz -T ${XZ_THREADS}
252145510Sdarrenr.else
253145510SdarrenrXZ_CMD?=	xz
254145510Sdarrenr.endif
255145510Sdarrenr
256145510Sdarrenr# Pointer to the top directory into which tests are installed.  Should not be
257145510Sdarrenr# overriden by Makefiles, but the user may choose to set this in src.conf(5).
258145510SdarrenrTESTSBASE?= /usr/tests
259145510Sdarrenr
260145510Sdarrenr# Compat for the moment -- old bsd.own.mk only included this when _WITHOUT_SRCCONF
261145510Sdarrenr# wasn't defined. bsd.ports.mk and friends depend on this behavior. Remove in 12.
262145510Sdarrenr.if !defined(_WITHOUT_SRCCONF)
263145510Sdarrenr.include <bsd.compiler.mk>
264145510Sdarrenr.endif # !_WITHOUT_SRCCONF
265145510Sdarrenr
266145510Sdarrenr.endif	# !target(__<bsd.own.mk>__)
267145510Sdarrenr