[meego-commits] 23545: Changes to devel:tools:sdk:host/meego-sdk-i586-gcc
sbinner
no_reply at build.meego.com
Wed Aug 3 15:11:54 UTC 2011
Hi,
I have made the following changes to meego-sdk-i586-gcc in project devel:tools:sdk:host. Please review and accept ASAP.
Thank You,
sbinner
[This message was auto-generated]
---
Request #23545:
submit: home:sbinner:branches:devel:tools:sdk:host/meego-sdk-i586-gcc(cleanup) -> devel:tools:sdk:host/meego-sdk-i586-gcc
Message:
make it build for openSUSE 11.4
State: new 2011-08-03T08:11:48 sbinner
Comment: None
changes files:
--------------
--- meego-sdk-i586-gcc.changes
+++ meego-sdk-i586-gcc.changes
@@ -0,0 +1,3 @@
+* Wed Aug 03 2011 Stephan Binner <stephan.binner at basyskom.de> - 4.5.0
+- Add meego-sdk-i586-gcc-openSUSE_11.4.spec
+
@@ -10 +13 @@
-- Initial commit of gcc bootstrap to build toolchain
\ No newline at end of file
+- Initial commit of gcc bootstrap to build toolchain
new:
----
meego-sdk-i586-gcc-openSUSE_11.4.spec
spec files:
-----------
++++++ new spec file:
--- meego-sdk-i586-gcc-openSUSE_11.4.spec
+++ meego-sdk-i586-gcc-openSUSE_11.4.spec
+%define _meego_cpu i586
+%define _meego_arch i586
+%define TARGET %{_meego_arch}-meego-linux-gnu
+%define install_prefix /opt/meego/meego-sdk-%{_meego_cpu}-toolchain/%{TARGET}
+
+# Combined gcc / cross-armv*-gcc(-accel) specfile
+Name: meego-sdk-%{_meego_cpu}-gcc
+# Keep Name on top !
+
+%global _default_patch_fuzz -1
+# crossbuild / accelerator section
+# \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
+%define crossbuild 0
+%define accelerator_crossbuild 0
+%if "%{name}" != "gcc"
+# this is the ix86 -> arm cross compiler (cross-armv*-gcc)
+#
+# cross arch retrieval
+%define crossarch %(echo %{name} | sed -e "s/cross-\\(.*\\)-gcc/\\1/")
+
+# We set requires/provides by hand and disable post-build-checks.
+# Captain Trunk: Sledge, you cannot disarm that nuclear bomb!
+# Sledge Hammer: Trust me, I know what I'm doing.
+AutoReqProv: 0
+AutoReq: false
+#BuildRequires: -rpmlint-Moblin -rpmlint-mini -post-build-checks
+# cross platform
+%define cross_gcc_target_platform %{crossarch}-meego-linux-gnueabi
+# gcc_target_platform holds the host (executing the compiler)
+# cross_gcc_target_platform holds the target (for which the compiler is producing binaries)
+# prefix for cross compiler
+%define _prefix /opt/cross
+%define _prefix %{install_prefix}
+
+# strip of 'foreign arch' symbols fails
+%define __strip /bin/true
+# sysroot for cross-compiler
+%define crosssysroot %{_prefix}/%{cross_gcc_target_platform}/sys-root
+# flag
+%define crossbuild 1
+# macros in buildrequires is hard to expand for the scheduler (e.g. crossarch) which would make this easier.
+#BuildRequires: cross-%{crossarch}-glibc cross-%{crossarch}-glibc-devel cross-%{crossarch}-glibc-headers
+#BuildRequires: cross-%{crossarch}-kernel-headers cross-%{crossarch}-binutils
+# Fixme: find way to make this without listing every package
+%if "%{name}" == "cross-armv5tel-gcc"
+BuildRequires: cross-armv5tel-glibc cross-armv5tel-glibc-devel cross-armv5tel-glibc-headers
+BuildRequires: cross-armv5tel-kernel-headers cross-armv5tel-binutils
+%endif
+%if "%{name}" == "cross-armv7l-gcc"
+BuildRequires: cross-armv7l-glibc cross-armv7l-glibc-devel cross-armv7l-glibc-headers
+BuildRequires: cross-armv7l-kernel-headers cross-armv7l-binutils
+%endif
+# Fixme: see above
+%if "%{name}" == "cross-armv5tel-gcc-accel"
+BuildRequires: cross-armv5tel-glibc cross-armv5tel-glibc-devel cross-armv5tel-glibc-headers
+BuildRequires: cross-armv5tel-kernel-headers cross-armv5tel-binutils
+%endif
+%if "%{name}" == "cross-armv7l-gcc-accel"
+BuildRequires: cross-armv7l-glibc cross-armv7l-glibc-devel cross-armv7l-glibc-headers
+BuildRequires: cross-armv7l-kernel-headers cross-armv7l-binutils
+%endif
+BuildRequires: meego-sdk-%{_meego_cpu}-kernel-headers meego-sdk-%{_meego_cpu}-binutils
+BuildRequires: meego-sdk-%{_meego_cpu}-glibc-bootstrap
+BuildRequires: mpc-devel, gmp-devel, mpfr-devel
+
+# single target atm.
+#
+# special handling for MeeGo ARM build acceleration
+# cross-armv*-gcc-accel
+%if "%(echo %{name} | sed -e "s/cross-.*-gcc-\\(.*\\)/\\1/")" == "accel"
+# cross architecture
+%define crossarch %(echo %{name} | sed -e "s/cross-\\(.*\\)-gcc-accel/\\1/")
+# cross target platform
+%define cross_gcc_target_platform %{crossarch}-meego-linux-gnueabi
+# prefix - as it's going to "replace" the original compiler ...
+%define _prefix /usr
+# cross-build sets sysroot as default , we need to override this a bit
+%define crosssysroot /
+# where to find the libs during the build
+%define crossbuildsysroot /opt/cross/%{cross_gcc_target_platform}/sys-root
+# flags
+%define crossbuild 1
+%define accelerator_crossbuild 1
+# where to find the libs at runtime
+%define newrpath /emul/ia32-linux/lib:/emul/ia32-linux/usr/lib
+%define _build_name_fmt %%{ARCH}/%%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.dontuse.rpm
+%endif
+# end special accel
+%endif
+# /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
+# end crossbuild / accelerator section
+
+%global gcc_version 4.5.0
+%global gcc_release 1
+%global _unpackaged_files_terminate_build 0
+%global include_gappletviewer 0
+%global build_ada 0
+%global build_java 0
+%ifarch %{arm}
+%global build_cloog 0
+%else
+%if %{crossbuild}
+%global build_cloog 0
+%else
+%global build_cloog 1
+%endif
+%endif
+%global build_libstdcxx_docs 0
+%global bootstrap_java %{?_with_java_bootstrap:%{build_java}}%{!?_with_java_bootstrap:0}
+%global build_java_tar %{?_with_java_tar:%{build_java}}%{!?_with_java_tar:0}
+%global multilib_64_archs x86_64
+%ifarch x86_64
+%global multilib_32_arch i686
+%endif
+%global build_64bit_multilib 0
+
+Summary: Various compilers (C, C++, Objective-C, Java, ...)
+Version: %{gcc_version}
+Release: %{gcc_release}
+License: GPLv3+, GPLv3+ with exceptions and GPLv2+ with exceptions
+Group: Development/Languages
+URL: http://gcc.gnu.org
+Source0: gcc-%{version}.tar.bz2
+Source1: libgcc_post_upgrade.c
+Source2: README.libgcjwebplugin.so
+%global fastjar_ver 0.97
+Source4: http://download.savannah.nongnu.org/releases/fastjar/fastjar-%{fastjar_ver}.tar.gz
+Source100: gcc-4.5.0-rpmlintrc
+
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+#BuildRequires: binutils >= 2.19.51.0.14
+#BuildRequires: glibc-static
+BuildRequires: zlib-devel, gettext, bison, flex, texinfo
+#BuildRequires: mpc-devel
+#BuildRequires: glibc-devel >= 2.4.90-13
+#BuildRequires: elfutils-devel >= 0.72
+
+%if %{build_java}
+BuildRequires: /usr/share/java/eclipse-ecj.jar, zip, unzip
+%if %{bootstrap_java}
+Source10: libjava-classes-%{version}-%{release}.tar.bz2
+%else
+BuildRequires: gcc-java, libgcj
+%endif
+%endif
+
+%if %{build_ada}
+# Ada requires Ada to build
+BuildRequires: gcc-gnat >= 3.1, libgnat >= 3.1
+%endif
+
+%if %{build_cloog}
+BuildRequires: ppl >= 0.10, ppl-devel >= 0.10, cloog-ppl >= 0.15, cloog-ppl-devel >= 0.15
+%endif
+
+%if %{build_libstdcxx_docs}
+BuildRequires: doxygen
+BuildRequires: graphviz
+%endif
+
+Requires: meego-sdk-%{_meego_arch}-binutils
+
+%if !%{crossbuild}
+%if !%{build_ada}
+Obsoletes: gcc-gnat < %{version}-%{release}
+Obsoletes: libgnat < %{version}-%{release}
+%endif
+
+%if %{build_cloog}
+Requires: cloog-ppl >= 0.15
+%endif
+
+%if %{build_64bit_multilib}
+Requires: glibc64bit-helper
+%endif
+
+Requires(post): /sbin/install-info
+Requires(preun): /sbin/install-info
+Obsoletes: gcc < %{version}-%{release}
+Obsoletes: gcc43
+AutoReq: true
+# /!crossbuild
+%endif
+
+Patch0: gcc44-hack.patch
+Patch1: gcc44-build-id.patch
+Patch2: gcc44-c++-builtin-redecl.patch
+Patch4: gcc44-java-nomulti.patch
+Patch9: gcc44-pr33763.patch
+Patch11: gcc44-rh341221.patch
+Patch12: gcc44-java-debug-iface-type.patch
+Patch13: gcc44-i386-libgomp.patch
+Patch16: gcc44-libgomp-omp_h-multilib.patch
+Patch20: gcc44-libtool-no-rpath.patch
+Patch29: gcc44-libstdc++-docs.patch
+Patch30: gcc45-pr43572.patch
+Patch31: gcc45-pr43698.patch
+
+Patch40: gcc45-use-atom.patch
+Patch41: libgcc_post_upgrade.c.arm.patch
+
+#Patch42: var-tracking1.patch
+#Patch43: var-tracking2.patch
+#Patch44: var-tracking3.patch
+
+#Patch45: gcc44-max-vartrack-size.patch
+#Patch46: gcc44-max-vartrack-size-2.patch
+
+Patch50: gcc45-pr45094.patch
+
+Patch1000: fastjar-0.97-segfault.patch
+Patch9999: gcc44-ARM-boehm-gc-stack-qemu.patch
+
+#We need -gnueabi indicator for ARM
+%ifnarch %{arm}
+%global _gnu %{nil}
+%endif
+%global gcc_target_platform %{_target_platform}
+
+%description
+The gcc package contains the GNU Compiler Collection version 4.5.0.
+You'll need this package in order to compile C code.
+
+%prep
+%setup -q -n gcc-%{version}
+%patch0 -p0 -b .hack~
+%patch1 -p0 -b .build-id~
+%patch2 -p0 -b .c++-builtin-redecl~
+%patch4 -p0 -b .java-nomulti~
+%patch9 -p0 -b .pr33763~
+%patch11 -p0 -b .rh341221~
+%patch12 -p0 -b .java-debug-iface-type~
+%patch13 -p0 -b .i386-libgomp~
+%patch16 -p0 -b .libgomp-omp_h-multilib~
+%patch20 -p0 -b .libtool-no-rpath~
+
+%if %{build_libstdcxx_docs}
+%patch29 -p0 -b .libstdc++-docs~
+%endif
+
+%patch30 -p1 -b .pr43572
+
+%ifarch %{arm}
+%patch31 -p1 -b .pr43698
+%else
+%if %crossbuild
+# add it for arm crossbuild, too
+%patch31 -p1 -b .pr43698
+%endif
+%endif
+
+%patch40 -p1 -b .atom
+
+#%patch42 -p0 -b .var-track1~
+#%patch43 -p0 -b .var-track2~
+#%patch44 -p0 -b .var-track3~
+
+#%patch45 -p0 -b .max-vartrack-size~
+#%patch46 -p1 -b .max-vartrack-size-2~
+
+%patch50 -p0 -b .pr45094
+
+# This testcase doesn't compile.
+rm libjava/testsuite/libjava.lang/PR35020*
+
+tar xzf %{SOURCE4}
+
+%patch1000 -p0 -b .fastjar-0.97-segfault~
+%patch9999 -p1 -b .arm-boehm-gc~
+
+%if %{bootstrap_java}
+tar xjf %{SOURCE10}
+%endif
+
+echo 'MeeGo %{version}-%{gcc_release}' > gcc/DEV-PHASE
+
+# Default to -gdwarf-3 rather than -gdwarf-2
+sed -i '/UInteger Var(dwarf_version)/s/Init(2)/Init(3)/' gcc/common.opt
+sed -i 's/\(may be either 2 or 3; the default version is \)2\./\13./' gcc/doc/invoke.texi
+
+cp -a libstdc++-v3/config/cpu/i{4,3}86/atomicity.h
+
+# Hack to avoid building multilib libjava
+perl -pi -e 's/^all: all-redirect/ifeq (\$(MULTISUBDIR),)\nall: all-redirect\nelse\nall:\n\techo Multilib libjava build disabled\nendif/' libjava/Makefile.in
+perl -pi -e 's/^install: install-redirect/ifeq (\$(MULTISUBDIR),)\ninstall: install-redirect\nelse\ninstall:\n\techo Multilib libjava install disabled\nendif/' libjava/Makefile.in
+perl -pi -e 's/^check: check-redirect/ifeq (\$(MULTISUBDIR),)\ncheck: check-redirect\nelse\ncheck:\n\techo Multilib libjava check disabled\nendif/' libjava/Makefile.in
+perl -pi -e 's/^all: all-recursive/ifeq (\$(MULTISUBDIR),)\nall: all-recursive\nelse\nall:\n\techo Multilib libjava build disabled\nendif/' libjava/Makefile.in
+perl -pi -e 's/^install: install-recursive/ifeq (\$(MULTISUBDIR),)\ninstall: install-recursive\nelse\ninstall:\n\techo Multilib libjava install disabled\nendif/' libjava/Makefile.in
+perl -pi -e 's/^check: check-recursive/ifeq (\$(MULTISUBDIR),)\ncheck: check-recursive\nelse\ncheck:\n\techo Multilib libjava check disabled\nendif/' libjava/Makefile.in
+
+./contrib/gcc_update --touch
+
+LC_ALL=C sed -i -e 's/\xa0/ /' gcc/doc/options.texi
+
+%build
+
+# Avoid rebuilding of generated files
+contrib/gcc_update --touch
+
+rm -rf obj
+mkdir obj
+cd obj
+
+export PATH=%{install_prefix}/bin:$PATH
+../configure \
+ --prefix=%{_prefix} \
+ --infodir=%{_infodir} --mandir=%{_mandir} \
+ --libdir=%{_libdir} --libexecdir=%{_libdir} \
+ --target=%{TARGET} \
+ --with-bugurl=http://bugs.meego.com/ \
+ --with-sysroot=%{install_prefix}/%{TARGET}/sys-root \
+ --enable-shared --enable-threads=posix \
+ --enable-checking=release \
+ --with-system-zlib --enable-__cxa_atexit \
+ --disable-libunwind-exceptions --enable-gnu-unique-object \
+ --enable-languages=c,c++ \
+ --disable-libgcj --with-ppl --with-cloog \
+ --with-tune=generic
+
+make %{?jobs:-j%jobs}
+
+%install
+
+cd obj
+make install DESTDIR=%{buildroot}
+rm -rf %{buildroot}%{_infodir}
+rm -rf %{buildroot}%{_mandir}
+
+%clean
+rm -rf %{buildroot}
+
+%files
+%defattr(-,root,root,-)
+%{_prefix}
dsc files:
----------
other changes:
--------------
More information about the MeeGo-commits
mailing list