[packages/crossnacl-gcc] - cleaned up directory mess, rel .1
qboosh
qboosh at pld-linux.org
Sun Jul 29 18:29:25 CEST 2018
commit a1e9c5690dec90f79e2c224c3fd67f8c4effb1a7
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sun Jul 29 18:31:27 2018 +0200
- cleaned up directory mess, rel .1
crossnacl-gcc.spec | 210 ++++++++++++++++++++++++++++++++---------------------
1 file changed, 126 insertions(+), 84 deletions(-)
---
diff --git a/crossnacl-gcc.spec b/crossnacl-gcc.spec
index 2dd13fb..a773107 100644
--- a/crossnacl-gcc.spec
+++ b/crossnacl-gcc.spec
@@ -1,12 +1,14 @@
#
# Conditional build:
-%bcond_with bootstrap # build without NaCL newlib package dependency (without c++ package)
+%bcond_with bootstrap # build without NaCl newlib package dependency (without c++,objc packages)
%define gitver 3960379
+%define rel 1
Summary: Various compilers (C, C++) for NaCl
+Summary(pl.UTF-8): Różne kompilatory (C, C++) dla NaCl
Name: crossnacl-gcc
Version: 4.4.3
-Release: 13.git%{gitver}
+Release: 13.git%{gitver}.%{rel}
License: GPL v3+ and GPL v3+ with exceptions and GPL v2+ with exceptions
Group: Development/Languages
Source0: nacl-gcc-%{version}-git%{gitver}.tar.xz
@@ -14,13 +16,15 @@ Source0: nacl-gcc-%{version}-git%{gitver}.tar.xz
Source1: get-source.sh
Patch0: gnu_inline-mismatch.patch
URL: http://sourceware.org/gcc/
-BuildRequires: cloog-ppl-devel
+BuildRequires: cloog-ppl-devel >= 0.15
BuildRequires: crossnacl-binutils
BuildRequires: elfutils-devel
-BuildRequires: gmp-c++-devel
-BuildRequires: gmp-devel
-BuildRequires: mpfr-devel
+BuildRequires: gmp-c++-devel >= 4.1
+BuildRequires: gmp-devel >= 4.1
+BuildRequires: libstdc++-devel
+BuildRequires: mpfr-devel >= 2.3.2
BuildRequires: perl-tools-pod
+BuildRequires: ppl-devel >= 0.10
BuildRequires: tar >= 1:1.22
BuildRequires: xz
BuildConflicts: cloog-isl-devel
@@ -31,19 +35,26 @@ ExclusiveArch: %{ix86} %{x8664}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define target x86_64-nacl
-%define arch %{_prefix}/%{target}
-%define gcc_ver %{version}
-%define gcclib %{_libdir}/gcc/%{target}/%{gcc_ver}
-%define gccnlib %{_prefix}/lib/gcc/%{target}/%{gcc_ver}
+%define archprefix %{_prefix}/%{target}
+%define archbindir %{archprefix}/bin
+%define archincludedir %{archprefix}/include
+%define archlib32dir %{archprefix}/lib32
+%define archlib64dir %{archprefix}/lib64
+%define gccarchdir %{_libdir}/gcc/%{target}
+%define gcclibdir %{gccarchdir}/%{version}
%define filterout_cpp -D_FORTIFY_SOURCE=[0-9]+
-%define filterout_c -Werror=format-security
+%define filterout_c -Werror=format-security
%description
-The gcc package contains the GNU Compiler Collection version 4.4.3.
-You'll need this package in order to compile C code.
+The gcc package contains the GNU Compiler Collection.
-This provides support for NaCl targets.
+This package provides support for NaCl targets.
+
+%description -l pl.UTF-8
+Pakiet gcc zawiera zestaw kompilatorów GNU Compiler Collection.
+
+Ten pakiet zapewnia obsługę platformy docelowej NaCl.
%package c++
Summary: C++ support for crossnacl-gcc
@@ -56,19 +67,19 @@ This package adds C++ support to the GNU Compiler Collection for NaCl
targets.
%description c++ -l pl.UTF-8
-Ten pakiet dodaje obsługę C++ do kompilatora gcc dla NaCL.
+Ten pakiet dodaje obsługę C++ do kompilatora gcc dla NaCl.
%package objc
-Summary: NaCL binary utility development utilities - objc
-Summary(pl.UTF-8): Zestaw narzędzi NaCL - objc
+Summary: NaCl binary utility development utilities - objc
+Summary(pl.UTF-8): Zestaw narzędzi programistycznych NaCl - objc
Group: Development/Languages
Requires: %{name} = %{version}-%{release}
%description objc
-This package contains cross targeted objc compiler.
+This package contains objc compiler cross targeted to NaCl.
%description objc -l pl.UTF-8
-Ten pakiet zawiera kompilator objc generujący kod pod Win32.
+Ten pakiet zawiera kompilator objc generujący kod dla NaCl.
%prep
%setup -q -n nacl-gcc-%{version}-git%{?gitver}
@@ -95,45 +106,47 @@ esac
GCC_DEFINES="-Dinhibit_libc -D__gthr_posix_h"
../configure \
+ CC="%{__cc}" \
+ CFLAGS="$OPT_FLAGS $GCC_DEFINES" \
+ CXXFLAGS="$(echo $OPT_FLAGS | sed 's/ -Wall / /g')" \
+ XCFLAGS="$OPT_FLAGS" \
+ MAKEINFO=/bin/true \
--prefix=%{_prefix} \
--mandir=%{_mandir} \
--infodir=%{_infodir} \
+ --libdir=%{_libdir} \
--libexecdir=%{_libdir} \
- --enable-checking=release \
- --with-system-zlib \
--enable-__cxa_atexit \
- --disable-libunwind-exceptions \
- --enable-gnu-unique-object \
+ --enable-checking=release \
--disable-decimal-float \
+ --enable-gnu-unique-object \
+ --disable-libgcj \
--disable-libgomp \
--disable-libmudflap \
--disable-libssp \
--disable-libstdcxx-pch \
+ --disable-libunwind-exceptions \
+ --disable-ppl-version-check \
--disable-shared \
- --with-ppl --with-cloog \
- MAKEINFO=/bin/true \
- CC="%{__cc}" \
- CFLAGS="$OPT_FLAGS $GCC_DEFINES" \
- CXXFLAGS="$(echo $OPT_FLAGS | sed 's/ -Wall / /g')" \
- XCFLAGS="$OPT_FLAGS" \
+ --with-cloog \
+ --with-host-libstdcxx="-lstdc++ -lm" \
+ --with-ppl \
+ --with-system-zlib \
%if %{with bootstrap}
- --disable-threads \
- --enable-languages="c" \
- --without-headers \
CFLAGS_FOR_TARGET="-O2 -g" \
CXXFLAGS_FOR_TARGET="-O2 -g" \
+ --enable-languages="c" \
+ --disable-threads \
+ --without-headers \
%else
CFLAGS_FOR_TARGET="-O2 -g -mtls-use-call -I/usr/x86_64-nacl/include/" \
CXXFLAGS_FOR_TARGET="-O2 -g -mtls-use-call -I/usr/x86_64-nacl/include/" \
- --enable-threads=nacl \
--enable-languages="c,c++,objc" \
+ --enable-threads=nacl \
--enable-tls \
--with-newlib \
%endif
- --target=%{target} \
- --with-host-libstdcxx="-lstdc++ -lm" \
- --disable-ppl-version-check \
- --disable-libgcj
+ --target=%{target}
%{__make} \
BOOT_CFLAGS="$OPT_FLAGS" \
@@ -145,8 +158,8 @@ GCC_DEFINES="-Dinhibit_libc -D__gthr_posix_h"
%install
rm -rf $RPM_BUILD_ROOT
-cd obj-%{target}
-%{__make} \
+
+%{__make} -C obj-%{target} \
%if %{with bootstrap}
install-gcc install-target-libgcc \
%else
@@ -155,10 +168,9 @@ cd obj-%{target}
DESTDIR=$RPM_BUILD_ROOT
# move fixed includes to proper place
-mv $RPM_BUILD_ROOT%{gccnlib}/include-fixed/*.h $RPM_BUILD_ROOT%{gccnlib}/include
-
-%{__rm} -r $RPM_BUILD_ROOT%{gccnlib}/include-fixed
-%{__rm} -r $RPM_BUILD_ROOT%{gccnlib}/install-tools
+%{__mv} $RPM_BUILD_ROOT%{gcclibdir}/include-fixed/{limits,syslimits}.h $RPM_BUILD_ROOT%{gcclibdir}/include
+%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/include-fixed
+%{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/install-tools
# Delete supplemental files that would conflict with the core toolchain
%{__rm} -r $RPM_BUILD_ROOT%{_infodir}
@@ -169,7 +181,13 @@ mv $RPM_BUILD_ROOT%{gccnlib}/include-fixed/*.h $RPM_BUILD_ROOT%{gccnlib}/include
# Don't dupe the system libiberty.a
%if %{without bootstrap}
%{__rm} $RPM_BUILD_ROOT%{_libdir}/libiberty.a
-%{__rm} $RPM_BUILD_ROOT%{_prefix}/%{target}/lib*/libiberty.a
+%{__rm} $RPM_BUILD_ROOT%{archlib32dir}/libiberty.a
+%{__rm} $RPM_BUILD_ROOT%{archlib64dir}/libiberty.a
+%endif
+
+%if %{with bootstrap}
+# always create lib directories (place for newlib when bootstrapping)
+install -d $RPM_BUILD_ROOT{%{archlib32dir},%{archlib64dir}}
%endif
%clean
@@ -177,57 +195,81 @@ rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc gcc/README*
+%doc README NEWS gcc/README.Portability
%attr(755,root,root) %{_bindir}/%{target}-cpp
%attr(755,root,root) %{_bindir}/%{target}-gcc
-%attr(755,root,root) %{_bindir}/%{target}-gcc-%{gcc_ver}
+%attr(755,root,root) %{_bindir}/%{target}-gcc-%{version}
%attr(755,root,root) %{_bindir}/%{target}-gccbug
%attr(755,root,root) %{_bindir}/%{target}-gcov
-
-%if "%{_lib}" != "lib"
-%dir %{_prefix}/lib/gcc
-%dir %{_prefix}/lib/gcc/%{target}
-%dir %{gccnlib}
-%endif
-
-%{gccnlib}/*.[ao]
-%dir %{gccnlib}/include
-%{gccnlib}/include/*.h
-
-%dir %{gccnlib}/32
-%{gccnlib}/32/*.[oa]
-
-%dir %{_libexecdir}/gcc/%{target}
-%dir %{gcclib}
-%attr(755,root,root) %{gcclib}/cc1
-%attr(755,root,root) %{gcclib}/collect2
-
-%if "%{_lib}" != "lib"
-# not present on ix86, not needed?
-%dir %{gcclib}/install-tools
-%attr(755,root,root) %{gcclib}/install-tools/*
-%endif
-
-%{_mandir}/man1/%{target}-cpp.*
-%{_mandir}/man1/%{target}-gcc.*
-%{_mandir}/man1/%{target}-gcov.*
+%dir %{archlib32dir}
+%dir %{archlib64dir}
+%dir %{gccarchdir}
+%dir %{gcclibdir}
+%attr(755,root,root) %{gcclibdir}/cc1
+%attr(755,root,root) %{gcclibdir}/collect2
+%{gcclibdir}/crt*.o
+%{gcclibdir}/libgcc.a
+%{gcclibdir}/libgcov.a
+%dir %{gcclibdir}/32
+%{gcclibdir}/32/crt*.o
+%{gcclibdir}/32/libgcc.a
+%{gcclibdir}/32/libgcov.a
+%dir %{gcclibdir}/include
+%{gcclibdir}/include/ammintrin.h
+%{gcclibdir}/include/avxintrin.h
+%{gcclibdir}/include/bmmintrin.h
+%{gcclibdir}/include/cpuid.h
+%{gcclibdir}/include/cross-stdarg.h
+%{gcclibdir}/include/emmintrin.h
+%{gcclibdir}/include/float.h
+%{gcclibdir}/include/immintrin.h
+%{gcclibdir}/include/iso646.h
+%{gcclibdir}/include/limits.h
+%{gcclibdir}/include/mm3dnow.h
+%{gcclibdir}/include/mm_malloc.h
+%{gcclibdir}/include/mmintrin-common.h
+%{gcclibdir}/include/mmintrin.h
+%{gcclibdir}/include/nmmintrin.h
+%{gcclibdir}/include/pmmintrin.h
+%{gcclibdir}/include/smmintrin.h
+%{gcclibdir}/include/stdarg.h
+%{gcclibdir}/include/stdbool.h
+%{gcclibdir}/include/stddef.h
+%{gcclibdir}/include/stdfix.h
+%{gcclibdir}/include/syslimits.h
+%{gcclibdir}/include/tmmintrin.h
+%{gcclibdir}/include/unwind.h
+%{gcclibdir}/include/varargs.h
+%{gcclibdir}/include/wmmintrin.h
+%{gcclibdir}/include/x86intrin.h
+%{gcclibdir}/include/xmmintrin.h
+%{_mandir}/man1/%{target}-cpp.1*
+%{_mandir}/man1/%{target}-gcc.1*
+%{_mandir}/man1/%{target}-gcov.1*
%if %{without bootstrap}
%files c++
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/%{target}-c++
%attr(755,root,root) %{_bindir}/%{target}-g++
-%attr(755,root,root) %{gcclib}/cc1plus
-%{_prefix}/%{target}/include/c++
-%dir %{_prefix}/%{target}/lib32
-%dir %{_prefix}/%{target}/lib64
-%{_prefix}/%{target}/lib*/libstdc++.*a
-%{_prefix}/%{target}/lib*/libsupc++.*a
-%{_mandir}/man1/%{target}-g++.*
+%attr(755,root,root) %{gcclibdir}/cc1plus
+%{archincludedir}/c++
+%{archlib32dir}/libstdc++.a
+%{archlib32dir}/libstdc++.la
+%{archlib32dir}/libsupc++.a
+%{archlib32dir}/libsupc++.la
+%{archlib64dir}/libstdc++.a
+%{archlib64dir}/libstdc++.la
+%{archlib64dir}/libsupc++.a
+%{archlib64dir}/libsupc++.la
+%{_mandir}/man1/%{target}-g++.1*
%files objc
%defattr(644,root,root,755)
-%attr(755,root,root) %{gcclib}/cc1obj
-%{_prefix}/%{target}/lib*/libobjc.*a
-%{gccnlib}/include/objc
+%attr(755,root,root) %{gcclibdir}/cc1obj
+%{gcclibdir}/include/objc
+%{archlib32dir}/libobjc.a
+%{archlib32dir}/libobjc.la
+%{archlib64dir}/libobjc.a
+%{archlib64dir}/libobjc.la
%endif
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/crossnacl-gcc.git/commitdiff/a1e9c5690dec90f79e2c224c3fd67f8c4effb1a7
More information about the pld-cvs-commit
mailing list