summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYaakov Selkowitz <yselkowi@redhat.com>2015-08-19 03:42:09 -0500
committerYaakov Selkowitz <yselkowi@redhat.com>2015-08-19 03:42:09 -0500
commite2f284b1e756a66aeffd9a03f07702826288b627 (patch)
tree5a3da04b653629b8dd30c55ebf5c837fdd5be119
downloadmmix-gcc-master.tar.gz
mmix-gcc-master.tar.xz
mmix-gcc-master.zip
mmix-gcc 5.2.0HEADmaster
-rw-r--r--.gitignore1
-rw-r--r--gcc-textdomain.patch37
-rw-r--r--mmix-gcc.spec181
-rw-r--r--sources1
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.
diff --git a/sources b/sources
new file mode 100644
index 0000000..3d37d21
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+a51bcfeb3da7dd4c623e27207ed43467 gcc-5.2.0.tar.bz2