From 0c429c120d4f9a5c90c91c79f334ebd842324524 Mon Sep 17 00:00:00 2001 From: Kevin Fenzi Date: Sat, 17 Jan 2009 03:22:33 +0000 Subject: [PATCH 01/13] Setup of module mingw32-dlfcn --- .cvsignore | 0 Makefile | 21 +++++++++++++++++++++ sources | 0 3 files changed, 21 insertions(+) create mode 100644 .cvsignore create mode 100644 Makefile create mode 100644 sources diff --git a/.cvsignore b/.cvsignore new file mode 100644 index 0000000..e69de29 diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..6cdaebd --- /dev/null +++ b/Makefile @@ -0,0 +1,21 @@ +# Makefile for source rpm: mingw32-dlfcn +# $Id$ +NAME := mingw32-dlfcn +SPECFILE = $(firstword $(wildcard *.spec)) + +define find-makefile-common +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +endef + +MAKEFILE_COMMON := $(shell $(find-makefile-common)) + +ifeq ($(MAKEFILE_COMMON),) +# attept a checkout +define checkout-makefile-common +test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 +endef + +MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) +endif + +include $(MAKEFILE_COMMON) diff --git a/sources b/sources new file mode 100644 index 0000000..e69de29 From df4048f12aef1c3c3ecd9bf6dbe19d58a120e909 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 17 Jan 2009 11:33:29 +0000 Subject: [PATCH 02/13] Initial import. --- .cvsignore | 1 + dlfcn_configure.patch | 62 +++++++++++++++++++++++++++++ import.log | 1 + mingw32-dlfcn.spec | 90 +++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 5 files changed, 155 insertions(+) create mode 100644 dlfcn_configure.patch create mode 100644 import.log create mode 100644 mingw32-dlfcn.spec diff --git a/.cvsignore b/.cvsignore index e69de29..2bed6e7 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1 @@ +dlfcn-win32-r11.tar.bz2 diff --git a/dlfcn_configure.patch b/dlfcn_configure.patch new file mode 100644 index 0000000..8a0e7db --- /dev/null +++ b/dlfcn_configure.patch @@ -0,0 +1,62 @@ +diff -ruNp dlfcn-win32-r11/config.mak dlfcn-win32-r11.new/config.mak +--- dlfcn-win32-r11/config.mak 1969-12-31 21:00:00.000000000 -0300 ++++ dlfcn-win32-r11.new/config.mak 2009-01-02 12:08:15.000000000 -0200 +@@ -0,0 +1,9 @@ ++# Automatically generated by configure ++PREFIX=/usr/i686-pc-mingw32/sys-root/mingw ++libdir=/usr/i686-pc-mingw32/sys-root/mingw/lib ++incdir=/usr/i686-pc-mingw32/sys-root/mingw/include ++CC=i686-pc-mingw32-gcc ++BUILD_SHARED=yes ++BUILD_STATIC=yes ++BUILD_MSVC=no ++DO_STRIP=yes +diff -ruNp dlfcn-win32-r11/configure dlfcn-win32-r11.new/configure +--- dlfcn-win32-r11/configure 2009-01-02 11:54:38.000000000 -0200 ++++ dlfcn-win32-r11.new/configure 2009-01-02 12:35:30.000000000 -0200 +@@ -97,6 +97,45 @@ for opt do + --make=*) + make="$optval" + ;; ++ --enable-shared=*) ++ shared="$optval" ++ ;; ++ --enable-static=*) ++ static="$optval" ++ ;; ++ --enable-strip=*) ++ strip="$optval" ++ ;; ++ --cache-file=*) ++ ;; ++ --host=*) ++ ;; ++ --build=*) ++ ;; ++ --target=*) ++ ;; ++ --exec-prefix=*) ++ ;; ++ --bindir=*) ++ ;; ++ --sbindir=*) ++ ;; ++ --sysconfdir=*) ++ ;; ++ --datadir=*) ++ ;; ++ --includedir=*) ++ ;; ++ --libexecdir=*) ++ ;; ++ --localstatedir=*) ++ ;; ++ --sharedstatedir=*) ++ ;; ++ --mandir=*) ++ ;; ++ --infodir=*) ++ ;; + --enable-?*|--disable-?*) + eval `echo "$opt" | sed 's/--/action=/;s/-/ option=/;s/-/_/g'` + echo "$CMDLINE_SELECT" | grep -q "^ *$option\$" || die_unknown $opt diff --git a/import.log b/import.log new file mode 100644 index 0000000..c9821d2 --- /dev/null +++ b/import.log @@ -0,0 +1 @@ +mingw32-dlfcn-0-0_3_r11_fc10:HEAD:mingw32-dlfcn-0-0.3.r11.fc10.src.rpm:1232191683 diff --git a/mingw32-dlfcn.spec b/mingw32-dlfcn.spec new file mode 100644 index 0000000..7c14d38 --- /dev/null +++ b/mingw32-dlfcn.spec @@ -0,0 +1,90 @@ +%define __strip %{_mingw32_strip} +%define __objdump %{_mingw32_objdump} +%define _use_internal_dependency_generator 0 +%define __find_requires %{_mingw32_findrequires} +%define __find_provides %{_mingw32_findprovides} + +%define realname dlfcn-win32 + +%define alphatag r11 + +Name: mingw32-dlfcn +Version: 0 +Release: 0.3.%{alphatag}%{?dist} +Summary: Implements a wrapper for dlfcn (dlopen dlclose dlsym dlerror) + +License: LGPLv2+ +Group: Development/Libraries +URL: http://code.google.com/p/dlfcn-win32/ +Source0: http://dlfcn-win32.googlecode.com/files/%{realname}-%{alphatag}.tar.bz2 +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +BuildArch: noarch + +BuildRequires: mingw32-filesystem >= 40 +BuildRequires: mingw32-gcc +BuildRequires: mingw32-binutils +#BuildRequires: dos2unix + +Patch1: dlfcn_configure.patch + + +%description +This library implements a wrapper for dlfcn, as specified in POSIX and SUS, +around the dynamic link library functions found in the Windows API. + + +%prep +%setup -q -n %{realname}-%{alphatag} + +%{__sed} -i 's/\r//' configure +%{__sed} -i 's/\r//' README +%{__sed} -i 's/\r//' COPYING + +%patch1 -p1 + + +%build +%{_mingw32_configure} \ + --incdir=%{_mingw32_includedir} \ + --cc=i686-pc-mingw32-gcc \ + --enable-shared=yes \ + --enable-static=no \ + --enable-strip=i686-pc-mingw32-strip +make %{?_smp_mflags} + + +%install +rm -rf $RPM_BUILD_ROOT +make DESTDIR=$RPM_BUILD_ROOT install + + +%clean +rm -rf $RPM_BUILD_ROOT + + +%files +%defattr(-,root,root) +%doc README COPYING +%{_mingw32_bindir}/libdl.dll +%{_mingw32_libdir}/libdl.dll.a +%{_mingw32_includedir}/dlfcn.h + + +%changelog +* Wed Jan 14 2009 Richard W.M. Jones - 0-0.3.r11 +- Use Version 0 + (https://www.redhat.com/archives/fedora-packaging/2009-January/msg00064.html) +- Revert use of dos2unix for now + (https://www.redhat.com/archives/fedora-packaging/2009-January/msg00066.html) +- Use _smp_mflags. + +* Tue Jan 13 2009 Richard W.M. Jones - 0.1-0.2.r11 +- Import into fedora-mingw temporary repository because there are packages + which will depend on this. +- Fix the version/release according to packaging guidelines. +- Tidy up the spec file. +- Use dos2unix and keep the timestamps. + +* Fri Jan 02 2009 Itamar Reis Peixoto - r11-1 +- Initial RPM release. diff --git a/sources b/sources index e69de29..547b454 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +728d2c79edaf09ee3c309860499502eb dlfcn-win32-r11.tar.bz2 From 5114e1b3ab6adf62ecee50f61f3bfd8319edeaba Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 20 Feb 2009 23:12:22 +0000 Subject: [PATCH 03/13] Rebuild for mingw32-gcc 4.4 --- mingw32-dlfcn.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/mingw32-dlfcn.spec b/mingw32-dlfcn.spec index 7c14d38..7bbda23 100644 --- a/mingw32-dlfcn.spec +++ b/mingw32-dlfcn.spec @@ -10,7 +10,7 @@ Name: mingw32-dlfcn Version: 0 -Release: 0.3.%{alphatag}%{?dist} +Release: 0.4.%{alphatag}%{?dist} Summary: Implements a wrapper for dlfcn (dlopen dlclose dlsym dlerror) License: LGPLv2+ @@ -21,7 +21,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -BuildRequires: mingw32-filesystem >= 40 +BuildRequires: mingw32-filesystem >= 49 BuildRequires: mingw32-gcc BuildRequires: mingw32-binutils #BuildRequires: dos2unix @@ -72,6 +72,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Feb 20 2009 Richard W.M. Jones - 0-0.4.r11 +- Rebuild for mingw32-gcc 4.4 + * Wed Jan 14 2009 Richard W.M. Jones - 0-0.3.r11 - Use Version 0 (https://www.redhat.com/archives/fedora-packaging/2009-January/msg00064.html) From a4eb85215bc42fc3c6e8b7b8969cde9600cd45b5 Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Thu, 26 Feb 2009 01:02:03 +0000 Subject: [PATCH 04/13] - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild --- mingw32-dlfcn.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-dlfcn.spec b/mingw32-dlfcn.spec index 7bbda23..b486f2c 100644 --- a/mingw32-dlfcn.spec +++ b/mingw32-dlfcn.spec @@ -10,7 +10,7 @@ Name: mingw32-dlfcn Version: 0 -Release: 0.4.%{alphatag}%{?dist} +Release: 0.5.%{alphatag}%{?dist} Summary: Implements a wrapper for dlfcn (dlopen dlclose dlsym dlerror) License: LGPLv2+ @@ -72,6 +72,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Feb 25 2009 Fedora Release Engineering - 0-0.5.r11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + * Fri Feb 20 2009 Richard W.M. Jones - 0-0.4.r11 - Rebuild for mingw32-gcc 4.4 From 3a00af7647c88fb985d46684881e5df645f4b64e Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Sat, 25 Jul 2009 12:16:02 +0000 Subject: [PATCH 05/13] - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild --- mingw32-dlfcn.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-dlfcn.spec b/mingw32-dlfcn.spec index b486f2c..951f313 100644 --- a/mingw32-dlfcn.spec +++ b/mingw32-dlfcn.spec @@ -10,7 +10,7 @@ Name: mingw32-dlfcn Version: 0 -Release: 0.5.%{alphatag}%{?dist} +Release: 0.6.%{alphatag}%{?dist} Summary: Implements a wrapper for dlfcn (dlopen dlclose dlsym dlerror) License: LGPLv2+ @@ -72,6 +72,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Jul 25 2009 Fedora Release Engineering - 0-0.6.r11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + * Wed Feb 25 2009 Fedora Release Engineering - 0-0.5.r11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild From 0d62afb13ead0db36452054a7312c2059e949775 Mon Sep 17 00:00:00 2001 From: epienbro Date: Fri, 30 Oct 2009 14:44:03 +0000 Subject: [PATCH 06/13] - Use %global instead of %define - Automatically generate debuginfo subpackage (F-12+) - Fixed %defattr line - Added -static subpackage - Fixed linker error with C++ applications --- dlfcn-fix-cplusplus-linkage.patch | 20 +++++++++++++ mingw32-dlfcn.spec | 48 ++++++++++++++++++++++++------- 2 files changed, 57 insertions(+), 11 deletions(-) create mode 100644 dlfcn-fix-cplusplus-linkage.patch diff --git a/dlfcn-fix-cplusplus-linkage.patch b/dlfcn-fix-cplusplus-linkage.patch new file mode 100644 index 0000000..05684a9 --- /dev/null +++ b/dlfcn-fix-cplusplus-linkage.patch @@ -0,0 +1,20 @@ +--- dlfcn.h.orig 2009-10-30 15:36:35.357902913 +0100 ++++ dlfcn.h 2009-10-30 15:39:51.126664184 +0100 +@@ -37,9 +37,17 @@ + #define RTLD_DEFAULT 0 + #define RTLD_NEXT 0 + ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + void *dlopen ( const char *file, int mode ); + int dlclose( void *handle ); + void *dlsym ( void *handle, const char *name ); + char *dlerror( void ); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* DLFCN_H */ diff --git a/mingw32-dlfcn.spec b/mingw32-dlfcn.spec index 951f313..896587b 100644 --- a/mingw32-dlfcn.spec +++ b/mingw32-dlfcn.spec @@ -1,16 +1,17 @@ -%define __strip %{_mingw32_strip} -%define __objdump %{_mingw32_objdump} -%define _use_internal_dependency_generator 0 -%define __find_requires %{_mingw32_findrequires} -%define __find_provides %{_mingw32_findprovides} +%global __strip %{_mingw32_strip} +%global __objdump %{_mingw32_objdump} +%global _use_internal_dependency_generator 0 +%global __find_requires %{_mingw32_findrequires} +%global __find_provides %{_mingw32_findprovides} +%define __debug_install_post %{_mingw32_debug_install_post} -%define realname dlfcn-win32 +%global realname dlfcn-win32 -%define alphatag r11 +%global alphatag r11 Name: mingw32-dlfcn Version: 0 -Release: 0.6.%{alphatag}%{?dist} +Release: 0.7.%{alphatag}%{?dist} Summary: Implements a wrapper for dlfcn (dlopen dlclose dlsym dlerror) License: LGPLv2+ @@ -21,12 +22,13 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -BuildRequires: mingw32-filesystem >= 49 +BuildRequires: mingw32-filesystem >= 52 BuildRequires: mingw32-gcc BuildRequires: mingw32-binutils #BuildRequires: dos2unix Patch1: dlfcn_configure.patch +Patch2: dlfcn-fix-cplusplus-linkage.patch %description @@ -34,6 +36,18 @@ This library implements a wrapper for dlfcn, as specified in POSIX and SUS, around the dynamic link library functions found in the Windows API. +%package static +Summary: Static version of the MinGW Windows dlfcn library +Requires: %{name} = %{version}-%{release} +Group: Development/Libraries + +%description static +Static version of the MinGW Windows dlfcn library. + + +%{_mingw32_debug_package} + + %prep %setup -q -n %{realname}-%{alphatag} @@ -42,6 +56,7 @@ around the dynamic link library functions found in the Windows API. %{__sed} -i 's/\r//' COPYING %patch1 -p1 +%patch2 -p0 %build @@ -49,7 +64,7 @@ around the dynamic link library functions found in the Windows API. --incdir=%{_mingw32_includedir} \ --cc=i686-pc-mingw32-gcc \ --enable-shared=yes \ - --enable-static=no \ + --enable-static=yes \ --enable-strip=i686-pc-mingw32-strip make %{?_smp_mflags} @@ -64,14 +79,25 @@ rm -rf $RPM_BUILD_ROOT %files -%defattr(-,root,root) +%defattr(-,root,root,-) %doc README COPYING %{_mingw32_bindir}/libdl.dll %{_mingw32_libdir}/libdl.dll.a %{_mingw32_includedir}/dlfcn.h +%files static +%defattr(-,root,root,-) +%{_mingw32_libdir}/libdl.a + %changelog +* Fri Oct 30 2009 Erik van Pienbroek - 0-0.7.r11 +- Use %%global instead of %%define +- Automatically generate debuginfo subpackage +- Fixed %%defattr line +- Added -static subpackage +- Fixed linker error with C++ applications + * Sat Jul 25 2009 Fedora Release Engineering - 0-0.6.r11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild From c060bcf42e67aa1d254e689b56769976c5f36ae3 Mon Sep 17 00:00:00 2001 From: Bill Nottingham Date: Wed, 25 Nov 2009 23:18:47 +0000 Subject: [PATCH 07/13] Fix typo that causes a failure to update the common directory. (releng #2781) --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 6cdaebd..af89b2f 100644 --- a/Makefile +++ b/Makefile @@ -1,10 +1,10 @@ # Makefile for source rpm: mingw32-dlfcn -# $Id$ +# $Id: Makefile,v 1.1 2009/01/17 03:22:33 kevin Exp $ NAME := mingw32-dlfcn SPECFILE = $(firstword $(wildcard *.spec)) define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done endef MAKEFILE_COMMON := $(shell $(find-makefile-common)) From f9a68c0d5c358a37363385f5f78486e7626eae30 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 29 Jul 2010 03:18:56 +0000 Subject: [PATCH 08/13] dist-git conversion --- .cvsignore => .gitignore | 0 Makefile | 21 --------------------- import.log | 1 - 3 files changed, 22 deletions(-) rename .cvsignore => .gitignore (100%) delete mode 100644 Makefile delete mode 100644 import.log diff --git a/.cvsignore b/.gitignore similarity index 100% rename from .cvsignore rename to .gitignore diff --git a/Makefile b/Makefile deleted file mode 100644 index af89b2f..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: mingw32-dlfcn -# $Id: Makefile,v 1.1 2009/01/17 03:22:33 kevin Exp $ -NAME := mingw32-dlfcn -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attept a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) diff --git a/import.log b/import.log deleted file mode 100644 index c9821d2..0000000 --- a/import.log +++ /dev/null @@ -1 +0,0 @@ -mingw32-dlfcn-0-0_3_r11_fc10:HEAD:mingw32-dlfcn-0-0.3.r11.fc10.src.rpm:1232191683 From 790e95b4f4739a0d402feb5343a2271f4ed4e193 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Tue, 8 Feb 2011 12:25:46 -0600 Subject: [PATCH 09/13] - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild --- mingw32-dlfcn.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-dlfcn.spec b/mingw32-dlfcn.spec index 896587b..d78256d 100644 --- a/mingw32-dlfcn.spec +++ b/mingw32-dlfcn.spec @@ -11,7 +11,7 @@ Name: mingw32-dlfcn Version: 0 -Release: 0.7.%{alphatag}%{?dist} +Release: 0.8.%{alphatag}%{?dist} Summary: Implements a wrapper for dlfcn (dlopen dlclose dlsym dlerror) License: LGPLv2+ @@ -91,6 +91,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Feb 08 2011 Fedora Release Engineering - 0-0.8.r11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + * Fri Oct 30 2009 Erik van Pienbroek - 0-0.7.r11 - Use %%global instead of %%define - Automatically generate debuginfo subpackage From 6cf23f8df9619286f190256c0d4e7a646a8b5ffc Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 13 Jan 2012 03:57:33 -0600 Subject: [PATCH 10/13] - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild --- mingw32-dlfcn.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-dlfcn.spec b/mingw32-dlfcn.spec index d78256d..935b714 100644 --- a/mingw32-dlfcn.spec +++ b/mingw32-dlfcn.spec @@ -11,7 +11,7 @@ Name: mingw32-dlfcn Version: 0 -Release: 0.8.%{alphatag}%{?dist} +Release: 0.9.%{alphatag}%{?dist} Summary: Implements a wrapper for dlfcn (dlopen dlclose dlsym dlerror) License: LGPLv2+ @@ -91,6 +91,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Jan 13 2012 Fedora Release Engineering - 0-0.9.r11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + * Tue Feb 08 2011 Fedora Release Engineering - 0-0.8.r11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild From c844bc6faf29bfa80d7e6bfe0146e1a6fecd13de Mon Sep 17 00:00:00 2001 From: Erik van Pienbroek Date: Thu, 16 Feb 2012 14:58:01 +0100 Subject: [PATCH 11/13] Make sure the static lib is compiled correctly (RHBZ #791191) and various cleanups --- dlfcn-fix-static-lib.patch | 13 +++++++++++++ mingw32-dlfcn.spec | 23 +++++++++-------------- 2 files changed, 22 insertions(+), 14 deletions(-) create mode 100644 dlfcn-fix-static-lib.patch diff --git a/dlfcn-fix-static-lib.patch b/dlfcn-fix-static-lib.patch new file mode 100644 index 0000000..b7cdabb --- /dev/null +++ b/dlfcn-fix-static-lib.patch @@ -0,0 +1,13 @@ +--- Makefile.orig 2012-02-16 14:38:27.110914820 +0100 ++++ Makefile 2012-02-16 14:38:56.615439410 +0100 +@@ -31,8 +31,8 @@ + $(CC) -o dlfcn.o -c dlfcn.c -Wall -O3 -fomit-frame-pointer + + libdl.a: dlfcn.o +- ar cru libdl.a dlfcn.o +- ranlib libdl.a ++ i686-pc-mingw32-ar cru libdl.a dlfcn.o ++ i686-pc-mingw32-ranlib libdl.a + + libdl.dll: dlfcn.o + $(CC) $(SHFLAGS) -shared -o libdl.dll dlfcn.o diff --git a/mingw32-dlfcn.spec b/mingw32-dlfcn.spec index 935b714..98898d9 100644 --- a/mingw32-dlfcn.spec +++ b/mingw32-dlfcn.spec @@ -1,8 +1,5 @@ %global __strip %{_mingw32_strip} %global __objdump %{_mingw32_objdump} -%global _use_internal_dependency_generator 0 -%global __find_requires %{_mingw32_findrequires} -%global __find_provides %{_mingw32_findprovides} %define __debug_install_post %{_mingw32_debug_install_post} %global realname dlfcn-win32 @@ -11,24 +8,24 @@ Name: mingw32-dlfcn Version: 0 -Release: 0.9.%{alphatag}%{?dist} +Release: 0.10.%{alphatag}%{?dist} Summary: Implements a wrapper for dlfcn (dlopen dlclose dlsym dlerror) License: LGPLv2+ Group: Development/Libraries URL: http://code.google.com/p/dlfcn-win32/ Source0: http://dlfcn-win32.googlecode.com/files/%{realname}-%{alphatag}.tar.bz2 -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -BuildRequires: mingw32-filesystem >= 52 +BuildRequires: mingw32-filesystem >= 68 BuildRequires: mingw32-gcc BuildRequires: mingw32-binutils #BuildRequires: dos2unix Patch1: dlfcn_configure.patch Patch2: dlfcn-fix-cplusplus-linkage.patch +Patch3: dlfcn-fix-static-lib.patch %description @@ -45,7 +42,7 @@ Group: Development/Libraries Static version of the MinGW Windows dlfcn library. -%{_mingw32_debug_package} +%{?_mingw32_debug_package} %prep @@ -57,6 +54,7 @@ Static version of the MinGW Windows dlfcn library. %patch1 -p1 %patch2 -p0 +%patch3 -p0 %build @@ -70,27 +68,24 @@ make %{?_smp_mflags} %install -rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install -%clean -rm -rf $RPM_BUILD_ROOT - - %files -%defattr(-,root,root,-) %doc README COPYING %{_mingw32_bindir}/libdl.dll %{_mingw32_libdir}/libdl.dll.a %{_mingw32_includedir}/dlfcn.h %files static -%defattr(-,root,root,-) %{_mingw32_libdir}/libdl.a %changelog +* Thu Feb 16 2012 Erik van Pienbroek - 0-0.10.r11 +- Make sure the static lib is compiled correctly (RHBZ #791191) +- Various cleanups + * Fri Jan 13 2012 Fedora Release Engineering - 0-0.9.r11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild From e04ed371ade9e52f8b085e24c2a687ddb36d658e Mon Sep 17 00:00:00 2001 From: Erik van Pienbroek Date: Mon, 27 Feb 2012 20:34:10 +0100 Subject: [PATCH 12/13] Rebuild against the mingw-w64 toolchain --- mingw32-dlfcn.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-dlfcn.spec b/mingw32-dlfcn.spec index 98898d9..3ca563a 100644 --- a/mingw32-dlfcn.spec +++ b/mingw32-dlfcn.spec @@ -8,7 +8,7 @@ Name: mingw32-dlfcn Version: 0 -Release: 0.10.%{alphatag}%{?dist} +Release: 0.11.%{alphatag}%{?dist} Summary: Implements a wrapper for dlfcn (dlopen dlclose dlsym dlerror) License: LGPLv2+ @@ -82,6 +82,9 @@ make DESTDIR=$RPM_BUILD_ROOT install %changelog +* Mon Feb 27 2012 Erik van Pienbroek - 0-0.11.r11 +- Rebuild against the mingw-w64 toolchain + * Thu Feb 16 2012 Erik van Pienbroek - 0-0.10.r11 - Make sure the static lib is compiled correctly (RHBZ #791191) - Various cleanups From 39e8d52559e7095b86d6f0456ba178c41a13e2ac Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Mon, 27 Feb 2012 22:07:50 +0200 Subject: [PATCH 13/13] Fixed the build with the mingw-w64 toolchain --- dlfcn-fix-static-lib.patch | 4 ++-- dlfcn_configure.patch | 8 ++++---- mingw32-dlfcn.spec | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/dlfcn-fix-static-lib.patch b/dlfcn-fix-static-lib.patch index b7cdabb..28b9ca4 100644 --- a/dlfcn-fix-static-lib.patch +++ b/dlfcn-fix-static-lib.patch @@ -6,8 +6,8 @@ libdl.a: dlfcn.o - ar cru libdl.a dlfcn.o - ranlib libdl.a -+ i686-pc-mingw32-ar cru libdl.a dlfcn.o -+ i686-pc-mingw32-ranlib libdl.a ++ i686-w64-mingw32-ar cru libdl.a dlfcn.o ++ i686-w64-mingw32-ranlib libdl.a libdl.dll: dlfcn.o $(CC) $(SHFLAGS) -shared -o libdl.dll dlfcn.o diff --git a/dlfcn_configure.patch b/dlfcn_configure.patch index 8a0e7db..2bfb062 100644 --- a/dlfcn_configure.patch +++ b/dlfcn_configure.patch @@ -3,10 +3,10 @@ diff -ruNp dlfcn-win32-r11/config.mak dlfcn-win32-r11.new/config.mak +++ dlfcn-win32-r11.new/config.mak 2009-01-02 12:08:15.000000000 -0200 @@ -0,0 +1,9 @@ +# Automatically generated by configure -+PREFIX=/usr/i686-pc-mingw32/sys-root/mingw -+libdir=/usr/i686-pc-mingw32/sys-root/mingw/lib -+incdir=/usr/i686-pc-mingw32/sys-root/mingw/include -+CC=i686-pc-mingw32-gcc ++PREFIX=/usr/i686-w64-mingw32/sys-root/mingw ++libdir=/usr/i686-w64-mingw32/sys-root/mingw/lib ++incdir=/usr/i686-w64-mingw32/sys-root/mingw/include ++CC=i686-w64-mingw32-gcc +BUILD_SHARED=yes +BUILD_STATIC=yes +BUILD_MSVC=no diff --git a/mingw32-dlfcn.spec b/mingw32-dlfcn.spec index 3ca563a..55c6deb 100644 --- a/mingw32-dlfcn.spec +++ b/mingw32-dlfcn.spec @@ -60,10 +60,10 @@ Static version of the MinGW Windows dlfcn library. %build %{_mingw32_configure} \ --incdir=%{_mingw32_includedir} \ - --cc=i686-pc-mingw32-gcc \ + --cc=i686-w64-mingw32-gcc \ --enable-shared=yes \ --enable-static=yes \ - --enable-strip=i686-pc-mingw32-strip + --enable-strip=i686-w64-mingw32-strip make %{?_smp_mflags}