xref: /freebsd/share/examples/Makefile (revision 901efd8bb9b9efe34085abc2d5ab36d21378b1dd)
17f3dea24SPeter Wemm# $FreeBSD$
299e4ba42SGarrett Wollman#
399e4ba42SGarrett Wollman# Doing a make install builds /usr/share/examples
499e4ba42SGarrett Wollman
5c6063d0dSWarner Losh.include <src.opts.mk>
6e1fe3dbaSRuslan Ermilov
7a5921bc3SGlen BarberPACKAGE=examples
8a5921bc3SGlen BarberFILESDIR=	${SHAREDIR}/examples
9a5921bc3SGlen Barber
10aed191e5SRuslan ErmilovLDIRS=	BSD_daemon \
11aed191e5SRuslan Ermilov	FreeBSD_version \
12aed191e5SRuslan Ermilov	IPv6 \
13aed191e5SRuslan Ermilov	bootforth \
1412330831SEitan Adler	csh \
15aed191e5SRuslan Ermilov	diskless \
16aed191e5SRuslan Ermilov	drivers \
17aed191e5SRuslan Ermilov	etc \
18aed191e5SRuslan Ermilov	find_interface \
1973577bf0SRyan Moeller	flua \
20ee9c0bb3SAndriy Gapon	indent \
21aed191e5SRuslan Ermilov	ipfw \
223082dd3fSJulian Elischer	jails \
23aed191e5SRuslan Ermilov	kld \
24aed191e5SRuslan Ermilov	libvgl \
25aed191e5SRuslan Ermilov	mdoc \
26aed191e5SRuslan Ermilov	netgraph \
27aed191e5SRuslan Ermilov	perfmon \
28aed191e5SRuslan Ermilov	ppi \
29aed191e5SRuslan Ermilov	ppp \
30aed191e5SRuslan Ermilov	printing \
31aed191e5SRuslan Ermilov	ses \
32aed191e5SRuslan Ermilov	scsi_target \
3321d85465SGoran Mekić	sound \
3412fe6c35SEdward Tomasz Napierala	sunrpc \
353191e571SMarcelo Araujo	ypldap
36ca6aa03bSPoul-Henning Kamp
37aed191e5SRuslan Ermilov
385e37f7b3SBrad DavisSE_DIRS+=	BSD_daemon
395e37f7b3SBrad DavisSE_BSD_DAEMON= \
405e37f7b3SBrad Davis	FreeBSD.pfa \
415e37f7b3SBrad Davis	README \
425e37f7b3SBrad Davis	beastie.eps \
435e37f7b3SBrad Davis	beastie.fig \
445e37f7b3SBrad Davis	eps.patch \
455e37f7b3SBrad Davis	poster.sh
460341ccf2SEnji Cooper
4702629e46SEnji Cooper.if ${MACHINE_CPUARCH} == "amd64"
4802629e46SEnji Cooper.if ${MK_BHYVE} != "no"
4902629e46SEnji CooperLDIRS+=		bhyve
505e37f7b3SBrad DavisSE_DIRS+=	bhyve
515e37f7b3SBrad DavisSE_BHYVE=	vmrun.sh
5272392b20SBaptiste DaroussinPACKAGE_bhyve/vmrun.sh=	bhyve
5302629e46SEnji Cooper.endif
5402629e46SEnji Cooper.endif
5502629e46SEnji Cooper
565e37f7b3SBrad DavisSE_DIRS+=	FreeBSD_version
575e37f7b3SBrad DavisSE_FREEBSD_VERSION= \
585e37f7b3SBrad Davis	FreeBSD_version.c \
595e37f7b3SBrad Davis	Makefile \
605e37f7b3SBrad Davis	README
6115f3c66cSMarcel Moolenaar
625e37f7b3SBrad DavisSE_DIRS+=	IPv6
635e37f7b3SBrad DavisSE_IPV6=	USAGE
645e37f7b3SBrad Davis
655e37f7b3SBrad DavisSE_DIRS+=	bootforth
665e37f7b3SBrad DavisSE_BOOTFORTH= \
675e37f7b3SBrad Davis	README \
685e37f7b3SBrad Davis	boot.4th \
695e37f7b3SBrad Davis	frames.4th \
705e37f7b3SBrad Davis	loader.rc \
715e37f7b3SBrad Davis	menu.4th \
725e37f7b3SBrad Davis	menuconf.4th \
735e37f7b3SBrad Davis	screen.4th
745e37f7b3SBrad Davis
755e37f7b3SBrad DavisSE_DIRS+=	csh
765e37f7b3SBrad DavisSE_CSH=	dot.cshrc
775e37f7b3SBrad Davis
785e37f7b3SBrad DavisSE_DIRS+=	diskless
795e37f7b3SBrad DavisSE_DISKLESS= \
805e37f7b3SBrad Davis	ME \
815e37f7b3SBrad Davis	README.BOOTP \
825e37f7b3SBrad Davis	README.TEMPLATING \
835e37f7b3SBrad Davis	clone_root
845e37f7b3SBrad Davis
855e37f7b3SBrad DavisSE_DIRS+=	drivers
865e37f7b3SBrad DavisSE_DRIVERS= \
875e37f7b3SBrad Davis	README \
885e37f7b3SBrad Davis	make_device_driver.sh \
895e37f7b3SBrad Davis	make_pseudo_driver.sh
905e37f7b3SBrad Davis
915e37f7b3SBrad DavisSE_DIRS+=	etc
925e37f7b3SBrad DavisSE_ETC= \
935e37f7b3SBrad Davis	README.examples \
945e37f7b3SBrad Davis	bsd-style-copyright \
955e37f7b3SBrad Davis	make.conf
965e37f7b3SBrad Davis
975e37f7b3SBrad DavisSE_DIRS+=	find_interface
985e37f7b3SBrad DavisSE_FIND_INTERFACE= \
995e37f7b3SBrad Davis	Makefile \
1005e37f7b3SBrad Davis	README \
1015e37f7b3SBrad Davis	find_interface.c
1025e37f7b3SBrad Davis
10373577bf0SRyan MoellerSE_DIRS+=	flua
10473577bf0SRyan MoellerSE_FLUA=	libjail.lua
10573577bf0SRyan Moeller
1065e37f7b3SBrad DavisSE_DIRS+=	indent
1075e37f7b3SBrad DavisSE_INDENT=	indent.pro
1085e37f7b3SBrad Davis
1095e37f7b3SBrad Davis.if ${MK_IPFILTER} != "no"
1105e37f7b3SBrad DavisSUBDIR+=	ipfilter
1115e37f7b3SBrad Davis.endif
1125e37f7b3SBrad Davis
1135e37f7b3SBrad DavisSE_DIRS+=	ipfw
1145e37f7b3SBrad DavisSE_IPFW=	change_rules.sh
1155e37f7b3SBrad Davis
1165e37f7b3SBrad DavisSE_DIRS+=	jails
1175e37f7b3SBrad DavisSE_JAILS= \
1185e37f7b3SBrad Davis	README \
1195e37f7b3SBrad Davis	VIMAGE \
1205e37f7b3SBrad Davis	jail.xxx.conf \
1215e37f7b3SBrad Davis	jib \
1225e37f7b3SBrad Davis	jng \
1235e37f7b3SBrad Davis	rc.conf.jails \
1245e37f7b3SBrad Davis	rcjail.xxx.conf
1255e37f7b3SBrad Davis
1265e37f7b3SBrad DavisSE_DIRS+=	kld
1275e37f7b3SBrad DavisSE_KLD=	Makefile
1285e37f7b3SBrad Davis
1295e37f7b3SBrad DavisSE_DIRS+=	kld/cdev
1305e37f7b3SBrad DavisSE_KLD_CDEV= \
1315e37f7b3SBrad Davis	Makefile \
1325e37f7b3SBrad Davis	README \
1335e37f7b3SBrad Davis
1345e37f7b3SBrad DavisSE_DIRS+=	kld/cdev/module
1355e37f7b3SBrad DavisSE_KLD_CDEV_MODULE= \
1365e37f7b3SBrad Davis	Makefile \
1375e37f7b3SBrad Davis	cdev.c \
1385e37f7b3SBrad Davis	cdev.h \
1395e37f7b3SBrad Davis	cdevmod.c
1405e37f7b3SBrad Davis
1415e37f7b3SBrad DavisSE_DIRS+=	kld/cdev/test
1425e37f7b3SBrad DavisSE_KLD_CDEV_TEST= \
1435e37f7b3SBrad Davis	Makefile \
1445e37f7b3SBrad Davis	testcdev.c
1455e37f7b3SBrad Davis
1465e37f7b3SBrad DavisSE_DIRS+=	kld/dyn_sysctl
1475e37f7b3SBrad DavisSE_KLD_DYN_SYSCTL= \
1485e37f7b3SBrad Davis	Makefile \
1495e37f7b3SBrad Davis	README \
1505e37f7b3SBrad Davis	dyn_sysctl.c
1515e37f7b3SBrad Davis
1525e37f7b3SBrad DavisSE_DIRS+=	kld/firmware
1535e37f7b3SBrad DavisSE_KLD_FIRMWARE= \
1545e37f7b3SBrad Davis	Makefile \
1555e37f7b3SBrad Davis	README
1565e37f7b3SBrad Davis
1575e37f7b3SBrad DavisSE_DIRS+=	kld/firmware/fwconsumer
1585e37f7b3SBrad DavisSE_KLD_FIRMWARE_FWCONSUMER= \
1595e37f7b3SBrad Davis	Makefile \
1605e37f7b3SBrad Davis	fw_consumer.c
1615e37f7b3SBrad Davis
1625e37f7b3SBrad DavisSE_DIRS+=	kld/firmware/fwimage
1635e37f7b3SBrad DavisSE_KLD_FIRMWARE_FWIMAGE= \
1645e37f7b3SBrad Davis	Makefile \
1655e37f7b3SBrad Davis	firmware.img.uu
1665e37f7b3SBrad Davis
1675e37f7b3SBrad DavisSE_DIRS+=	kld/khelp
1685e37f7b3SBrad DavisSE_KLD_KHELP= \
1695e37f7b3SBrad Davis	Makefile \
1705e37f7b3SBrad Davis	README \
1715e37f7b3SBrad Davis	h_example.c
1725e37f7b3SBrad Davis
1735e37f7b3SBrad DavisSE_DIRS+=	kld/syscall
1745e37f7b3SBrad DavisSE_KLD_SYSCALL=	Makefile
1755e37f7b3SBrad Davis
1765e37f7b3SBrad DavisSE_DIRS+=	kld/syscall/module
1775e37f7b3SBrad DavisSE_KLD_SYSCALL_MODULE= \
1785e37f7b3SBrad Davis	Makefile \
1795e37f7b3SBrad Davis	syscall.c
1805e37f7b3SBrad Davis
1815e37f7b3SBrad DavisSE_DIRS+=	kld/syscall/test
1825e37f7b3SBrad DavisSE_KLD_SYSCALL_TEST= \
1835e37f7b3SBrad Davis	Makefile \
1845e37f7b3SBrad Davis	call.c
1855e37f7b3SBrad Davis
1865e37f7b3SBrad DavisSE_DIRS+=	libvgl
1875e37f7b3SBrad DavisSE_LIBVGL=	\
1885e37f7b3SBrad Davis	Makefile \
1895e37f7b3SBrad Davis	demo.c
1905e37f7b3SBrad Davis
1915e37f7b3SBrad DavisSE_DIRS+=	mdoc
1925e37f7b3SBrad DavisSE_MDOC= \
1935e37f7b3SBrad Davis	POSIX-copyright \
1945e37f7b3SBrad Davis	deshallify.sh \
1955e37f7b3SBrad Davis	example.1 \
1965e37f7b3SBrad Davis	example.3 \
1975e37f7b3SBrad Davis	example.4 \
1985e37f7b3SBrad Davis	example.9
1995e37f7b3SBrad Davis
2005e37f7b3SBrad DavisSE_DIRS+=	netgraph
2015e37f7b3SBrad DavisSE_NETGRAPH= \
2025e37f7b3SBrad Davis	ether.bridge \
2035e37f7b3SBrad Davis	frame_relay \
2045e37f7b3SBrad Davis	ngctl \
2055e37f7b3SBrad Davis	raw \
2065e37f7b3SBrad Davis	udp.tunnel \
2075e37f7b3SBrad Davis	virtual.chain \
2085e37f7b3SBrad Davis	virtual.lan \
2095e37f7b3SBrad Davis
2105e37f7b3SBrad DavisSE_DIRS+=	perfmon
2115e37f7b3SBrad DavisSE_PERFMON= \
2125e37f7b3SBrad Davis	Makefile \
2135e37f7b3SBrad Davis	README \
2145e37f7b3SBrad Davis	perfmon.c \
2155e37f7b3SBrad Davis
2165e37f7b3SBrad Davis.if ${MK_PF} != "no"
2175e37f7b3SBrad DavisSE_DIRS+=	pf
218*901efd8bSSimon J. Gerraty.if ${MK_STAGING} == "no"
2195e37f7b3SBrad DavisSE_PF= \
2205e37f7b3SBrad Davis	ackpri \
2215e37f7b3SBrad Davis	faq-example1 \
2225e37f7b3SBrad Davis	faq-example2 \
2235e37f7b3SBrad Davis	faq-example3 \
2245e37f7b3SBrad Davis	pf.conf \
2255e37f7b3SBrad Davis	queue1 \
2265e37f7b3SBrad Davis	queue2 \
2275e37f7b3SBrad Davis	queue3 \
2285e37f7b3SBrad Davis	queue4 \
2295e37f7b3SBrad Davis	spamd
2305e37f7b3SBrad Davis.endif
231*901efd8bSSimon J. Gerraty.endif
2325e37f7b3SBrad Davis
2335e37f7b3SBrad DavisSE_DIRS+=	ppi
2345e37f7b3SBrad DavisSE_PPI= \
2355e37f7b3SBrad Davis	Makefile \
2365e37f7b3SBrad Davis	ppilcd.c
2375e37f7b3SBrad Davis
2385e37f7b3SBrad DavisSE_DIRS+=	ppp
2395e37f7b3SBrad DavisSE_PPP= \
2405e37f7b3SBrad Davis	chap-auth \
2415e37f7b3SBrad Davis	login-auth \
2425e37f7b3SBrad Davis	ppp.conf.sample \
2435e37f7b3SBrad Davis	ppp.conf.span-isp \
2445e37f7b3SBrad Davis	ppp.conf.span-isp.working \
2455e37f7b3SBrad Davis	ppp.linkdown.sample \
2465e37f7b3SBrad Davis	ppp.linkdown.span-isp \
2475e37f7b3SBrad Davis	ppp.linkdown.span-isp.working \
2485e37f7b3SBrad Davis	ppp.linkup.sample \
2495e37f7b3SBrad Davis	ppp.linkup.span-isp \
2505e37f7b3SBrad Davis	ppp.linkup.span-isp.working \
2515e37f7b3SBrad Davis	ppp.secret.sample \
2525e37f7b3SBrad Davis	ppp.secret.span-isp \
2535e37f7b3SBrad Davis	ppp.secret.span-isp.working
2545e37f7b3SBrad Davis
2555e37f7b3SBrad DavisSE_DIRS+=	printing
2565e37f7b3SBrad DavisSE_PRINTING= \
2575e37f7b3SBrad Davis	diablo-if-net \
2585e37f7b3SBrad Davis	hpdf \
2595e37f7b3SBrad Davis	hpif \
2605e37f7b3SBrad Davis	hpof \
2615e37f7b3SBrad Davis	hprf \
2625e37f7b3SBrad Davis	hpvf \
2635e37f7b3SBrad Davis	if-simple \
2645e37f7b3SBrad Davis	if-simpleX \
2655e37f7b3SBrad Davis	ifhp \
2665e37f7b3SBrad Davis	make-ps-header \
2675e37f7b3SBrad Davis	netprint \
2685e37f7b3SBrad Davis	psdf \
2695e37f7b3SBrad Davis	psdfX \
2705e37f7b3SBrad Davis	psif \
2715e37f7b3SBrad Davis	pstf \
2725e37f7b3SBrad Davis	pstfX
2735e37f7b3SBrad Davis
2745e37f7b3SBrad DavisSE_DIRS+=	ses
2755e37f7b3SBrad DavisSE_SES= \
2765e37f7b3SBrad Davis	Makefile \
2775e37f7b3SBrad Davis	Makefile.inc
2785e37f7b3SBrad Davis
2795e37f7b3SBrad DavisSE_DIRS+=	ses/getencstat
2805e37f7b3SBrad DavisSE_SES_GETENCSTAT= \
2815e37f7b3SBrad Davis	Makefile \
2825e37f7b3SBrad Davis	getencstat.0
2835e37f7b3SBrad Davis
2845e37f7b3SBrad DavisSE_DIRS+=	ses/sesd
2855e37f7b3SBrad DavisSE_SES_SESD= \
2865e37f7b3SBrad Davis	Makefile \
2875e37f7b3SBrad Davis	sesd.0
2885e37f7b3SBrad Davis
2895e37f7b3SBrad DavisSE_DIRS+=	ses/setencstat
2905e37f7b3SBrad DavisSE_SES_SETENCSTAT= \
2915e37f7b3SBrad Davis	Makefile \
2925e37f7b3SBrad Davis	setencstat.0
2935e37f7b3SBrad Davis
2945e37f7b3SBrad DavisSE_DIRS+=	ses/setobjstat
2955e37f7b3SBrad DavisSE_SES_SETOBJSTAT= \
2965e37f7b3SBrad Davis	Makefile \
2975e37f7b3SBrad Davis	setobjstat.0
2985e37f7b3SBrad Davis
2995e37f7b3SBrad DavisSE_DIRS+=	ses/srcs
3005e37f7b3SBrad DavisSE_SES_SRCS= \
3015e37f7b3SBrad Davis	chpmon.c \
3025e37f7b3SBrad Davis	eltsub.c \
3035e37f7b3SBrad Davis	eltsub.h \
3045e37f7b3SBrad Davis	getencstat.c \
3055e37f7b3SBrad Davis	getnobj.c \
3065e37f7b3SBrad Davis	getobjmap.c \
3075e37f7b3SBrad Davis	getobjstat.c \
3085e37f7b3SBrad Davis	inienc.c \
3095e37f7b3SBrad Davis	sesd.c \
3105e37f7b3SBrad Davis	setencstat.c \
3115e37f7b3SBrad Davis	setobjstat.c
3125e37f7b3SBrad Davis
3135e37f7b3SBrad DavisSE_DIRS+=	scsi_target
3145e37f7b3SBrad DavisSE_SCSI_TARGET= \
3155e37f7b3SBrad Davis	Makefile \
3165e37f7b3SBrad Davis	scsi_target.c \
3175e37f7b3SBrad Davis	scsi_target.h \
3185e37f7b3SBrad Davis	scsi_target.8 \
3195e37f7b3SBrad Davis	scsi_cmds.c
3205e37f7b3SBrad Davis
32121d85465SGoran MekićSE_DIRS+=	sound
32221d85465SGoran MekićSE_SOUND= \
32321d85465SGoran Mekić	basic.c \
32421d85465SGoran Mekić	ossinit.h \
325f092c21bSGoran Mekic	ossmidi.h \
326f092c21bSGoran Mekic	midi.c \
32721d85465SGoran Mekić	README
32821d85465SGoran Mekić
3295e37f7b3SBrad DavisSE_DIRS+=	sunrpc
3305e37f7b3SBrad DavisSE_SUNRPC=	Makefile
3315e37f7b3SBrad Davis
3325e37f7b3SBrad DavisSE_DIRS+=	sunrpc/dir
3335e37f7b3SBrad DavisSE_SUNRPC_DIR= \
3345e37f7b3SBrad Davis	Makefile \
3355e37f7b3SBrad Davis	dir.x \
3365e37f7b3SBrad Davis	dir_proc.c \
3375e37f7b3SBrad Davis	rls.c
3385e37f7b3SBrad Davis
3395e37f7b3SBrad DavisSE_DIRS+=	sunrpc/msg
3405e37f7b3SBrad DavisSE_SUNRPC_MSG= \
3415e37f7b3SBrad Davis	Makefile \
3425e37f7b3SBrad Davis	msg.x \
3435e37f7b3SBrad Davis	msg_proc.c \
3445e37f7b3SBrad Davis	printmsg.c \
3455e37f7b3SBrad Davis	rprintmsg.c
3465e37f7b3SBrad Davis
3475e37f7b3SBrad DavisSE_DIRS+=	sunrpc/sort
3485e37f7b3SBrad DavisSE_SUNRPC_SORT= \
3495e37f7b3SBrad Davis	Makefile \
3505e37f7b3SBrad Davis	rsort.c \
3515e37f7b3SBrad Davis	sort.x \
3525e37f7b3SBrad Davis	sort_proc.c
3535e37f7b3SBrad Davis
35401cebb69SSean Bruno.if ${MK_EFI} != "no"
35501cebb69SSean BrunoLDIRS+=		uefisign
3565e37f7b3SBrad DavisSE_DIRS+=	uefisign
3575e37f7b3SBrad DavisSE_UEFISIGN=	uefikeys
35801cebb69SSean Bruno.endif
3595e37f7b3SBrad Davis
3605e37f7b3SBrad DavisSE_DIRS+=	ypldap
3615e37f7b3SBrad DavisSE_YPLDAP=	ypldap.conf
3625e37f7b3SBrad Davis
3635e37f7b3SBrad Davis.if ${MK_HAST} != "no"
3645e37f7b3SBrad DavisLDIRS+=		hast
3655e37f7b3SBrad DavisSE_DIRS+=	hast
3665e37f7b3SBrad DavisSE_HAST=	ucarp.sh \
3675e37f7b3SBrad Davis	ucarp_down.sh \
3685e37f7b3SBrad Davis	ucarp_up.sh \
3695e37f7b3SBrad Davis	vip-down.sh \
3705e37f7b3SBrad Davis	vip-up.sh
3715e37f7b3SBrad Davis.endif
3725e37f7b3SBrad Davis
3735e37f7b3SBrad Davis.if ${MK_USB} != "no"
3745e37f7b3SBrad DavisLDIRS+=		libusb20
3755e37f7b3SBrad DavisSE_DIRS+=	libusb20
3765e37f7b3SBrad DavisSE_LIBUSB20= \
3775e37f7b3SBrad Davis	Makefile \
3785e37f7b3SBrad Davis	README \
3795e37f7b3SBrad Davis	util.c \
3805e37f7b3SBrad Davis	util.h \
3815e37f7b3SBrad Davis	bulk.c \
3825e37f7b3SBrad Davis	control.c
3835e37f7b3SBrad Davis.endif
3845e37f7b3SBrad Davis
3855e37f7b3SBrad Davis
3865e37f7b3SBrad Davis# Setup the FILES_GROUPS for all DIRS variables above.
3875e37f7b3SBrad Davis# The variables are prefixed by 'SE_' to prevent variable collision in
3885e37f7b3SBrad Davis# other parts of the system
3895e37f7b3SBrad Davis.for d in ${SE_DIRS}
3905e37f7b3SBrad Davis.for f in ${SE_${d:tu:C/\//_/g}}
3915e37f7b3SBrad DavisSER_${d:tu:C/\//_/g}+=	${d}/${f}
3925e37f7b3SBrad Davis.endfor
3935e37f7b3SBrad DavisFILESGROUPS+=	SER_${d:tu:C/\//_/g}
3945e37f7b3SBrad DavisSER_${d:tu:C/\//_/g}DIR+=	${SHAREDIR}/examples/${d}
3955e37f7b3SBrad Davis.endfor
3965e37f7b3SBrad Davis
3975e37f7b3SBrad DavisBINDIR= ${SHAREDIR}/examples
3985e37f7b3SBrad Davis
399a8b94f3dSEmmanuel Vadotbeforeinstall: copies
4005e37f7b3SBrad DavisMETA_TARGETS+=	copies
401c19cbc80SBruce Evans
40294086ceaSBryan Drewerycopies:
403aed191e5SRuslan Ermilov.for i in ${LDIRS}
40472060281SRuslan Ermilov	if [ -L ${DESTDIR}${BINDIR}/$i ]; then \
405aed191e5SRuslan Ermilov		rm -f ${DESTDIR}${BINDIR}/$i; \
406aed191e5SRuslan Ermilov	fi
407eb646a75SBruce Evans.endfor
40815f3c66cSMarcel Moolenaar
4095e37f7b3SBrad DavisSUBDIR+=	smbfs
4102600f5b8SDarren Reed
411d511b20aSEnji CooperHAS_TESTS=
4124b330699SEnji CooperSUBDIR.${MK_TESTS}+= tests
41321203fddSJulio Merino
414aa92269eSBryan DrewerySUBDIR_PARALLEL=
415aa92269eSBryan Drewery
416d5cc0579SBryan Drewery.include <bsd.prog.mk>
417