X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=openssl%2Fmingw32-openssl.spec;fp=openssl%2Fmingw32-openssl.spec;h=fb6e28b96fdbc401475c8122686202b2030a35b4;hb=3a8181459ea2c1a6b62ce60be2f43c052f040799;hp=0000000000000000000000000000000000000000;hpb=90bb28e6fc23fae2d055da670f7840883be3d275;p=fedora-mingw.git diff --git a/openssl/mingw32-openssl.spec b/openssl/mingw32-openssl.spec new file mode 100644 index 0000000..fb6e28b --- /dev/null +++ b/openssl/mingw32-openssl.spec @@ -0,0 +1,232 @@ +%define __strip %{_mingw32_strip} +%define __objdump %{_mingw32_objdump} +%define _use_internal_dependency_generator 0 +%define __find_requires %{_mingw32_findrequires} +%define __find_provides %{_mingw32_findprovides} + +Name: mingw32-openssl +Version: 0.9.8g +Release: 1%{?dist} +Summary: MinGW port of the OpenSSL toolkit + +License: OpenSSL +Group: Development/Libraries +URL: http://www.openssl.org/ + +# Use the hobble-openssl script to create the source file. +Source0: openssl-%{version}-usa.tar.bz2 + +Source1: hobble-openssl +Source2: Makefile.certificate +Source6: make-dummy-cert +Source8: openssl-thread-test.c +Source9: opensslconf-new.h +Source10: opensslconf-new-warning.h + +# Patches from Fedora native package. +Patch0: openssl-0.9.8g-redhat.patch +Patch1: openssl-0.9.8a-defaults.patch +Patch2: openssl-0.9.8a-link-krb5.patch +Patch3: openssl-0.9.8g-soversion.patch +Patch4: openssl-0.9.8a-enginesdir.patch +Patch5: openssl-0.9.8a-no-rpath.patch +Patch6: openssl-0.9.8b-test-use-localhost.patch +Patch7: openssl-0.9.8g-shlib-version.patch +Patch21: openssl-0.9.8b-aliasing-bug.patch +Patch22: openssl-0.9.8b-x509-name-cmp.patch +Patch23: openssl-0.9.8g-default-paths.patch +Patch24: openssl-0.9.8g-no-extssl.patch +Patch32: openssl-0.9.8g-ia64.patch +Patch33: openssl-0.9.7f-ca-dir.patch +Patch34: openssl-0.9.6-x509.patch +Patch35: openssl-0.9.7-beta5-version-add-engines.patch +Patch38: openssl-0.9.8a-reuse-cipher-change.patch +# Disabled this because it uses getaddrinfo which is lacking on Windows. +#Patch39: openssl-0.9.8g-ipv6-apps.patch +Patch50: openssl-0.9.8g-speed-bug.patch +Patch51: openssl-0.9.8g-bn-mul-bug.patch +Patch52: openssl-0.9.8g-cve-2008-0891.patch +Patch53: openssl-0.9.8g-cve-2008-1671.patch + +# MinGW-specific patches. +Patch100: mingw32-openssl-0.9.8g-header-files.patch +Patch101: mingw32-openssl-0.9.8g-configure.patch +Patch102: mingw32-openssl-0.9.8g-shared.patch +Patch103: mingw32-openssl-0.9.8g-global.patch + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +BuildArch: noarch + +BuildRequires: mingw32-filesystem >= 26 +BuildRequires: mingw32-gcc +BuildRequires: mingw32-binutils + +BuildRequires: mingw32-zlib + +BuildRequires: mktemp +#BuildRequires: krb5-devel +BuildRequires: perl +BuildRequires: sed +BuildRequires: /usr/bin/cmp +BuildRequires: /usr/bin/rename + +# Required to run the tests. +BuildRequires: wine +BuildRequires: xorg-x11-server-Xvfb + +#Requires: ca-certificates >= 2008-5 +Requires: pkgconfig + + +%description +The OpenSSL toolkit provides support for secure communications between +machines. OpenSSL includes a certificate management tool and shared +libraries which provide various cryptographic algorithms and +protocols. + +This package contains Windows (MinGW) libraries and development tools. + + +%prep +%setup -q -n openssl-%{version} + +%{SOURCE1} > /dev/null +%patch0 -p1 -b .redhat +%patch1 -p1 -b .defaults +# Fix link line for libssl (bug #111154). +%patch2 -p1 -b .krb5 +%patch3 -p1 -b .soversion +%patch4 -p1 -b .enginesdir +%patch5 -p1 -b .no-rpath +%patch6 -p1 -b .use-localhost +%patch7 -p1 -b .shlib-version + +%patch21 -p1 -b .aliasing-bug +%patch22 -p1 -b .name-cmp +%patch23 -p1 -b .default-paths +%patch24 -p1 -b .no-extssl + +%patch32 -p1 -b .ia64 +#patch33 is applied after make test +%patch34 -p1 -b .x509 +%patch35 -p1 -b .version-add-engines +%patch38 -p1 -b .cipher-change +#%patch39 -p1 -b .ipv6-apps +%patch50 -p1 -b .speed-bug +%patch51 -p1 -b .bn-mul-bug +%patch52 -p0 -b .srvname-crash +%patch53 -p0 -b .srv-kex-crash + +%patch100 -p1 -b .mingw-header-files +%patch101 -p1 -b .mingw-configure +%patch102 -p1 -b .mingw-shared +%patch103 -p1 -b .mingw-global + +# Modify the various perl scripts to reference perl in the right location. +perl util/perlpath.pl `dirname %{__perl}` + +# Generate a table with the compile settings for my perusal. +touch Makefile +make TABLE PERL=%{__perl} + + +%build + +cat > gcc </dev/null 2>&1 ; then + iconv -f ISO-8859-1 -t UTF-8 -o CHANGES.utf8 CHANGES && \ + mv -f CHANGES.utf8 CHANGES +fi + + +%install +rm -rf $RPM_BUILD_ROOT +exit 1 +make DESTDIR=$RPM_BUILD_ROOT install + +# Remove static libraries but DON'T remove *.dll.a files. +rm $RPM_BUILD_ROOT%{_mingw32_libdir}/libfoo.a + + +%clean +rm -rf $RPM_BUILD_ROOT + + +%files +%defattr(-,root,root) +%{_mingw32_bindir}/foo.dll +%{_mingw32_libdir}/foo.dll.a +# etc. + + +%changelog +* Wed Sep 24 2008 Your Name - 1.2.3-1 +- Initial RPM release.