Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 5 Oct 1996 22:08:51 +0200 (SAT)
From:      John Hay <jhay@mikom.csir.co.za>
To:        freebsd-current@FreeBSD.ORG (FreeBSD-current)
Subject:   Proposed addition to build-tools target
Message-ID:  <199610052008.WAA24973@zibbi.mikom.csir.co.za>

next in thread | raw e-mail | index | archive | help
Hi,

I have been trying to build an 2.2 SNAP on a 2.1.5 machine again. Except
for two problems it seems to work fine.

The first problem is awk. In 2.1.5 it is linked to libgnuregex.so.2.0,
libm.so.2.0 and libc.so.2.2. During the "make world" process all the
libraries are rebuild, also libgnuregex.so.2.0 which then needs some
new functionality from libc.so.3.0. Awk is still linked to libc.so.2.0
so when it is needed during the "make includes" fase it fails with:

--------------
angel:/usr/src/usr.bin/kdump # make clean
rm -f a.out Errs errs mklog kdump kdump.o ioctl.o subr.o ioctl.c kdump.1.gz
angel:/usr/src/usr.bin/kdump # make depend
/bin/sh /usr/src/usr.bin/kdump/mkioctls > ioctl.c
(null): Undefined symbol "_collate_range_cmp" called from awk:/usr/lib/libgnuregex.so.2.0 at 0x80390cc
cpp: output pipe has been closed
*** Error code 1

Stop.
angel:/usr/src/usr.bin/kdump # 
---------------

To work around this problem I would recommend that we add awk to the
"build-tools" target. It will not help to add it to the "bootstrap"
target because at that stage the libc.so.3.0 library does not exist.
I attach a patch for that at the end. With this patch the "make world"
target should be able to take a 2.1.5 machine to 2.2-current.

The reason I say this is a workaround is that I think libgnuregex.so
should have been bumped from version 2.0 to 3.0 when it started to
depend on libc.so.3.0 features. The way it is now we can't use a 2.1.5
compiled program that use those functions on a -current system. I think
it is an unnecessary incompatability which we can easily avoid.

My second problem is that the latest version of release/doFS.sh (1.8)
breaks on a 2.1.5 machine. Something with the labels on a vn device.
The previous version does work. I will have a look into that.

John
-- 
John Hay -- John.Hay@mikom.csir.co.za


*** Makefile.org	Fri Oct  4 10:48:27 1996
--- Makefile	Fri Oct  4 23:50:30 1996
***************
*** 517,522 ****
--- 517,524 ----
  		${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR} 
  	cd ${.CURDIR}/usr.sbin/zic && ${MAKE} depend && \
  		${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR}
+ 	cd ${.CURDIR}/gnu/usr.bin/awk && ${MAKE} depend && \
+ 		${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR}
  	cd ${.CURDIR}/gnu/usr.bin/groff && ${MAKE} depend && \
  		${MAKE} ${MK_FLAGS} all install ${CLEANDIR} ${OBJDIR}
  



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199610052008.WAA24973>