diff options
Diffstat (limited to 'cross/nios2-gcc3')
-rw-r--r-- | cross/nios2-gcc3/DESCR | 1 | ||||
-rw-r--r-- | cross/nios2-gcc3/Makefile | 68 | ||||
-rw-r--r-- | cross/nios2-gcc3/PLIST | 42 | ||||
-rw-r--r-- | cross/nios2-gcc3/distinfo | 7 | ||||
-rw-r--r-- | cross/nios2-gcc3/patches/patch-aa | 33 | ||||
-rw-r--r-- | cross/nios2-gcc3/patches/patch-ab | 52 |
6 files changed, 203 insertions, 0 deletions
diff --git a/cross/nios2-gcc3/DESCR b/cross/nios2-gcc3/DESCR new file mode 100644 index 00000000000..356c58136a2 --- /dev/null +++ b/cross/nios2-gcc3/DESCR @@ -0,0 +1 @@ +Cross gcc-3.4.6 for ALTERA FPGA Nios2 processor. diff --git a/cross/nios2-gcc3/Makefile b/cross/nios2-gcc3/Makefile new file mode 100644 index 00000000000..3142a05de95 --- /dev/null +++ b/cross/nios2-gcc3/Makefile @@ -0,0 +1,68 @@ +# $NetBSD: Makefile,v 1.1 2013/11/16 07:41:00 mef Exp $ + +PKG_VERSION= 3.4.6 +# PKGNAME will have option name only when explictly selected +PKGNAME= nios2-gcc3-${PKG_VERSION} +CATEGORIES= cross +MAINTAINER= pkgsrc-users@NetBSD.org +COMMENT= GNU gcc for Altera FPGA Nios2 processor +LICENSE= gnu-gpl-v2 + +MASTER_SITES= ftp://ftp.altera.com/outgoing/download/support/ip/processors/nios2/gnu/ +DISTNAME= nios2_gnu_gcc3_10.0 +# nios2_gnu_gcc3_10.1.tgz are the exactly same, see MD5 + +EXTRACT_ELEMENTS= gcc +WRKSRC= ${WRKDIR}/gcc +#PATH:= ${CROSSBASE}/bin:${PATH} + +USE_TOOLS+= gmake makeinfo perl +USE_GNU_CONFIGURE_HOST= no +#BUILD_DEFS+= CROSSBASE #included in ../nios2/Makefile.common + +DEPENDS+= nios2-binutils220-[0-9]*:../../cross/nios2-binutils220 + +GNU_CONFIGURE= yes +USE_PKGLOCALEDIR= yes + +NIOS2_TARGET?= nios2-elf +PLIST_SUBST+= NIOS2_TARGET=${NIOS2_TARGET:Q} + +USE_CROSSBASE= yes +BUILD_DEFS+= CROSSBASE +PATH:= ${CROSSBASE}/bin:${PATH} + +BUILD_DEPENDS+= gtexinfo-[0-9]*:../../devel/gtexinfo + +.if defined(GNU_CONFIGURE) +CONFIGURE_ARGS= # reset +CONFIGURE_ARGS+= --target=${NIOS2_TARGET:Q} +# following line to avoid getting +# make: exec(nios2--netbsdelf-ar) failed (No such file or directory) +USE_GNU_CONFIGURE_HOST= NO +.endif +CONFIGURE_ARGS+= --enable-languages=c +CONFIGURE_ARGS+= --disable-multilib +CONFIGURE_ARGS+= --disable-threads +CONFIGURE_ARGS+= --disable-nls +# to avoid strange problem due to long `uname -a` result +CONFIGURE_ARGS+= --host=${MACHINE_ARCH}--${LOWER_OPSYS} +CONFIGURE_ARGS+= --build=${MACHINE_ARCH}--${LOWER_OPSYS} + +# pkglint flags, but seems necessary not generating dir file +INFO_FILES= no + +# to avoid conflict with binutils (to be fixed by more sophisticated way) +post-install: + ${RM} ${DESTDIR}${CROSSBASE}/lib/libiberty.a +# to avoid conflict wit mingw-w64-gcc-4.5.1 + ${RM} ${DESTDIR}${CROSSBASE}/man/man7/fsf-funding.7 + ${RM} ${DESTDIR}${CROSSBASE}/man/man7/gfdl.7 + ${RM} ${DESTDIR}${CROSSBASE}/man/man7/gpl.7 + ${RM} ${DESTDIR}${CROSSBASE}/info/cpp.info + ${RM} ${DESTDIR}${CROSSBASE}/info/cppinternals.info + ${RM} ${DESTDIR}${CROSSBASE}/info/gcc.info + ${RM} ${DESTDIR}${CROSSBASE}/info/gccinstall.info + ${RM} ${DESTDIR}${CROSSBASE}/info/gccint.info + +.include "../../mk/bsd.pkg.mk" diff --git a/cross/nios2-gcc3/PLIST b/cross/nios2-gcc3/PLIST new file mode 100644 index 00000000000..7815bfbf035 --- /dev/null +++ b/cross/nios2-gcc3/PLIST @@ -0,0 +1,42 @@ +@comment $NetBSD: PLIST,v 1.1 2013/11/16 07:41:00 mef Exp $ +bin/${NIOS2_TARGET}-cpp +bin/${NIOS2_TARGET}-gcc +bin/${NIOS2_TARGET}-gcc-${PKGVERSION} +bin/${NIOS2_TARGET}-gccbug +bin/${NIOS2_TARGET}-gcov +libexec/gcc/${NIOS2_TARGET}/${PKGVERSION}/cc1 +libexec/gcc/${NIOS2_TARGET}/${PKGVERSION}/collect2 +libexec/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/fixinc.sh +libexec/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/fixincl +libexec/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/mkheaders +man/man1/${NIOS2_TARGET}-cpp.1 +man/man1/${NIOS2_TARGET}-gcc.1 +man/man1/${NIOS2_TARGET}-gcov.1 +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/crtbegin.o +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/crtend.o +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/crti.o +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/crtn.o +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/include/README +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/include/float.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/include/iso646.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/include/limits.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/include/stdarg.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/include/stdbool.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/include/stddef.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/include/syslimits.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/include/unwind.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/include/varargs.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/gsyslimits.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/include/README +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/include/float.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/include/iso646.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/include/limits.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/include/stdarg.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/include/stdbool.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/include/stddef.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/include/unwind.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/include/varargs.h +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/install-tools/mkheaders.conf +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/libgcc.a +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/libgcov.a +lib/gcc/${NIOS2_TARGET}/${PKGVERSION}/specs diff --git a/cross/nios2-gcc3/distinfo b/cross/nios2-gcc3/distinfo new file mode 100644 index 00000000000..43cd879719f --- /dev/null +++ b/cross/nios2-gcc3/distinfo @@ -0,0 +1,7 @@ +$NetBSD: distinfo,v 1.1 2013/11/16 07:41:00 mef Exp $ + +SHA1 (nios2_gnu_gcc3_10.0.tar.gz) = db28844deb79c416d2ded7fafa9b497ff4fa355c +RMD160 (nios2_gnu_gcc3_10.0.tar.gz) = 67f8d48eb49366154efb3fb9c177a978a7768ce5 +Size (nios2_gnu_gcc3_10.0.tar.gz) = 87391346 bytes +SHA1 (patch-aa) = 33c61a420b37b81e85f5d9a4f4962f4ad03b41ea +SHA1 (patch-ab) = 92c3ae871f7772553c66145cf606bcfcef4ea64d diff --git a/cross/nios2-gcc3/patches/patch-aa b/cross/nios2-gcc3/patches/patch-aa new file mode 100644 index 00000000000..78656f50c68 --- /dev/null +++ b/cross/nios2-gcc3/patches/patch-aa @@ -0,0 +1,33 @@ +$NetBSD: patch-aa,v 1.1 2013/11/16 07:41:00 mef Exp $ +# +# craft FPBIT_FUNCS and DPBIT_FUNCS lists to avoid routine collision +# against NetBSD softfloat implementation. Following twelve are to +# be eliminated; +# _addsub_df.o _addsub_sf.o _df_to_sf.o _df_to_si.o +# _div_df.o _div_sf.o _mul_df.o _mul_sf.o _sf_to_df.o _sf_to_si.o +# _si_to_df.o _si_to_sf.o + +--- gcc/Makefile.in.orig 2010-08-31 07:47:29.000000000 +0900 ++++ gcc/Makefile.in 2010-11-24 10:42:04.000000000 +0900 +@@ -912,15 +912,15 @@ + # Defined in libgcov.c, included only in gcov library + LIBGCOV = _gcov _gcov_merge_add _gcov_merge_single _gcov_merge_delta + +-FPBIT_FUNCS = _pack_sf _unpack_sf _addsub_sf _mul_sf _div_sf \ ++FPBIT_FUNCS = _pack_sf _unpack_sf \ + _fpcmp_parts_sf _compare_sf _eq_sf _ne_sf _gt_sf _ge_sf \ +- _lt_sf _le_sf _unord_sf _si_to_sf _sf_to_si _negate_sf _make_sf \ +- _sf_to_df _sf_to_tf _thenan_sf _sf_to_usi _usi_to_sf ++ _lt_sf _le_sf _unord_sf _negate_sf _make_sf \ ++ _sf_to_tf _thenan_sf _sf_to_usi _usi_to_sf + +-DPBIT_FUNCS = _pack_df _unpack_df _addsub_df _mul_df _div_df \ ++DPBIT_FUNCS = _pack_df _unpack_df \ + _fpcmp_parts_df _compare_df _eq_df _ne_df _gt_df _ge_df \ +- _lt_df _le_df _unord_df _si_to_df _df_to_si _negate_df _make_df \ +- _df_to_sf _df_to_tf _thenan_df _df_to_usi _usi_to_df ++ _lt_df _le_df _unord_df negate_df _make_df \ ++ _df_to_tf _thenan_df _df_to_usi _usi_to_df + + TPBIT_FUNCS = _pack_tf _unpack_tf _addsub_tf _mul_tf _div_tf \ + _fpcmp_parts_tf _compare_tf _eq_tf _ne_tf _gt_tf _ge_tf \ diff --git a/cross/nios2-gcc3/patches/patch-ab b/cross/nios2-gcc3/patches/patch-ab new file mode 100644 index 00000000000..607e9a3820f --- /dev/null +++ b/cross/nios2-gcc3/patches/patch-ab @@ -0,0 +1,52 @@ +$NetBSD: patch-ab,v 1.1 2013/11/16 07:41:00 mef Exp $ + +Based on the suggenstion from TNT (www.trans-nt.com) +Thanks locore64 (at) alkyltechnology.com for the info. + +--- gcc/c-parse.y.orig 2006-03-06 12:57:18.000000000 +0900 ++++ gcc/c-parse.y 2010-11-24 12:10:18.000000000 +0900 +@@ -1647,34 +1647,34 @@ + + structsp_attr: + struct_head identifier '{' +- { $$ = start_struct (RECORD_TYPE, $2); ++ { $<ttype>$ = start_struct (RECORD_TYPE, $2); + /* Start scope of tag before parsing components. */ + } + component_decl_list '}' maybe_attribute +- { $$ = finish_struct ($<ttype>4, nreverse ($5), ++ { $<ttype>$ = finish_struct ($<ttype>4, nreverse ($5), + chainon ($1, $7)); } + | struct_head '{' component_decl_list '}' maybe_attribute +- { $$ = finish_struct (start_struct (RECORD_TYPE, NULL_TREE), ++ { $<ttype>$ = finish_struct (start_struct (RECORD_TYPE, NULL_TREE), + nreverse ($3), chainon ($1, $5)); + } + | union_head identifier '{' +- { $$ = start_struct (UNION_TYPE, $2); } ++ { $<ttype>$ = start_struct (UNION_TYPE, $2); } + component_decl_list '}' maybe_attribute +- { $$ = finish_struct ($<ttype>4, nreverse ($5), ++ { $<ttype>$ = finish_struct ($<ttype>4, nreverse ($5), + chainon ($1, $7)); } + | union_head '{' component_decl_list '}' maybe_attribute +- { $$ = finish_struct (start_struct (UNION_TYPE, NULL_TREE), ++ { $<ttype>$ = finish_struct (start_struct (UNION_TYPE, NULL_TREE), + nreverse ($3), chainon ($1, $5)); + } + | enum_head identifier '{' +- { $$ = start_enum ($2); } ++ { $<ttype>$ = start_enum ($2); } + enumlist maybecomma_warn '}' maybe_attribute +- { $$ = finish_enum ($<ttype>4, nreverse ($5), ++ { $<ttype>$ = finish_enum ($<ttype>4, nreverse ($5), + chainon ($1, $8)); } + | enum_head '{' +- { $$ = start_enum (NULL_TREE); } ++ { $<ttype>$ = start_enum (NULL_TREE); } + enumlist maybecomma_warn '}' maybe_attribute +- { $$ = finish_enum ($<ttype>3, nreverse ($4), ++ { $<ttype>$ = finish_enum ($<ttype>3, nreverse ($4), + chainon ($1, $7)); } + ; + |