xref: /freebsd/stand/userboot/userboot/Makefile (revision 2b833162)
1# $FreeBSD$
2
3LOADER_MSDOS_SUPPORT?=	yes
4LOADER_UFS_SUPPORT?=	yes
5LOADER_CD9660_SUPPORT?=	no
6LOADER_EXT2FS_SUPPORT?=	no
7PIC=yes
8
9# Note: -nostdlib needs to be added to LDFLAGS before including defs.mk
10LDFLAGS+=	-nostdlib -Wl,-Bsymbolic
11
12.include <bsd.init.mk>
13
14SHLIB_NAME=	userboot_${LOADER_INTERP}.so
15STRIP=
16LIBDIR=		/boot
17
18.PATH:		${.CURDIR}/../userboot
19SRCS=		autoload.c
20SRCS+=		bcache.c
21SRCS+=		biossmap.c
22SRCS+=		bootinfo.c
23SRCS+=		bootinfo32.c
24SRCS+=		bootinfo64.c
25SRCS+=		conf.c
26SRCS+=		copy.c
27SRCS+=		devicename.c
28SRCS+=		elf32_freebsd.c
29SRCS+=		elf64_freebsd.c
30SRCS+=		host.c
31SRCS+=		main.c
32SRCS+=		userboot_cons.c
33SRCS+=		userboot_disk.c
34SRCS+=		vers.c
35SRCS+=		gfx_fb_stub.c
36
37CFLAGS+=	-Wall
38CFLAGS+=	-I${BOOTSRC}/userboot
39
40.if ${MK_LOADER_ZFS} != "no"
41CFLAGS.main.c+=	-I${BOOTSRC}/libsa/zfs
42CFLAGS.main.c+=	-I${SYSDIR}/contrib/openzfs/include
43CFLAGS.main.c+=	-I${SYSDIR}/contrib/openzfs/include/os/freebsd/zfs
44.endif
45
46CWARNFLAGS.main.c += -Wno-implicit-function-declaration
47CFLAGS.gfx_fb_stub.c += -I${SRCTOP}/contrib/pnglite -I${SRCTOP}/sys/teken
48
49NEWVERSWHAT=	"User boot ${LOADER_INTERP}" ${MACHINE_CPUARCH}
50VERSION_FILE=	${.CURDIR}/../userboot/version
51
52.if ${LOADER_INTERP} == ${LOADER_DEFAULT_INTERP}
53LINKS+=		${BINDIR}/${SHLIB_NAME} ${BINDIR}/userboot.so
54.endif
55
56.if ${MK_LOADER_ZFS} != "no"
57CFLAGS+=	-DUSERBOOT_ZFS_SUPPORT
58HAVE_ZFS=yes
59.endif
60
61HELP_FILENAME=	loader.help.userboot
62
63# Always add MI sources
64.include	"${BOOTSRC}/loader.mk"
65CFLAGS+=	-I.
66DPADD+=		${LDR_INTERP} ${LIBSA}
67LDADD+=		${LDR_INTERP} ${LIBSA}
68
69.include <bsd.lib.mk>
70