]> git.pld-linux.org Git - packages/crossmingw32-gcc.git/blobdiff - crossmingw32-gcc.spec
- rediffed
[packages/crossmingw32-gcc.git] / crossmingw32-gcc.spec
index 66617f01dd7b214bc2b62f18417e5cbfa7206dce..3f4f0ee068677cd9fe8044c1b8374ab1c8ef459e 100644 (file)
@@ -13,20 +13,23 @@ Summary(pl.UTF-8):  Skrośne narzędzia programistyczne GNU dla MinGW32 - gcc
 Summary(pt_BR.UTF-8):  Utilitários para desenvolvimento de binários da GNU - MinGW32 gcc
 Summary(tr.UTF-8):     GNU geliştirme araçları - MinGW32 gcc
 Name:          crossmingw32-gcc
-Version:       6.4.0
+Version:       8.5.0
 Release:       1
 Epoch:         1
 License:       GPL v3+
 Group:         Development/Languages
 Source0:       https://ftp.gnu.org/gnu/gcc/gcc-%{version}/gcc-%{version}.tar.xz
-# Source0-md5: 11ba51a0cfb8471927f387c8895fe232
-%define                mingw32_ver     4.0.3
-Source1:       http://downloads.sourceforge.net/mingw/mingwrt-%{mingw32_ver}-1-mingw32-dev.tar.lzma
-# Source1-md5: c2c9aa82e0cb47abac01760525684858
-Source2:       gcc-optimize-la.pl
-# svn diff -x --ignore-eol-style --force svn://gcc.gnu.org/svn/gcc/tags/gcc_5_4_0_release svn://gcc.gnu.org/svn/gcc/branches/gcc-5-branch > gcc-branch.diff
-Patch100:      gcc-branch.diff
-# Patch100-md5:        1d4bc26154e47de7d727d6767215e776
+# Source0-md5: 0c1f625768840187ef3b10adebe8e3b0
+%define                w32api_ver      5.4.2
+#Source1Download: https://osdn.net/projects/mingw/releases/
+Source1:       https://osdn.net/projects/mingw/downloads/74926/w32api-%{w32api_ver}-mingw32-dev.tar.xz
+# Source1-md5: 88b0dc6185079e60d83bdbaec92028b8
+%define                mingw32_ver     5.4.2
+#Source2Download: https://osdn.net/projects/mingw/releases/
+Source2:       https://osdn.net/projects/mingw/downloads/74925/mingwrt-%{mingw32_ver}-mingw32-dev.tar.xz
+# Source2-md5: d8dceb05b85602eec82eac4e11d5c027
+Source3:       gcc-optimize-la.pl
+#Patch100:     gcc-branch.diff
 Patch0:                %{name}-buildsystem1.patch
 Patch1:                %{name}-buildsystem2.patch
 Patch2:                %{name}-lfs.patch
@@ -61,11 +64,16 @@ Requires:   gmp >= 4.3.2
 Requires:      isl >= 0.15
 Requires:      libmpc >= 0.8.1
 Requires:      mpfr >= 2.4.2
+# java support dropped from gcc 7+
+Obsoletes:     crossmingw32-java < 1:7
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                target          i386-mingw32
 %define                sysprefix       /usr
-%define                arch            %{sysprefix}/%{target}
+%define                archprefix      %{sysprefix}/%{target}
+%define                archbindir      %{archprefix}/bin
+%define                archincludedir  %{archprefix}/include
+%define                archlibdir      %{archprefix}/lib
 %define                gccarchdir      %{_libdir}/gcc/%{target}
 %define                gcclibdir       %{gccarchdir}/%{version}
 %define                _dlldir         /usr/share/wine/windows/system
@@ -142,7 +150,7 @@ Requires:   crossmingw32-libatomic = %{epoch}:%{version}-%{release}
 %description -n crossmingw32-libatomic-static
 The GNU Atomic static library - cross MinGW32 version.
 
