"M. Warner Losh" <i...@bsdimp.com> writes: > Still working on a solution that's correct and mutually acceptable to > DES. i think the ball is in my court.
No, it's a build system issue. If it's in anyone's court, it would be ru@'s. The problem is that we need to use different CFLAGS for .o and .So. The quick and dirty fix is to override the .c.o rule for PAM modules: Index: /home/des/freebsd/base/head/lib/libpam/modules/Makefile.inc =================================================================== --- /home/des/freebsd/base/head/lib/libpam/modules/Makefile.inc (revision 186063) +++ /home/des/freebsd/base/head/lib/libpam/modules/Makefile.inc (working copy) @@ -19,4 +19,7 @@ LDADD+= -lpam .endif +.c.o: + ${CC} ${CFLAGS} -DOPENPAM_STATIC_MODULES -c ${.IMPSRC} + .include "../Makefile.inc" A cleaner but more intrusive fix would be to add STATIC_CFLAGS and SHARED_CFLAGS variables: Index: lib/libpam/modules/Makefile.inc =================================================================== --- lib/libpam/modules/Makefile.inc (revision 186599) +++ lib/libpam/modules/Makefile.inc (working copy) @@ -6,6 +6,7 @@ NO_PROFILE= CFLAGS+= -I${PAMDIR}/include -I${.CURDIR}/../../libpam +STATIC_CFLAGS+= -DOPENPAM_STATIC_MODULES WARNS?= 4 # This is nasty. Index: share/mk/bsd.lib.mk =================================================================== --- share/mk/bsd.lib.mk (revision 186063) +++ share/mk/bsd.lib.mk (working copy) @@ -54,9 +54,9 @@ .if !defined(PICFLAG) .if ${MACHINE_ARCH} == "sparc64" -PICFLAG=-fPIC +PICFLAG=-fPIC -DPIC .else -PICFLAG=-fpic +PICFLAG=-fpic -DPIC .endif .endif @@ -73,7 +73,7 @@ .endif .c.So: - ${CC} ${PICFLAG} -DPIC ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET} + ${CC} ${PICFLAG} ${SHARED_CFLAGS} ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET} .if defined(CTFCONVERT) ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} .endif @@ -82,7 +82,7 @@ ${CXX} ${PO_FLAG} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET} .cc.So .C.So .cpp.So .cxx.So: - ${CXX} ${PICFLAG} -DPIC ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET} + ${CXX} ${PICFLAG} ${SHARED_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET} .f.po: ${FC} -pg ${FFLAGS} -o ${.TARGET} -c ${.IMPSRC} @@ -121,7 +121,7 @@ .endif .asm.So: - ${CC} -x assembler-with-cpp ${PICFLAG} -DPIC ${CFLAGS} \ + ${CC} -x assembler-with-cpp ${PICFLAG} ${SHARED_CFLAGS} ${CFLAGS} \ -c ${.IMPSRC} -o ${.TARGET} .if defined(CTFCONVERT) ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} @@ -134,7 +134,7 @@ .endif .S.So: - ${CC} ${PICFLAG} -DPIC ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET} + ${CC} ${PICFLAG} ${SHARED_CFLAGS} ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET} .if defined(CTFCONVERT) ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} .endif Index: share/mk/sys.mk =================================================================== --- share/mk/sys.mk (revision 186063) +++ share/mk/sys.mk (working copy) @@ -159,7 +159,7 @@ # DOUBLE SUFFIX RULES .c.o: - ${CC} ${CFLAGS} -c ${.IMPSRC} + ${CC} ${STATIC_CFLAGS} ${CFLAGS} -c ${.IMPSRC} .if defined(CTFCONVERT) ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} .endif @@ -172,7 +172,7 @@ .y.o: ${YACC} ${YFLAGS} ${.IMPSRC} - ${CC} ${CFLAGS} -c y.tab.c + ${CC} ${STATIC_CFLAGS} ${CFLAGS} -c y.tab.c rm -f y.tab.c mv y.tab.o ${.TARGET} .if defined(CTFCONVERT) @@ -181,7 +181,7 @@ .l.o: ${LEX} ${LFLAGS} ${.IMPSRC} - ${CC} ${CFLAGS} -c lex.yy.c + ${CC} ${STATIC_CFLAGS} ${CFLAGS} -c lex.yy.c rm -f lex.yy.c mv lex.yy.o ${.TARGET} .if defined(CTFCONVERT) @@ -197,7 +197,7 @@ mv lex.yy.c ${.TARGET} .c.a: - ${CC} ${CFLAGS} -c ${.IMPSRC} + ${CC} ${STATIC_CFLAGS} ${CFLAGS} -c ${.IMPSRC} ${AR} ${ARFLAGS} ${.TARGET} ${.PREFIX}.o rm -f ${.PREFIX}.o @@ -229,16 +229,16 @@ .endif .c.o: - ${CC} ${CFLAGS} -c ${.IMPSRC} + ${CC} ${STATIC_CFLAGS} ${CFLAGS} -c ${.IMPSRC} .if defined(CTFCONVERT) ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} .endif .cc .cpp .cxx .C: - ${CXX} ${CXXFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET} + ${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET} .cc.o .cpp.o .cxx.o .C.o: - ${CXX} ${CXXFLAGS} -c ${.IMPSRC} + ${CXX} ${STATIC_CXXFLAGS} ${CXXFLAGS} -c ${.IMPSRC} .m.o: ${OBJC} ${OBJCFLAGS} -c ${.IMPSRC} @@ -260,13 +260,13 @@ ${FC} ${RFLAGS} ${EFLAGS} ${FFLAGS} -c ${.IMPSRC} .S.o: - ${CC} ${CFLAGS} -c ${.IMPSRC} + ${CC} ${STATIC_CFLAGS} ${CFLAGS} -c ${.IMPSRC} .if defined(CTFCONVERT) ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} .endif .asm.o: - ${CC} -x assembler-with-cpp ${CFLAGS} -c ${.IMPSRC} + ${CC} -x assembler-with-cpp ${STATIC_CFLAGS} ${CFLAGS} -c ${.IMPSRC} .if defined(CTFCONVERT) ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} .endif @@ -280,7 +280,7 @@ # XXX not -j safe .y.o: ${YACC} ${YFLAGS} ${.IMPSRC} - ${CC} ${CFLAGS} -c y.tab.c -o ${.TARGET} + ${CC} ${STATIC_CFLAGS} ${CFLAGS} -c y.tab.c -o ${.TARGET} rm -f y.tab.c .if defined(CTFCONVERT) ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} @@ -303,7 +303,7 @@ ${LEX} -t ${LFLAGS} ${.IMPSRC} > ${.TARGET} .s.out .c.out .o.out: - ${CC} ${CFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET} + ${CC} ${STATIC_CFLAGS} ${CFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET} .if defined(CTFCONVERT) ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} .endif @@ -319,7 +319,7 @@ # XXX not -j safe .y.out: ${YACC} ${YFLAGS} ${.IMPSRC} - ${CC} ${CFLAGS} ${LDFLAGS} y.tab.c ${LDLIBS} -ly -o ${.TARGET} + ${CC} ${STATIC_CFLAGS} ${CFLAGS} ${LDFLAGS} y.tab.c ${LDLIBS} -ly -o ${.TARGET} rm -f y.tab.c .if defined(CTFCONVERT) ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} @@ -327,7 +327,7 @@ .l.out: ${LEX} -t ${LFLAGS} ${.IMPSRC} > ${.PREFIX}.tmp.c - ${CC} ${CFLAGS} ${LDFLAGS} ${.PREFIX}.tmp.c ${LDLIBS} -ll -o ${.TARGET} + ${CC} ${STATIC_CFLAGS} ${CFLAGS} ${LDFLAGS} ${.PREFIX}.tmp.c ${LDLIBS} -ll -o ${.TARGET} rm -f ${.PREFIX}.tmp.c .if defined(CTFCONVERT) ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} DES -- Dag-Erling Smørgrav - d...@des.no _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"