]> git.pld-linux.org Git - packages/gcc.git/blobdiff - gcc.spec
- massive attack, adding Source-md5
[packages/gcc.git] / gcc.spec
index 5cb85773450fdd7780ab4e74b70bd518bb7a2595..5fe36b7d7c48bd2053115a2ef146dfeb1ca0daa9 100644 (file)
--- a/gcc.spec
+++ b/gcc.spec
@@ -1,11 +1,8 @@
 #
 # Conditional build:
-# _without_ada  - build without ADA support
-# _without_java - build without Java support
-# _without_objc - build without objc support
-#
-# TODO:
-#  - make separate libffi{,-devel,-static}
+# _with_ada    - build with ADA support
+# _without_java        - build without Java support
+# _without_objc        - build without objc support
 
 %define                DASHED_SNAP     %{nil}
 %define                SNAP            %(echo %{DASHED_SNAP} | sed -e "s#-##g")
@@ -17,40 +14,40 @@ Summary(pl):        Kompilator C GNU
 Summary(pt_BR):        C Compilador GNU (GCC)
 Name:          gcc
 Version:       %{GCC_VERSION}
-Release:       0.3
+Release:       1
 Epoch:         5
 License:       GPL
 Group:         Development/Languages
 Source0:       ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{GCC_VERSION}/%{name}-%{GCC_VERSION}.tar.bz2
 Source1:       ftp://ftp.pld.org.pl/people/malekith/ksi/ksi-%{KSI_VERSION}.tar.gz
+# Source1-md5: 66f07491b44f06928fd95b0e65bb8cd3
 Source2:       %{name}-non-english-man-pages.tar.bz2
+# Source2-md5: 4736f3422ddfb808423b745629acc321
 Patch0:                %{name}-info.patch
 Patch1:                %{name}-paths.patch
-Patch4:                %{name}-nolocalefiles.patch
-Patch6:                %{name}-ada-link-new-libgnat.patch
+Patch2:                %{name}-nolocalefiles.patch
+Patch3:                %{name}-ada-link-new-libgnat.patch
 # -- stolen patches from RH --
 Patch10:       gcc32-ada-link.patch
-Patch16:       gcc32-boehm-gc-libs.patch
-Patch17:       gcc32-bogus-inline.patch
-Patch18:       gcc32-c++-nrv-test.patch
-Patch20:       gcc32-c++-tsubst-asm.patch
-Patch22:       gcc32-debug-pr7241.patch
-
-Patch24:       gcc32-duplicate-decl.patch
-Patch25:       gcc32-dwarf2-pr6381.patch
-Patch26:       gcc32-dwarf2-pr6436-test.patch
-Patch27:       gcc32-fde-merge-compat.patch
-
-Patch32:       gcc32-i386-memtest-test.patch
-Patch36:       gcc32-inline-label.patch
-Patch37:       gcc32-java-no-rpath.patch
-Patch40:       gcc32-test-rh65771.patch
-Patch41:       gcc32-test-rotate.patch
+Patch11:       gcc32-boehm-gc-libs.patch
+Patch12:       gcc32-bogus-inline.patch
+Patch13:       gcc32-c++-nrv-test.patch
+Patch14:       gcc32-c++-tsubst-asm.patch
+Patch15:       gcc32-debug-pr7241.patch
+Patch16:       gcc32-duplicate-decl.patch
+Patch17:       gcc32-dwarf2-pr6381.patch
+Patch18:       gcc32-dwarf2-pr6436-test.patch
+Patch19:       gcc32-fde-merge-compat.patch
+Patch20:       gcc32-i386-memtest-test.patch
+Patch21:       gcc32-inline-label.patch
+Patch22:       gcc32-java-no-rpath.patch
+Patch23:       gcc32-test-rh65771.patch
+Patch24:       gcc32-test-rotate.patch
 BuildRequires: autoconf
 BuildRequires: bison
 BuildRequires: fileutils >= 4.0.41
 BuildRequires: gcc
-%{!?_without_ada:BuildRequires:        gcc-ada}
+%{?_with_ada:BuildRequires:    gcc-ada}
 BuildRequires: glibc-devel >= 2.2.5-20
 BuildRequires: perl-devel
 BuildRequires: texinfo >= 4.1
@@ -418,6 +415,49 @@ Static C++ standard library.
 %description -n libstdc++-static -l pl
 Statycza biblioteka standardowa C++.
 
