[packages/crossmingw32-runtime/MINGW-3] - updated to 3.22.4, w32api 3.18.2 - removed obsolete stdinc,configure patches - added gawk patch (s

qboosh qboosh at pld-linux.org
Sat Dec 17 18:45:53 CET 2016


commit bc0b0a644e4136b3dbc40d027f466c14a7810331
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Sat Dec 17 18:46:27 2016 +0100

    - updated to 3.22.4, w32api 3.18.2
    - removed obsolete stdinc,configure patches
    - added gawk patch (some awk calls require gawk)

 crossmingw32-runtime-configure.patch | 63 ------------------------------------
 crossmingw32-runtime-gawk.patch      | 39 ++++++++++++++++++++++
 crossmingw32-runtime-stdinc.patch    | 30 -----------------
 crossmingw32-runtime.spec            | 61 ++++++++++++++++++++++------------
 4 files changed, 80 insertions(+), 113 deletions(-)
---
diff --git a/crossmingw32-runtime.spec b/crossmingw32-runtime.spec
index 04e06db..93b1f7c 100644
--- a/crossmingw32-runtime.spec
+++ b/crossmingw32-runtime.spec
@@ -1,25 +1,34 @@
 Summary:	MinGW32 Binary Utility Development Utilities - runtime libraries
 Summary(pl.UTF-8):	Zestaw narzędzi MinGW32 - biblioteki uruchomieniowe
 Name:		crossmingw32-runtime
-Version:	3.20.2
-%define runver	3.20-2
+Version:	3.22.4
+%define	apiver	3.18.2
+%define	apisrc	w32api-%{apiver}-mingw32
+%define runver	%{version}
 %define	runsrc	mingwrt-%{runver}-mingw32
 Release:	1
 Epoch:		1
-License:	Free
+License:	Public Domain
 Group:		Development/Libraries
-Source0:	http://downloads.sourceforge.net/mingw/%{runsrc}-src.tar.lzma
-# Source0-md5:	428174262d9b9c201a2180490d629b8a
-Patch0:		%{name}-stdinc.patch
+Source0:	http://downloads.sourceforge.net/mingw/%{runsrc}-src.tar.xz
+# Source0-md5:	efa617e408ffb66b292f8f8145d86fa1
+# only for headers
+Source1:	http://downloads.sourceforge.net/mingw/%{apisrc}-src.tar.xz
+# Source1-md5:	e891339f9460c1164583a43335269416
+Patch0:		%{name}-gawk.patch
 URL:		http://www.mingw.org/
-BuildRequires:	autoconf
+BuildRequires:	autoconf >= 2.64
 BuildRequires:	automake
 BuildRequires:	crossmingw32-binutils
 BuildRequires:	crossmingw32-gcc
-BuildRequires:	crossmingw32-w32api
+# 3.22.x relies on w32 sources available at build time
+#BuildRequires:	crossmingw32-w32api 1:%{apiver}
 BuildRequires:	dos2unix
+BuildRequires:	gawk
+BuildRequires:	tar >= 1:1.22
+BuildRequires:	xz
 Requires:	crossmingw32-binutils >= 2.15.91.0.2-2
-Requires:	crossmingw32-w32api >= 3.1
+Requires:	crossmingw32-w32api >= 1:%{apiver}
 Obsoletes:	crossmingw32-platform
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -32,6 +41,14 @@ BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 # strip fails on static COFF files
 %define		no_install_post_strip 1
 
+%define		filterout_ld	-Wl,-z,.*
+%define		filterout_c	-gdwarf-3 -fstack-protector.*
+
+%ifnarch %{ix86} %{x8664} x32
+# arch-specific flags (like alpha's -mieee) are not valid for i386 gcc
+%define		optflags	-O2
+%endif
+
 %description
 crossmingw32 is a complete cross-compiling development system for
 building stand-alone Microsoft Windows applications under Linux using
@@ -63,42 +80,44 @@ MinGW32 runtime DLL library for Windows.
 Biblioteka uruchomieniowa MingW32 DLL dla Windows.
 
 %prep
-%setup -q -n %{runsrc}
-dos2unix Makefile.in configure.in mkinstalldirs */Makefile.in
+%setup -q -c -a1
+ln -snf w32api-%{apiver} w32api
+ln -snf mingwrt-%{runver} mingwrt
+cd mingwrt
 %patch0 -p1 
 
 %build
+cd mingwrt
 cp /usr/share/automake/config.sub .
 %{__autoconf}
 ./configure \
+	CFLAGS="%{rpmcflags}" \
+	LDFLAGS="%{rpmldflags}" \
 	--prefix=%{_prefix} \
 	--host=%{target} \
 	--build=%{_target_platform}
-%{__make} -C mingwex
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT%{_dlldir}
 
-# makefile expects dir before creating it
-install -d $RPM_BUILD_ROOT{%{_prefix}/bin,%{_dlldir}}
-%{__make} install \
+%{__make} -C mingwrt install \
 	prefix=$RPM_BUILD_ROOT%{_prefix}
 
-mv -f $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir}
+%{__mv} $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir}
+
 %if %{!?debug:1}0
 %{target}-strip $RPM_BUILD_ROOT%{_dlldir}/*.dll
 %{target}-strip -g $RPM_BUILD_ROOT%{_libdir}/*.a
 %endif
 
-%{__rm} -r $RPM_BUILD_ROOT%{_mandir}
-
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
-%doc CONTRIBUTORS ChangeLog DISCLAIMER README TODO readme.txt
+%doc mingwrt/{CONTRIBUTORS,ChangeLog,DISCLAIMER,README,TODO,readme.txt}
 %{_includedir}/_mingw.h
 %{_includedir}/assert.h
 %{_includedir}/complex.h
@@ -107,6 +126,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/dir.h
 %{_includedir}/direct.h
 %{_includedir}/dirent.h
+%{_includedir}/dlfcn.h
 %{_includedir}/dos.h
 %{_includedir}/errno.h
 %{_includedir}/excpt.h
@@ -114,6 +134,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/fenv.h
 %{_includedir}/float.h
 %{_includedir}/getopt.h
+%{_includedir}/glob.h
 %{_includedir}/gmon.h
 %{_includedir}/inttypes.h
 %{_includedir}/io.h
@@ -126,6 +147,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/mbstring.h
 %{_includedir}/mem.h
 %{_includedir}/memory.h
+%{_includedir}/msvcrtver.h
 %{_includedir}/process.h
 %{_includedir}/profil.h
 %{_includedir}/profile.h
@@ -143,7 +165,6 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/unistd.h
 %{_includedir}/utime.h
 %{_includedir}/values.h
-%{_includedir}/varargs.h
 %{_includedir}/wchar.h
 %{_includedir}/wctype.h
 %{_includedir}/sys
diff --git a/crossmingw32-runtime-configure.patch b/crossmingw32-runtime-configure.patch
deleted file mode 100644
index 19b7b03..0000000
--- a/crossmingw32-runtime-configure.patch
+++ /dev/null
@@ -1,63 +0,0 @@
---- mingw-runtime-3.0/mingwex/configure.in.wiget	2003-05-06 15:46:46.000000000 +0000
-+++ mingw-runtime-3.0/mingwex/configure.in	2003-07-04 13:47:53.000000000 +0000
-@@ -19,21 +19,25 @@
- AC_PREREQ(2.13)
- AC_INIT(imaxabs.c)
- 
--CC=${CC-cc}
-+AC_CANONICAL_SYSTEM
-+AC_CHECK_TOOL(CC,gcc,gcc)
-+if test -z "$CC"; then
-+	AC_CHECK_TOOL(CC,cc,cc)
-+fi
- AC_SUBST(CC)
--AS=${AS-as}
-+AC_CHECK_TOOL(AS,as,as)
- AC_SUBST(AS)
--AR=${AR-ar}
-+AC_CHECK_TOOL(AR,ar,ar)
- AC_SUBST(AR)
--LD=${LD-ld}
-+AC_CHECK_TOOL(LD,ld,ld)
- AC_SUBST(LD)
--RANLIB=${RANLIB-ranlib}
-+AC_CHECK_TOOL(RANLIB,ranlib,ranlib)
- AC_SUBST(RANLIB)
--DLLTOOL=${DLLTOOL-dlltool}
-+AC_CHECK_TOOL(DLLTOOL,dlltool,dlltool)
- AC_SUBST(DLLTOOL)
--DLLWRAP=${DLLWRAP-dllwrap}
-+AC_CHECK_TOOL(DLLWRAP,dllwrap,dllwrap)
- AC_SUBST(DLLWRAP)
--AC_CANONICAL_SYSTEM
-+AC_SUBST(CFLAGS)
- 
- case "$target_os" in
- *cygwin*)
---- mingw-runtime-3.0/profile/configure.in.wiget	2003-05-06 15:46:46.000000000 +0000
-+++ mingw-runtime-3.0/profile/configure.in	2003-07-04 13:46:49.000000000 +0000
-@@ -19,6 +19,24 @@
- AC_PREREQ(2.13)
- AC_INIT(gcrt0.c)
- 
-+AC_CANONICAL_SYSTEM
-+AC_CHECK_TOOL(CC,gcc,gcc)
-+if test -z "$CC"; then
-+	AC_CHECK_TOOL(CC,cc,cc)
-+fi
-+AC_SUBST(CC)
-+AC_CHECK_TOOL(AS,as,as)
-+AC_SUBST(AS)
-+AC_CHECK_TOOL(AR,ar,ar)
-+AC_SUBST(AR)
-+AC_CHECK_TOOL(LD,ld,ld)
-+AC_SUBST(LD)
-+AC_CHECK_TOOL(RANLIB,ranlib,ranlib)
-+AC_SUBST(RANLIB)
-+AC_CHECK_TOOL(DLLTOOL,dlltool,dlltool)
-+AC_SUBST(DLLTOOL)
-+AC_CHECK_TOOL(DLLWRAP,dllwrap,dllwrap)
-+AC_SUBST(DLLWRAP)
- CC=${CC-cc}
- AC_SUBST(CC)
- AS=${AS-as}
diff --git a/crossmingw32-runtime-gawk.patch b/crossmingw32-runtime-gawk.patch
new file mode 100644
index 0000000..4675ada
--- /dev/null
+++ b/crossmingw32-runtime-gawk.patch
@@ -0,0 +1,39 @@
+gensub() is gawk specific extension
+--- mingwrt-3.22.4/Makefile.in.orig	2016-12-17 11:00:24.739209274 +0100
++++ mingwrt-3.22.4/Makefile.in	2016-12-17 14:15:23.239075699 +0100
+@@ -261,7 +261,7 @@
+ # of the following enumerated versions from the MSVC suite.
+ #
+ msvcrt_versions := 70 71 80 90 100
+-msvcrt_version_script = echo $1 | awk '\
++msvcrt_version_script = echo $1 | gawk '\
+   { printf "0x%03d00000", gensub( "^[^1-9]*([0-9]*).*", "\\\\1", 1 ) \
+   }'
+ 
+@@ -271,7 +271,7 @@
+        $(AR) $(ARFLAGS) $1 $(call extra_objects_filter,$2); \
+      }
+ 
+-msvcrt_dllname_script = echo $1 | awk '\
++msvcrt_dllname_script = echo $1 | gawk '\
+   /^c/{ print "crtdll.dll" } \
+   /^m/{ ext = gsub( "^.*d$$", "&" ) ? "d.dll" : ".dll"; \
+ 	printf "msvcr%s%s", gsub( "^[^1-9]*[0-9]+.*", "&" ) \
+@@ -548,7 +548,7 @@
+ # Makefile.stub, by processing each of their defining header files
+ # through the following awk script...
+ #
+-jmpstub_awk_script = test -z "$1" || awk '\
++jmpstub_awk_script = test -z "$1" || gawk '\
+   BEGIN { \
+     symbol = "([A-Z_a-z][A-Z_a-z0-9]*)"; \
+     fmt = "\nlib%s.a: %s\n%s: jmpstub.sx\n\t$$(COMPILE.sx) %s -o $$@ $$^\n"; \
+@@ -569,7 +569,7 @@
+ # ...while this establishes the dependencies which apply for each
+ # of those in the LIBIMPL class.
+ #
+-libimpl_awk_script = test -z "$1" || awk '\
++libimpl_awk_script = test -z "$1" || gawk '\
+   BEGIN { \
+     symbol = "([A-Z_a-z][A-Z_a-z0-9]*)"; \
+     fmt = "\nlib%s.a: %s\n%s.libimpl: %s\n"; \
diff --git a/crossmingw32-runtime-stdinc.patch b/crossmingw32-runtime-stdinc.patch
deleted file mode 100644
index 1ac6527..0000000
--- a/crossmingw32-runtime-stdinc.patch
+++ /dev/null
@@ -1,30 +0,0 @@
---- mingwrt-3.16-mingw32/Makefile.in.org	2009-08-23 02:15:25.799505624 +0200
-+++ mingwrt-3.16-mingw32/Makefile.in	2009-08-23 02:15:37.278392489 +0200
-@@ -166,7 +166,6 @@
- W32API_INCLUDE = @W32API_INCLUDE@
- INCLUDES = -I$(srcdir)/include \
-   -I$(srcdir)/../include \
--  -nostdinc \
-   -iwithprefixbefore include
- ALL_CFLAGS = $(CFLAGS) $(INCLUDES) $(W32API_INCLUDE)
- ALL_CXXFLAGS = $(CXXFLAGS) $(INCLUDES) -nostdinc++ $(W32API_INCLUDE)
---- mingwrt-3.16-mingw32/mingwex/Makefile.in.org	2009-08-23 02:22:58.068380312 +0200
-+++ mingwrt-3.16-mingw32/mingwex/Makefile.in	2009-08-23 02:23:04.203630108 +0200
-@@ -128,7 +128,6 @@
- 
- W32API_INCLUDE = @W32API_INCLUDE@
- INCLUDES = -I${srcdir} -I${top_srcdir} -I${top_srcdir}/include \
--  -nostdinc \
-   -iwithprefixbefore include
- ALL_CFLAGS = $(CFLAGS) $(WARNFLAGS) $(OPTFLAGS) $(INCLUDES) $(W32API_INCLUDE)
- ALL_CXXFLAGS = $(CXXFLAGS) $(WARNFLAGS) $(OPTFLAGS) $(INCLUDES) -nostdinc++ $(W32API_INCLUDE)
---- mingwrt-3.16-mingw32/profile/Makefile.in.org	2009-08-23 02:23:13.505506761 +0200
-+++ mingwrt-3.16-mingw32/profile/Makefile.in	2009-08-23 02:23:18.573631831 +0200
-@@ -67,7 +67,6 @@
- 
- W32API_INCLUDE = @W32API_INCLUDE@
- INCLUDES = -I${srcdir} -I${top_srcdir}/include \
--  -nostdinc \
-   -iwithprefixbefore include
- ALL_CFLAGS = $(CFLAGS) $(INCLUDES) $(W32API_INCLUDE)
- ALL_CXXFLAGS = $(CXXFLAGS) $(INCLUDES) -nostdinc++ $(W32API_INCLUDE)
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/crossmingw32-runtime.git/commitdiff/bc0b0a644e4136b3dbc40d027f466c14a7810331



More information about the pld-cvs-commit mailing list