1 1.1 mrg # $NetBSD: Makefile,v 1.1 2011/06/21 06:02:26 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.1 mrg .if !defined(MKNATIVE_LIBGCC_NEW) 25 1.1 mrg 26 1.1 mrg SRCS+= ${LIB2FUNCS} ${LIB2DIVMOD} ${LIB2_EH} \ 27 1.1 mrg ${G_LIB2ADD:T:S/.asm/.S/} ${LIB1ASMFUNCS} 28 1.1 mrg 29 1.1 mrg .else # defined(MKNATIVE_LIBGCC_NEW) 30 1.1 mrg 31 1.1 mrg .include "../Makefile.srcs" 32 1.1 mrg 33 1.1 mrg # New style. 34 1.1 mrg TMPLSRCS= ${TMPLSRCS.libgcc_s.so} 35 1.1 mrg TMPLFPSRCS= ${TMPLFPSRCS.libgcc_s.so} 36 1.1 mrg TMPLASMSRCS= ${TMPLASMSRCS.libgcc_s.so} 37 1.1 mrg SRCS= ${SRCS.libgcc_s.so} 38 1.1 mrg 39 1.1 mrg .include "../Makefile.wrapper" 40 1.1 mrg 41 1.1 mrg .endif # defined(MKNATIVE_LIBGCC_NEW) 42 1.1 mrg 43 1.1 mrg COPTS.unwind-dw2.c = -Wno-stack-protector 44 1.1 mrg 45 1.1 mrg DPADD+= libgcc.map 46 1.1 mrg CLEANFILES+= libgcc.map 47 1.1 mrg 48 1.1 mrg .include <bsd.lib.mk> 49 1.1 mrg 50 1.1 mrg .if ${MKPICLIB} != "no" 51 1.1 mrg LIBGCC_S_OBJS= ${SOBJS} 52 1.1 mrg .else 53 1.1 mrg LIBGCC_S_OBJS= ${OBJS} 54 1.1 mrg .endif 55 1.1 mrg 56 1.1 mrg libgcc.map: ${LIBGCC_S_OBJS} ${G_SHLIB_MKMAP} ${G_SHLIB_MAPFILES} 57 1.1 mrg { \ 58 1.1 mrg ${NM} ${G_SHLIB_NM_FLAGS} ${LIBGCC_S_OBJS}; \ 59 1.1 mrg echo %%; \ 60 1.1 mrg cat ${G_SHLIB_MAPFILES} | \ 61 1.1 mrg ${TOOL_SED} -e "/^[ ]*#/d" \ 62 1.1 mrg -e 's/^%\(if\|else\|elif\|endif\|define\)/#\1/' | \ 63 1.1 mrg ${CC} ${G_LIBGCC2_CFLAGS} ${G_INCLUDES} -E -xassembler-with-cpp -; \ 64 1.1 mrg } | ${TOOL_AWK} -f ${G_SHLIB_MKMAP} > ${.TARGET}.tmp 65 1.1 mrg mv ${.TARGET}.tmp ${.TARGET} 66 1.1 mrg 67 1.1 mrg .else 68 1.1 mrg .include <bsd.prog.mk> # do nothing 69 1.1 mrg .endif 70