Date: Sat, 20 Jun 1998 18:17:09 +0200 (CEST) From: Joachim Kuebart <joki@kuebart.stuttgart.netsurf.de> To: freebsd-current@FreeBSD.ORG Subject: ELF make world Message-ID: <199806201617.SAA23116@jaguar.domestic.de>
next in thread | raw e-mail | index | archive | help
Hi,
I managed a complete make world from the 19980619-current with the
below patches to Makefiles.
>From the checked-out sources, no ELF buildworld was possible (at least
not from my not-yet-completely-ELFified system).
Note that this still doesn't support an ELF buildworld from an a.out
system! You'll still have to compile all or some of
lib/csu/i386-elf/,
gnu/usr.bin/cc/libgcc/,
lib/libc/,
libexec/rtld-elf/,
all of lib/,
all of gnu/lib/,
secure/lib/ and
usr.bin/lex/lib/
by hand first (as suggested by John Birrell on June 1).
However, I cannot compile LKMs at the moment due to symorder(1)
incompatibility, or is it me?
And what can be done about the fact that /sys/i386/boot/biosboot/*
become too large files when built with ELF?
Index: Makefile
===================================================================
RCS file: /usr/CVS-Repository/src/Makefile,v
retrieving revision 1.203
diff -u -r1.203 Makefile
--- Makefile 1998/06/17 09:34:42 1.203
+++ Makefile 1998/06/20 18:11:58
@@ -207,8 +207,8 @@
COMPILER_ENV= BISON_SIMPLE=${WORLDTMP}/usr/share/misc/bison.simple \
COMPILER_PATH=${WORLDTMP}/usr/libexec:${WORLDTMP}/usr/bin \
GCC_EXEC_PREFIX=${WORLDTMP}${SHLIBDIR}:${WORLDTMP}/usr/lib/ \
- LD_LIBRARY_PATH=${WORLDTMP}${SHLIBDIR} \
LIBRARY_PATH=${WORLDTMP}${SHLIBDIR}:${WORLDTMP}/usr/lib
+# LD_LIBRARY_PATH=${WORLDTMP}${SHLIBDIR} \
BMAKEENV= PATH=${TMPPATH} ${COMPILER_ENV} NOEXTRADEPEND=t \
OBJFORMAT_PATH=${WORLDTMP}/usr/libexec:/usr/libexec
@@ -502,10 +502,11 @@
cd ${.CURDIR}/usr.bin/yacc; ${MAKE} ${MK_FLAGS} ${_DEPEND}; \
${MAKE} ${MK_FLAGS} all; \
${MAKE} ${MK_FLAGS} -B install ${CLEANDIR} ${OBJDIR}
+# sh needs the lex libs, so build them!
cd ${.CURDIR}/usr.bin/lex; ${MAKE} bootstrap; \
${MAKE} ${MK_FLAGS} ${_DEPEND}; \
- ${MAKE} ${MK_FLAGS} -DNOLIB all; \
- ${MAKE} ${MK_FLAGS} -DNOLIB -B install ${CLEANDIR}
+ ${MAKE} ${MK_FLAGS} all; \
+ ${MAKE} ${MK_FLAGS} -B install ${CLEANDIR}
.if !defined(NOOBJDIR)
cd ${.CURDIR}/usr.bin/lex; ${MAKE} ${OBJDIR}
.endif
@@ -564,9 +565,13 @@
.else
cd ${.CURDIR}/lib/libtelnet; ${MAKE} beforeinstall
.endif
+.if exists(${.CURDIR}/lib/csu/${MACHINE}-${BINFORMAT})
+ cd ${.CURDIR}/lib/csu/${MACHINE}-${BINFORMAT}; ${MAKE} beforeinstall
+.else
.if exists(${.CURDIR}/lib/csu/${MACHINE})
cd ${.CURDIR}/lib/csu/${MACHINE}; ${MAKE} beforeinstall
.endif
+.endif
cd ${.CURDIR}/lib/libalias; ${MAKE} beforeinstall
cd ${.CURDIR}/lib/libc; ${MAKE} beforeinstall
cd ${.CURDIR}/lib/libcalendar; ${MAKE} beforeinstall
@@ -661,7 +666,11 @@
.if exists(lib/csu/${MACHINE}.pcc)
_csu=lib/csu/${MACHINE}.pcc
.else
+.if exists(lib/csu/${MACHINE}-${BINFORMAT})
+_csu=lib/csu/${MACHINE}-${BINFORMAT}
+.else
_csu=lib/csu/${MACHINE}
+.endif
.endif
.if !defined(NOSECURE) && !defined(NOCRYPT)
Index: Makefile
===================================================================
RCS file: /usr/CVS-Repository/src/sys/Makefile,v
retrieving revision 1.9
diff -u -r1.9 Makefile
--- Makefile 1998/02/20 07:37:08 1.9
+++ Makefile 1998/06/20 18:12:43
@@ -1,9 +1,9 @@
# $Id: Makefile,v 1.9 1998/02/20 07:37:08 jb Exp $
.if defined(MACHINE_PC98) && ${MACHINE_PC98} == "yes"
-SUBDIR= pc98/boot
+#SUBDIR= pc98/boot
.elif exists(${MACHINE}/boot)
-SUBDIR= ${MACHINE}/boot
+#SUBDIR= ${MACHINE}/boot
.endif
HTAGSFLAGS+= -at `awk -F= '/^RELEASE *=/{release=$2}; END {print "FreeBSD", release, "kernel"}' < conf/newvers.sh`
Index: Makefile
===================================================================
RCS file: /usr/CVS-Repository/src/libexec/rtld-elf/Makefile,v
retrieving revision 1.2
diff -u -r1.2 Makefile
--- Makefile 1998/04/30 07:47:58 1.2
+++ Makefile 1998/06/20 18:13:43
@@ -12,4 +12,9 @@
.PATH: ${.CURDIR}/${MACHINE}
+install:
+ cp -f ${PROG} ${DESTDIR}${BINDIR}
+ chmod ${BINMODE} ${DESTDIR}${BINDIR}/${PROG}
+ chown ${BINOWN} ${DESTDIR}${BINDIR}/${PROG}
+
.include <bsd.prog.mk>
cu Jo
---------------------------------------------------------------------
FreeBSD: The Power to Serve <http://www.freebsd.org>
Joachim Kuebart
Tel: +49 711 653706 Replicants are like any other machine --
Germany they're either a benefit or a hazard.
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199806201617.SAA23116>
