mirror of
https://git.hardenedbsd.org/hardenedbsd/HardenedBSD.git
synced 2024-11-18 00:21:25 +01:00
9ae159169a
are running under. Here's how to bootstrap (order is important): 1) Re-compile gcc (just the driver is all you need). 2) Re-compile libc. 3) Re-compile your kernel. Reboot. 4) cd /usr/src/include; make install You can now detect the compilation environment with the following code: #if !defined(__FreeBSD__) #define __FreeBSD_version 199401 #elif __FreeBSD__ == 1 #define __FreeBSD_version 199405 #else #include <osreldate.h> #endif You can determine the run-time environment by calling the new C library function getosreldate(), or by examining the MIB variable kern.osreldate. For the time being, the release date is defined as 199409, which we have already established as our target.
110 lines
3.6 KiB
Makefile
110 lines
3.6 KiB
Makefile
# From: @(#)Makefile 8.2 (Berkeley) 1/4/94
|
|
# $Id: Makefile,v 1.8 1994/08/07 22:29:20 wollman Exp $
|
|
#
|
|
# Doing a make install builds /usr/include
|
|
#
|
|
# The ``rm -rf''s used below are safe because rm doesn't follow symbolic
|
|
# links.
|
|
#
|
|
all clean cleandir depend lint tags:
|
|
|
|
SUBDIR= rpcsvc
|
|
# XXX MISSING: mp.h
|
|
FILES= a.out.h ar.h assert.h bitstring.h ctype.h db.h dirent.h disktab.h \
|
|
err.h fnmatch.h fstab.h fts.h glob.h grp.h histedit.h kvm.h \
|
|
limits.h link.h \
|
|
locale.h \
|
|
math.h memory.h mpool.h ndbm.h netdb.h nlist.h paths.h pwd.h \
|
|
ranlib.h regex.h regexp.h resolv.h rune.h runetype.h setjmp.h \
|
|
sgtty.h signal.h stab.h stddef.h stdio.h stdlib.h string.h strings.h \
|
|
struct.h sysexits.h tar.h time.h ttyent.h tzfile.h unistd.h utime.h \
|
|
utmp.h vis.h
|
|
|
|
MFILES= float.h floatingpoint.h frame.h stdarg.h varargs.h
|
|
LFILES= errno.h fcntl.h syslog.h termios.h
|
|
|
|
DIRS= arpa protocols rpc
|
|
LDIRS= net netccitt netinet netiso netns nfs sys vm
|
|
LUDIR= ufs
|
|
UDIRS= ufs/ffs ufs/lfs ufs/mfs ufs/ufs
|
|
|
|
NOOBJ= noobj
|
|
|
|
# Define SHARED to indicate whether you want symbolic links to the system
|
|
# source (``symlinks''), or a separate copy (``copies''); (latter useful
|
|
# in environments where it's not possible to keep /sys publicly readable)
|
|
# SHARED= copies
|
|
SHARED?= symlinks
|
|
|
|
beforeinstall: ${SHARED}
|
|
@echo installing ${FILES}
|
|
@-for i in ${FILES}; do \
|
|
cmp -s $$i ${DESTDIR}/usr/include/$$i > /dev/null 2>&1 || \
|
|
install -c -o ${BINOWN} -g ${BINGRP} -m 444 $$i \
|
|
${DESTDIR}/usr/include/$$i; \
|
|
done
|
|
@echo creating osreldate.h
|
|
@rm -f ${DESTDIR}/usr/include/osreldate.h
|
|
@echo \#'undef __FreeBSD_version' > ${DESTDIR}/usr/include/osreldate.h
|
|
@echo \#'define __FreeBSD_version '`sysctl -n kern.osreldate` \
|
|
>> ${DESTDIR}/usr/include/osreldate.h
|
|
@echo installing ${DIRS}
|
|
@-for i in ${DIRS}; do \
|
|
if [ ! -d ${DESTDIR}/usr/include/$$i ]; \
|
|
then \
|
|
mkdir ${DESTDIR}/usr/include/$$i; \
|
|
fi; \
|
|
chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i; \
|
|
chmod 755 ${DESTDIR}/usr/include/$$i; \
|
|
(cd $$i; for j in *.[ih]; do \
|
|
cmp -s $$j ${DESTDIR}/usr/include/$$i/$$j > \
|
|
/dev/null 2>&1 || \
|
|
install -c -o ${BINOWN} -g ${BINGRP} -m 444 $$j \
|
|
${DESTDIR}/usr/include/$$i/$$j; \
|
|
done); \
|
|
done
|
|
@echo installing ${LFILES}
|
|
@-for i in ${LFILES}; do \
|
|
rm -f ${DESTDIR}/usr/include/$$i; \
|
|
ln -s sys/$$i ${DESTDIR}/usr/include/$$i; \
|
|
chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i; \
|
|
done
|
|
@echo installing ${MFILES}
|
|
@-for i in ${MFILES}; do \
|
|
rm -f ${DESTDIR}/usr/include/$$i; \
|
|
ln -s machine/$$i ${DESTDIR}/usr/include/$$i; \
|
|
chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i; \
|
|
done
|
|
|
|
copies:
|
|
rm -rf ${DESTDIR}/usr/include/${LUDIR}
|
|
@-for i in ${LDIRS} ${UDIRS}; do \
|
|
echo ${SHARED} $$i; \
|
|
rm -rf ${DESTDIR}/usr/include/$$i; \
|
|
cd ../sys; \
|
|
tar cf - $$i/*.h | \
|
|
(cd ${DESTDIR}/usr/include; tar xpfB -); \
|
|
chown -R ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i;\
|
|
chmod -R 444 ${DESTDIR}/usr/include/$$i; \
|
|
chmod 755 ${DESTDIR}/usr/include/$$i; \
|
|
done
|
|
rm -rf ${DESTDIR}/usr/include/machine
|
|
mkdir ${DESTDIR}/usr/include/machine
|
|
cd ../sys/${MACHINE}/include && \
|
|
tar cf - *.h | (cd ${DESTDIR}/usr/include/machine; tar xpfB -);
|
|
chown -R ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/machine;
|
|
chmod -R 444 ${DESTDIR}/usr/include/machine;
|
|
chmod 755 ${DESTDIR}/usr/include/machine;
|
|
|
|
symlinks:
|
|
@for i in ${LDIRS} ${LUDIR}; do \
|
|
echo ${SHARED} $$i; \
|
|
rm -rf ${DESTDIR}/usr/include/$$i; \
|
|
ln -s /sys/$$i ${DESTDIR}/usr/include/$$i; \
|
|
chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include/$$i; \
|
|
done
|
|
rm -rf ${DESTDIR}/usr/include/machine
|
|
ln -s /sys/${MACHINE}/include ${DESTDIR}/usr/include/machine
|
|
|
|
.include <bsd.prog.mk>
|