+%package -n libffi
+Summary:       Foreign Function Interface library
+Summary(pl):   Biblioteka zewnêtrznych wywo³añ funkcji
+Group:         Libraries
+Version:       %{GCC_VERSION}
+
+%description -n libffi
+The libffi library provides a portable, high level programming
+interface to various calling conventions. This allows a programmer to
+call any function specified by a call interface description at run
+time.
+
+%description -n libffi -l pl
+Biblioteka libffi dostarcza przno¶nego, wysokopoziomowego miêdzymordzia
+do ró¿nych konwencji wywo³añ funkcji. Pozwala to programi¶cie wywo³ywaæ
+dowolne funkcje podaj±c konwencjê wywo³ania w czasie wykonania.
+
+%package -n libffi-devel
+Summary:       Development files for Foreign Function Interface library
+Summary(pl):   Pliki nag³ówkowe dla libffi
+Group:         Development/Libraries
+Version:       %{GCC_VERSION}
+Requires:      libffi = %{GCC_VERSION}
+
+%description -n libffi-devel
+Development files for Foreign Function Interface library.
+
+%description -n libffi-devel -l pl
+Pliki nag³ówkowe dla libffi.
+
+%package -n libffi-static
+Summary:       Static Foreign Function Interface library
+Summary(pl):   Statyczna biblioteka libffi
+Group:         Development/Libraries
+Version:       %{GCC_VERSION}
+Requires:      libffi-devel = %{GCC_VERSION}
+
+%description -n libffi-static
+Static Foreign Function Interface library.
+
+%description -n libffi-static -l pl
+Statyczna biblioteka libffi.
+
 %package ada
 Summary:       Ada support for gcc
 Summary(pl):   Obs³uga Ady do gcc
@@ -557,25 +597,25 @@ mv ksi-%{KSI_VERSION} gcc/ksi
 
 %patch0 -p1
 %patch1 -p1
-%patch4 -p1
-%patch6 -p1
+%patch2 -p1
+%patch3 -p1
 
 %patch10 -p1
-#%patch16
-##%%patch17
+#%patch11
+#%patch12
+%patch13
+%patch14
+%patch15
+
+%patch16
+%patch17
 %patch18
+%patch19
 %patch20
+%patch21
 %patch22
-
+%patch23
 %patch24
-%patch25
-%patch26
-%patch27
-%patch32
-%patch36
-%patch37
-%patch40
-%patch41
 
 # because we distribute modified version of gcc...
 perl -pi -e 's/(version.*)";/$1 (PLD Linux)";/' gcc/version.c
@@ -595,7 +635,7 @@ TEXCONFIG=false ../configure \
        --enable-shared \
        --enable-threads=posix \
        --enable-__cxa_atexit \
-       --enable-languages="c,c++,f77%{?!_without_objc:,objc}%{!?_without_ada:,ada}%{!?_without_java:,java},ksi" \
+       --enable-languages="c,c++,f77%{?!_without_objc:,objc}%{?_with_ada:,ada}%{!?_without_java:,java},ksi" \
        --enable-c99 \
        --enable-long-long \
        --enable-multilib \
@@ -610,7 +650,7 @@ TEXCONFIG=false ../configure \
 PATH=$PATH:/sbin:%{_sbindir}
 
 # this dirty hack is relict of setting, where objdir is subdir of srcdir
-%if %{!?_without_ada:1}%{?_without_ada:0}
+%if 0%{?_with_ada:1}
 sed -e 's/srcdir=\$(fsrcdir)/srcdir=\$(fsrcdir) VPATH=\$(fsrcdir)/' \
        gcc/ada/Makefile > makefile.tmp
 mv -f makefile.tmp gcc/ada/Makefile
@@ -622,7 +662,7 @@ cd ..
        mandir=%{_mandir} \
        infodir=%{_infodir}
 
-%if %{!?_without_ada:1}%{?_without_ada:0}
+%if 0%{?_with_ada:1}
 %{__make} -C obj-%{_target_platform}/gcc gnatlib gnattools gnatlib-shared \
        LDFLAGS_FOR_TARGET="%{rpmldflags}" \
        mandir=%{_mandir} \
@@ -645,7 +685,7 @@ echo ".so gcc.1" > $RPM_BUILD_ROOT%{_mandir}/man1/cc.1
 ln -sf g77 $RPM_BUILD_ROOT%{_bindir}/f77
 echo ".so g77.1" > $RPM_BUILD_ROOT%{_mandir}/man1/f77.1
 