-%description -n crossmingw32-libatomic-static
+%description -n crossmingw32-libatomic-static -l pl.UTF-8
 Statyczna biblioteka GNU Atomic - wersja skrośna MinGW32.
 
 %package -n crossmingw32-libatomic-dll
@@ -374,7 +382,7 @@ Summary(pl.UTF-8):  Zestaw narzędzi MinGW32 - Fortran
 Group:         Development/Languages
 Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      crossmingw32-libquadmath = %{epoch}:%{version}-%{release}
-Obsoletes:     crossmingw32-gcc-g77
+Obsoletes:     crossmingw32-gcc-g77 < 1:4
 
 %description fortran
 crossmingw32 is a complete cross-compiling development system for
@@ -462,42 +470,19 @@ DLL GCC __float128 support library for Windows.
 %description -n crossmingw32-libquadmath-dll -l pl.UTF-8
 Biblioteka DLL GCC do obsługi typu __float128 dla Windows.
 
-%package java
-Summary:       MinGW32 binary utility development utilities - Java
-Summary(pl.UTF-8):     Zestaw narzędzi MinGW32 - Java
-Group:         Development/Languages
-Requires:      %{name} = %{epoch}:%{version}-%{release}
-
-%description java
-crossmingw32 is a complete cross-compiling development system for
-building stand-alone Microsoft Windows applications under Linux using
-the MinGW32 build libraries. This includes a binutils, gcc with g++
-and objc, and libstdc++, all cross targeted to i386-mingw32, along
-with supporting Win32 libraries in 'coff' format from free sources.
-
-This package contains cross targeted Java compiler.
-
-%description java -l pl.UTF-8
-crossmingw32 jest kompletnym systemem do kompilacji skrośnej,
-pozwalającym budować aplikacje MS Windows pod Linuksem używając
-bibliotek MinGW32. System składa się z binutils, gcc z g++ i objc,
-libstdc++ - wszystkie generujące kod dla platformy i386-mingw32, oraz
-z bibliotek w formacie COFF.
-
-Ten pakiet zawiera kompilator Javy generujący kod pod Win32.
-
 %prep
 %setup -q -n gcc-%{version}
-%patch100 -p0
+#patch100 -p0
 %patch0 -p1
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
 
 %if %{with bootstrap}
-# note: "winsup" dir is special, handled by gcc's configure
-install -d winsup/mingw
-tar xf %{SOURCE1} -C winsup/mingw
+# note: "winsup" dirs are special, handled by gcc's configure
+install -d winsup/{mingw,w32api}
+tar xf %{SOURCE1} -C winsup/w32api
+tar xf %{SOURCE2} -C winsup/mingw
 %endif
 
 # override snapshot version.
@@ -515,7 +500,7 @@ rm -rf builddir && install -d builddir && cd builddir
 %if %{with bootstrap}
 install -d %{target}/winsup
 ln -sf ../../../winsup/mingw/lib %{target}/winsup/mingw
-ln -sf ../../../winsup/mingw/include %{target}/winsup/w32api
+ln -sf ../../../winsup/w32api %{target}/winsup/w32api
 WINSUPDIR=$(cd ..; pwd)/winsup
 %endif
 
@@ -528,24 +513,26 @@ CFLAGS_FOR_TARGET="-O2 -march=i486" \
 CXXFLAGS_FOR_TARGET="-O2 -march=i486" \
 ../configure \
        --prefix=%{sysprefix} \
-       --bindir=%{arch}/bin \
+       --bindir=%{archbindir} \
        --libdir=%{_libdir} \
-       --includedir=%{arch}/include \
-       --libexecdir=%{_libexecdir} \
+       --includedir=%{archincludedir} \
+       --libexecdir=%{_libdir} \
        --infodir=%{_infodir} \
        --mandir=%{_mandir} \
