diff options
author | Yaakov Selkowitz <yselkowi@redhat.com> | 2015-08-19 03:42:09 -0500 |
---|---|---|
committer | Yaakov Selkowitz <yselkowi@redhat.com> | 2015-08-19 03:42:09 -0500 |
commit | e2f284b1e756a66aeffd9a03f07702826288b627 (patch) | |
tree | 5a3da04b653629b8dd30c55ebf5c837fdd5be119 | |
download | mmix-gcc-master.tar.gz mmix-gcc-master.tar.xz mmix-gcc-master.zip |
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | gcc-textdomain.patch | 37 | ||||
-rw-r--r-- | mmix-gcc.spec | 181 | ||||
-rw-r--r-- | sources | 1 |
4 files changed, 220 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bd35263 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/gcc-5.2.0.tar.bz2 diff --git a/gcc-textdomain.patch b/gcc-textdomain.patch new file mode 100644 index 0000000..4eb7edf --- /dev/null +++ b/gcc-textdomain.patch @@ -0,0 +1,37 @@ +--- a/gcc/Makefile.in 2011-08-20 02:51:09.000000000 -0500 ++++ b/gcc/Makefile.in 2013-11-15 01:21:11.915416300 -0600 +@@ -5175,8 +5175,8 @@ install-po: + dir=$(localedir)/$$lang/LC_MESSAGES; \ + echo $(mkinstalldirs) $(DESTDIR)$$dir; \ + $(mkinstalldirs) $(DESTDIR)$$dir || exit 1; \ +- echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc.mo; \ +- $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc.mo; \ ++ echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/mmix-gcc.mo; \ ++ $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/mmix-gcc.mo; \ + done + + # Rule for regenerating the message template (gcc.pot). +--- a/gcc/intl.c 2010-12-01 11:29:12.000000000 -0600 ++++ b/gcc/intl.c 2013-11-15 01:21:29.446419000 -0600 +@@ -56,8 +56,8 @@ gcc_init_libintl (void) + setlocale (LC_ALL, ""); + #endif + +- (void) bindtextdomain ("gcc", LOCALEDIR); +- (void) textdomain ("gcc"); ++ (void) bindtextdomain ("mmix-gcc", LOCALEDIR); ++ (void) textdomain ("mmix-gcc"); + + /* Opening quotation mark. */ + open_quote = _("`"); +--- a/libcpp/configure 2012-03-01 06:03:46.000000000 -0600 ++++ b/libcpp/configure 2013-11-15 01:21:54.401846400 -0600 +@@ -7042,7 +7042,7 @@ _ACEOF + + + # More defines and substitutions. +-PACKAGE="$PACKAGE_TARNAME" ++PACKAGE="mmix-cpplib" + + cat >>confdefs.h <<_ACEOF + #define PACKAGE "$PACKAGE" diff --git a/mmix-gcc.spec b/mmix-gcc.spec new file mode 100644 index 0000000..04d571f --- /dev/null +++ b/mmix-gcc.spec @@ -0,0 +1,181 @@ +#global bootstrap 1 + +%global gcc_major 5 +%global gcc_minor 2 +%global gcc_micro 0 +%global gcc_branch %{gcc_major}.%{gcc_minor} +%global gcc_version %{gcc_major}.%{gcc_minor}.%{gcc_micro} +# Note, gcc_release must be integer, if you want to add suffixes to +# %%{release}, append them after %%{gcc_release} on Release: line. +%global gcc_release 1 + +%global __os_install_post /usr/lib/rpm/brp-compress %{nil} + +Name: mmix-gcc +Version: %{gcc_version} +Release: %{gcc_release}%{?dist} +Summary: GCC cross-compiler for MMIX + +License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions +Group: Development/Languages +URL: http://gcc.gnu.org +Source0: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{gcc_version}/gcc-%{gcc_version}.tar.bz2 +# Fedora-specific patches +Patch1000: gcc-textdomain.patch + +BuildRequires: texinfo +BuildRequires: mmix-binutils +%if ! 0%{?bootstrap} +BuildRequires: mmix-newlib +%endif +BuildRequires: gmp-devel +BuildRequires: mpfr-devel +BuildRequires: libmpc-devel +%if 0%{?fedora} || 0%{?rhel} >= 7 +BuildRequires: libstdc++-static +%endif +%if 0%{?fedora} >= 20 +BuildRequires: isl-devel >= 0.12.1 +%endif +BuildRequires: zlib-devel +BuildRequires: flex +BuildRequires: gettext + +Requires: mmix-binutils +%if ! 0%{?bootstrap} +Requires: mmix-newlib +%endif + +%description +Cygwin cross-compiler (GCC) suite. + + +%prep +%setup -q -n gcc-%{gcc_version} +%patch1000 -p1 + +echo %{gcc_version} > gcc/BASE-VER +echo 'MMIX Copr %{gcc_version}-%{gcc_release}' > gcc/DEV-PHASE + + +%build +mkdir -p build +pushd build + +CC="%{__cc} ${RPM_OPT_FLAGS}" \ +../configure \ + --prefix=%{_prefix} \ + --mandir=%{_mandir} \ + --infodir=%{_infodir} \ + --build=%_build --host=%_host \ + --target=mmix \ + --with-gnu-as --with-gnu-ld --verbose \ + --with-newlib \ + --with-system-zlib \ + --disable-shared --enable-static \ + --enable-multilib \ + --without-included-gettext \ + --enable-version-specific-runtime-libs \ +%if 0%{?fedora} >= 20 + --enable-graphite \ +%endif + --enable-languages="c,c++" \ + --enable-lto --disable-symvers \ + --disable-libatomic --disable-libgomp --disable-libitm \ + --disable-libstdcxx-pch --disable-libcc1 \ +%if 0%{?bootstrap} + --disable-libssp --disable-libquadmath --disable-libstdc++-v3 \ + --without-headers \ +%else + --enable-libssp \ +%endif + --with-bugurl=https://copr.fedoraproject.org/coprs/yselkowitz/mmix/ + +make %{?_smp_mflags} all + +popd + + +%install +pushd build +make DESTDIR=$RPM_BUILD_ROOT install +popd + +# These files conflict with existing installed files. +rm -rf $RPM_BUILD_ROOT%{_infodir} +rm -f $RPM_BUILD_ROOT%{_mandir}/man7/* + +# Not sure these are useful on statically-linked targets +rm -f $RPM_BUILD_ROOT%{_prefix}/lib/gcc/mmix/%{version}/*-gdb.py +rm -f $RPM_BUILD_ROOT%{_prefix}/lib/gcc/mmix/%{version}/gnuabi/*-gdb.py +rm -fr $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx/ + +# Don't want the *.la files. +find $RPM_BUILD_ROOT -name '*.la' -delete + +%find_lang mmix-gcc +%find_lang mmix-cpplib +cat mmix-cpplib.lang >> mmix-gcc.lang + + +%files -f mmix-gcc.lang +%doc gcc/README* gcc/COPYING* +%{_bindir}/mmix-cpp +%{_bindir}/mmix-gcc +%{_bindir}/mmix-gcc-%{version} +%{_bindir}/mmix-gcc-ar +%{_bindir}/mmix-gcc-nm +%{_bindir}/mmix-gcc-ranlib +%{_bindir}/mmix-gcov +%{_bindir}/mmix-gcov-tool +%{_bindir}/mmix-g++ +%{_bindir}/mmix-c++ +%dir %{_prefix}/lib/gcc/mmix +%dir %{_prefix}/lib/gcc/mmix/%{version} +%{_prefix}/lib/gcc/mmix/%{version}/crtbegin.o +%{_prefix}/lib/gcc/mmix/%{version}/crtend.o +%{_prefix}/lib/gcc/mmix/%{version}/crti.o +%{_prefix}/lib/gcc/mmix/%{version}/crtn.o +%{_prefix}/lib/gcc/mmix/%{version}/gnuabi/crtbegin.o +%{_prefix}/lib/gcc/mmix/%{version}/gnuabi/crtend.o +%{_prefix}/lib/gcc/mmix/%{version}/gnuabi/crti.o +%{_prefix}/lib/gcc/mmix/%{version}/gnuabi/crtn.o +%{_prefix}/lib/gcc/mmix/%{version}/gnuabi/libgcc.a +%{_prefix}/lib/gcc/mmix/%{version}/gnuabi/libgcov.a +%if ! 0%{?bootstrap} +%{_prefix}/lib/gcc/mmix/%{version}/gnuabi/libssp.a +%{_prefix}/lib/gcc/mmix/%{version}/gnuabi/libssp_nonshared.a +%{_prefix}/lib/gcc/mmix/%{version}/gnuabi/libstdc++.a +%{_prefix}/lib/gcc/mmix/%{version}/gnuabi/libsupc++.a +%endif +%{_prefix}/lib/gcc/mmix/%{version}/libgcc.a +%{_prefix}/lib/gcc/mmix/%{version}/libgcov.a +%if ! 0%{?bootstrap} +%{_prefix}/lib/gcc/mmix/%{version}/libssp.a +%{_prefix}/lib/gcc/mmix/%{version}/libssp_nonshared.a +%{_prefix}/lib/gcc/mmix/%{version}/libstdc++.a +%{_prefix}/lib/gcc/mmix/%{version}/libsupc++.a +%endif +%{_prefix}/lib/gcc/mmix/%{version}/include/ +%{_prefix}/lib/gcc/mmix/%{version}/include-fixed/ +%dir %{_prefix}/lib/gcc/mmix/%{version}/install-tools +%{_prefix}/lib/gcc/mmix/%{version}/install-tools/* +%{_prefix}/lib/gcc/mmix/%{version}/plugin/ +%{_libexecdir}/gcc/mmix/%{version}/cc1 +%{_libexecdir}/gcc/mmix/%{version}/cc1plus +%{_libexecdir}/gcc/mmix/%{version}/collect2 +%dir %{_libexecdir}/gcc/mmix/%{version}/install-tools +%{_libexecdir}/gcc/mmix/%{version}/install-tools/* +%{_libexecdir}/gcc/mmix/%{version}/liblto_plugin.so* +%{_libexecdir}/gcc/mmix/%{version}/lto1 +%{_libexecdir}/gcc/mmix/%{version}/lto-wrapper +%{_libexecdir}/gcc/mmix/%{version}/plugin/ +%{_mandir}/man1/mmix-cpp.1* +%{_mandir}/man1/mmix-gcc.1* +%{_mandir}/man1/mmix-gcov.1* +%{_mandir}/man1/mmix-g++.1* + + +%changelog +* Wed Aug 19 2015 Yaakov Selkowitz <yselkowi@redhat.com> - 5.2.0-1 +- Initial RPM release. @@ -0,0 +1 @@ +a51bcfeb3da7dd4c623e27207ed43467 gcc-5.2.0.tar.bz2 |