# Makefile - generated from ../bootbin.conf by crunchgen 1.3

.include <bsd.own.mk>
CFLAGS+=$(NOPIE_FLAGS)
CFLAGS+=-Oz
CFLAGS+=-fno-stack-protector
CFLAGS+=-fno-unwind-tables
LDFLAGS+=$(NOPIE_LDFLAGS)
STRIP?=strip
LINK=$(LD) -dc -r ${LDFLAGS}
LIBS= -L/usr/lib -lutil
CRUNCHED_OBJS= init.lo ksh.lo ln.lo disklabel.lo mount.lo mount_ffs.lo mount_cd9660.lo mount_msdos.lo mount_ntfs.lo mount_ext2fs.lo mount_vnd.lo vnconfig.lo umount.lo sed.lo sleep.lo sysctl.lo swapctl.lo
SUBMAKE_TARGETS= init_make ksh_make ln_make disklabel_make mount_make mount_ffs_make mount_cd9660_make mount_msdos_make mount_ntfs_make mount_ext2fs_make mount_vnd_make vnconfig_make umount_make sed_make sleep_make sysctl_make swapctl_make

CLIB=
.if defined(SRCLIBDIR)
. for lib in ${LIBS:M-l*:S/-l//}
.  if exists(${SRCLIBDIR}/lib${lib})
CLIB+=lib${lib}.a
.  endif
. endfor
.endif

bootbin: bootbin.o $(CRUNCHED_OBJS) ${CLIB}
	$(CC) -static -L. ${LDFLAGS} -o $@ bootbin.o $(CRUNCHED_OBJS) $(LIBS)
	$(STRIP) bootbin

.if !empty(CLIB)
.SUFFIXES: .a .olist
.olist.a:
	@rm -f ${.TARGET}
	@cd ${SRCLIBDIR}/${.PREFIX} &&				\
	${MAKE} DIST_CFLAGS="${CFLAGS}"				\
	    DIST_OBJS="`cat ${.OBJDIR}/${.IMPSRC}`"		\
	    DIST_LIB=${.OBJDIR}/${.TARGET} ${.OBJDIR}/${.TARGET}

bootbin.map: bootbin.o $(CRUNCHED_OBJS)
	$(CC) -static ${LDFLAGS} -o bootbin.o.o bootbin.o $(CRUNCHED_OBJS) \
	    $(LIBS) -Wl,--trace | sed -e 's/^(\(..*\))\(..*\)/\1(\2)/' >${.TARGET}

${CLIB:.a=.olist}: bootbin.map
	sed -n -e 's!^${DESTDIR}/usr/lib/${.TARGET:R}\.a(\([^)]*\.o\)).*!\1!p' \
	    < bootbin.map | tr '\012' ' ' >$@
.endif

all: objs exe
objs: $(SUBMAKE_TARGETS)
exe: bootbin
clean:
	rm -f bootbin *.lo *.o *_stub.c
.PHONY: all objs exe clean $(SUBMAKE_TARGETS)


# -------- init

init_SRCDIR=/opt/fi/6.6/lib/special/init
init_OBJS= init.o
init_make:
	cd $(init_SRCDIR) && exec $(MAKE) -f Makefile $(init_OBJS)

init_OBJPATHS= /opt/fi/6.6/lib/special/init/obj/init.o
init_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_init_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
init.lo: init_stub.o $(init_OBJPATHS)
	$(LINK) -o $@ init_stub.o $(init_OBJPATHS)
	crunchgen -h  -k _crunched_init_stub $@

# -------- ksh

ksh_SRCDIR=/usr/src/distrib/special/ksh
ksh_OBJS= alloc.o c_ksh.o c_sh.o c_test.o c_ulimit.o edit.o emacs.o eval.o exec.o expr.o history.o io.o jobs.o lex.o mail.o main.o misc.o path.o shf.o syn.o table.o trap.o tree.o tty.o var.o version.o vi.o
ksh_make:
	cd $(ksh_SRCDIR) && exec $(MAKE) -f Makefile $(ksh_OBJS)

ksh_OBJPATHS= /usr/src/distrib/special/ksh/obj/alloc.o /usr/src/distrib/special/ksh/obj/c_ksh.o /usr/src/distrib/special/ksh/obj/c_sh.o /usr/src/distrib/special/ksh/obj/c_test.o /usr/src/distrib/special/ksh/obj/c_ulimit.o /usr/src/distrib/special/ksh/obj/edit.o /usr/src/distrib/special/ksh/obj/emacs.o /usr/src/distrib/special/ksh/obj/eval.o /usr/src/distrib/special/ksh/obj/exec.o /usr/src/distrib/special/ksh/obj/expr.o /usr/src/distrib/special/ksh/obj/history.o /usr/src/distrib/special/ksh/obj/io.o /usr/src/distrib/special/ksh/obj/jobs.o /usr/src/distrib/special/ksh/obj/lex.o /usr/src/distrib/special/ksh/obj/mail.o /usr/src/distrib/special/ksh/obj/main.o /usr/src/distrib/special/ksh/obj/misc.o /usr/src/distrib/special/ksh/obj/path.o /usr/src/distrib/special/ksh/obj/shf.o /usr/src/distrib/special/ksh/obj/syn.o /usr/src/distrib/special/ksh/obj/table.o /usr/src/distrib/special/ksh/obj/trap.o /usr/src/distrib/special/ksh/obj/tree.o /usr/src/distrib/special/ksh/obj/tty.o /usr/src/distrib/special/ksh/obj/var.o /usr/src/distrib/special/ksh/obj/version.o /usr/src/distrib/special/ksh/obj/vi.o
ksh_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_ksh_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
ksh.lo: ksh_stub.o $(ksh_OBJPATHS)
	$(LINK) -o $@ ksh_stub.o $(ksh_OBJPATHS)
	crunchgen -h  -k _crunched_ksh_stub $@

# -------- ln

ln_SRCDIR=/usr/src/distrib/special/ln
ln_OBJS= ln.o
ln_make:
	cd $(ln_SRCDIR) && exec $(MAKE) -f Makefile $(ln_OBJS)

ln_OBJPATHS= /usr/src/distrib/special/ln/obj/ln.o
ln_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_ln_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
ln.lo: ln_stub.o $(ln_OBJPATHS)
	$(LINK) -o $@ ln_stub.o $(ln_OBJPATHS)
	crunchgen -h  -k _crunched_ln_stub $@

# -------- disklabel

disklabel_SRCDIR=/usr/src/distrib/special/disklabel
disklabel_OBJS= disklabel.o dkcksum.o editor.o manual.o
disklabel_make:
	cd $(disklabel_SRCDIR) && exec $(MAKE) -f Makefile $(disklabel_OBJS)

disklabel_OBJPATHS= /usr/src/distrib/special/disklabel/obj/disklabel.o /usr/src/distrib/special/disklabel/obj/dkcksum.o /usr/src/distrib/special/disklabel/obj/editor.o /usr/src/distrib/special/disklabel/obj/manual.o
disklabel_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_disklabel_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
disklabel.lo: disklabel_stub.o $(disklabel_OBJPATHS)
	$(LINK) -o $@ disklabel_stub.o $(disklabel_OBJPATHS)
	crunchgen -h  -k _crunched_disklabel_stub $@

# -------- mount

mount_SRCDIR=/usr/src/distrib/special/mount
mount_OBJS= mount.o
mount_make:
	cd $(mount_SRCDIR) && exec $(MAKE) -f Makefile $(mount_OBJS)

mount_OBJPATHS= /usr/src/distrib/special/mount/obj/mount.o
mount_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_mount_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
mount.lo: mount_stub.o $(mount_OBJPATHS)
	$(LINK) -o $@ mount_stub.o $(mount_OBJPATHS)
	crunchgen -h  -k _crunched_mount_stub $@

# -------- mount_ffs

mount_ffs_SRCDIR=/usr/src/distrib/special/mount_ffs
mount_ffs_OBJS= mount_ffs.o getmntopts.o
mount_ffs_make:
	cd $(mount_ffs_SRCDIR) && exec $(MAKE) -f Makefile $(mount_ffs_OBJS)

mount_ffs_OBJPATHS= /usr/src/distrib/special/mount_ffs/obj/mount_ffs.o /usr/src/distrib/special/mount_ffs/obj/getmntopts.o
mount_ffs_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_mount_ffs_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
mount_ffs.lo: mount_ffs_stub.o $(mount_ffs_OBJPATHS)
	$(LINK) -o $@ mount_ffs_stub.o $(mount_ffs_OBJPATHS)
	crunchgen -h  -k _crunched_mount_ffs_stub $@

# -------- mount_cd9660

mount_cd9660_SRCDIR=/usr/src/distrib/special/mount_cd9660
mount_cd9660_OBJS= mount_cd9660.o getmntopts.o
mount_cd9660_make:
	cd $(mount_cd9660_SRCDIR) && exec $(MAKE) -f Makefile $(mount_cd9660_OBJS)

mount_cd9660_OBJPATHS= /usr/src/distrib/special/mount_cd9660/obj/mount_cd9660.o /usr/src/distrib/special/mount_cd9660/obj/getmntopts.o
mount_cd9660_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_mount_cd9660_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
mount_cd9660.lo: mount_cd9660_stub.o $(mount_cd9660_OBJPATHS)
	$(LINK) -o $@ mount_cd9660_stub.o $(mount_cd9660_OBJPATHS)
	crunchgen -h  -k _crunched_mount_cd9660_stub $@

# -------- mount_msdos

mount_msdos_SRCDIR=/usr/src/distrib/special/mount_msdos
mount_msdos_OBJS= mount_msdos.o getmntopts.o
mount_msdos_make:
	cd $(mount_msdos_SRCDIR) && exec $(MAKE) -f Makefile $(mount_msdos_OBJS)

mount_msdos_OBJPATHS= /usr/src/distrib/special/mount_msdos/obj/mount_msdos.o /usr/src/distrib/special/mount_msdos/obj/getmntopts.o
mount_msdos_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_mount_msdos_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
mount_msdos.lo: mount_msdos_stub.o $(mount_msdos_OBJPATHS)
	$(LINK) -o $@ mount_msdos_stub.o $(mount_msdos_OBJPATHS)
	crunchgen -h  -k _crunched_mount_msdos_stub $@

# -------- mount_ntfs

mount_ntfs_SRCDIR=/opt/fi/6.6/lib/special/mount_ntfs
mount_ntfs_OBJS= mount_ntfs.o getmntopts.o
mount_ntfs_make:
	cd $(mount_ntfs_SRCDIR) && exec $(MAKE) -f Makefile $(mount_ntfs_OBJS)

mount_ntfs_OBJPATHS= /opt/fi/6.6/lib/special/mount_ntfs/obj/mount_ntfs.o /opt/fi/6.6/lib/special/mount_ntfs/obj/getmntopts.o
mount_ntfs_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_mount_ntfs_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
mount_ntfs.lo: mount_ntfs_stub.o $(mount_ntfs_OBJPATHS)
	$(LINK) -o $@ mount_ntfs_stub.o $(mount_ntfs_OBJPATHS)
	crunchgen -h  -k _crunched_mount_ntfs_stub $@

# -------- mount_ext2fs

mount_ext2fs_SRCDIR=/opt/fi/6.6/lib/special/mount_ext2fs
mount_ext2fs_OBJS= mount_ext2fs.o getmntopts.o
mount_ext2fs_make:
	cd $(mount_ext2fs_SRCDIR) && exec $(MAKE) -f Makefile $(mount_ext2fs_OBJS)

mount_ext2fs_OBJPATHS= /opt/fi/6.6/lib/special/mount_ext2fs/obj/mount_ext2fs.o /opt/fi/6.6/lib/special/mount_ext2fs/obj/getmntopts.o
mount_ext2fs_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_mount_ext2fs_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
mount_ext2fs.lo: mount_ext2fs_stub.o $(mount_ext2fs_OBJPATHS)
	$(LINK) -o $@ mount_ext2fs_stub.o $(mount_ext2fs_OBJPATHS)
	crunchgen -h  -k _crunched_mount_ext2fs_stub $@

# -------- mount_vnd

mount_vnd_SRCDIR=/opt/fi/6.6/lib/special/mount_vnd
mount_vnd_OBJS= mount_vnd.o
mount_vnd_make:
	cd $(mount_vnd_SRCDIR) && exec $(MAKE) -f Makefile $(mount_vnd_OBJS)

mount_vnd_OBJPATHS= /opt/fi/6.6/lib/special/mount_vnd/obj/mount_vnd.o
mount_vnd_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_mount_vnd_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
mount_vnd.lo: mount_vnd_stub.o $(mount_vnd_OBJPATHS)
	$(LINK) -o $@ mount_vnd_stub.o $(mount_vnd_OBJPATHS)
	crunchgen -h  -k _crunched_mount_vnd_stub $@

# -------- vnconfig

vnconfig_SRCDIR=/opt/fi/6.6/lib/special/vnconfig
vnconfig_OBJS= vnconfig.o
vnconfig_make:
	cd $(vnconfig_SRCDIR) && exec $(MAKE) -f Makefile $(vnconfig_OBJS)

vnconfig_OBJPATHS= /opt/fi/6.6/lib/special/vnconfig/obj/vnconfig.o
vnconfig_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_vnconfig_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
vnconfig.lo: vnconfig_stub.o $(vnconfig_OBJPATHS)
	$(LINK) -o $@ vnconfig_stub.o $(vnconfig_OBJPATHS)
	crunchgen -h  -k _crunched_vnconfig_stub $@

# -------- umount

umount_SRCDIR=/usr/src/distrib/special/umount
umount_OBJS= umount.o
umount_make:
	cd $(umount_SRCDIR) && exec $(MAKE) -f Makefile $(umount_OBJS)

umount_OBJPATHS= /usr/src/distrib/special/umount/obj/umount.o
umount_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_umount_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
umount.lo: umount_stub.o $(umount_OBJPATHS)
	$(LINK) -o $@ umount_stub.o $(umount_OBJPATHS)
	crunchgen -h  -k _crunched_umount_stub $@

# -------- sed

sed_SRCDIR=/usr/src/distrib/special/sed
sed_OBJS= compile.o main.o misc.o process.o
sed_make:
	cd $(sed_SRCDIR) && exec $(MAKE) -f Makefile $(sed_OBJS)

sed_OBJPATHS= /usr/src/distrib/special/sed/obj/compile.o /usr/src/distrib/special/sed/obj/main.o /usr/src/distrib/special/sed/obj/misc.o /usr/src/distrib/special/sed/obj/process.o
sed_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_sed_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
sed.lo: sed_stub.o $(sed_OBJPATHS)
	$(LINK) -o $@ sed_stub.o $(sed_OBJPATHS)
	crunchgen -h  -k _crunched_sed_stub $@

# -------- sleep

sleep_SRCDIR=/usr/src/distrib/special/sleep
sleep_OBJS= sleep.o
sleep_make:
	cd $(sleep_SRCDIR) && exec $(MAKE) -f Makefile $(sleep_OBJS)

sleep_OBJPATHS= /usr/src/distrib/special/sleep/obj/sleep.o
sleep_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_sleep_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
sleep.lo: sleep_stub.o $(sleep_OBJPATHS)
	$(LINK) -o $@ sleep_stub.o $(sleep_OBJPATHS)
	crunchgen -h  -k _crunched_sleep_stub $@

# -------- sysctl

sysctl_SRCDIR=/opt/fi/6.6/lib/special/sysctl
sysctl_OBJS= sysctl.o
sysctl_make:
	cd $(sysctl_SRCDIR) && exec $(MAKE) -f Makefile $(sysctl_OBJS)

sysctl_OBJPATHS= /opt/fi/6.6/lib/special/sysctl/obj/sysctl.o
sysctl_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_sysctl_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
sysctl.lo: sysctl_stub.o $(sysctl_OBJPATHS)
	$(LINK) -o $@ sysctl_stub.o $(sysctl_OBJPATHS)
	crunchgen -h  -k _crunched_sysctl_stub $@

# -------- swapctl

swapctl_SRCDIR=/opt/fi/6.6/lib/special/swapctl
swapctl_OBJS= swapctl.o swaplist.o
swapctl_make:
	cd $(swapctl_SRCDIR) && exec $(MAKE) -f Makefile $(swapctl_OBJS)

swapctl_OBJPATHS= /opt/fi/6.6/lib/special/swapctl/obj/swapctl.o /opt/fi/6.6/lib/special/swapctl/obj/swaplist.o
swapctl_stub.c:
	@echo "extern int main(int argc, char **argv, char **envp);\
int _crunched_swapctl_stub(int argc, char **argv, char **envp) { return main(argc, argv, envp); }" >$@
swapctl.lo: swapctl_stub.o $(swapctl_OBJPATHS)
	$(LINK) -o $@ swapctl_stub.o $(swapctl_OBJPATHS)
	crunchgen -h  -k _crunched_swapctl_stub $@

# ========
