summaryrefslogtreecommitdiff
path: root/cross
diff options
context:
space:
mode:
authormartin <martin@pkgsrc.org>2014-03-31 09:49:31 +0000
committermartin <martin@pkgsrc.org>2014-03-31 09:49:31 +0000
commit4a13cdc93295f34a2a1d89c3417058560ea57def (patch)
tree2cac61716b98b557036484080177aa8232008557 /cross
parent6013b77d77410afa8c051b3b2a0ba42bb513d472 (diff)
downloadpkgsrc-4a13cdc93295f34a2a1d89c3417058560ea57def.tar.gz
Add a gcc-current pkg suitable for NetBSD/playstation2 kernel cross
compilation.
Diffstat (limited to 'cross')
-rw-r--r--cross/gcc-mips-current/DESCR1
-rw-r--r--cross/gcc-mips-current/Makefile121
-rw-r--r--cross/gcc-mips-current/PLIST235
-rw-r--r--cross/gcc-mips-current/distinfo11
-rw-r--r--cross/gcc-mips-current/patches/patch-gcc_config.host18
-rw-r--r--cross/gcc-mips-current/patches/patch-gcc_config_host-netbsd.c93
-rw-r--r--cross/gcc-mips-current/patches/patch-gcc_config_mips_netbsd.h17
-rw-r--r--cross/gcc-mips-current/patches/patch-gcc_config_x-netbsd12
-rw-r--r--cross/gcc-mips-current/patches/patch-libgcc_config.host25
-rw-r--r--cross/gcc-mips-current/patches/patch-libgcc_config_t-hardfp29
10 files changed, 562 insertions, 0 deletions
diff --git a/cross/gcc-mips-current/DESCR b/cross/gcc-mips-current/DESCR
new file mode 100644
index 00000000000..3eab7b8e7cc
--- /dev/null
+++ b/cross/gcc-mips-current/DESCR
@@ -0,0 +1 @@
+A gcc-current snapshot suitable to build kernels for NetBSD/playstation2.
diff --git a/cross/gcc-mips-current/Makefile b/cross/gcc-mips-current/Makefile
new file mode 100644
index 00000000000..938f3d9aaf0
--- /dev/null
+++ b/cross/gcc-mips-current/Makefile
@@ -0,0 +1,121 @@
+# $NetBSD: Makefile,v 1.1 2014/03/31 09:49:31 martin Exp $
+
+GCC_PKGNAME= gcc-mips-current
+
+SNAPSHOT= 20140330
+
+GCC_DIST_VERSION=4.9-${SNAPSHOT}
+DISTNAME= gcc-${GCC_DIST_VERSION}
+PKGNAME= ${GCC_PKGNAME}-${SNAPSHOT}
+
+# PKGREVISION= 1
+CATEGORIES= cross lang
+MASTER_SITE_GCC= \
+ ftp://ftp.fu-berlin.de/unix/languages/gcc/ \
+ ftp://gd.tuwien.ac.at/gnu/gcc/ \
+ http://ftp.tsukuba.wide.ad.jp/software/gcc/ \
+ ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/ \
+ http://www.netgull.com/gcc/
+MASTER_SITES= ${MASTER_SITE_GCC:=snapshots/${GCC_DIST_VERSION}/}
+EXTRACT_SUFX= .tar.bz2
+
+MAINTAINER= martin@NetBSD.org
+HOMEPAGE= http://gcc.gnu.org/
+COMMENT= The GNU Compiler Collection (GCC) - 4.9 current for mips
+LICENSE= gnu-gpl-v2 AND gnu-gpl-v3 AND gnu-lgpl-v2 AND gnu-lgpl-v3
+
+DISTFILES= ${DEFAULT_DISTFILES}
+EXTRACT_ONLY= ${DEFAULT_DISTFILES}
+
+NOT_FOR_PLATFORM= Interix-*-*
+
+USE_LANGUAGES= c c++
+USE_TOOLS+= gmake makeinfo sed:run perl
+GNU_CONFIGURE= yes
+## Build outside ${WRKSRC}
+OBJDIR= ../build
+CONFIGURE_DIRS= ${OBJDIR}
+CONFIGURE_SCRIPT= ../${DISTNAME}/configure
+INFO_FILES= yes
+
+UNLIMIT_RESOURCES+= datasize
+UNLIMIT_RESOURCES+= stacksize
+
+SUBST_CLASSES+= vars
+SUBST_MESSAGE.vars= Setting target machine name path in ${SUBST_FILES.vars}
+SUBST_STAGE.vars= pre-configure
+SUBST_FILES.vars= gcc/Makefile.in
+SUBST_VARS.vars= GCC_TARGET_MACHINE
+
+.include "../../mk/bsd.prefs.mk"
+
+LANGS= c c++
+
+# In some cases LINKER_RPATH_FLAG needs a trailing space.
+LINKER_RPATH_FLAG:= ${LINKER_RPATH_FLAG:S/-rpath/& /}
+
+## The Library rpath to use in end programs.
+LDFLAGS_FOR_TARGET= ${LDFLAGS:M${COMPILER_RPATH_FLAG}*:N*/usr/lib*}
+
+# GCC does not understand this option; remove it, or stage build will fail
+BUILDLINK_TRANSFORM+= rm:-stdlib=libc++
+
+## For target librarys and libjava programs.
+CONFIGURE_ENV+= LDFLAGS_FOR_TARGET=${LDFLAGS_FOR_TARGET:Q}
+
+CONFIGURE_ARGS+= --disable-nls
+CONFIGURE_ARGS+= --disable-libquadmath
+CONFIGURE_ARGS+= --disable-libquadmath-support
+CONFIGURE_ARGS+= --disable-libssp
+CONFIGURE_ARGS+= --disable-libgomp
+CONFIGURE_ARGS+= --disable-libstdc++-v3
+CONFIGURE_ARGS+= --disable-libatomic
+CONFIGURE_ARGS+= --enable-languages=${LANGS:Q}
+CONFIGURE_ARGS+= --enable-shared
+CONFIGURE_ARGS+= --enable-long-long
+CONFIGURE_ARGS+= --with-local-prefix=${PREFIX:Q}
+CONFIGURE_ARGS+= --enable-threads=posix
+CONFIGURE_ARGS+= --with-boot-ldflags=${BOOT_LDFLAGS:Q}
+.if ${OPSYS} == "NetBSD"
+MAKE_ENV+= ac_cv_func_clock_gettime=yes
+.endif
+.if ${OPSYS} == "DragonFly"
+CONFIGURE_ARGS+= --disable-bootstrap
+.endif
+
+CONFIGURE_ARGS+= --target=mips--netbsdelf
+
+# ${WRKSRC}/fixincludes/ looks for sed and compiles the path to sed into
+# a binary so we need to make sure we give it the installed sed and not
+# the tool wrapped one.
+MAKE_ENV+= ac_cv_path_SED=${TOOLS_SED}
+MAKE_ENV+= lt_cv_path_SED=${TOOLS_SED}
+
+pre-configure:
+ ${RUN} cd ${WRKSRC} && ${MKDIR} ${OBJDIR}
+
+TEST_TARGET= -k check || ${TRUE}
+pre-test:
+ ${RUN} \
+ if runtest --version >/dev/null 2>/dev/null ; then \
+ : ; \
+ else \
+ ${ECHO} "ERROR: Please install devel/dejagnu in order to run the test suite." ; \
+ exit 1 ; \
+ fi
+post-test:
+ ${RUN} cd ${WRKSRC} && cd ${OBJDIR} && \
+ ${SHELL} ${WRKSRC}/contrib/test_summary >${WRKDIR}/test_summary.log
+ @${INFO_MSG} "Test summary are available in ${WRKDIR}/test_summary.log"
+
+CONFIGURE_ARGS+= --with-gmp=${BUILDLINK_PREFIX.gmp}
+CONFIGURE_ARGS+= --with-mpc=${BUILDLINK_PREFIX.mpcomplex}
+CONFIGURE_ARGS+= --with-mpfr=${BUILDLINK_PREFIX.mpfr}
+.include "../../devel/gmp/buildlink3.mk"
+.include "../../math/mpcomplex/buildlink3.mk"
+.include "../../math/mpfr/buildlink3.mk"
+
+.include "../../cross/binutils-mips-current/buildlink3.mk"
+.include "../../mk/dlopen.buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/cross/gcc-mips-current/PLIST b/cross/gcc-mips-current/PLIST
new file mode 100644
index 00000000000..86f6ff6d98f
--- /dev/null
+++ b/cross/gcc-mips-current/PLIST
@@ -0,0 +1,235 @@
+@comment $NetBSD: PLIST,v 1.1 2014/03/31 09:49:31 martin Exp $
+bin/mips--netbsdelf-c++
+bin/mips--netbsdelf-cpp
+bin/mips--netbsdelf-g++
+bin/mips--netbsdelf-gcc
+bin/mips--netbsdelf-gcc-4.9.0
+bin/mips--netbsdelf-gcc-ar
+bin/mips--netbsdelf-gcc-nm
+bin/mips--netbsdelf-gcc-ranlib
+bin/mips--netbsdelf-gcov
+info/cpp.info
+info/cppinternals.info
+info/gcc.info
+info/gccinstall.info
+info/gccint.info
+lib/gcc/mips--netbsdelf/4.9.0/crtbegin.o
+lib/gcc/mips--netbsdelf/4.9.0/crtbeginS.o
+lib/gcc/mips--netbsdelf/4.9.0/crtend.o
+lib/gcc/mips--netbsdelf/4.9.0/crtendS.o
+lib/gcc/mips--netbsdelf/4.9.0/include-fixed/README
+lib/gcc/mips--netbsdelf/4.9.0/include-fixed/limits.h
+lib/gcc/mips--netbsdelf/4.9.0/include-fixed/syslimits.h
+lib/gcc/mips--netbsdelf/4.9.0/include/float.h
+lib/gcc/mips--netbsdelf/4.9.0/include/iso646.h
+lib/gcc/mips--netbsdelf/4.9.0/include/loongson.h
+lib/gcc/mips--netbsdelf/4.9.0/include/stdalign.h
+lib/gcc/mips--netbsdelf/4.9.0/include/stdarg.h
+lib/gcc/mips--netbsdelf/4.9.0/include/stdatomic.h
+lib/gcc/mips--netbsdelf/4.9.0/include/stdbool.h
+lib/gcc/mips--netbsdelf/4.9.0/include/stddef.h
+lib/gcc/mips--netbsdelf/4.9.0/include/stdfix.h
+lib/gcc/mips--netbsdelf/4.9.0/include/stdnoreturn.h
+lib/gcc/mips--netbsdelf/4.9.0/include/tgmath.h
+lib/gcc/mips--netbsdelf/4.9.0/include/unwind.h
+lib/gcc/mips--netbsdelf/4.9.0/include/varargs.h
+lib/gcc/mips--netbsdelf/4.9.0/install-tools/fixinc_list
+lib/gcc/mips--netbsdelf/4.9.0/install-tools/gsyslimits.h
+lib/gcc/mips--netbsdelf/4.9.0/install-tools/include/README
+lib/gcc/mips--netbsdelf/4.9.0/install-tools/include/limits.h
+lib/gcc/mips--netbsdelf/4.9.0/install-tools/macro_list
+lib/gcc/mips--netbsdelf/4.9.0/install-tools/mkheaders.conf
+lib/gcc/mips--netbsdelf/4.9.0/libgcc.a
+lib/gcc/mips--netbsdelf/4.9.0/libgcc_eh.a
+lib/gcc/mips--netbsdelf/4.9.0/libgcov.a
+lib/gcc/mips--netbsdelf/4.9.0/plugin/gtype.state
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/ada/gcc-interface/ada-tree.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/alias.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/all-tree.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/alloc-pool.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/ansidecl.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/auto-host.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/b-header-vars
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/basic-block.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/bitmap.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/builtins.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/bversion.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/c-family/c-common.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/c-family/c-common.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/c-family/c-objc.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/c-family/c-pragma.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/c-family/c-pretty-print.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/c-tree.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/cfg-flags.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/cfghooks.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/cfgloop.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/cgraph.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/cif-code.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/cilk-builtins.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/cilkplus.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/config.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/config/elfos.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/config/initfini-array.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/config/mips/elf.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/config/mips/mips-opts.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/config/mips/mips-protos.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/config/mips/mips.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/config/mips/netbsd.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/config/netbsd-elf.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/config/netbsd.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/config/vxworks-dummy.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/configargs.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/context.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/coretypes.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/cp/cp-tree.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/cp/cp-tree.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/cp/cxx-pretty-print.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/cp/name-lookup.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/cppdefault.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/cpplib.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/debug.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/defaults.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/df.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/diagnostic-core.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/diagnostic.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/diagnostic.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/double-int.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/dumpfile.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/emit-rtl.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/except.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/filenames.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/fixed-value.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/flag-types.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/flags.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/fold-const.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/function.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/gcc-plugin.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/genrtl.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/ggc.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/gimple-expr.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/gimple-fold.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/gimple-iterator.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/gimple-pretty-print.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/gimple-ssa.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/gimple.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/gimple.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/gimplify.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/gsstruct.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/gtm-builtins.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/gtype-desc.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/hard-reg-set.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/hash-table.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/hashtab.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/highlev-plugin-common.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/hwint.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/incpath.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/input.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/insn-codes.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/insn-constants.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/insn-flags.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/insn-modes.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/insn-notes.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/internal-fn.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/internal-fn.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/intl.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/ipa-prop.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/ipa-ref-inline.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/ipa-ref.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/ipa-reference.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/ipa-utils.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/is-a.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/java/java-tree.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/langhooks.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/libiberty.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/line-map.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/machmode.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/md5.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/mode-classes.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/objc/objc-tree.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/obstack.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/omp-builtins.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/options.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/opts.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/output.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/params.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/params.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/plugin-api.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/plugin-version.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/plugin.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/plugin.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/pointer-set.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/predict.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/predict.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/prefix.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/pretty-print.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/print-tree.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/real.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/realmpfr.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/reg-notes.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/regset.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/resource.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/rtl.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/rtl.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/safe-ctype.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/sanitizer.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/sbitmap.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/splay-tree.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/ssa-iterators.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/statistics.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/stor-layout.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/stringpool.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/symtab.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/sync-builtins.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/system.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/target-hooks-macros.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/target.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/target.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/timevar.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/timevar.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tm-preds.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tm.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tm_p.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/toplev.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-cfg.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-cfgcleanup.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-check.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-core.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-dump.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-eh.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-inline.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-into-ssa.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-iterator.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-pass.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-phinodes.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-pretty-print.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-ssa-alias.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-ssa-operands.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-ssa-sccvn.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-ssa.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree-ssanames.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/tree.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/treestruct.def
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/varasm.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/vec.h
+lib/gcc/mips--netbsdelf/4.9.0/plugin/include/version.h
+libexec/gcc/mips--netbsdelf/4.9.0/cc1
+libexec/gcc/mips--netbsdelf/4.9.0/cc1plus
+libexec/gcc/mips--netbsdelf/4.9.0/collect2
+libexec/gcc/mips--netbsdelf/4.9.0/install-tools/fixinc.sh
+libexec/gcc/mips--netbsdelf/4.9.0/install-tools/fixincl
+libexec/gcc/mips--netbsdelf/4.9.0/install-tools/mkheaders
+libexec/gcc/mips--netbsdelf/4.9.0/install-tools/mkinstalldirs
+libexec/gcc/mips--netbsdelf/4.9.0/liblto_plugin.la
+libexec/gcc/mips--netbsdelf/4.9.0/lto-wrapper
+libexec/gcc/mips--netbsdelf/4.9.0/lto1
+libexec/gcc/mips--netbsdelf/4.9.0/plugin/gengtype
+man/man1/mips--netbsdelf-cpp.1
+man/man1/mips--netbsdelf-g++.1
+man/man1/mips--netbsdelf-gcc.1
+man/man1/mips--netbsdelf-gcov.1
+man/man7/fsf-funding.7
+man/man7/gfdl.7
+man/man7/gpl.7
+mips--netbsdelf/lib/libgcc_s.so
+mips--netbsdelf/lib/libgcc_s.so.1
diff --git a/cross/gcc-mips-current/distinfo b/cross/gcc-mips-current/distinfo
new file mode 100644
index 00000000000..1189a8bcd26
--- /dev/null
+++ b/cross/gcc-mips-current/distinfo
@@ -0,0 +1,11 @@
+$NetBSD: distinfo,v 1.1 2014/03/31 09:49:31 martin Exp $
+
+SHA1 (gcc-4.9-20140330.tar.bz2) = ebe424891d2eb96b346b14fde25d99c68d6574c7
+RMD160 (gcc-4.9-20140330.tar.bz2) = 44828ed5fdc4d4d935a2238de445be96cdf90598
+Size (gcc-4.9-20140330.tar.bz2) = 85486216 bytes
+SHA1 (patch-gcc_config.host) = 1b1e11cd199eb93f49443d51c0063b09b7327858
+SHA1 (patch-gcc_config_host-netbsd.c) = 8f13b09dd7006d456cd1c66e895be504e9537880
+SHA1 (patch-gcc_config_mips_netbsd.h) = fd6ef107013e003aa7ffe86449e356e63bf589fb
+SHA1 (patch-gcc_config_x-netbsd) = 6dc3d78e26df62054ea29f98ca51592858e671e3
+SHA1 (patch-libgcc_config.host) = 353f4d17581d619bb4fd55ad27ab4576f28023b7
+SHA1 (patch-libgcc_config_t-hardfp) = e6341eb19fedcbe63bbfbc8a234ddf3e52ca9866
diff --git a/cross/gcc-mips-current/patches/patch-gcc_config.host b/cross/gcc-mips-current/patches/patch-gcc_config.host
new file mode 100644
index 00000000000..99e3db8e47a
--- /dev/null
+++ b/cross/gcc-mips-current/patches/patch-gcc_config.host
@@ -0,0 +1,18 @@
+$NetBSD: patch-gcc_config.host,v 1.1 2014/03/31 09:49:32 martin Exp $
+
+Add host hooks for NetBSD - needed for working precompiled headers.
+http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58397
+
+--- gcc/config.host.orig 2013-01-10 21:38:27.000000000 +0100
++++ gcc/config.host 2013-09-10 20:25:36.000000000 +0200
+@@ -271,6 +271,10 @@
+ out_host_hook_obj=host-openbsd.o
+ host_xmake_file="${host_xmake_file} x-openbsd"
+ ;;
++ *-*-netbsd*)
++ out_host_hook_obj=host-netbsd.o
++ host_xmake_file="${host_xmake_file} x-netbsd"
++ ;;
+ ia64-*-hpux*)
+ use_long_long_for_widest_fast_int=yes
+ out_host_hook_obj=host-hpux.o
diff --git a/cross/gcc-mips-current/patches/patch-gcc_config_host-netbsd.c b/cross/gcc-mips-current/patches/patch-gcc_config_host-netbsd.c
new file mode 100644
index 00000000000..48fe24b0029
--- /dev/null
+++ b/cross/gcc-mips-current/patches/patch-gcc_config_host-netbsd.c
@@ -0,0 +1,93 @@
+$NetBSD: patch-gcc_config_host-netbsd.c,v 1.1 2014/03/31 09:49:32 martin Exp $
+
+Add host hooks for NetBSD - needed for working precompiled headers.
+http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58397
+
+--- /dev/null 2013-09-11 20:06:51.000000000 +0200
++++ gcc/config/host-netbsd.c 2013-09-11 20:29:31.000000000 +0200
+@@ -0,0 +1,85 @@
++/* NetBSD host-specific hook definitions.
++ Copyright (C) 2004-2013 Free Software Foundation, Inc.
++
++ This file is part of GCC.
++
++ GCC is free software; you can redistribute it and/or modify it
++ under the terms of the GNU General Public License as published
++ by the Free Software Foundation; either version 3, or (at your
++ option) any later version.
++
++ GCC is distributed in the hope that it will be useful, but WITHOUT
++ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
++ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
++ License for more details.
++
++ You should have received a copy of the GNU General Public License
++ along with GCC; see the file COPYING3. If not see
++ <http://www.gnu.org/licenses/>. */
++
++#include "config.h"
++#include "system.h"
++#include "coretypes.h"
++#include "hosthooks.h"
++#include "hosthooks-def.h"
++
++
++#undef HOST_HOOKS_GT_PCH_GET_ADDRESS
++#define HOST_HOOKS_GT_PCH_GET_ADDRESS netbsd_gt_pch_get_address
++#undef HOST_HOOKS_GT_PCH_USE_ADDRESS
++#define HOST_HOOKS_GT_PCH_USE_ADDRESS netbsd_gt_pch_use_address
++
++/* For various ports, try to guess a fixed spot in the vm space
++ that's probably free. */
++#if defined(__sparc64__)
++# define TRY_EMPTY_VM_SPACE 0x40000000000
++#elif defined(_LP64)
++# define TRY_EMPTY_VM_SPACE 0x400000000000
++#elif defined(__mips__) || defined(__vax__)
++# define TRY_EMPTY_VM_SPACE 0x60000000
++#else
++# define TRY_EMPTY_VM_SPACE 0xb0000000
++#endif
++
++/* Determine a location where we might be able to reliably allocate
++ SIZE bytes. FD is the PCH file, though we should return with the
++ file unmapped. */
++
++static void *
++netbsd_gt_pch_get_address (size_t size, int fd)
++{
++ void *addr;
++
++ addr = mmap ((void *) TRY_EMPTY_VM_SPACE, size, PROT_READ | PROT_WRITE,
++ MAP_PRIVATE | MAP_FIXED, fd, 0);
++
++ /* If we failed the map, that means there's *no* free space. */
++ if (addr == (void *) MAP_FAILED)
++ return NULL;
++ /* Unmap the area before returning. */
++ munmap (addr, size);
++
++ return addr;
++}
++
++/* Map SIZE bytes of FD+OFFSET at BASE. Return 1 if we succeeded at
++ mapping the data at BASE, -1 if we couldn't. */
++
++static int
++netbsd_gt_pch_use_address (void *base, size_t size, int fd, size_t offset)
++{
++ void *addr;
++
++ /* We're called with size == 0 if we're not planning to load a PCH
++ file at all. This allows the hook to free any static space that
++ we might have allocated at link time. */
++ if (size == 0)
++ return -1;
++
++ addr = mmap (base, size, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_FIXED, fd, offset);
++
++ return addr == base ? 1 : -1;
++}
++
++
++const struct host_hooks host_hooks = HOST_HOOKS_INITIALIZER;
diff --git a/cross/gcc-mips-current/patches/patch-gcc_config_mips_netbsd.h b/cross/gcc-mips-current/patches/patch-gcc_config_mips_netbsd.h
new file mode 100644
index 00000000000..c8ca007d2e6
--- /dev/null
+++ b/cross/gcc-mips-current/patches/patch-gcc_config_mips_netbsd.h
@@ -0,0 +1,17 @@
+$NetBSD: patch-gcc_config_mips_netbsd.h,v 1.1 2014/03/31 09:49:32 martin Exp $
+
+Define __mips_o32 for -mabi=32
+
+--- gcc/config/mips/netbsd.h.orig 2014-01-02 23:23:26.000000000 +0100
++++ gcc/config/mips/netbsd.h 2014-03-28 14:19:18.000000000 +0100
+@@ -32,7 +32,9 @@ along with GCC; see the file COPYING3.
+ if (TARGET_ABICALLS) \
+ builtin_define ("__ABICALLS__"); \
+ \
+- if (mips_abi == ABI_EABI) \
++ if (mips_abi == ABI_32) \
++ builtin_define ("__mips_o32"); \
++ else if (mips_abi == ABI_EABI) \
+ builtin_define ("__mips_eabi"); \
+ else if (mips_abi == ABI_N32) \
+ builtin_define ("__mips_n32"); \
diff --git a/cross/gcc-mips-current/patches/patch-gcc_config_x-netbsd b/cross/gcc-mips-current/patches/patch-gcc_config_x-netbsd
new file mode 100644
index 00000000000..57b5bd3ffcd
--- /dev/null
+++ b/cross/gcc-mips-current/patches/patch-gcc_config_x-netbsd
@@ -0,0 +1,12 @@
+$NetBSD: patch-gcc_config_x-netbsd,v 1.1 2014/03/31 09:49:32 martin Exp $
+
+Add host hooks for NetBSD - needed for working precompiled headers.
+http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58397
+
+--- /dev/null 2013-09-11 09:12:57.000000000 +0200
++++ gcc/config/x-netbsd 2013-09-10 18:57:27.000000000 +0200
+@@ -0,0 +1,4 @@
++host-netbsd.o : $(srcdir)/config/host-netbsd.c $(CONFIG_H) $(SYSTEM_H) \
++ coretypes.h hosthooks.h hosthooks-def.h $(HOOKS_H)
++ $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
++ $(srcdir)/config/host-netbsd.c
diff --git a/cross/gcc-mips-current/patches/patch-libgcc_config.host b/cross/gcc-mips-current/patches/patch-libgcc_config.host
new file mode 100644
index 00000000000..711d9885f99
--- /dev/null
+++ b/cross/gcc-mips-current/patches/patch-libgcc_config.host
@@ -0,0 +1,25 @@
+$NetBSD: patch-libgcc_config.host,v 1.1 2014/03/31 09:49:32 martin Exp $
+
+don't force libgcc_so.so to depend upon libc being present, and
+build the gcc crtstuff (for this cross-compiler only)
+
+--- libgcc/config.host.orig 2014-03-06 04:24:11.000000000 -0800
++++ libgcc/config.host 2014-03-23 17:46:43.000000000 -0700
+@@ -239,14 +239,8 @@
+ ;;
+ *-*-netbsd*)
+ tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver"
+- # NetBSD 1.7 and later are set up to use GCC's crtstuff for
+- # ELF configurations. We will clear extra_parts in the
+- # a.out configurations.
+- case ${host} in
+- *-*-netbsd*1.[7-9]* | *-*-netbsd[2-9]* | *-*-netbsdelf[2-9]*)
+- extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
+- ;;
+- esac
++ tmake_file="${tmake_file} t-slibgcc-nolc-override"
++ extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
+ ;;
+ *-*-openbsd*)
+ tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-eh-dw2-dip"
+
diff --git a/cross/gcc-mips-current/patches/patch-libgcc_config_t-hardfp b/cross/gcc-mips-current/patches/patch-libgcc_config_t-hardfp
new file mode 100644
index 00000000000..21ac27dbac1
--- /dev/null
+++ b/cross/gcc-mips-current/patches/patch-libgcc_config_t-hardfp
@@ -0,0 +1,29 @@
+$NetBSD: patch-libgcc_config_t-hardfp,v 1.1 2014/03/31 09:49:32 martin Exp $
+
+Make sed invocation slightly more portable
+
+--- libgcc/config/t-hardfp.orig 2014-02-07 08:46:34.000000000 +0100
++++ libgcc/config/t-hardfp 2014-03-23 13:25:44.000000000 +0100
+@@ -51,11 +51,11 @@
+ $(subst M,$(pair),truncM2))
+
+ # Regexp for matching a floating-point mode.
+-hardfp_mode_regexp := $(shell echo $(hardfp_float_modes) | sed 's/ /\\|/g')
++hardfp_mode_regexp := $(shell echo $(hardfp_float_modes) | sed 's/ /|/g')
+
+ # Regexp for matching the end of a function name, after the last
+ # floating-point mode.
+-hardfp_suffix_regexp := $(shell echo $(hardfp_int_modes) 2 3 | sed 's/ /\\|/g')
++hardfp_suffix_regexp := $(shell echo $(hardfp_int_modes) 2 3 | sed 's/ /|/g')
+
+ # Add -D options to define:
+ # FUNC: the function name (e.g. __addsf3)
+@@ -64,7 +64,7 @@
+ # TYPE: the last floating-point mode (e.g. sf)
+ hardfp_defines_for = \
+ $(shell echo $1 | \
+- sed 's/\(.*\)\($(hardfp_mode_regexp)\)\($(hardfp_suffix_regexp)\|\)$$/-DFUNC=__& -DOP_\1\3 -DTYPE=\2/')
++ sed -r 's/(.*)($(hardfp_mode_regexp))($(hardfp_suffix_regexp)|.*)$$/-DFUNC=__& -DOP_\1\3 -DTYPE=\2/')
+
+ hardfp-o = $(patsubst %,%$(objext),$(hardfp_func_list))
+ $(hardfp-o): %$(objext): $(srcdir)/config/hardfp.c