Return to BSD News archive
Newsgroups: comp.bugs.2bsd
Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!nntp.coast.net!news.kei.com!newsfeed.internetmci.com!gatech!newsfeed.pitt.edu!CTCnet!news.math.psu.edu!news.iag.net!news.new-york.net!wlbr!sms
From: sms@wlv.iipo.gtegsc.com (Steven M. Schultz)
Subject: libkern/Makefile VPATH error (Opus 300)
Sender: news@wlbr.iipo.gtegsc.com (Steven M. Schultz)
Organization: GTE Government Systems, Thousand Oaks CA USA
Message-ID: <DM8IsE.IM3@wlbr.iipo.gtegsc.com>
X-Nntp-Posting-Host: wlv.iipo.gtegsc.com
Date: Sun, 4 Feb 1996 04:50:36 GMT
Lines: 141
Subject: libkern/Makefile VPATH error (Opus 300)
Index: lib/libkern/Makefile 2.11BSD
Description:
Use of the VPATH in the libkern Makefile causes the wrong
objects to be included.
Repeat-By:
cd /usr/src/lib
make
NOTE that libkern.a is built last. At that time all of the .o
files which make up libkern.a already exist in the directories
which are part of the VPATH. Thus nothing gets assembled with
"-DKERNEL" defined.
Fix:
Cut where indicated, saving to a file (/tmp/300). Then:
patch -p0 < /tmp/300
---------------------------cut here---------------------------
*** /usr/src/lib/libkern/Makefile.old Thu Jan 11 11:10:00 1996
--- /usr/src/lib/libkern/Makefile Sat Feb 3 20:32:04 1996
***************
*** 1,20 ****
#
! # @(#)Makefile 1.0 (2.11BSD GTE) 1995/1/10
#
# This is the Makefile for 'libkern.a'. These are the specially compiled
# versions of libc.a routines which the kernel and network use.
#
! # There are no source files in this directory. The VPATH capability is
! # used instead. libkern.a needs to be installed only once (usually when the
# C library is installed) rather than compiling the sources each time
# a kernel is compiled..
DEFS= -DKERNEL
! CFLAGS= -O ${DEFS}
! CPP= /lib/cpp -P ${DEFS}
AS= /bin/as -u
! PREFIX= /usr/src/lib/libc
! VPATH= ${PREFIX}/pdp/crt:${PREFIX}/pdp/gen:${PREFIX}/pdp/net
SRCS= bcmp.s bcopy.s bzero.s ffs.s htonl.s htons.s insque.s \
ldiv.s lmul.s lrem.s remque.s strlen.s udiv.s uldiv.s ulsh.s
--- 1,20 ----
#
! # @(#)Makefile 1.1 (2.11BSD GTE) 1996/2/3
#
# This is the Makefile for 'libkern.a'. These are the specially compiled
# versions of libc.a routines which the kernel and network use.
#
! # There are no source files in this directory. Links are made to the files.
! #
! # libkern.a needs to be installed only once (usually when the
# C library is installed) rather than compiling the sources each time
# a kernel is compiled..
DEFS= -DKERNEL
! CFLAGS= -O ${DEFS} -I../libc/pdp/gen
! CPP= /lib/cpp -P ${DEFS} -I../libc/pdp/gen
AS= /bin/as -u
! PREFIX= /usr/src/lib/libc/pdp
SRCS= bcmp.s bcopy.s bzero.s ffs.s htonl.s htons.s insque.s \
ldiv.s lmul.s lrem.s remque.s strlen.s udiv.s uldiv.s ulsh.s
***************
*** 32,38 ****
ld -X -r $*.o
mv a.out $*.o
! all: libkern.a
libkern.a: ${OBJS}
rm -f libkern.a
--- 32,38 ----
ld -X -r $*.o
mv a.out $*.o
! all: FRC libkern.a
libkern.a: ${OBJS}
rm -f libkern.a
***************
*** 39,45 ****
ar rv libkern.a ${OBJS}
clean:
! rm -f ${OBJS} libkern.a
depend: ${SRCS}
mkdep ${CFLAGS} ${SRCS}
--- 39,45 ----
ar rv libkern.a ${OBJS}
clean:
! rm -f ${OBJS} ${SRCS} libkern.a
depend: ${SRCS}
mkdep ${CFLAGS} ${SRCS}
***************
*** 47,52 ****
--- 47,70 ----
install: libkern.a
install -o root -g bin -m 644 libkern.a ${DESTDIR}/usr/lib/libkern.a
ranlib ${DESTDIR}/usr/lib/libkern.a
+
+ FRC:
+ rm -f ${SRCS}
+ ln ${PREFIX}/gen/bcmp.s bcmp.s
+ ln ${PREFIX}/gen/bcopy.s bcopy.s
+ ln ${PREFIX}/gen/bzero.s bzero.s
+ ln ${PREFIX}/gen/ffs.s ffs.s
+ ln ${PREFIX}/gen/insque.s insque.s
+ ln ${PREFIX}/gen/remque.s remque.s
+ ln ${PREFIX}/gen/strlen.s strlen.s
+ ln ${PREFIX}/crt/ldiv.s ldiv.s
+ ln ${PREFIX}/crt/lmul.s lmul.s
+ ln ${PREFIX}/crt/lrem.s lrem.s
+ ln ${PREFIX}/crt/udiv.s udiv.s
+ ln ${PREFIX}/crt/uldiv.s uldiv.s
+ ln ${PREFIX}/crt/ulsh.s ulsh.s
+ ln ${PREFIX}/net/htonl.s htonl.s
+ ln ${PREFIX}/net/htons.s htons.s
# DO NOT DELETE THIS LINE -- mkdep uses it.
# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
*** /VERSION.old Tue Jan 30 19:48:38 1996
--- /VERSION Sat Feb 3 20:41:25 1996
***************
*** 1,4 ****
! Current Patch Level: 299
2.11 BSD
============
--- 1,4 ----
! Current Patch Level: 300
2.11 BSD
============