diff options
Diffstat (limited to 'meta/packages/gcc')
-rw-r--r-- | meta/packages/gcc/gcc-cross-initial_csl-arm-2006q1.bb | 32 | ||||
-rw-r--r-- | meta/packages/gcc/gcc-cross_csl-arm-2006q1.bb | 19 | ||||
-rw-r--r-- | meta/packages/gcc/gcc-csl-arm/gcc-configure-no-fortran.patch | 1075 | ||||
-rw-r--r-- | meta/packages/gcc/gcc-package-cross-no-fortran.inc | 66 | ||||
-rw-r--r-- | meta/packages/gcc/gcc-package-no-fortran.inc | 103 | ||||
-rw-r--r-- | meta/packages/gcc/gcc4-build-cross.inc | 6 | ||||
-rw-r--r-- | meta/packages/gcc/gcc4-build.inc | 100 | ||||
-rw-r--r-- | meta/packages/gcc/gcc_csl-arm-2006q1.bb | 30 |
8 files changed, 1428 insertions, 3 deletions
diff --git a/meta/packages/gcc/gcc-cross-initial_csl-arm-2006q1.bb b/meta/packages/gcc/gcc-cross-initial_csl-arm-2006q1.bb new file mode 100644 index 000000000..17cf7b4d9 --- /dev/null +++ b/meta/packages/gcc/gcc-cross-initial_csl-arm-2006q1.bb @@ -0,0 +1,32 @@ +require gcc-cross_${PV}.bb + +DEPENDS = "virtual/${TARGET_PREFIX}binutils" +DEPENDS += "${@['virtual/${TARGET_PREFIX}libc-initial',''][bb.data.getVar('TARGET_ARCH', d, 1) in ['arm', 'armeb', 'mips', 'mipsel']]}" +PROVIDES = "virtual/${TARGET_PREFIX}gcc-initial" +PACKAGES = "" + +S = "${WORKDIR}/gcc-2006q1" + +# This is intended to be a -very- basic config +EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \ + --with-newlib \ + --disable-shared \ + --disable-threads \ + --disable-multilib \ + --disable-__cxa_atexit \ + --disable-libmudflap \ + --disable-libssp \ + --enable-languages=c \ + --enable-target-optspace \ + --program-prefix=${TARGET_PREFIX} \ + ${@get_gcc_fpu_setting(bb, d)}" + +do_stage_prepend () { + mkdir -p ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV} + ln -sf libgcc.a ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/libgcc_eh.a +} + +# Override the method from gcc-cross so we don't try to install libgcc +do_install () { + oe_runmake 'DESTDIR=${D}' install +} diff --git a/meta/packages/gcc/gcc-cross_csl-arm-2006q1.bb b/meta/packages/gcc/gcc-cross_csl-arm-2006q1.bb new file mode 100644 index 000000000..662c1b076 --- /dev/null +++ b/meta/packages/gcc/gcc-cross_csl-arm-2006q1.bb @@ -0,0 +1,19 @@ +require gcc_csl-arm-2006q1.bb +# path mangling, needed by the cross packaging +require gcc-paths-cross.inc +inherit cross +# NOTE: split PR. If the main .oe changes something that affects its *build* +# remember to increment this one too. +PR = "r0" + +DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-for-gcc" +# gmp-native mpfr-native" + +PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++" + +# cross build +require gcc4-build-cross.inc +# cross packaging +require gcc-package-cross-no-fortran.inc + +S = "${WORKDIR}/gcc-2006q1" diff --git a/meta/packages/gcc/gcc-csl-arm/gcc-configure-no-fortran.patch b/meta/packages/gcc/gcc-csl-arm/gcc-configure-no-fortran.patch new file mode 100644 index 000000000..c84550330 --- /dev/null +++ b/meta/packages/gcc/gcc-csl-arm/gcc-configure-no-fortran.patch @@ -0,0 +1,1075 @@ +--- tmp/configure.in.orig 2006-09-05 17:50:48.000000000 +0100 ++++ tmp/configure.in 2006-09-05 17:50:48.000000000 +0100 +@@ -157,7 +157,6 @@ + target-libstdc++-v3 \ + target-libmudflap \ + target-libssp \ +- target-libgfortran \ + ${libgcj} \ + target-libobjc \ + target-libada" +@@ -1084,77 +1083,6 @@ + AC_SUBST(docdir) + AC_SUBST(htmldir) + +-# Check for GMP and MPFR +-gmplibs= +-gmpinc= +-have_gmp=yes +-# Specify a location for mpfr +-# check for this first so it ends up on the link line before gmp. +-AC_ARG_WITH(mpfr-dir, [ --with-mpfr-dir=PATH Specify source directory for MPFR library]) +- +-if test "x$with_mpfr_dir" != x; then +- gmpinc="-I$with_mpfr_dir" +- gmplibs="$with_mpfr_dir/libmpfr.a" +-else +- gmplibs="-lmpfr" +-fi +- +-AC_ARG_WITH(mpfr, [ --with-mpfr=PATH Specify directory for installed MPFR library]) +- +-if test "x$with_mpfr" != x; then +- gmplibs="-L$with_mpfr/lib $gmplibs" +- gmpinc="-I$with_mpfr/include" +-fi +- +-# Specify a location for gmp +-AC_ARG_WITH(gmp-dir, [ --with-gmp-dir=PATH Specify source directory for GMP library]) +- +-if test "x$with_gmp_dir" != x; then +- gmpinc="$gmpinc -I$with_gmp_dir" +- if test -f "$with_gmp_dir/.libs/libgmp.a"; then +- gmplibs="$gmplibs $with_gmp_dir/.libs/libgmp.a" +- elif test -f "$with_gmp_dir/_libs/libgmp.a"; then +- gmplibs="$gmplibs $with_gmp_dir/_libs/libgmp.a" +- fi +- # One of the later tests will catch the error if neither library is present. +-else +- gmplibs="$gmplibs -lgmp" +-fi +- +-AC_ARG_WITH(gmp, [ --with-gmp=PATH Specify directory for installed GMP library]) +- +-if test "x$with_gmp" != x; then +- gmplibs="-L$with_gmp/lib $gmplibs" +- gmpinc="-I$with_gmp/include $gmpinc" +-fi +- +-saved_CFLAGS="$CFLAGS" +-CFLAGS="$CFLAGS $gmpinc" +-# Check GMP actually works +-AC_MSG_CHECKING([for correct version of gmp.h]) +-AC_TRY_COMPILE([#include "gmp.h"],[ +-#if __GNU_MP_VERSION < 3 +-choke me +-#endif +-], [AC_MSG_RESULT([yes])], +- [AC_MSG_RESULT([no]); have_gmp=no]) +- +-if test x"$have_gmp" = xyes; then +- AC_MSG_CHECKING([for MPFR]) +- +- saved_LIBS="$LIBS" +- LIBS="$LIBS $gmplibs" +- AC_TRY_LINK([#include <gmp.h> +-#include <mpfr.h>], [mpfr_t n; mpfr_init(n);], +- [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); have_gmp=no]) +- LIBS="$saved_LIBS" +- CFLAGS="$saved_CFLAGS" +-fi +- +-# Flags needed for both GMP and/or MPFR +-AC_SUBST(gmplibs) +-AC_SUBST(gmpinc) +- + # By default, C is the only stage 1 language. + stage1_languages=c + AC_SUBST(stage1_languages) +@@ -1182,15 +1110,6 @@ + fi + enable_languages=`echo "${enable_languages}" | sed -e 's/[[ ,]][[ ,]]*/,/g' -e 's/,$//'` + +- # 'f95' is the old name for the 'fortran' language. We issue a warning +- # and make the substitution. +- case ,${enable_languages}, in +- *,f95,*) +- echo configure.in: warning: 'f95' as language name is deprecated, use 'fortran' instead 1>&2 +- enable_languages=`echo "${enable_languages}" | sed -e 's/f95/fortran/g'` +- ;; +- esac +- + # First scan to see if an enabled language requires some other language. + # We assume that a given config-lang.in will list all the language + # front ends it requires, even if some are required indirectly. +@@ -2213,7 +2132,6 @@ + NCN_STRICT_CHECK_TARGET_TOOLS(DLLTOOL_FOR_TARGET, dlltool) + NCN_STRICT_CHECK_TARGET_TOOLS(GCC_FOR_TARGET, gcc, ${CC_FOR_TARGET}) + NCN_STRICT_CHECK_TARGET_TOOLS(GCJ_FOR_TARGET, gcj) +-NCN_STRICT_CHECK_TARGET_TOOLS(GFORTRAN_FOR_TARGET, gfortran) + NCN_STRICT_CHECK_TARGET_TOOLS(LD_FOR_TARGET, ld) + NCN_STRICT_CHECK_TARGET_TOOLS(LIPO_FOR_TARGET, lipo) + NCN_STRICT_CHECK_TARGET_TOOLS(NM_FOR_TARGET, nm) +@@ -2237,9 +2155,7 @@ + GCC_TARGET_TOOL(gcc, GCC_FOR_TARGET, , [gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/]) + GCC_TARGET_TOOL(gcj, GCJ_FOR_TARGET, GCJ, + [gcc/gcj -B$$r/$(HOST_SUBDIR)/gcc/], java) +-GCC_TARGET_TOOL(gfortran, GFORTRAN_FOR_TARGET, GFORTRAN, +- [gcc/gfortran -B$$r/$(HOST_SUBDIR)/gcc/], fortran) + GCC_TARGET_TOOL(ld, LD_FOR_TARGET, LD, [ld/ld-new]) + GCC_TARGET_TOOL(lipo, LIPO_FOR_TARGET, LIPO) + GCC_TARGET_TOOL(nm, NM_FOR_TARGET, NM, [binutils/nm-new]) + +--- tmp/Makefile.in.orig 2006-09-06 08:33:46.000000000 +0100 ++++ tmp/Makefile.in 2006-09-06 08:33:46.000000000 +0100 +@@ -119,7 +119,6 @@ + CXX="$(CXX_FOR_BUILD)"; export CXX; \ + CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \ + GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \ +- GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \ + DLLTOOL="$(DLLTOOL_FOR_BUILD)"; export DLLTOOL; \ + LD="$(LD_FOR_BUILD)"; export LD; \ + LDFLAGS="$(LDFLAGS_FOR_BUILD)"; export LDFLAGS; \ +@@ -201,7 +200,6 @@ + CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \ + CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ + GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ +- GFORTRAN="$(GFORTRAN_FOR_TARGET)"; export GFORTRAN; \ + DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ + LD="$(COMPILER_LD_FOR_TARGET)"; export LD; \ + LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ +@@ -313,7 +311,6 @@ + CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET) + RAW_CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @RAW_CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET) + GCJ_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCJ_FOR_TARGET@ $(FLAGS_FOR_TARGET) +-GFORTRAN_FOR_TARGET=$(STAGE_CC_WRAPPER) @GFORTRAN_FOR_TARGET@ $(FLAGS_FOR_TARGET) + DLLTOOL_FOR_TARGET=@DLLTOOL_FOR_TARGET@ + LD_FOR_TARGET=@LD_FOR_TARGET@ + +@@ -452,7 +449,6 @@ + "CXXFLAGS_FOR_TARGET=$(CXXFLAGS_FOR_TARGET)" \ + "DLLTOOL_FOR_TARGET=$(DLLTOOL_FOR_TARGET)" \ + "GCJ_FOR_TARGET=$(GCJ_FOR_TARGET)" \ +- "GFORTRAN_FOR_TARGET=$(GFORTRAN_FOR_TARGET)" \ + "LD_FOR_TARGET=$(LD_FOR_TARGET)" \ + "LIPO_FOR_TARGET=$(LIPO_FOR_TARGET)" \ + "LDFLAGS_FOR_TARGET=$(LDFLAGS_FOR_TARGET)" \ +@@ -618,7 +614,6 @@ + maybe-configure-target-libmudflap \ + maybe-configure-target-libssp \ + maybe-configure-target-newlib \ +- maybe-configure-target-libgfortran \ + maybe-configure-target-libobjc \ + maybe-configure-target-libtermcap \ + maybe-configure-target-winsup \ +@@ -737,7 +732,6 @@ + maybe-all-target-libmudflap \ + maybe-all-target-libssp \ + maybe-all-target-newlib \ +- maybe-all-target-libgfortran \ + maybe-all-target-libobjc \ + maybe-all-target-libtermcap \ + maybe-all-target-winsup \ +@@ -844,7 +838,6 @@ + maybe-info-target-libmudflap \ + maybe-info-target-libssp \ + maybe-info-target-newlib \ +- maybe-info-target-libgfortran \ + maybe-info-target-libobjc \ + maybe-info-target-libtermcap \ + maybe-info-target-winsup \ +@@ -946,7 +939,6 @@ + maybe-dvi-target-libmudflap \ + maybe-dvi-target-libssp \ + maybe-dvi-target-newlib \ +- maybe-dvi-target-libgfortran \ + maybe-dvi-target-libobjc \ + maybe-dvi-target-libtermcap \ + maybe-dvi-target-winsup \ +@@ -1048,7 +1040,6 @@ + maybe-html-target-libmudflap \ + maybe-html-target-libssp \ + maybe-html-target-newlib \ +- maybe-html-target-libgfortran \ + maybe-html-target-libobjc \ + maybe-html-target-libtermcap \ + maybe-html-target-winsup \ +@@ -1150,7 +1141,6 @@ + maybe-TAGS-target-libmudflap \ + maybe-TAGS-target-libssp \ + maybe-TAGS-target-newlib \ +- maybe-TAGS-target-libgfortran \ + maybe-TAGS-target-libobjc \ + maybe-TAGS-target-libtermcap \ + maybe-TAGS-target-winsup \ +@@ -1252,7 +1242,6 @@ + maybe-install-info-target-libmudflap \ + maybe-install-info-target-libssp \ + maybe-install-info-target-newlib \ +- maybe-install-info-target-libgfortran \ + maybe-install-info-target-libobjc \ + maybe-install-info-target-libtermcap \ + maybe-install-info-target-winsup \ +@@ -1354,7 +1343,6 @@ + maybe-install-html-target-libmudflap \ + maybe-install-html-target-libssp \ + maybe-install-html-target-newlib \ +- maybe-install-html-target-libgfortran \ + maybe-install-html-target-libobjc \ + maybe-install-html-target-libtermcap \ + maybe-install-html-target-winsup \ +@@ -1456,7 +1444,6 @@ + maybe-installcheck-target-libmudflap \ + maybe-installcheck-target-libssp \ + maybe-installcheck-target-newlib \ +- maybe-installcheck-target-libgfortran \ + maybe-installcheck-target-libobjc \ + maybe-installcheck-target-libtermcap \ + maybe-installcheck-target-winsup \ +@@ -1558,7 +1545,6 @@ + maybe-mostlyclean-target-libmudflap \ + maybe-mostlyclean-target-libssp \ + maybe-mostlyclean-target-newlib \ +- maybe-mostlyclean-target-libgfortran \ + maybe-mostlyclean-target-libobjc \ + maybe-mostlyclean-target-libtermcap \ + maybe-mostlyclean-target-winsup \ +@@ -1660,7 +1646,6 @@ + maybe-clean-target-libmudflap \ + maybe-clean-target-libssp \ + maybe-clean-target-newlib \ +- maybe-clean-target-libgfortran \ + maybe-clean-target-libobjc \ + maybe-clean-target-libtermcap \ + maybe-clean-target-winsup \ +@@ -1762,7 +1747,6 @@ + maybe-distclean-target-libmudflap \ + maybe-distclean-target-libssp \ + maybe-distclean-target-newlib \ +- maybe-distclean-target-libgfortran \ + maybe-distclean-target-libobjc \ + maybe-distclean-target-libtermcap \ + maybe-distclean-target-winsup \ +@@ -1864,7 +1848,6 @@ + maybe-maintainer-clean-target-libmudflap \ + maybe-maintainer-clean-target-libssp \ + maybe-maintainer-clean-target-newlib \ +- maybe-maintainer-clean-target-libgfortran \ + maybe-maintainer-clean-target-libobjc \ + maybe-maintainer-clean-target-libtermcap \ + maybe-maintainer-clean-target-winsup \ +@@ -2024,7 +2007,6 @@ + maybe-check-target-libmudflap \ + maybe-check-target-libssp \ + maybe-check-target-newlib \ +- maybe-check-target-libgfortran \ + maybe-check-target-libobjc \ + maybe-check-target-libtermcap \ + maybe-check-target-winsup \ +@@ -2223,7 +2205,6 @@ + maybe-install-target-libmudflap \ + maybe-install-target-libssp \ + maybe-install-target-newlib \ +- maybe-install-target-libgfortran \ + maybe-install-target-libobjc \ + maybe-install-target-libtermcap \ + maybe-install-target-winsup \ +@@ -31606,382 +31587,6 @@ + + + # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. +-@if target-libgfortran +-$(TARGET_SUBDIR)/libgfortran/multilib.out: multilib.out +- $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgfortran ; \ +- rm -f $(TARGET_SUBDIR)/libgfortran/Makefile || : ; \ +- cp multilib.out $(TARGET_SUBDIR)/libgfortran/multilib.out +-@endif target-libgfortran +- +- +- +-.PHONY: configure-target-libgfortran maybe-configure-target-libgfortran +-maybe-configure-target-libgfortran: +-@if target-libgfortran +-maybe-configure-target-libgfortran: configure-target-libgfortran +-configure-target-libgfortran: $(TARGET_SUBDIR)/libgfortran/multilib.out +- @$(unstage) +- @test ! -f $(TARGET_SUBDIR)/libgfortran/Makefile || exit 0; \ +- $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgfortran ; \ +- r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- echo Configuring in $(TARGET_SUBDIR)/libgfortran; \ +- cd "$(TARGET_SUBDIR)/libgfortran" || exit 1; \ +- case $(srcdir) in \ +- /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \ +- *) topdir=`echo $(TARGET_SUBDIR)/libgfortran/ | \ +- sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \ +- esac; \ +- srcdiroption="--srcdir=$${topdir}/libgfortran"; \ +- libsrcdir="$$s/libgfortran"; \ +- rm -f no-such-file || : ; \ +- CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \ +- $(TARGET_CONFIGARGS) $${srcdiroption} \ +- || exit 1 +-@endif target-libgfortran +- +- +- +- +- +-.PHONY: all-target-libgfortran maybe-all-target-libgfortran +-maybe-all-target-libgfortran: +-@if target-libgfortran +-TARGET-target-libgfortran=all +-maybe-all-target-libgfortran: all-target-libgfortran +-all-target-libgfortran: configure-target-libgfortran +- @$(unstage) +- @r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(TARGET_FLAGS_TO_PASS) $(TARGET-target-libgfortran)) +-@endif target-libgfortran +- +- +- +- +- +-.PHONY: check-target-libgfortran maybe-check-target-libgfortran +-maybe-check-target-libgfortran: +-@if target-libgfortran +-maybe-check-target-libgfortran: check-target-libgfortran +- +-check-target-libgfortran: +- @: $(MAKE); $(unstage) +- @r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +- +-@endif target-libgfortran +- +-.PHONY: install-target-libgfortran maybe-install-target-libgfortran +-maybe-install-target-libgfortran: +-@if target-libgfortran +-maybe-install-target-libgfortran: install-target-libgfortran +- +-install-target-libgfortran: installdirs +- @: $(MAKE); $(unstage) +- @r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +- +-@endif target-libgfortran +- +-# Other targets (info, dvi, etc.) +- +-.PHONY: maybe-info-target-libgfortran info-target-libgfortran +-maybe-info-target-libgfortran: +-@if target-libgfortran +-maybe-info-target-libgfortran: info-target-libgfortran +- +-info-target-libgfortran: \ +- configure-target-libgfortran +- @: $(MAKE); $(unstage) +- @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ +- r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- echo "Doing info in $(TARGET_SUBDIR)/libgfortran" ; \ +- for flag in $(EXTRA_TARGET_FLAGS); do \ +- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ +- done; \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ +- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ +- "RANLIB=$${RANLIB}" \ +- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ +- info) \ +- || exit 1 +- +-@endif target-libgfortran +- +-.PHONY: maybe-dvi-target-libgfortran dvi-target-libgfortran +-maybe-dvi-target-libgfortran: +-@if target-libgfortran +-maybe-dvi-target-libgfortran: dvi-target-libgfortran +- +-dvi-target-libgfortran: \ +- configure-target-libgfortran +- @: $(MAKE); $(unstage) +- @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ +- r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- echo "Doing dvi in $(TARGET_SUBDIR)/libgfortran" ; \ +- for flag in $(EXTRA_TARGET_FLAGS); do \ +- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ +- done; \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ +- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ +- "RANLIB=$${RANLIB}" \ +- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ +- dvi) \ +- || exit 1 +- +-@endif target-libgfortran +- +-.PHONY: maybe-html-target-libgfortran html-target-libgfortran +-maybe-html-target-libgfortran: +-@if target-libgfortran +-maybe-html-target-libgfortran: html-target-libgfortran +- +-html-target-libgfortran: \ +- configure-target-libgfortran +- @: $(MAKE); $(unstage) +- @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ +- r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- echo "Doing html in $(TARGET_SUBDIR)/libgfortran" ; \ +- for flag in $(EXTRA_TARGET_FLAGS); do \ +- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ +- done; \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ +- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ +- "RANLIB=$${RANLIB}" \ +- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ +- html) \ +- || exit 1 +- +-@endif target-libgfortran +- +-.PHONY: maybe-TAGS-target-libgfortran TAGS-target-libgfortran +-maybe-TAGS-target-libgfortran: +-@if target-libgfortran +-maybe-TAGS-target-libgfortran: TAGS-target-libgfortran +- +-TAGS-target-libgfortran: \ +- configure-target-libgfortran +- @: $(MAKE); $(unstage) +- @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ +- r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- echo "Doing TAGS in $(TARGET_SUBDIR)/libgfortran" ; \ +- for flag in $(EXTRA_TARGET_FLAGS); do \ +- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ +- done; \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ +- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ +- "RANLIB=$${RANLIB}" \ +- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ +- TAGS) \ +- || exit 1 +- +-@endif target-libgfortran +- +-.PHONY: maybe-install-info-target-libgfortran install-info-target-libgfortran +-maybe-install-info-target-libgfortran: +-@if target-libgfortran +-maybe-install-info-target-libgfortran: install-info-target-libgfortran +- +-install-info-target-libgfortran: \ +- configure-target-libgfortran \ +- info-target-libgfortran +- @: $(MAKE); $(unstage) +- @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ +- r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- echo "Doing install-info in $(TARGET_SUBDIR)/libgfortran" ; \ +- for flag in $(EXTRA_TARGET_FLAGS); do \ +- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ +- done; \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ +- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ +- "RANLIB=$${RANLIB}" \ +- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ +- install-info) \ +- || exit 1 +- +-@endif target-libgfortran +- +-.PHONY: maybe-install-html-target-libgfortran install-html-target-libgfortran +-maybe-install-html-target-libgfortran: +-@if target-libgfortran +-maybe-install-html-target-libgfortran: install-html-target-libgfortran +- +-install-html-target-libgfortran: \ +- configure-target-libgfortran \ +- html-target-libgfortran +- @: $(MAKE); $(unstage) +- @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ +- r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- echo "Doing install-html in $(TARGET_SUBDIR)/libgfortran" ; \ +- for flag in $(EXTRA_TARGET_FLAGS); do \ +- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ +- done; \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ +- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ +- "RANLIB=$${RANLIB}" \ +- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ +- install-html) \ +- || exit 1 +- +-@endif target-libgfortran +- +-.PHONY: maybe-installcheck-target-libgfortran installcheck-target-libgfortran +-maybe-installcheck-target-libgfortran: +-@if target-libgfortran +-maybe-installcheck-target-libgfortran: installcheck-target-libgfortran +- +-installcheck-target-libgfortran: \ +- configure-target-libgfortran +- @: $(MAKE); $(unstage) +- @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ +- r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- echo "Doing installcheck in $(TARGET_SUBDIR)/libgfortran" ; \ +- for flag in $(EXTRA_TARGET_FLAGS); do \ +- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ +- done; \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ +- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ +- "RANLIB=$${RANLIB}" \ +- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ +- installcheck) \ +- || exit 1 +- +-@endif target-libgfortran +- +-.PHONY: maybe-mostlyclean-target-libgfortran mostlyclean-target-libgfortran +-maybe-mostlyclean-target-libgfortran: +-@if target-libgfortran +-maybe-mostlyclean-target-libgfortran: mostlyclean-target-libgfortran +- +-mostlyclean-target-libgfortran: +- @: $(MAKE); $(unstage) +- @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ +- r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgfortran" ; \ +- for flag in $(EXTRA_TARGET_FLAGS); do \ +- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ +- done; \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ +- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ +- "RANLIB=$${RANLIB}" \ +- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ +- mostlyclean) \ +- || exit 1 +- +-@endif target-libgfortran +- +-.PHONY: maybe-clean-target-libgfortran clean-target-libgfortran +-maybe-clean-target-libgfortran: +-@if target-libgfortran +-maybe-clean-target-libgfortran: clean-target-libgfortran +- +-clean-target-libgfortran: +- @: $(MAKE); $(unstage) +- @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ +- r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- echo "Doing clean in $(TARGET_SUBDIR)/libgfortran" ; \ +- for flag in $(EXTRA_TARGET_FLAGS); do \ +- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ +- done; \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ +- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ +- "RANLIB=$${RANLIB}" \ +- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ +- clean) \ +- || exit 1 +- +-@endif target-libgfortran +- +-.PHONY: maybe-distclean-target-libgfortran distclean-target-libgfortran +-maybe-distclean-target-libgfortran: +-@if target-libgfortran +-maybe-distclean-target-libgfortran: distclean-target-libgfortran +- +-distclean-target-libgfortran: +- @: $(MAKE); $(unstage) +- @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ +- r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- echo "Doing distclean in $(TARGET_SUBDIR)/libgfortran" ; \ +- for flag in $(EXTRA_TARGET_FLAGS); do \ +- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ +- done; \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ +- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ +- "RANLIB=$${RANLIB}" \ +- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ +- distclean) \ +- || exit 1 +- +-@endif target-libgfortran +- +-.PHONY: maybe-maintainer-clean-target-libgfortran maintainer-clean-target-libgfortran +-maybe-maintainer-clean-target-libgfortran: +-@if target-libgfortran +-maybe-maintainer-clean-target-libgfortran: maintainer-clean-target-libgfortran +- +-maintainer-clean-target-libgfortran: +- @: $(MAKE); $(unstage) +- @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ +- r=`${PWD_COMMAND}`; export r; \ +- s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ +- $(NORMAL_TARGET_EXPORTS) \ +- echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libgfortran" ; \ +- for flag in $(EXTRA_TARGET_FLAGS); do \ +- eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ +- done; \ +- (cd $(TARGET_SUBDIR)/libgfortran && \ +- $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ +- "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ +- "RANLIB=$${RANLIB}" \ +- "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ +- maintainer-clean) \ +- || exit 1 +- +-@endif target-libgfortran +- +- +- +-# There's only one multilib.out. Cleverer subdirs shouldn't need it copied. + @if target-libobjc + $(TARGET_SUBDIR)/libobjc/multilib.out: multilib.out + $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libobjc ; \ +@@ -38574,8 +38179,6 @@ + + configure-target-newlib: maybe-all-gcc + +-configure-target-libgfortran: maybe-all-gcc +- + configure-target-libobjc: maybe-all-gcc + + configure-target-libtermcap: maybe-all-gcc +@@ -38613,9 +38216,7 @@ + + configure-target-libada: maybe-all-target-newlib maybe-all-target-libgloss + +-configure-target-libgfortran: maybe-all-target-newlib maybe-all-target-libgloss +- + configure-target-libffi: maybe-all-target-newlib maybe-all-target-libgloss + + configure-target-libjava: maybe-all-target-newlib maybe-all-target-libgloss + +--- tmp/Makefile.tpl.orig 2006-09-06 08:36:52.000000000 +0100 ++++ tmp/Makefile.tpl 2006-09-06 08:36:52.000000000 +0100 +@@ -122,7 +122,6 @@ + CXX="$(CXX_FOR_BUILD)"; export CXX; \ + CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \ + GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \ +- GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \ + DLLTOOL="$(DLLTOOL_FOR_BUILD)"; export DLLTOOL; \ + LD="$(LD_FOR_BUILD)"; export LD; \ + LDFLAGS="$(LDFLAGS_FOR_BUILD)"; export LDFLAGS; \ +@@ -204,7 +203,6 @@ + CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \ + CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ + GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ +- GFORTRAN="$(GFORTRAN_FOR_TARGET)"; export GFORTRAN; \ + DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ + LD="$(COMPILER_LD_FOR_TARGET)"; export LD; \ + LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ +@@ -316,7 +314,6 @@ + CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET) + RAW_CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) @RAW_CXX_FOR_TARGET@ $(FLAGS_FOR_TARGET) + GCJ_FOR_TARGET=$(STAGE_CC_WRAPPER) @GCJ_FOR_TARGET@ $(FLAGS_FOR_TARGET) +-GFORTRAN_FOR_TARGET=$(STAGE_CC_WRAPPER) @GFORTRAN_FOR_TARGET@ $(FLAGS_FOR_TARGET) + DLLTOOL_FOR_TARGET=@DLLTOOL_FOR_TARGET@ + LD_FOR_TARGET=@LD_FOR_TARGET@ + +--- tmp/Makefile.def.orig 2006-09-06 08:38:50.000000000 +0100 ++++ tmp/Makefile.def 2006-09-06 08:38:50.000000000 +0100 +@@ -117,7 +117,6 @@ + target_modules = { module= libmudflap; lib_path=.libs; }; + target_modules = { module= libssp; lib_path=.libs; }; + target_modules = { module= newlib; }; +-target_modules = { module= libgfortran; }; + target_modules = { module= libobjc; }; + target_modules = { module= libtermcap; no_check=true; + missing=mostlyclean; +@@ -227,7 +226,6 @@ + flags_to_pass = { flag= CXXFLAGS_FOR_TARGET ; }; + flags_to_pass = { flag= DLLTOOL_FOR_TARGET ; }; + flags_to_pass = { flag= GCJ_FOR_TARGET ; }; +-flags_to_pass = { flag= GFORTRAN_FOR_TARGET ; }; + flags_to_pass = { flag= LD_FOR_TARGET ; }; + flags_to_pass = { flag= LIPO_FOR_TARGET ; }; + flags_to_pass = { flag= LDFLAGS_FOR_TARGET ; }; +@@ -415,7 +413,6 @@ + lang_env_dependencies = { module=boehm-gc; }; + lang_env_dependencies = { module=gperf; cxx=true; }; + lang_env_dependencies = { module=libada; }; +-lang_env_dependencies = { module=libgfortran; }; + lang_env_dependencies = { module=libffi; }; + lang_env_dependencies = { module=libjava; cxx=true; }; + lang_env_dependencies = { module=libmudflap; }; + +--- tmp/configure.orgig 2006-09-06 10:01:52.000000000 +0100 ++++ tmp/configure 2006-09-06 10:01:52.000000000 +0100 +@@ -921,7 +921,6 @@ + target-libstdc++-v3 \ + target-libmudflap \ + target-libssp \ +- target-libgfortran \ + ${libgcj} \ + target-libobjc \ + target-libada" +@@ -2246,135 +2245,6 @@ + fi + + +- +- +- +- +-# Check for GMP and MPFR +-gmplibs= +-gmpinc= +-have_gmp=yes +-# Specify a location for mpfr +-# check for this first so it ends up on the link line before gmp. +-# Check whether --with-mpfr-dir or --without-mpfr-dir was given. +-if test "${with_mpfr_dir+set}" = set; then +- withval="$with_mpfr_dir" +- : +-fi +- +- +-if test "x$with_mpfr_dir" != x; then +- gmpinc="-I$with_mpfr_dir" +- gmplibs="$with_mpfr_dir/libmpfr.a" +-else +- gmplibs="-lmpfr" +-fi +- +-# Check whether --with-mpfr or --without-mpfr was given. +-if test "${with_mpfr+set}" = set; then +- withval="$with_mpfr" +- : +-fi +- +- +-if test "x$with_mpfr" != x; then +- gmplibs="-L$with_mpfr/lib $gmplibs" +- gmpinc="-I$with_mpfr/include" +-fi +- +-# Specify a location for gmp +-# Check whether --with-gmp-dir or --without-gmp-dir was given. +-if test "${with_gmp_dir+set}" = set; then +- withval="$with_gmp_dir" +- : +-fi +- +- +-if test "x$with_gmp_dir" != x; then +- gmpinc="$gmpinc -I$with_gmp_dir" +- if test -f "$with_gmp_dir/.libs/libgmp.a"; then +- gmplibs="$gmplibs $with_gmp_dir/.libs/libgmp.a" +- elif test -f "$with_gmp_dir/_libs/libgmp.a"; then +- gmplibs="$gmplibs $with_gmp_dir/_libs/libgmp.a" +- fi +- # One of the later tests will catch the error if neither library is present. +-else +- gmplibs="$gmplibs -lgmp" +-fi +- +-# Check whether --with-gmp or --without-gmp was given. +-if test "${with_gmp+set}" = set; then +- withval="$with_gmp" +- : +-fi +- +- +-if test "x$with_gmp" != x; then +- gmplibs="-L$with_gmp/lib $gmplibs" +- gmpinc="-I$with_gmp/include $gmpinc" +-fi +- +-saved_CFLAGS="$CFLAGS" +-CFLAGS="$CFLAGS $gmpinc" +-# Check GMP actually works +-echo $ac_n "checking for correct version of gmp.h""... $ac_c" 1>&6 +-echo "configure:2322: checking for correct version of gmp.h" >&5 +-cat > conftest.$ac_ext <<EOF +-#line 2324 "configure" +-#include "confdefs.h" +-#include "gmp.h" +-int main() { +- +-#if __GNU_MP_VERSION < 3 +-choke me +-#endif +- +-; return 0; } +-EOF +-if { (eval echo configure:2335: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +- rm -rf conftest* +- echo "$ac_t""yes" 1>&6 +-else +- echo "configure: failed program was:" >&5 +- cat conftest.$ac_ext >&5 +- rm -rf conftest* +- echo "$ac_t""no" 1>&6; have_gmp=no +-fi +-rm -f conftest* +- +-if test x"$have_gmp" = xyes; then +- echo $ac_n "checking for MPFR""... $ac_c" 1>&6 +-echo "configure:2348: checking for MPFR" >&5 +- +- saved_LIBS="$LIBS" +- LIBS="$LIBS $gmplibs" +- cat > conftest.$ac_ext <<EOF +-#line 2353 "configure" +-#include "confdefs.h" +-#include <gmp.h> +-#include <mpfr.h> +-int main() { +-mpfr_t n; mpfr_init(n); +-; return 0; } +-EOF +-if { (eval echo configure:2361: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +- rm -rf conftest* +- echo "$ac_t""yes" 1>&6 +-else +- echo "configure: failed program was:" >&5 +- cat conftest.$ac_ext >&5 +- rm -rf conftest* +- echo "$ac_t""no" 1>&6; have_gmp=no +-fi +-rm -f conftest* +- LIBS="$saved_LIBS" +- CFLAGS="$saved_CFLAGS" +-fi +- +-# Flags needed for both GMP and/or MPFR +- +- +- + # By default, C is the only stage 1 language. + stage1_languages=c + +@@ -2402,15 +2272,6 @@ + fi + enable_languages=`echo "${enable_languages}" | sed -e 's/[ ,][ ,]*/,/g' -e 's/,$//'` + +- # 'f95' is the old name for the 'fortran' language. We issue a warning +- # and make the substitution. +- case ,${enable_languages}, in +- *,f95,*) +- echo configure.in: warning: 'f95' as language name is deprecated, use 'fortran' instead 1>&2 +- enable_languages=`echo "${enable_languages}" | sed -e 's/f95/fortran/g'` +- ;; +- esac +- + # First scan to see if an enabled language requires some other language. + # We assume that a given config-lang.in will list all the language + # front ends it requires, even if some are required indirectly. +@@ -5036,81 +4897,6 @@ + fi + fi + +- for ncn_progname in gfortran; do +- if test -n "$ncn_target_tool_prefix"; then +- # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args. +-set dummy ${ncn_target_tool_prefix}${ncn_progname}; ac_word=$2 +-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +-echo "configure:5045: checking for $ac_word" >&5 +-if eval "test \"`echo '$''{'ac_cv_prog_GFORTRAN_FOR_TARGET'+set}'`\" = set"; then +- echo $ac_n "(cached) $ac_c" 1>&6 +-else +- if test -n "$GFORTRAN_FOR_TARGET"; then +- ac_cv_prog_GFORTRAN_FOR_TARGET="$GFORTRAN_FOR_TARGET" # Let the user override the test. +-else +- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" +- ac_dummy="$PATH" +- for ac_dir in $ac_dummy; do +- test -z "$ac_dir" && ac_dir=. +- if test -f $ac_dir/$ac_word; then +- ac_cv_prog_GFORTRAN_FOR_TARGET="${ncn_target_tool_prefix}${ncn_progname}" +- break +- fi +- done +- IFS="$ac_save_ifs" +-fi +-fi +-GFORTRAN_FOR_TARGET="$ac_cv_prog_GFORTRAN_FOR_TARGET" +-if test -n "$GFORTRAN_FOR_TARGET"; then +- echo "$ac_t""$GFORTRAN_FOR_TARGET" 1>&6 +-else +- echo "$ac_t""no" 1>&6 +-fi +- +- fi +- if test -z "$ac_cv_prog_GFORTRAN_FOR_TARGET" && test $build = $target ; then +- # Extract the first word of "${ncn_progname}", so it can be a program name with args. +-set dummy ${ncn_progname}; ac_word=$2 +-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +-echo "configure:5076: checking for $ac_word" >&5 +-if eval "test \"`echo '$''{'ac_cv_prog_GFORTRAN_FOR_TARGET'+set}'`\" = set"; then +- echo $ac_n "(cached) $ac_c" 1>&6 +-else +- if test -n "$GFORTRAN_FOR_TARGET"; then +- ac_cv_prog_GFORTRAN_FOR_TARGET="$GFORTRAN_FOR_TARGET" # Let the user override the test. +-else +- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" +- ac_dummy="$PATH" +- for ac_dir in $ac_dummy; do +- test -z "$ac_dir" && ac_dir=. +- if test -f $ac_dir/$ac_word; then +- ac_cv_prog_GFORTRAN_FOR_TARGET="${ncn_progname}" +- break +- fi +- done +- IFS="$ac_save_ifs" +-fi +-fi +-GFORTRAN_FOR_TARGET="$ac_cv_prog_GFORTRAN_FOR_TARGET" +-if test -n "$GFORTRAN_FOR_TARGET"; then +- echo "$ac_t""$GFORTRAN_FOR_TARGET" 1>&6 +-else +- echo "$ac_t""no" 1>&6 +-fi +- +- fi +- test -n "$ac_cv_prog_GFORTRAN_FOR_TARGET" && break +-done +- +-if test -z "$ac_cv_prog_GFORTRAN_FOR_TARGET" ; then +- set dummy gfortran +- if test $build = $target ; then +- GFORTRAN_FOR_TARGET="$2" +- else +- GFORTRAN_FOR_TARGET="${ncn_target_tool_prefix}$2" +- fi +-fi +- + for ncn_progname in ld; do + if test -n "$ncn_target_tool_prefix"; then + # Extract the first word of "${ncn_target_tool_prefix}${ncn_progname}", so it can be a program name with args. +@@ -5843,34 +5629,6 @@ + echo "$ac_t""pre-installed" 1>&6 + fi + fi +-echo $ac_n "checking where to find the target gfortran""... $ac_c" 1>&6 +-echo "configure:5848: checking where to find the target gfortran" >&5 +-if test "x${build}" != "x${host}" ; then +- # Canadian cross, just use what we found +- echo "$ac_t""pre-installed" 1>&6 +-else +- ok=yes +- case " ${configdirs} " in +- *" gcc "*) ;; +- *) ok=no ;; +- esac +- case ,${enable_languages}, in +- *,fortran,*) ;; +- *) ok=no ;; +- esac +- if test $ok = yes; then +- # An in-tree tool is available and we can use it +- GFORTRAN_FOR_TARGET='$$r/$(HOST_SUBDIR)/gcc/gfortran -B$$r/$(HOST_SUBDIR)/gcc/' +- echo "$ac_t""just compiled" 1>&6 +- elif test "x$target" = "x$host"; then +- # We can use an host tool +- GFORTRAN_FOR_TARGET='$(GFORTRAN)' +- echo "$ac_t""host tool" 1>&6 +- else +- # We need a cross tool +- echo "$ac_t""pre-installed" 1>&6 +- fi +-fi + echo $ac_n "checking where to find the target ld""... $ac_c" 1>&6 + echo "configure:5876: checking where to find the target ld" >&5 + if test "x${build}" != "x${host}" ; then +@@ -6413,7 +6171,6 @@ + s%@DLLTOOL_FOR_TARGET@%$DLLTOOL_FOR_TARGET%g + s%@GCC_FOR_TARGET@%$GCC_FOR_TARGET%g + s%@GCJ_FOR_TARGET@%$GCJ_FOR_TARGET%g +-s%@GFORTRAN_FOR_TARGET@%$GFORTRAN_FOR_TARGET%g + s%@LD_FOR_TARGET@%$LD_FOR_TARGET%g + s%@LIPO_FOR_TARGET@%$LIPO_FOR_TARGET%g + s%@NM_FOR_TARGET@%$NM_FOR_TARGET%g + +--- tmp/config-ml.in.orig 2006-09-06 10:27:49.000000000 +0100 ++++ tmp/config-ml.in 2006-09-06 10:27:49.000000000 +0100 +@@ -785,14 +785,12 @@ + break + fi + done +- ml_config_env='CC="${CC_}$flags" CXX="${CXX_}$flags" F77="${F77_}$flags" GCJ="${GCJ_}$flags" GFORTRAN="${GFORTRAN_}$flags"' ++ ml_config_env='CC="${CC_}$flags" CXX="${CXX_}$flags" GCJ="${GCJ_}$flags"' + + if [ "${with_target_subdir}" = "." ]; then + CC_=$CC' ' + CXX_=$CXX' ' +- F77_=$F77' ' + GCJ_=$GCJ' ' +- GFORTRAN_=$GFORTRAN' ' + else + # Create a regular expression that matches any string as long + # as ML_POPDIR. +@@ -821,18 +819,6 @@ + esac + done + +- F77_= +- for arg in ${F77}; do +- case $arg in +- -[BIL]"${ML_POPDIR}"/*) +- F77_="${F77_}"`echo "X${arg}" | sed -n "s/X\\(-[BIL]${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X-[BIL]${popdir_rx}\\(.*\\)/\\1/p"`' ' ;; +- "${ML_POPDIR}"/*) +- F77_="${F77_}"`echo "X${arg}" | sed -n "s/X\\(${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X${popdir_rx}\\(.*\\)/\\1/p"`' ' ;; +- *) +- F77_="${F77_}${arg} " ;; +- esac +- done +- + GCJ_= + for arg in ${GCJ}; do + case $arg in +@@ -845,18 +831,6 @@ + esac + done + +- GFORTRAN_= +- for arg in ${GFORTRAN}; do +- case $arg in +- -[BIL]"${ML_POPDIR}"/*) +- GFORTRAN_="${GFORTRAN_}"`echo "X${arg}" | sed -n "s/X\\(-[BIL]${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X-[BIL]${popdir_rx}\\(.*\\)/\\1/p"`' ' ;; +- "${ML_POPDIR}"/*) +- GFORTRAN_="${GFORTRAN_}"`echo "X${arg}" | sed -n "s/X\\(${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X${popdir_rx}\\(.*\\)/\\1/p"`' ' ;; +- *) +- GFORTRAN_="${GFORTRAN_}${arg} " ;; +- esac +- done +- + if test "x${LD_LIBRARY_PATH+set}" = xset; then + LD_LIBRARY_PATH_= + for arg in `echo "$LD_LIBRARY_PATH" | tr ':' ' '`; do diff --git a/meta/packages/gcc/gcc-package-cross-no-fortran.inc b/meta/packages/gcc/gcc-package-cross-no-fortran.inc new file mode 100644 index 000000000..3548c0bb8 --- /dev/null +++ b/meta/packages/gcc/gcc-package-cross-no-fortran.inc @@ -0,0 +1,66 @@ +# Packages emitted by our gcc-cross builds. +# +INHIBIT_PACKAGE_STRIP ?= "" +HAS_G2C ?= "yes" +OLD_INHIBIT_PACKAGE_STRIP := "${INHIBIT_PACKAGE_STRIP}" +INHIBIT_PACKAGE_STRIP = "1" + +PACKAGES = "libgcc libstdc++ libg2c libg2c-dev" + +PACKAGE_ARCH_libg2c = "${TARGET_ARCH}" +PACKAGE_ARCH_libg2c-dev = "${TARGET_ARCH}" + +# Called from within gcc-cross, so libdir is set wrong +FILES_libg2c = "${target_libdir}/libg2c.so.*" +FILES_libg2c-dev = "${target_libdir}/libg2c.so \ + ${target_libdir}/libg2c.a \ + ${target_libdir}/libfrtbegin.a" + +PACKAGE_ARCH_libgcc = "${TARGET_ARCH}" +FILES_libgcc = "${target_base_libdir}/libgcc_s.so.1" + +PACKAGE_ARCH_libstdc++ = "${TARGET_ARCH}" +PACKAGE_ARCH_libstdc++-dev = "${TARGET_ARCH}" +FILES_libstdc++ = "${target_libdir}/libstdc++.so.*" +FILES_libstdc++-dev = "${target_includedir}/c++/${PV} \ + ${target_libdir}/libstdc++.so \ + ${target_libdir}/libstdc++.la \ + ${target_libdir}/libstdc++.a \ + ${target_libdir}/libsupc++.la \ + ${target_libdir}/libsupc++.a" + +python do_package() { + if bb.data.getVar('DEBIAN_NAMES', d, 1): + bb.data.setVar('PKG_libgcc', 'libgcc1', d) + bb.build.exec_func('package_do_package', d) +} + +do_install () { + oe_runmake 'DESTDIR=${D}' install + + # Move libgcc_s into /lib + mkdir -p ${D}${target_base_libdir} + if [ -f ${D}${target_base_libdir}/libgcc_s.so.? ]; then + # Already in the right location + : + elif [ -f ${D}${prefix}/lib/libgcc_s.so.? ]; then + mv -f ${D}${prefix}/lib/libgcc_s.so.* ${D}${target_base_libdir} + else + mv -f ${D}${prefix}/*/lib/libgcc_s.so.* ${D}${target_base_libdir} + fi + + # Move libstdc++ and libg2c into libdir (resetting our prefix to /usr + mkdir -p ${D}${target_libdir} + mv -f ${D}${prefix}/*/lib/libstdc++.so.* ${D}${target_libdir} + if [ "${HAS_G2C}" = "yes" ]; then + mv -f ${D}${prefix}/*/lib/libg2c.so.* ${D}${target_libdir} + fi + + # Manually run the target stripper since we won't get it run by + # the packaging. + if [ "x${OLD_INHIBIT_PACKAGE_STRIP}" != "x1" ]; then + ${TARGET_PREFIX}strip ${D}${target_libdir}/libstdc++.so.* + ${TARGET_PREFIX}strip ${D}${target_libdir}/libg2c.so.* + ${TARGET_PREFIX}strip ${D}${target_base_libdir}/libgcc_s.so.* + fi +} diff --git a/meta/packages/gcc/gcc-package-no-fortran.inc b/meta/packages/gcc/gcc-package-no-fortran.inc new file mode 100644 index 000000000..a5b5ad867 --- /dev/null +++ b/meta/packages/gcc/gcc-package-no-fortran.inc @@ -0,0 +1,103 @@ +gcclibdir ?= "${libdir}/gcc" +BINV ?= "${PV}" + +# libgcc libstdc++ libg2c are listed in our FILES_*, but are actually +# packaged in the respective cross packages. +PACKAGES = "${PN} ${PN}-symlinks \ + g++ g++-symlinks \ + cpp cpp-symlinks \ + gcov gcov-symlinks \ + libstdc++-dev libg2c-dev \ + ${PN}-doc" + +FILES_${PN} = "${bindir}/${TARGET_PREFIX}gcc \ + ${bindir}/${TARGET_PREFIX}gccbug \ + ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1 \ + ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/collect2 \ + ${gcclibdir}/${TARGET_SYS}/${BINV}/*.o \ + ${gcclibdir}/${TARGET_SYS}/${BINV}/specs \ + ${gcclibdir}/${TARGET_SYS}/${BINV}/lib* \ + ${gcclibdir}/${TARGET_SYS}/${BINV}/include" +FILES_${PN}-symlinks = "${bindir}/cc \ + ${bindir}/gcc \ + ${bindir}/gccbug" + +FILES_cpp = "${bindir}/${TARGET_PREFIX}cpp \ + ${base_libdir}/cpp" +FILES_cpp-symlinks = "${bindir}/cpp" + +FILES_gcov = "${bindir}/${TARGET_PREFIX}gcov" +FILES_gcov-symlinks = "${bindir}/gcov" + +PACKAGE_ARCH_libg2c-dev = "${TARGET_ARCH}" +# Called from within gcc-cross, so libdir is set wrong +FILES_libg2c-dev = "${libdir}/libg2c.so \ + ${libdir}/libg2c.a \ + ${libdir}/libfrtbegin.a" + +FILES_g++ = "${bindir}/${TARGET_PREFIX}g++ \ + ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1plus" +FILES_g++-symlinks = "${bindir}/c++ \ + ${bindir}/g++" + +PACKAGE_ARCH_libstdc++-dev = "${TARGET_ARCH}" +FILES_libstdc++-dev = "${includedir}/c++/${BINV} \ + ${libdir}/libstdc++.so \ + ${libdir}/libstdc++.la \ + ${libdir}/libstdc++.a \ + ${libdir}/libsupc++.la \ + ${libdir}/libsupc++.a" + +FILES_${PN}-doc = "${infodir} \ + ${mandir} \ + ${gcclibdir}/${TARGET_SYS}/${BINV}/include/README" + + +do_install () { + autotools_do_install + + # Cleanup some of the ${libdir}{,exec}/gcc stuff ... + rm -r ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/install-tools + rm -r ${D}${libexecdir}/gcc/${TARGET_SYS}/${BINV}/install-tools + + # Hack around specs file assumptions + sed -i -e '/^*cross_compile:$/ { n; s/1/0/; }' ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/specs &>/dev/null || true + + # Move libgcc_s into /lib + mkdir -p ${D}${base_libdir} + mv ${D}${libdir}/libgcc_s.so.* ${D}${base_libdir} + rm ${D}${libdir}/libgcc_s.so + ln -sf `echo ${libdir}/gcc/${TARGET_SYS}/${BINV} \ + | tr -s / \ + | sed -e 's,^/,,' -e 's,[^/]*,..,g'`/lib/libgcc_s.so.1 \ + ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/libgcc_s.so + + # We don't need libtool libraries + rm ${D}${libdir}/libg2c.la &>/dev/null || true + + + # Cleanup manpages.. + rm -r ${D}${mandir}/man7 + + # We use libiberty from binutils + rm ${D}${libdir}/libiberty.a + + cd ${D}${bindir} + + # We care about g++ not c++ + rm *c++ + + # We don't care about the gcc-<version> ones for this + rm *gcc-?.?* + + # These sometimes show up, they are strange, we remove them + rm -f ${TARGET_ARCH}-*${TARGET_ARCH}-* + + # Symlinks so we can use these trivially on the target + ln -sf ${TARGET_SYS}-g++ g++ + ln -sf ${TARGET_SYS}-gcc gcc + ln -sf g++ c++ + ln -sf gcc cc + ln -sf ${bindir}/${TARGET_SYS}-cpp ${D}${base_libdir}/cpp + ln -sf ${bindir}/${TARGET_SYS}-cpp ${D}${bindir}/cpp +} diff --git a/meta/packages/gcc/gcc4-build-cross.inc b/meta/packages/gcc/gcc4-build-cross.inc new file mode 100644 index 000000000..905e7d383 --- /dev/null +++ b/meta/packages/gcc/gcc4-build-cross.inc @@ -0,0 +1,6 @@ +FORTRAN = "f95" +HAS_GFORTRAN = "yes" +HAS_G2C = "no" + +include gcc3-build-cross.inc + diff --git a/meta/packages/gcc/gcc4-build.inc b/meta/packages/gcc/gcc4-build.inc index 8b80f4820..0f86ff2a3 100644 --- a/meta/packages/gcc/gcc4-build.inc +++ b/meta/packages/gcc/gcc4-build.inc @@ -1,6 +1,100 @@ -FORTRAN = "f95" -HAS_GFORTRAN = "yes" +HAS_GFORTRAN = "no" HAS_G2C = "no" -include gcc3-build.inc +MIRRORS_prepend () { +${GNU_MIRROR}/gcc/releases/ ftp://gcc.gnu.org/pub/gcc/releases/ +${GNU_MIRROR}/gcc/ http://mirrors.rcn.net/pub/sourceware/gcc/releases/ +${GNU_MIRROR}/gcc/releases/ http://gcc.get-software.com/releases/ +${GNU_MIRROR}/gcc/ http://gcc.get-software.com/releases/ +} + +gcclibdir ?= "${libdir}/gcc" +S = "${WORKDIR}/gcc-${PV}" +B = "${S}/build.${HOST_SYS}.${TARGET_SYS}" +BINV ?= "${PV}" + +# gcj doesn't work on some architectures +JAVA = ",java" +JAVA_arm = "" +JAVA_armeb = "" +JAVA_mipsel = "" +JAVA_sh3 = "" +# gcc4-build sets this to f95 +#FORTRAN ?= "f77" +#LANGUAGES ?= "c,c++,${JAVA}" +LANGUAGES ?= "c,c++,${JAVA}" + +EXTRA_OECONF = "${@['--enable-clocale=generic', ''][bb.data.getVar('USE_NLS', d, 1) != 'no']} \ + --with-gnu-ld \ + --enable-shared \ + --enable-target-optspace \ + --enable-languages=${LANGUAGES} \ + --enable-threads=posix \ + --enable-multilib \ + --enable-c99 \ + --enable-long-long \ + --enable-symvers=gnu \ + --enable-libstdcxx-pch \ + --program-prefix=${TARGET_PREFIX} \ + ${EXTRA_OECONF_PATHS} \ + ${EXTRA_OECONF_DEP}" + +EXTRA_OECONF_PATHS = " \ + --with-local-prefix=${prefix}/local \ + --with-gxx-include-dir=${includedir}/c++/${BINV}" + +EXTRA_OECONF_DEP = "" +EXTRA_OECONF_uclibc = "--disable-__cxa_atexit" +EXTRA_OECONF_glibc = "--enable-__cxa_atexit" +EXTRA_OECONF += "${@get_gcc_fpu_setting(bb, d)}" +CPPFLAGS = "" + +# Used by configure to define additional values for FLAGS_FOR_TARGET - +# passed to all the compilers. +ARCH_FLAGS_FOR_TARGET = "" +#NOTE: not tested on other platforms, the following is probably correct +# everywhere! +ARCH_FLAGS_FOR_TARGET_slugos = "${TARGET_CC_ARCH}" +ARCH_FLAGS_FOR_TARGET_unslung = "${TARGET_CC_ARCH}" +EXTRA_OEMAKE += "ARCH_FLAGS_FOR_TARGET='${ARCH_FLAGS_FOR_TARGET}'" + +def get_gcc_fpu_setting(bb, d): + if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]: + return "--with-float=soft" + return "" + +python __anonymous () { + import bb, re + if (re.match('linux-uclibc$', bb.data.getVar('TARGET_OS', d, 1)) != None): + bb.data.setVar('EXTRA_OECONF_DEP', '${EXTRA_OECONF_uclibc}', d) + elif (re.match('linux$', bb.data.getVar('TARGET_OS', d, 1)) != None): + bb.data.setVar('EXTRA_OECONF_DEP', '${EXTRA_OECONF_glibc}', d) +} + +do_configure () { + # Setup these vars for cross building only + # ... because foo_FOR_TARGET apparently gets misinterpreted inside the + # gcc build stuff when the build is producing a cross compiler - i.e. + # when the 'current' target is the 'host' system, and the host is not + # the target (because the build is actually making a cross compiler!) + if [ "${BUILD_SYS}" != "${HOST_SYS}" ]; then + export CC_FOR_TARGET="${CC}" + export GCC_FOR_TARGET="${CC}" + export CXX_FOR_TARGET="${CXX}" + export AS_FOR_TARGET="${HOST_PREFIX}as" + export LD_FOR_TARGET="${HOST_PREFIX}ld" + export NM_FOR_TARGET="${HOST_PREFIX}nm" + export AR_FOR_TARGET="${HOST_PREFIX}ar" + export RANLIB_FOR_TARGET="${HOST_PREFIX}ranlib" + fi + export CC_FOR_BUILD="${BUILD_CC}" + export CXX_FOR_BUILD="${BUILD_CXX}" + export CFLAGS_FOR_BUILD="${BUILD_CFLAGS}" + export CPPFLAGS_FOR_BUILD="${BUILD_CPPFLAGS}" + export CXXFLAGS_FOR_BUILD="${BUILD_CXXFLAGS}" + export LDFLAGS_FOR_BUILD="${BUILD_LDFLAGS}" + export ARCH_FLAGS_FOR_TARGET="${ARCH_FLAGS_FOR_TARGET}" + (cd ${S} && gnu-configize) || die "failure running gnu-configize" + oe_runconf +} diff --git a/meta/packages/gcc/gcc_csl-arm-2006q1.bb b/meta/packages/gcc/gcc_csl-arm-2006q1.bb new file mode 100644 index 000000000..88f7c7ebd --- /dev/null +++ b/meta/packages/gcc/gcc_csl-arm-2006q1.bb @@ -0,0 +1,30 @@ +DESCRIPTION = "The GNU cc and gcc C compilers." +HOMEPAGE = "http://www.gnu.org/software/gcc/" +SECTION = "devel" +LICENSE = "GPL" +BINV = "4.1.0" +PV = "4.1.0+csl-arm-2006q1-6" +PR = "r1" + +FILESDIR = "${FILE_DIRNAME}/gcc-csl-arm" + +inherit autotools gettext + +require gcc-package-no-fortran.inc + +SRC_URI = "http://www.codesourcery.com/public/gnu_toolchain/arm-none-eabi/arm-2006q1-6-arm-none-eabi.src.tar.bz2 \ + file://gcc-configure-no-fortran.patch;patch=1;pnum=1" + +#the optabi patch is already applied + +do_unpack2() { + cd ${WORKDIR} + pwd + tar -xvjf ./arm-2006q1-6-arm-none-eabi/gcc-2006q1-6.tar.bz2 +} + +addtask unpack2 after do_unpack before do_patch + +require gcc4-build.inc + +S = "${WORKDIR}/gcc-2006q1" |