diff options
author | mef <mef> | 2013-11-03 10:16:03 +0000 |
---|---|---|
committer | mef <mef> | 2013-11-03 10:16:03 +0000 |
commit | e8d4e8251cd9c5e34bbb611507b7f0f61537ec29 (patch) | |
tree | fb544fa1689ea355640b1c34efedf13106735b3d /cross/nios2-gcc | |
parent | a4a8f861211598bfebb387e5f7bd7b52019e0517 (diff) | |
download | pkgsrc-e8d4e8251cd9c5e34bbb611507b7f0f61537ec29.tar.gz |
The following combination of GNU/Altera nios2 tool-chain is newly added.
nios2 (just a Makefile.common)
nios2-binutils (2.20)
Cross binutils for ALTERA FPGA Nios2 processor.
nios2-gcc
Cross gcc-3.4.6 for ALTERA FPGA Nios2 processor.
Diffstat (limited to 'cross/nios2-gcc')
-rw-r--r-- | cross/nios2-gcc/DESCR | 1 | ||||
-rw-r--r-- | cross/nios2-gcc/Makefile | 50 | ||||
-rw-r--r-- | cross/nios2-gcc/PLIST | 42 | ||||
-rw-r--r-- | cross/nios2-gcc/TODO | 2 | ||||
-rw-r--r-- | cross/nios2-gcc/distinfo | 7 | ||||
-rw-r--r-- | cross/nios2-gcc/patches/patch-aa | 33 | ||||
-rw-r--r-- | cross/nios2-gcc/patches/patch-ab | 52 |
7 files changed, 187 insertions, 0 deletions
diff --git a/cross/nios2-gcc/DESCR b/cross/nios2-gcc/DESCR new file mode 100644 index 00000000000..356c58136a2 --- /dev/null +++ b/cross/nios2-gcc/DESCR @@ -0,0 +1 @@ +Cross gcc-3.4.6 for ALTERA FPGA Nios2 processor. diff --git a/cross/nios2-gcc/Makefile b/cross/nios2-gcc/Makefile new file mode 100644 index 00000000000..f9f854c328d --- /dev/null +++ b/cross/nios2-gcc/Makefile @@ -0,0 +1,50 @@ +# $NetBSD: Makefile,v 1.1 2013/11/03 10:16:03 mef Exp $ + +PKG_VERSION= 3.4.6 +# PKGNAME will have option name only when explictly selected +PKGNAME= nios2-gcc-${PKG_VERSION} +CATEGORIES= cross +MAINTAINER= pkgsrc-users@NetBSD.org +COMMENT= GNU gcc for Altera FPGA Nios2 processor +LICENSE= gnu-gpl-v2 + +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-binutils-[0-9]*:../../cross/nios2-binutils + +.include "../../cross/nios2/Makefile.common" + +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 + +#.include "../../devel/gmp/buildlink3.mk" # 4.4 or later +#.include "../../math/mpfr/buildlink3.mk" # 4.4 or later + +# 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-gcc/PLIST b/cross/nios2-gcc/PLIST new file mode 100644 index 00000000000..4f913fc0b50 --- /dev/null +++ b/cross/nios2-gcc/PLIST @@ -0,0 +1,42 @@ +@comment $NetBSD: PLIST,v 1.1 2013/11/03 10:16:03 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-gcc/TODO b/cross/nios2-gcc/TODO new file mode 100644 index 00000000000..ae0ed51cae9 --- /dev/null +++ b/cross/nios2-gcc/TODO @@ -0,0 +1,2 @@ +* conflict with binutils are not well resolved. + libiberty.a diff --git a/cross/nios2-gcc/distinfo b/cross/nios2-gcc/distinfo new file mode 100644 index 00000000000..52614d8b3ac --- /dev/null +++ b/cross/nios2-gcc/distinfo @@ -0,0 +1,7 @@ +$NetBSD: distinfo,v 1.1 2013/11/03 10:16:03 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-gcc/patches/patch-aa b/cross/nios2-gcc/patches/patch-aa new file mode 100644 index 00000000000..5d4fe5f6a5e --- /dev/null +++ b/cross/nios2-gcc/patches/patch-aa @@ -0,0 +1,33 @@ +$NetBSD: patch-aa,v 1.1 2013/11/03 10:16:03 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-gcc/patches/patch-ab b/cross/nios2-gcc/patches/patch-ab new file mode 100644 index 00000000000..489f25477a5 --- /dev/null +++ b/cross/nios2-gcc/patches/patch-ab @@ -0,0 +1,52 @@ +$NetBSD: patch-ab,v 1.1 2013/11/03 10:16:03 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)); } + ; + |