-       --with-build-time-tools=%{arch}/bin \
-       %{!?with_bootstrap:--with-headers=%{arch}/include} \
-       --with-libs=%{!?with_bootstrap:%{arch}/lib}%{?with_bootstrap:${WINSUPDIR}/mingw/lib} \
+       --with-bugurl="http://bugs.pld-linux.org" \
+       --with-build-time-tools=%{archbindir} \
+       %{!?with_bootstrap:--with-headers=%{archincludedir}} \
+       --with-libs=%{!?with_bootstrap:%{archlibdir}}%{?with_bootstrap:${WINSUPDIR}/mingw/lib} \
        --with-demangler-in-ld \
        --with-dwarf2 \
        --with-gnu-as \
        --with-gnu-ld \
        --with-long-double-128 \
+       --with-pkgversion="PLD-Linux" \
        --enable-c99 \
        --enable-fully-dynamic-string \
        --disable-isl-version-check \
-       --enable-languages="c,c++,fortran,java,objc,obj-c++" \
+       --enable-languages="c,c++,fortran,objc,obj-c++" \
        --disable-libcc1 \
        --enable-libgomp%{!?with_gomp:=no} \
        --disable-libssp \
@@ -559,7 +546,6 @@ CXXFLAGS_FOR_TARGET="-O2 -march=i486" \
        --disable-sjlj-exceptions \
        --disable-symvers \
        --enable-threads \
-       --enable-version-specific-runtime-libs \
        --disable-werror \
        --disable-win32-registry \
        --target=%{target}
@@ -581,20 +567,17 @@ install -d $RPM_BUILD_ROOT%{_bindir}
 %{__rm} -r $RPM_BUILD_ROOT%{gcclibdir}/install-tools
 
 # these must be symlinks: gcclibdir is calculated relatively to real binary path
-ln -sf %{arch}/bin/%{target}-gcc $RPM_BUILD_ROOT%{_bindir}/%{target}-gcc
-ln -sf %{arch}/bin/%{target}-g++ $RPM_BUILD_ROOT%{_bindir}/%{target}-g++
-ln -sf %{arch}/bin/%{target}-cpp $RPM_BUILD_ROOT%{_bindir}/%{target}-cpp
-ln -sf %{arch}/bin/%{target}-gcov $RPM_BUILD_ROOT%{_bindir}/%{target}-gcov
-ln -sf %{arch}/bin/%{target}-gcov-dump $RPM_BUILD_ROOT%{_bindir}/%{target}-gcov-dump
-ln -sf %{arch}/bin/%{target}-gcov-tool $RPM_BUILD_ROOT%{_bindir}/%{target}-gcov-tool
-ln -sf %{arch}/bin/%{target}-gcj $RPM_BUILD_ROOT%{_bindir}/%{target}-gcj
-ln -sf %{arch}/bin/%{target}-jcf-dump $RPM_BUILD_ROOT%{_bindir}/%{target}-jcf-dump
-ln -sf %{arch}/bin/%{target}-gfortran $RPM_BUILD_ROOT%{_bindir}/%{target}-gfortran
+ln -sf %{archbindir}/%{target}-gcc $RPM_BUILD_ROOT%{_bindir}/%{target}-gcc
+ln -sf %{archbindir}/%{target}-g++ $RPM_BUILD_ROOT%{_bindir}/%{target}-g++
+ln -sf %{archbindir}/%{target}-cpp $RPM_BUILD_ROOT%{_bindir}/%{target}-cpp
+ln -sf %{archbindir}/%{target}-gcov $RPM_BUILD_ROOT%{_bindir}/%{target}-gcov
+ln -sf %{archbindir}/%{target}-gcov-dump $RPM_BUILD_ROOT%{_bindir}/%{target}-gcov-dump
+ln -sf %{archbindir}/%{target}-gcov-tool $RPM_BUILD_ROOT%{_bindir}/%{target}-gcov-tool
+ln -sf %{archbindir}/%{target}-gfortran $RPM_BUILD_ROOT%{_bindir}/%{target}-gfortran
 
 # DLLs
 install -d $RPM_BUILD_ROOT%{_dlldir}