-%if %{!?_without_ada:1}%{?_without_ada:0}
+%if 0%{?_with_ada:1}
 # move ada shared libraries to proper place...
 mv $RPM_BUILD_ROOT%{_libdir}/gcc-lib/%{_target_cpu}*/*/adalib/*.so.1 \
        $RPM_BUILD_ROOT%{_libdir}/
@@ -679,7 +719,8 @@ for f in libstdc++.la libsupc++.la %{!?_without_java:libgcj.la} ; do
 done
 # normalize libdir, to avoid propagation of unnecessary RPATHs by libtool
 for f in libstdc++.la libsupc++.la libg2c.la \
-       %{!?_without_java:libgcj.la} %{!?_without_objc:libobjc.la}; do
+       %{!?_without_java:libgcj.la lib-org-w3c-dom.la lib-org-xml-sax.la libffi.la} \
+       %{!?_without_objc:libobjc.la}; do
        perl -pi -e "s@^libdir='.*@libdir='/usr/lib'@" $RPM_BUILD_ROOT%{_libdir}/$f
 done
 
@@ -746,6 +787,8 @@ rm -rf $RPM_BUILD_ROOT
 %postun -p /sbin/ldconfig -n libgcj
 %post   -p /sbin/ldconfig -n libgnat
 %postun -p /sbin/ldconfig -n libgnat
+%post   -p /sbin/ldconfig -n libffi
+%postun -p /sbin/ldconfig -n libffi
 
 %files -f %{name}.lang
 %defattr(644,root,root,755)
@@ -767,6 +810,7 @@ rm -rf $RPM_BUILD_ROOT
 %lang(ja) %{_mandir}/ja/man1/gcc.1*
 %{_infodir}/gcc*
 
+%attr(755,root,root) %{_slibdir}/lib*.so
 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc.a
 %{_libdir}/gcc-lib/%{_target_cpu}*/*/libgcc_eh.a
 %{_libdir}/gcc-lib/%{_target_cpu}*/*/specs
@@ -785,7 +829,7 @@ rm -rf $RPM_BUILD_ROOT
 
 %files -n libgcc
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_slibdir}/lib*.so*
+%attr(755,root,root) %{_slibdir}/lib*.so.*
 
 %files c++
 %defattr(644,root,root,755)
@@ -921,8 +965,8 @@ rm -rf $RPM_BUILD_ROOT
 %files -n libgcj
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/addr2name.awk
-%attr(755,root,root) %{_libdir}/lib*cj*.so.*
-%attr(755,root,root) %{_libdir}/lib-org*.so.*
+%attr(755,root,root) %{_libdir}/lib*cj*.so.*.*.*
+%attr(755,root,root) %{_libdir}/lib-org*.so.*.*.*
 %ifarch ppc
 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so.*
 %endif
@@ -944,7 +988,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/lib*cj*.la
 %attr(755,root,root) %{_libdir}/lib*cj*.so
 %attr(755,root,root) %{_libdir}/lib-org-*.so
-%attr(755,root,root) %{_libdir}/lib-org-*.la
+%{_libdir}/lib-org-*.la
 %ifarch ppc
 %{_libdir}/nof/lib*cj*.la
 %attr(755,root,root) %{_libdir}/nof/lib*cj*.so
@@ -957,9 +1001,23 @@ rm -rf $RPM_BUILD_ROOT
 %ifarch ppc
 %{_libdir}/nof/lib*cj*.a
 %endif
+
+%files -n libffi
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libffi-*.so
+
+%files -n libffi-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libffi.so
+%{_libdir}/libffi.la
+%{_includedir}/ffi*
+
+%files -n libffi-static
+%defattr(644,root,root,755)
+%{_libdir}/libffi.a
 %endif
 
-%if %{!?_without_ada:1}%{?_without_ada:0}
+%if 0%{?_with_ada:1}
 %files ada
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/gnat1
@@ -994,8 +1052,6 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_slibdir}/cpp
 %attr(755,root,root) %{_bindir}/cpp
-#%%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/cpp0
-#%%attr(755,root,root) %{_libdir}/gcc-lib/%{_target_cpu}*/*/tradcpp0
 %{_mandir}/man1/cpp.1*
 %lang(ja) %{_mandir}/ja/man1/cpp.1*
 %{_infodir}/cpp*
This page took 0.054916 seconds and 4 git commands to generate.