Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. =================================================================== RCS file: /ftp/cvs/cvsroot/src/share/mk/bsd.lib.mk,v rcsdiff: /ftp/cvs/cvsroot/src/share/mk/bsd.lib.mk,v: warning: Unknown phrases like `commitid ...;' are present. retrieving revision 1.220 retrieving revision 1.223 diff -u -p -r1.220 -r1.223 --- src/share/mk/bsd.lib.mk 2003/06/11 04:56:58 1.220 +++ src/share/mk/bsd.lib.mk 2003/07/20 17:01:58 1.223 @@ -1,4 +1,4 @@ -# $NetBSD: bsd.lib.mk,v 1.220 2003/06/11 04:56:58 msaitoh Exp $ +# $NetBSD: bsd.lib.mk,v 1.223 2003/07/20 17:01:58 lukem Exp $ # @(#)bsd.lib.mk 8.3 (Berkeley) 4/22/94 .include @@ -69,7 +69,7 @@ SHLIB_FULLVERSION=${SHLIB_MAJOR} # add additional suffixes not exported. # .po is used for profiling object files. # .so is used for PIC object files. -.SUFFIXES: .out .a .ln .so .po .o .s .S .c .cc .cpp .C .m .F .f .r .y .l .cl .p .h +.SUFFIXES: .out .a .ln .so .po .o .s .S .c .cc .cpp .cxx .C .m .F .f .r .y .l .cl .p .h .SUFFIXES: .sh .m4 .m @@ -100,14 +100,14 @@ SHLIB_FULLVERSION=${SHLIB_MAJOR} FPICFLAGS ?= -fPIC CPICFLAGS ?= -fPIC -DPIC -CPPPICFLAGS?= -DPIC +CPPPICFLAGS?= -DPIC CAPICFLAGS?= ${CPPPICFLAGS} ${CPICFLAGS} APICFLAGS ?= .elif (${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64") && \ ${OBJECT_FMT} == "ELF" -# If you use -fPIC you need to define BIGPIC to turn on 32-bit +# If you use -fPIC you need to define BIGPIC to turn on 32-bit # relocations in asm code FPICFLAGS ?= -fPIC CPICFLAGS ?= -fPIC -DPIC @@ -119,7 +119,7 @@ APICFLAGS ?= -KPIC FPICFLAGS ?= -fPIC CPICFLAGS?= -fPIC -DPIC -CPPPICFLAGS?= -DPIC +CPPPICFLAGS?= -DPIC CAPICFLAGS?= ${CPPPICFLAGS} ${CPICFLAGS} APICFLAGS?= -k # XXX libraries often need the millicode functions in libgcc.a, @@ -133,7 +133,7 @@ SHLIB_SOVERSION=${SHLIB_FULLVERSION} SHLIB_SHFLAGS= FPICFLAGS ?= -fPIC CPICFLAGS?= -fPIC -DPIC -CPPPICFLAGS?= -DPIC +CPPPICFLAGS?= -DPIC CAPICFLAGS?= ${CPPPICFLAGS} ${CPICFLAGS} APICFLAGS?= -k @@ -152,7 +152,7 @@ MKSHLIBOBJS= no # Platform-independent linker flags for ELF shared libraries .if ${OBJECT_FMT} == "ELF" SHLIB_SOVERSION= ${SHLIB_MAJOR} -SHLIB_SHFLAGS= -soname lib${LIB}.so.${SHLIB_SOVERSION} +SHLIB_SHFLAGS= -Wl,-soname,lib${LIB}.so.${SHLIB_SOVERSION} SHLIB_LDSTARTFILE?= ${DESTDIR}/usr/lib/crti.o ${_GCC_CRTBEGINS} SHLIB_LDENDFILE?= ${_GCC_CRTENDS} ${DESTDIR}/usr/lib/crtn.o .endif @@ -193,7 +193,7 @@ FFLAGS+= ${FOPTS} .c.ln: ${LINT} ${LINTFLAGS} ${CPPFLAGS:M-[IDU]*} -i ${.IMPSRC} -.cc.o .cpp.o .C.o: +.cc.o .cpp.o .cxx.o .C.o: .if defined(COPTS) && !empty(COPTS:M*-g*) ${COMPILE.cc} ${.IMPSRC} .else @@ -203,7 +203,7 @@ FFLAGS+= ${FOPTS} @rm -f ${.TARGET}.o .endif -.cc.po .cpp.po .C.po: +.cc.po .cpp.po .cxx.o .C.po: .if defined(COPTS) && !empty(COPTS:M*-g*) ${COMPILE.cc} -pg ${.IMPSRC} -o ${.TARGET} .else @@ -213,7 +213,7 @@ FFLAGS+= ${FOPTS} @rm -f ${.TARGET}.o .endif -.cc.so .cpp.so .C.so: +.cc.so .cpp.so .cxx.so .C.so: .if defined(COPTS) && !empty(COPTS:M*-g*) ${COMPILE.cc} ${CSHLIBFLAGS} ${.IMPSRC} -o ${.TARGET} .else @@ -349,7 +349,7 @@ _LIBS+=llib-l${LIB}.ln || ${MKLINKLIB} != "no" ALLOBJS=${OBJS} ${POBJS} ${SOBJS} .else -ALLOBJS=${POBJS} ${SOBJS} +ALLOBJS=${POBJS} ${SOBJS} .endif .if ${MKLINT} != "no" && ${MKLINKLIB} != "no" && !empty(LOBJS) ALLOBJS+=${LOBJS} @@ -392,18 +392,15 @@ lib${LIB}.so.${SHLIB_FULLVERSION}: ${SOL @echo building shared ${LIB} library \(version ${SHLIB_FULLVERSION}\) @rm -f lib${LIB}.so.${SHLIB_FULLVERSION} .if defined(DESTDIR) - $(LD) -nostdlib -x -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \ - ${SHLIB_LDSTARTFILE} \ - --whole-archive ${SOLIB} \ - --no-whole-archive ${LDADD} \ - -L${DESTDIR}${_LIBSODIR} -L${DESTDIR}${LIBDIR} \ - -R${_LIBSODIR} -R${LIBDIR} \ - ${SHLIB_LDENDFILE} -.else - $(LD) -x -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \ - ${SHLIB_LDSTARTFILE} \ - --whole-archive ${SOLIB} --no-whole-archive ${LDADD} \ - ${SHLIB_LDENDFILE} + $(CC) -Wl,-nostdlib -B${_GCC_CRTDIR}/ -B${DESTDIR}/usr/lib/ \ + -Wl,-x -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \ + -Wl,--whole-archive ${SOLIB} \ + -Wl,--no-whole-archive ${LDADD} \ + -L${_GCC_LIBGCCDIR} -L${DESTDIR}${_LIBSODIR} -L${DESTDIR}${LIBDIR} \ + -R${_LIBSODIR} -R${LIBDIR} +.else + $(CC) -Wl,-x -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \ + -Wl,--whole-archive ${SOLIB} -Wl,--no-whole-archive ${LDADD} .endif .if ${OBJECT_FMT} == "ELF" # We don't use INSTALL_SYMLINK here because this is just