-%{__mv} $RPM_BUILD_ROOT%{gccarchdir}/*.dll $RPM_BUILD_ROOT%{_dlldir}
-%{__mv} $RPM_BUILD_ROOT%{gcclibdir}/*.dll $RPM_BUILD_ROOT%{_dlldir}
+%{__mv} $RPM_BUILD_ROOT%{archlibdir}/*.dll $RPM_BUILD_ROOT%{_dlldir}
 if [ ! -f $RPM_BUILD_ROOT%{_dlldir}/libgcc_s_dw2-1.dll ]; then
        echo "libgcc DLL not installed?"
        install builddir/i386-mingw32/libgcc/shlib/libgcc_s_dw2-1.dll $RPM_BUILD_ROOT%{_dlldir}
@@ -602,18 +585,24 @@ fi
 
 %if 0%{!?debug:1}
 %{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll
+%{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{archlibdir}/lib*.a
 %{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{gcclibdir}/lib*.a
 %endif
 
 # avoid -L poisoning in *.la
-for f in libatomic.la libcaf_single.la libgfortran.la libobjc.la libquadmath.la %{?with_gomp:libgomp.la} ; do
+for f in libatomic.la libgfortran.la libobjc.la libquadmath.la %{?with_gomp:libgomp.la} ; do
+       file="$RPM_BUILD_ROOT%{archlibdir}/$f"
+       %{__perl} %{SOURCE3} "$file" %{gcclibdir} >"${file}.fixed"
+       %{__mv} "${file}.fixed" "$file"
+done
+for f in libcaf_single.la ; do
        file="$RPM_BUILD_ROOT%{gcclibdir}/$f"
-       %{__perl} %{SOURCE2} "$file" %{gcclibdir} >"${file}.fixed"
+       %{__perl} %{SOURCE3} "$file" %{gcclibdir} >"${file}.fixed"
        %{__mv} "${file}.fixed" "$file"
 done
 
 # for pretty-printers see native gcc
-%{__rm} $RPM_BUILD_ROOT%{gcclibdir}/libstdc++.dll.a-gdb.py
+%{__rm} $RPM_BUILD_ROOT%{archlibdir}/libstdc++.dll.a-gdb.py
 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/gcc-%{version}/python/libstdcxx
 # no plugin development for mingw32 (at least for now)
 %{__rm} $RPM_BUILD_ROOT%{gcclibdir}/liblto_plugin.la
@@ -622,8 +611,6 @@ done
 %{__rm} -r $RPM_BUILD_ROOT%{_infodir}
 # common FSF man pages
 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man7/{fsf-funding,gfdl,gpl}.7
-# programs not packaged
-%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/%{target}-{aot-compile,gc-analyze,gcj-dbtool,gij,grmic,jv-convert,rebuild-gcj-db}.1
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -635,15 +622,16 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/%{target}-gcov
 %attr(755,root,root) %{_bindir}/%{target}-gcov-dump
 %attr(755,root,root) %{_bindir}/%{target}-gcov-tool
-%attr(755,root,root) %{arch}/bin/%{target}-gcc
-%attr(755,root,root) %{arch}/bin/%{target}-gcc-%{version}
-%attr(755,root,root) %{arch}/bin/%{target}-gcc-ar
-%attr(755,root,root) %{arch}/bin/%{target}-gcc-nm
-%attr(755,root,root) %{arch}/bin/%{target}-gcc-ranlib
-%attr(755,root,root) %{arch}/bin/%{target}-cpp
-%attr(755,root,root) %{arch}/bin/%{target}-gcov
-%attr(755,root,root) %{arch}/bin/%{target}-gcov-dump
-%attr(755,root,root) %{arch}/bin/%{target}-gcov-tool
+%attr(755,root,root) %{archbindir}/%{target}-cpp
+%attr(755,root,root) %{archbindir}/%{target}-gcc
+%attr(755,root,root) %{archbindir}/%{target}-gcc-%{version}
+%attr(755,root,root) %{archbindir}/%{target}-gcc-ar
+%attr(755,root,root) %{archbindir}/%{target}-gcc-nm
+%attr(755,root,root) %{archbindir}/%{target}-gcc-ranlib
+%attr(755,root,root) %{archbindir}/%{target}-gcov
+%attr(755,root,root) %{archbindir}/%{target}-gcov-dump
+%attr(755,root,root) %{archbindir}/%{target}-gcov-tool
+%{archlibdir}/libgcc_s.a
 %dir %{gccarchdir}
 %dir %{gcclibdir}
 %attr(755,root,root) %{gcclibdir}/cc1
@@ -653,7 +641,6 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{gcclibdir}/liblto_plugin.so*
 %{gcclibdir}/libgcc.a
 %{gcclibdir}/libgcc_eh.a
-%{gcclibdir}/libgcc_s.a
 %{gcclibdir}/libgcov.a
 %{gcclibdir}/crtbegin.o
 %{gcclibdir}/crtend.o
@@ -672,12 +659,12 @@ rm -rf $RPM_BUILD_ROOT
 
 %files -n crossmingw32-libatomic
 %defattr(644,root,root,755)
-%{gcclibdir}/libatomic.dll.a
-%{gcclibdir}/libatomic.la
+%{archlibdir}/libatomic.dll.a
+%{archlibdir}/libatomic.la
 
 %files -n crossmingw32-libatomic-static
 %defattr(644,root,root,755)
-%{gcclibdir}/libatomic.a
+%{archlibdir}/libatomic.a
 
 %files -n crossmingw32-libatomic-dll
 %defattr(644,root,root,755)
@@ -686,13 +673,13 @@ rm -rf $RPM_BUILD_ROOT
 %if %{with gomp}
 %files -n crossmingw32-libgomp
 %defattr(644,root,root,755)
-%{gcclibdir}/libgomp.dll.a
-%{gcclibdir}/libgomp.la
-%{gcclibdir}/libgomp.spec
+%{archlibdir}/libgomp.dll.a
+%{archlibdir}/libgomp.la
+%{archlibdir}/libgomp.spec
 
 %files -n crossmingw32-libgomp-static
 %defattr(644,root,root,755)
-%{gcclibdir}/libgomp.a
+%{archlibdir}/libgomp.a
 
 %files -n crossmingw32-libgomp-dll
 %defattr(644,root,root,755)
@@ -701,15 +688,15 @@ rm -rf $RPM_BUILD_ROOT
 
 %files -n crossmingw32-libvtv
 %defattr(644,root,root,755)
-%{gcclibdir}/libvtv.dll.a
-%{gcclibdir}/libvtv.la
-%{gcclibdir}/libvtv_stubs.dll.a
-%{gcclibdir}/libvtv_stubs.la
+%{archlibdir}/libvtv.dll.a
+%{archlibdir}/libvtv.la
+%{archlibdir}/libvtv_stubs.dll.a
+%{archlibdir}/libvtv_stubs.la
 
 %files -n crossmingw32-libvtv-static
 %defattr(644,root,root,755)
-%{gcclibdir}/libvtv.a
-%{gcclibdir}/libvtv_stubs.a
+%{archlibdir}/libvtv.a
+%{archlibdir}/libvtv_stubs.a
 
 %files -n crossmingw32-libvtv-dll
 %defattr(644,root,root,755)
@@ -719,19 +706,19 @@ rm -rf $RPM_BUILD_ROOT
 %files c++
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/%{target}-g++
-%attr(755,root,root) %{arch}/bin/%{target}-c++
-%attr(755,root,root) %{arch}/bin/%{target}-g++
+%attr(755,root,root) %{archbindir}/%{target}-c++
+%attr(755,root,root) %{archbindir}/%{target}-g++
 %attr(755,root,root) %{gcclibdir}/cc1plus
-%{gcclibdir}/libstdc++.dll.a
-%{gcclibdir}/libstdc++.la
-%{gcclibdir}/libsupc++.la
-%{gcclibdir}/libsupc++.a
-%{gcclibdir}/include/c++
+%{archlibdir}/libstdc++.dll.a
+%{archlibdir}/libstdc++.la
+%{archlibdir}/libsupc++.la
+%{archlibdir}/libsupc++.a
+%{archincludedir}/c++
 %{_mandir}/man1/%{target}-g++.1*
 
 %files -n crossmingw32-libstdc++-static
 %defattr(644,root,root,755)
-%{gcclibdir}/libstdc++.a
+%{archlibdir}/libstdc++.a
 
 %files -n crossmingw32-libstdc++-dll
 %defattr(644,root,root,755)
@@ -741,8 +728,8 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %doc libobjc/README
 %attr(755,root,root) %{gcclibdir}/cc1obj
-%{gcclibdir}/libobjc.dll.a
-%{gcclibdir}/libobjc.la
+%{archlibdir}/libobjc.dll.a
+%{archlibdir}/libobjc.la
 %{gcclibdir}/include/objc
 
 %files objc++
@@ -752,7 +739,7 @@ rm -rf $RPM_BUILD_ROOT
 
 %files -n crossmingw32-libobjc-static
 %defattr(644,root,root,755)
-%{gcclibdir}/libobjc.a
+%{archlibdir}/libobjc.a
 
 %files -n crossmingw32-libobjc-dll
 %defattr(644,root,root,755)
@@ -761,44 +748,33 @@ rm -rf $RPM_BUILD_ROOT
 %files fortran
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/%{target}-gfortran
-%attr(755,root,root) %{arch}/bin/%{target}-gfortran
+%attr(755,root,root) %{archbindir}/%{target}-gfortran
 %attr(755,root,root) %{gcclibdir}/f951
+%{archlibdir}/libgfortran.dll.a
+%{archlibdir}/libgfortran.la
+%{archlibdir}/libgfortran.spec
 %{gcclibdir}/finclude
 %{gcclibdir}/libcaf_single.a
 %{gcclibdir}/libcaf_single.la
-%{gcclibdir}/libgfortran.dll.a
-%{gcclibdir}/libgfortran.la
-%{gcclibdir}/libgfortran.spec
 %{_mandir}/man1/%{target}-gfortran.1*
 
 %files -n crossmingw32-libgfortran-static
 %defattr(644,root,root,755)
-%{gcclibdir}/libgfortran.a
+%{archlibdir}/libgfortran.a
 
 %files -n crossmingw32-libgfortran-dll
 %defattr(644,root,root,755)
-%{_dlldir}/libgfortran-3.dll
+%{_dlldir}/libgfortran-5.dll
 
 %files -n crossmingw32-libquadmath
 %defattr(644,root,root,755)
-%{gcclibdir}/libquadmath.dll.a
-%{gcclibdir}/libquadmath.la
+%{archlibdir}/libquadmath.dll.a
+%{archlibdir}/libquadmath.la
 
 %files -n crossmingw32-libquadmath-static
 %defattr(644,root,root,755)
-%{gcclibdir}/libquadmath.a
+%{archlibdir}/libquadmath.a
 
 %files -n crossmingw32-libquadmath-dll
 %defattr(644,root,root,755)
 %{_dlldir}/libquadmath-0.dll
-
-%files java
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/%{target}-gcj
-%attr(755,root,root) %{_bindir}/%{target}-jcf-dump
-%attr(755,root,root) %{arch}/bin/%{target}-gcj
-%attr(755,root,root) %{arch}/bin/%{target}-jcf-dump
-%attr(755,root,root) %{gcclibdir}/jc1
-%attr(755,root,root) %{gcclibdir}/jvgenmain
-%{_mandir}/man1/%{target}-gcj.1*
-%{_mandir}/man1/%{target}-jcf-dump.1*
This page took 0.05081 seconds and 4 git commands to generate.