1 1.8 mrg # $NetBSD: Makefile,v 1.8 2014/03/01 10:00:36 mrg Exp $ 2 1.1 mrg 3 1.1 mrg USE_SHLIBDIR= yes 4 1.1 mrg REQUIRETOOLS= yes 5 1.1 mrg NOLINT= # defined 6 1.1 mrg 7 1.1 mrg LIB= gcc_s 8 1.1 mrg NOSTATICLIB= # defined 9 1.1 mrg NOPROFILE= # defined 10 1.1 mrg NOPICINSTALL= # defined 11 1.1 mrg 12 1.1 mrg .include <bsd.own.mk> 13 1.1 mrg 14 1.1 mrg .if ${MKGCC} != "no" 15 1.1 mrg 16 1.1 mrg .cc: # disable .cc->NULL transform 17 1.1 mrg 18 1.1 mrg SHLIB_MAJOR= 1 19 1.1 mrg SHLIB_MINOR= 0 20 1.1 mrg 21 1.1 mrg LDFLAGS+= -nodefaultlibs 22 1.1 mrg LDFLAGS+= -Wl,--version-script=${.OBJDIR}/libgcc.map 23 1.1 mrg 24 1.2 mrg # XXX handle this better? 25 1.8 mrg # XXX handle this better? GCC 4.8 moved them. 26 1.5 christos .if ${MACHINE} == "emips" 27 1.4 christos G_LIB2ADD_HACK+= ${GNUHOSTDIST}/gcc/config/floatunsidf.c \ 28 1.4 christos ${GNUHOSTDIST}/gcc/config/floatunsisf.c 29 1.2 mrg .endif 30 1.2 mrg 31 1.6 matt SRCS+= ${LIB2FUNCS} ${LIB2DIVMOD} ${LIB2_EH} ${LIB2_EHASM} \ 32 1.4 christos ${G_LIB2ADD:T:S/.asm/.S/} ${G_LIB2ADD_HACK:T:S/.asm/.S/} \ 33 1.8 mrg ${G_LIB2ADD_ST:T} ${LIB1ASMFUNCS} 34 1.1 mrg 35 1.1 mrg COPTS.unwind-dw2.c = -Wno-stack-protector 36 1.1 mrg 37 1.1 mrg DPADD+= libgcc.map 38 1.1 mrg CLEANFILES+= libgcc.map 39 1.1 mrg 40 1.1 mrg .include <bsd.lib.mk> 41 1.1 mrg 42 1.1 mrg .if ${MKPICLIB} != "no" 43 1.1 mrg LIBGCC_S_OBJS= ${SOBJS} 44 1.1 mrg .else 45 1.1 mrg LIBGCC_S_OBJS= ${OBJS} 46 1.1 mrg .endif 47 1.1 mrg 48 1.8 mrg LIBGCC_STD_VER_IN= ${GNUHOSTDIST}/libgcc/libgcc-std.ver.in 49 1.8 mrg 50 1.8 mrg libgcc-std.ver: ${LIBGCC_STD_VER_IN} 51 1.8 mrg ${_MKTARGET_CREATE} 52 1.8 mrg ${TOOL_SED} -e 's/__PFX__/__/g' -e 's/__FIXPTPFX__/__/g' < ${LIBGCC_STD_VER_IN} > ${.TARGET}.tmp 53 1.8 mrg mv ${.TARGET}.tmp ${.TARGET} 54 1.8 mrg 55 1.1 mrg libgcc.map: ${LIBGCC_S_OBJS} ${G_SHLIB_MKMAP} ${G_SHLIB_MAPFILES} 56 1.1 mrg { \ 57 1.1 mrg ${NM} ${G_SHLIB_NM_FLAGS} ${LIBGCC_S_OBJS}; \ 58 1.1 mrg echo %%; \ 59 1.8 mrg for f in ${G_SHLIB_MAPFILES}; do \ 60 1.8 mrg if [ -f ${.OBJDIR}/$${f}]; then \ 61 1.8 mrg cat ${.OBJDIR}/$${f}; \ 62 1.8 mrg else \ 63 1.8 mrg cat $${f}; \ 64 1.8 mrg fi; \ 65 1.8 mrg done | \ 66 1.1 mrg ${TOOL_SED} -e "/^[ ]*#/d" \ 67 1.1 mrg -e 's/^%\(if\|else\|elif\|endif\|define\)/#\1/' | \ 68 1.1 mrg ${CC} ${G_LIBGCC2_CFLAGS} ${G_INCLUDES} -E -xassembler-with-cpp -; \ 69 1.1 mrg } | ${TOOL_AWK} -f ${G_SHLIB_MKMAP} > ${.TARGET}.tmp 70 1.1 mrg mv ${.TARGET}.tmp ${.TARGET} 71 1.1 mrg 72 1.1 mrg .else 73 1.1 mrg .include <bsd.prog.mk> # do nothing 74 1.1 mrg .endif 75