X-Git-Url: http://git.pld-linux.org/gitweb.cgi?a=blobdiff_plain;f=openssl.spec;h=76b81b3a5d4c82023a9e2035642414ad2c1b60ff;hb=b3914c8051c0b58959caadfdca4d9a737627cda3;hp=f8ef076eb996ccae7d3bd1dabcfb55837f52019e;hpb=7685574880e50c8ab8a2d0cf11ee268c8bd3f524;p=packages%2Fopenssl.git diff --git a/openssl.spec b/openssl.spec index f8ef076..76b81b3 100644 --- a/openssl.spec +++ b/openssl.spec @@ -1,14 +1,18 @@ # TODO # - consider dropping last optflags.patch hunk and return to SOMAJOR (.so.1) sonames +# - find a way to simplify (drop) openssl-optflags.patch, it's pain to update here in pld +# - pass our cflags (currently built with -O3) # # Conditional build: %bcond_without tests # don't perform "make tests" %bcond_without zlib # zlib: note - enables CVE-2012-4929 vulnerability %bcond_without sslv2 # SSLv2: note - many flaws http://en.wikipedia.org/wiki/Transport_Layer_Security#SSL_2.0 %bcond_without sslv3 # SSLv3: note - enables CVE-2014-3566 vulnerability -%bcond_with purify # Compile openssl with \-DPURIFY, useful when one wants to +%bcond_with purify # Compile openssl with "-DPURIFY", useful when one wants to # use valgrind debugger against openssl-linked programs +%bcond_with snap # use GitHub snapshot to build branch release +%define rel 0.1 %include /usr/lib/rpm/macros.perl Summary: OpenSSL Toolkit libraries for the "Secure Sockets Layer" (SSL v2/v3) Summary(de.UTF-8): Secure Sockets Layer (SSL)-Kommunikationslibrary @@ -19,12 +23,18 @@ Summary(pt_BR.UTF-8): Uma biblioteca C que fornece vários algoritmos e protocol Summary(ru.UTF-8): Библиотеки и утилиты для соединений через Secure Sockets Layer Summary(uk.UTF-8): Бібліотеки та утиліти для з'єднань через Secure Sockets Layer Name: openssl -Version: 1.0.2 -Release: 1 +# Version 1.1.0 will be supported until 2018-08-31. +# https://www.openssl.org/about/releasestrat.html +Version: 1.1.0a +Release: 0.1 License: Apache-like Group: Libraries +%if %{without snap} Source0: ftp://ftp.openssl.org/source/%{name}-%{version}.tar.gz -# Source0-md5: 38373013fc85c790aabf8837969c5eba +# Source0-md5: dbef70de4a1a4bdd78ab7c6547e5211d +%else +Source1: https://github.com/openssl/openssl/archive/OpenSSL_1_1_0-stable/%{name}-%{version}-dev.tar.gz +%endif Source2: %{name}.1.pl Source3: %{name}-ssl-certificate.sh Source4: %{name}-c_rehash.sh @@ -37,21 +47,27 @@ Patch5: %{name}-ca-certificates.patch Patch6: %{name}-ldflags.patch Patch7: %{name}-find.patch Patch8: pic.patch -Patch9: stddef.patch Patch10: %{name}_fix_for_x32.patch +Patch11: engines-dir.patch URL: http://www.openssl.org/ -BuildRequires: bc -BuildRequires: perl-devel >= 1:5.6.1 +BuildRequires: perl-devel >= 1:5.10.0 +BuildRequires: pkgconfig BuildRequires: rpm-perlprov >= 4.1-13 BuildRequires: rpmbuild(macros) >= 1.213 BuildRequires: sed >= 4.0 -Requires: ca-certificates >= 20080809-4 +BuildRequires: zlib-devel +Requires: ca-certificates >= 20120623-1.1 Requires: rpm-whiteout >= 1.7 Obsoletes: SSLeay Obsoletes: SSLeay-devel Obsoletes: SSLeay-perl Obsoletes: libopenssl0 -%if "%{pld_release}" != "ac" +%if "%{pld_release}" == "ac" +Conflicts: neon < 0.26.3-3 +Conflicts: ntpd < 4.2.4p8-10 +Conflicts: openssh-clients < 2:5.8p1-9 +Conflicts: openssh-server < 2:5.8p1-9 +%else Conflicts: neon < 0.29.6-8 Conflicts: openssh-clients < 2:6.2p2-3 Conflicts: openssh-server < 2:6.2p2-3 @@ -246,37 +262,43 @@ RC4, RSA и SSL. Включает статические библиотеки д бібліотеки для розробки програм з використанням SSL. %prep -%setup -q -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 +%if %{with snap} +%setup -qcT -a1 +mv %{name}-OpenSSL_1_1_0-stable/* . +%else +%setup -q %{?subver:-n %{name}-%{version}-%{subver}} +%endif +#%patch0 -p1 # alpha patch from year 2000 - drop it +#%patch1 -p1 # flags list has been nuked (thank god!) +#%patch2 -p1 # openssl include subdir. check this +#%patch3 -p1 # patched Makefile.org no longer exists +#%patch4 -p1 # patched Makefile.org no longer exists +#%patch5 -p1 # check +#%patch6 -p1 # patched Makefile.org no longer exists %patch7 -p1 %patch8 -p1 -%patch9 -p1 +%ifarch x32 %patch10 -p1 - -sed -i -e 's|\$prefix/\$libdir/engines|/%{_lib}/engines|g' Configure +%endif +%patch11 -p1 %build touch Makefile.* -%{__perl} util/perlpath.pl %{__perl} +# util/perlpath.pl no longer exists +#%{__perl} util/perlpath.pl %{__perl} OPTFLAGS="%{rpmcflags} %{rpmcppflags} %{?with_purify:-DPURIFY}" \ PERL="%{__perl}" \ %{__perl} ./Configure \ + --prefix=%{_prefix} \ --openssldir=%{_sysconfdir}/%{name} \ --libdir=%{_lib} \ shared \ threads \ - %{!?with_sslv2:no-ssl2} \ - %{!?with_sslv3:no-ssl3} \ + %{?with_sslv2:enable-ssl2}%{!?with_sslv2:no-ssl2} \ + %{?with_sslv3:enable-ssl3}%{!?with_sslv3:no-ssl3} \ %{!?with_zlib:no-}zlib \ - enable-camelia \ enable-cms \ enable-idea \ enable-md2 \ @@ -284,7 +306,6 @@ PERL="%{__perl}" \ enable-rc5 \ enable-rfc3779 \ enable-seed \ - enable-tlsext \ %ifarch %{x8664} enable-ec_nistp_64_gcc_128 \ %endif @@ -327,7 +348,10 @@ PERL="%{__perl}" \ linux-armv4 %endif -%{__make} -j1 all rehash %{?with_tests:tests} \ +v=$(awk -F= '/^VERSION/{print $2}' Makefile) +test "$v" = %{version}%{?subver:-%{subver}}%{?with_snap:-dev} + +%{__make} -j1 all %{?with_tests:tests} \ CC="%{__cc}" \ ASFLAG='$(CFLAG) -Wa,--noexecstack' \ INSTALLTOP=%{_prefix} @@ -349,24 +373,25 @@ done rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_libdir}/%{name}} \ $RPM_BUILD_ROOT{%{_mandir}/{pl/man1,man{1,3,5,7}},%{_datadir}/ssl} \ - $RPM_BUILD_ROOT/%{_lib}/engines \ $RPM_BUILD_ROOT%{_pkgconfigdir} %{__make} -j1 install \ - INSTALLTOP=%{_prefix} \ - INSTALL_PREFIX=$RPM_BUILD_ROOT \ - MANDIR=%{_mandir} + CC="%{__cc}" \ + ASFLAG='$(CFLAG) -Wa,--noexecstack' \ + DESTDIR=$RPM_BUILD_ROOT \ -mv -f $RPM_BUILD_ROOT%{_libdir}/engines/* $RPM_BUILD_ROOT/%{_lib}/engines mv -f $RPM_BUILD_ROOT%{_libdir}/lib*.so.*.* $RPM_BUILD_ROOT/%{_lib} ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libcrypto.*.*) $RPM_BUILD_ROOT%{_libdir}/libcrypto.so ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libssl.*.*) $RPM_BUILD_ROOT%{_libdir}/libssl.so mv -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name} -rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/misc +rm -r $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/misc + +# html version of man pages - not packaged +%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}/html/man[1357] # not installed as individual utilities (see openssl dgst instead) -%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/{dss1,md2,md4,md5,mdc2,ripemd160,sha,sha1,sha224,sha256,sha384,sha512}.1 +%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/{md4,md5,mdc2,ripemd160,sha,sha1,sha224,sha256,sha384,sha512}.1 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/pl/man1/openssl.1 install -p %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/ssl-certificate @@ -403,19 +428,18 @@ fi %files %defattr(644,root,root,755) -%doc CHANGES CHANGES.SSLeay LICENSE NEWS README doc/*.txt -%doc doc/openssl_button.gif doc/openssl_button.html -%attr(755,root,root) /%{_lib}/libcrypto.so.*.*.* -%attr(755,root,root) /%{_lib}/libssl.so.*.*.* +%doc CHANGES LICENSE NEWS README doc/*.txt +%attr(755,root,root) /%{_lib}/libcrypto.so.*.* +%attr(755,root,root) /%{_lib}/libssl.so.*.* %dir %{_sysconfdir}/%{name} %dir %{_sysconfdir}/%{name}/certs -%dir %{_sysconfdir}/%{name}/private +%dir %attr(700,root,root) %{_sysconfdir}/%{name}/private %dir %{_datadir}/ssl %files engines %defattr(644,root,root,755) -%dir /%{_lib}/engines -%attr(755,root,root) /%{_lib}/engines/*.so +%dir /%{_lib}/engines-1.1 +%attr(755,root,root) /%{_lib}/engines-1.1/*.so %files tools %defattr(644,root,root,755) @@ -425,11 +449,11 @@ fi %attr(754,root,root) %{_bindir}/ssl-certificate %dir %{_libdir}/%{name} -%attr(755,root,root) %{_libdir}/%{name}/CA.sh -%attr(755,root,root) %{_libdir}/%{name}/c_hash -%attr(755,root,root) %{_libdir}/%{name}/c_info -%attr(755,root,root) %{_libdir}/%{name}/c_issuer -%attr(755,root,root) %{_libdir}/%{name}/c_name +#%attr(755,root,root) %{_libdir}/%{name}/CA.sh +#%attr(755,root,root) %{_libdir}/%{name}/c_hash +#%attr(755,root,root) %{_libdir}/%{name}/c_info +#%attr(755,root,root) %{_libdir}/%{name}/c_issuer +#%attr(755,root,root) %{_libdir}/%{name}/c_name %{_mandir}/man1/openssl.1* %{_mandir}/man1/openssl_asn1parse.1* @@ -484,7 +508,7 @@ fi %attr(755,root,root) %{_libdir}/%{name}/CA.pl %attr(755,root,root) %{_libdir}/%{name}/tsget %{_mandir}/man1/openssl_CA.pl.1* -%{_mandir}/man1/openssl_c_rehash.1* +#%{_mandir}/man1/openssl_c_rehash.1* %files devel %defattr(644,root,root,755) @@ -494,8 +518,13 @@ fi %{_pkgconfigdir}/libcrypto.pc %{_pkgconfigdir}/libssl.pc %{_pkgconfigdir}/openssl.pc +%if 1 +%{_mandir}/man3/*.3* +%{_mandir}/man7/*.7* +%else %{_mandir}/man3/openssl*.3* %{_mandir}/man7/openssl_des_modes.7* +%endif %files static %defattr(644,root,root,755)