version 1.158, 1999/09/12 00:31:34 |
version 1.159.4.1, 1999/12/27 18:31:11 |
|
|
.endif |
.endif |
.include <bsd.own.mk> |
.include <bsd.own.mk> |
.include <bsd.obj.mk> |
.include <bsd.obj.mk> |
|
.include <bsd.depall.mk> |
.MAIN: all |
.MAIN: all |
.endif |
.endif |
|
|
|
|
.elif ${MACHINE_ARCH} == "mipsel" || ${MACHINE_ARCH} == "mipseb" |
.elif ${MACHINE_ARCH} == "mipsel" || ${MACHINE_ARCH} == "mipseb" |
# mips-specific shared library flags |
# mips-specific shared library flags |
|
|
# On mips, all libs need to be compiled with ABIcalls, not just sharedlibs. |
# On mips, all libs are compiled with ABIcalls, not just sharedlibs. |
CPICFLAGS?= |
MKPICLIB= no |
APICFLAGS?= |
|
#CPICFLAGS?= -fpic -DPIC |
# so turn shlib PIC flags on for ${AS}. |
#APICFLAGS?= -DPIC |
AINC+=-DABICALLS |
|
|
# so turn shlib PIC flags on for ${CPP}, ${CC}, and ${AS} as follows: |
|
AINC+=-DPIC -DABICALLS |
|
COPTS+= -fPIC ${AINC} |
|
AFLAGS+= -fPIC |
AFLAGS+= -fPIC |
AS+= -KPIC |
AS+= -KPIC |
|
|
|
|
|
|
.endif |
.endif |
|
|
|
MKPICLIB?= yes |
|
|
# Platform-independent linker flags for ELF shared libraries |
# Platform-independent linker flags for ELF shared libraries |
.if ${OBJECT_FMT} == "ELF" |
.if ${OBJECT_FMT} == "ELF" |
SHLIB_SOVERSION=${SHLIB_MAJOR} |
SHLIB_SOVERSION=${SHLIB_MAJOR} |
Line 237 POBJS+=${OBJS:.o=.po} |
|
Line 236 POBJS+=${OBJS:.o=.po} |
|
.endif |
.endif |
|
|
.if ${MKPIC} != "no" |
.if ${MKPIC} != "no" |
_LIBS+=lib${LIB}_pic.a |
.if ${MKPICLIB} == "no" |
|
SOLIB=lib${LIB}.a |
|
.else |
|
SOLIB=lib${LIB}_pic.a |
|
_LIBS+=${SOLIB} |
SOBJS+=${OBJS:.o=.so} |
SOBJS+=${OBJS:.o=.so} |
|
.endif |
.if defined(SHLIB_MAJOR) && defined(SHLIB_MINOR) |
.if defined(SHLIB_MAJOR) && defined(SHLIB_MINOR) |
_LIBS+=lib${LIB}.so.${SHLIB_MAJOR}.${SHLIB_MINOR} |
_LIBS+=lib${LIB}.so.${SHLIB_MAJOR}.${SHLIB_MINOR} |
.endif |
.endif |
Line 280 lib${LIB}_p.a:: ${POBJS} __archivebuild |
|
Line 284 lib${LIB}_p.a:: ${POBJS} __archivebuild |
|
lib${LIB}_pic.a:: ${SOBJS} __archivebuild |
lib${LIB}_pic.a:: ${SOBJS} __archivebuild |
@echo building shared object ${LIB} library |
@echo building shared object ${LIB} library |
|
|
lib${LIB}.so.${SHLIB_MAJOR}.${SHLIB_MINOR}: lib${LIB}_pic.a ${DPADD} \ |
lib${LIB}.so.${SHLIB_MAJOR}.${SHLIB_MINOR}: ${SOLIB} ${DPADD} \ |
${SHLIB_LDSTARTFILE} ${SHLIB_LDENDFILE} |
${SHLIB_LDSTARTFILE} ${SHLIB_LDENDFILE} |
@echo building shared ${LIB} library \(version ${SHLIB_MAJOR}.${SHLIB_MINOR}\) |
@echo building shared ${LIB} library \(version ${SHLIB_MAJOR}.${SHLIB_MINOR}\) |
@rm -f lib${LIB}.so.${SHLIB_MAJOR}.${SHLIB_MINOR} |
@rm -f lib${LIB}.so.${SHLIB_MAJOR}.${SHLIB_MINOR} |
.if defined(DESTDIR) |
.if defined(DESTDIR) |
$(LD) -nostdlib -x -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \ |
$(LD) -nostdlib -x -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \ |
${SHLIB_LDSTARTFILE} \ |
${SHLIB_LDSTARTFILE} \ |
--whole-archive lib${LIB}_pic.a \ |
--whole-archive ${SOLIB} \ |
-L${DESTDIR}${LIBDIR} -R${LIBDIR} \ |
-L${DESTDIR}${LIBDIR} -R${LIBDIR} \ |
--no-whole-archive ${LDADD} \ |
--no-whole-archive ${LDADD} \ |
${SHLIB_LDENDFILE} |
${SHLIB_LDENDFILE} |
.else |
.else |
$(LD) -x -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \ |
$(LD) -x -shared ${SHLIB_SHFLAGS} -o ${.TARGET} \ |
${SHLIB_LDSTARTFILE} \ |
${SHLIB_LDSTARTFILE} \ |
--whole-archive lib${LIB}_pic.a --no-whole-archive ${LDADD} \ |
--whole-archive ${SOLIB} --no-whole-archive ${LDADD} \ |
${SHLIB_LDENDFILE} |
${SHLIB_LDENDFILE} |
.endif |
.endif |
.if ${OBJECT_FMT} == "ELF" |
.if ${OBJECT_FMT} == "ELF" |
Line 358 ${DESTDIR}${LIBDIR}/lib${LIB}_p.a: lib${ |
|
Line 362 ${DESTDIR}${LIBDIR}/lib${LIB}_p.a: lib${ |
|
.endif |
.endif |
|
|
.if ${MKPIC} != "no" && ${MKPICINSTALL} != "no" |
.if ${MKPIC} != "no" && ${MKPICINSTALL} != "no" |
|
.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a |
libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a |
libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a |
.if !defined(UPDATE) |
.if !defined(UPDATE) |
.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a |
.PHONY: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a |
Line 365 libinstall:: ${DESTDIR}${LIBDIR}/lib${LI |
|
Line 370 libinstall:: ${DESTDIR}${LIBDIR}/lib${LI |
|
.if !defined(BUILD) && !make(all) && !make(lib${LIB}_pic.a) |
.if !defined(BUILD) && !make(all) && !make(lib${LIB}_pic.a) |
${DESTDIR}${LIBDIR}/lib${LIB}_pic.a: .MADE |
${DESTDIR}${LIBDIR}/lib${LIB}_pic.a: .MADE |
.endif |
.endif |
|
.if ${MKPICLIB} == "no" |
.PRECIOUS: ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a |
${DESTDIR}${LIBDIR}/lib${LIB}_pic.a: |
|
rm -f ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a |
|
ln -s lib${LIB}.a ${DESTDIR}${LIBDIR}/lib${LIB}_pic.a |
|
.else |
${DESTDIR}${LIBDIR}/lib${LIB}_pic.a: lib${LIB}_pic.a __archiveinstall |
${DESTDIR}${LIBDIR}/lib${LIB}_pic.a: lib${LIB}_pic.a __archiveinstall |
.endif |
.endif |
|
.endif |
|
|
.if ${MKPIC} != "no" && defined(SHLIB_MAJOR) && defined(SHLIB_MINOR) |
.if ${MKPIC} != "no" && defined(SHLIB_MAJOR) && defined(SHLIB_MINOR) |
libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_MAJOR}.${SHLIB_MINOR} |
libinstall:: ${DESTDIR}${LIBDIR}/lib${LIB}.so.${SHLIB_MAJOR}.${SHLIB_MINOR} |