Makefile revision 278557
1# $FreeBSD: stable/10/share/examples/Makefile 278557 2015-02-11 07:21:16Z ngie $
2#
3# Doing a make install builds /usr/share/examples
4
5.include <bsd.own.mk>
6
7LDIRS=	BSD_daemon \
8	FreeBSD_version \
9	IPv6 \
10	bootforth \
11	csh \
12	diskless \
13	drivers \
14	etc \
15	find_interface \
16	ibcs2 \
17	indent \
18	ipfw \
19	jails \
20	kld \
21	libusb20 \
22	libvgl \
23	mdoc \
24	netgraph \
25	perfmon \
26	ppi \
27	ppp \
28	printing \
29	ses \
30	scsi_target \
31	sunrpc
32
33XFILES=	BSD_daemon/FreeBSD.pfa \
34	BSD_daemon/README \
35	BSD_daemon/beastie.eps \
36	BSD_daemon/beastie.fig \
37	BSD_daemon/eps.patch \
38	BSD_daemon/poster.sh \
39	FreeBSD_version/FreeBSD_version.c \
40	FreeBSD_version/Makefile \
41	FreeBSD_version/README \
42	IPv6/USAGE \
43	bootforth/README \
44	bootforth/boot.4th \
45	bootforth/frames.4th \
46	bootforth/loader.rc \
47	bootforth/menu.4th \
48	bootforth/menuconf.4th \
49	bootforth/screen.4th \
50	csh/dot.cshrc \
51	diskless/ME \
52	diskless/README.BOOTP \
53	diskless/README.TEMPLATING \
54	diskless/clone_root \
55	drivers/README \
56	drivers/make_device_driver.sh \
57	drivers/make_pseudo_driver.sh \
58	etc/README.examples \
59	etc/bsd-style-copyright \
60	etc/make.conf \
61	find_interface/Makefile \
62	find_interface/README \
63	find_interface/find_interface.c \
64	ibcs2/README \
65	ibcs2/hello.uu \
66	indent/indent.pro \
67	ipfw/change_rules.sh \
68	jails/README \
69	kld/Makefile \
70	kld/cdev/Makefile \
71	kld/cdev/README \
72	kld/cdev/module/Makefile \
73	kld/cdev/module/cdev.c \
74	kld/cdev/module/cdev.h \
75	kld/cdev/module/cdevmod.c \
76	kld/cdev/test/Makefile \
77	kld/cdev/test/testcdev.c \
78	kld/dyn_sysctl/Makefile \
79	kld/dyn_sysctl/README \
80	kld/dyn_sysctl/dyn_sysctl.c \
81	kld/firmware/Makefile \
82	kld/firmware/README \
83	kld/firmware/fwconsumer/Makefile \
84	kld/firmware/fwconsumer/fw_consumer.c \
85	kld/firmware/fwimage/Makefile \
86	kld/firmware/fwimage/firmware.img.uu \
87	kld/khelp/Makefile \
88	kld/khelp/README \
89	kld/khelp/h_example.c \
90	kld/syscall/Makefile \
91	kld/syscall/module/Makefile \
92	kld/syscall/module/syscall.c \
93	kld/syscall/test/Makefile \
94	kld/syscall/test/call.c \
95	libusb20/Makefile \
96	libusb20/README \
97	libusb20/util.c \
98	libusb20/util.h \
99	libusb20/bulk.c \
100	libusb20/control.c \
101	libvgl/Makefile \
102	libvgl/demo.c \
103	mdoc/POSIX-copyright \
104	mdoc/deshallify.sh \
105	mdoc/example.1 \
106	mdoc/example.3 \
107	mdoc/example.4 \
108	mdoc/example.9 \
109	netgraph/ether.bridge \
110	netgraph/frame_relay \
111	netgraph/ngctl \
112	netgraph/raw \
113	netgraph/udp.tunnel \
114	netgraph/virtual.chain \
115	netgraph/virtual.lan \
116	perfmon/Makefile \
117	perfmon/README \
118	perfmon/perfmon.c \
119	ppi/Makefile \
120	ppi/ppilcd.c \
121	ppp/chap-auth \
122	ppp/login-auth \
123	ppp/ppp.conf.sample \
124	ppp/ppp.conf.span-isp \
125	ppp/ppp.conf.span-isp.working \
126	ppp/ppp.linkdown.sample \
127	ppp/ppp.linkdown.span-isp \
128	ppp/ppp.linkdown.span-isp.working \
129	ppp/ppp.linkup.sample \
130	ppp/ppp.linkup.span-isp \
131	ppp/ppp.linkup.span-isp.working \
132	ppp/ppp.secret.sample \
133	ppp/ppp.secret.span-isp \
134	ppp/ppp.secret.span-isp.working \
135	printing/README \
136	printing/diablo-if-net \
137	printing/hpdf \
138	printing/hpif \
139	printing/hpof \
140	printing/hprf \
141	printing/hpvf \
142	printing/if-simple \
143	printing/if-simpleX \
144	printing/ifhp \
145	printing/make-ps-header \
146	printing/netprint \
147	printing/psdf \
148	printing/psdfX \
149	printing/psif \
150	printing/pstf \
151	printing/pstfX \
152	ses/Makefile \
153	ses/Makefile.inc \
154	ses/getencstat/Makefile \
155	ses/getencstat/getencstat.0 \
156	ses/sesd/Makefile \
157	ses/sesd/sesd.0 \
158	ses/setencstat/Makefile \
159	ses/setencstat/setencstat.0 \
160	ses/setobjstat/Makefile \
161	ses/setobjstat/setobjstat.0 \
162	ses/srcs/chpmon.c \
163	ses/srcs/eltsub.c \
164	ses/srcs/eltsub.h \
165	ses/srcs/getencstat.c \
166	ses/srcs/getnobj.c \
167	ses/srcs/getobjmap.c \
168	ses/srcs/getobjstat.c \
169	ses/srcs/inienc.c \
170	ses/srcs/sesd.c \
171	ses/srcs/setencstat.c \
172	ses/srcs/setobjstat.c \
173	scsi_target/Makefile \
174	scsi_target/scsi_target.c \
175	scsi_target/scsi_target.h \
176	scsi_target/scsi_target.8 \
177	scsi_target/scsi_cmds.c \
178	sunrpc/Makefile \
179	sunrpc/dir/Makefile \
180	sunrpc/dir/dir.x \
181	sunrpc/dir/dir_proc.c \
182	sunrpc/dir/rls.c \
183	sunrpc/msg/Makefile \
184	sunrpc/msg/msg.x \
185	sunrpc/msg/msg_proc.c \
186	sunrpc/msg/printmsg.c \
187	sunrpc/msg/rprintmsg.c \
188	sunrpc/sort/Makefile \
189	sunrpc/sort/rsort.c \
190	sunrpc/sort/sort.x \
191	sunrpc/sort/sort_proc.c
192
193BINDIR= ${SHAREDIR}/examples
194
195NO_OBJ=
196
197.if ${MK_HAST} != "no"
198LDIRS+=		hast
199XFILES+=	hast/ucarp.sh \
200		hast/ucarp_down.sh \
201		hast/ucarp_up.sh \
202		hast/vip-down.sh \
203		hast/vip-up.sh
204.endif
205
206.if ${MACHINE_CPUARCH} == "amd64"
207.if ${MK_BHYVE} != "no"
208LDIRS+=		bhyve
209XFILES+=	bhyve/vmrun.sh
210.endif
211.endif
212
213# Define SHARED to indicate whether you want symbolic links to the system
214# source (``symlinks''), or a separate copy (``copies''); (latter useful
215# in environments where it's not possible to keep /sys publicly readable)
216SHARED?=	copies
217
218beforeinstall: ${SHARED} etc-examples
219.ORDER: ${SHARED} etc-examples
220
221copies:
222.for i in ${LDIRS}
223	if [ -L ${DESTDIR}${BINDIR}/$i ]; then \
224		rm -f ${DESTDIR}${BINDIR}/$i; \
225	fi
226.endfor
227	mtree -deU ${MTREE_FOLLOWS_SYMLINKS} \
228	    -f ${.CURDIR}/../../etc/mtree/BSD.usr.dist -p ${DESTDIR}/usr
229.for file in ${XFILES}
230	${INSTALL} -o ${SHAREOWN} -g ${SHAREGRP} -m ${SHAREMODE} \
231		${.CURDIR}/${file} ${DESTDIR}${BINDIR}/${file}
232.endfor
233
234symlinks:
235.for i in ${LDIRS}
236	rm -rf ${DESTDIR}${BINDIR}/$i
237	ln -s ${.CURDIR}/$i ${DESTDIR}${BINDIR}/$i
238.endfor
239
240etc-examples:
241.if ${SHARED} != "symlinks"
242	(cd ${.CURDIR}/../../etc; ${MAKE} etc-examples)
243.endif
244
245.if ${SHARED} != "symlinks"
246SUBDIR=	smbfs
247.if ${MK_IPFILTER} != "no"
248SUBDIR+=ipfilter
249.endif
250.if ${MK_PF} != "no"
251SUBDIR+=pf
252.endif
253.endif
254
255.if ${MK_TESTS} != "no"
256SUBDIR+=tests
257.endif
258
259.include <bsd.subdir.mk>
260