1 # $NetBSD: Makefile,v 1.13 2009/08/18 15:08:51 skrll Exp $ 2 3 .include <bsd.own.mk> 4 5 MODULE= binutils 6 7 .if $(HAVE_BINUTILS) == "219" 8 GNUHOSTDIST= ${.CURDIR}/../../external/gpl3/binutils/dist 9 .endif 10 11 CONFIGURE_ARGS= --target=${MACHINE_GNU_PLATFORM} --disable-nls \ 12 --program-transform-name="s,^,${MACHINE_GNU_PLATFORM}-," 13 14 MAKE_ARGS= MACHINE= MAKEINFO=${TOOL_MAKEINFO:Q} 15 16 ALL_TARGET= all-binutils all-gas all-ld 17 INSTALL_TARGET= install-binutils install-gas install-ld 18 .if ${MKCROSSGPROF:Uno} != "no" 19 ALL_TARGET+= all-gprof 20 INSTALL_TARGET+=install-gprof 21 .endif 22 23 .include "${.CURDIR}/../Makefile.gnuhost" 24 25 CCADDFLAGS= -I${DESTDIR}/usr/include -L${DESTDIR}/lib -L${DESTDIR}/usr/lib -B${DESTDIR}/usr/lib/ 26 27 NEWCONFIGDIR?= ${.CURDIR}/../.. 28 MKNATIVE?= ${.CURDIR}/mknative-binutils 29 30 native-binutils: .native/.configure_done 31 @echo 'Extracting GNU binutils configury for a native toolchain.' 32 MAKE=${MAKE:Q} ${HOST_SH} ${MKNATIVE} binutils \ 33 ${.OBJDIR}/.native ${NEWCONFIGDIR} ${MACHINE_GNU_PLATFORM} 34 35 .native/.configure_done: ${_GNU_CFGSRC} ${.CURDIR}/Makefile 36 mkdir .native 2>/dev/null || true 37 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ 38 (cd .native && ${CONFIGURE_ENV:NC*:NLD*} \ 39 CC_FOR_BUILD=${HOST_CC:Q} \ 40 CC=${CC:Q}' '${CCADDFLAGS:Q} \ 41 CXX=${CXX:Q}' '${CCADDFLAGS:Q} \ 42 CPP=${CPP:Q}' '-I${DESTDIR}/usr/include \ 43 CFLAGS= CPPFLAGS= CXXFLAGS= LDFLAGS= \ 44 MSGFMT=${TOOLDIR}/bin/${_TOOL_PREFIX}msgfmt \ 45 XGETTEXT=${TOOLDIR}/bin/${_TOOL_PREFIX}xgettext \ 46 LIBS=-lintl \ 47 ac_cv_prog_cc_cross=yes \ 48 ac_cv_func_strcoll_works=yes \ 49 ${HOST_SH} ${GNUHOSTDIST}/configure \ 50 --build=`${GNUHOSTDIST}/config.guess` \ 51 --host=${MACHINE_GNU_PLATFORM} \ 52 --target=${MACHINE_GNU_PLATFORM}) 53 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ 54 (cd .native && ${MAKE} configure-host) 55 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ 56 (cd .native/bfd && ${MAKE} bfd.h bfdver.h) 57 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ 58 (cd .native/ld && ${MAKE} ldemul-list.h) 59 @touch $@ 60 61 clean: clean.native 62 clean.native: 63 -rm -r -f .native 64