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