init packages for openEuler
(cherry picked from commit b778762be9fda4066b126d48ec7e134e7b58a130)
This commit is contained in:
parent
62daa59d2d
commit
89d076ba92
BIN
qca-2.2.1.tar.xz
Normal file
BIN
qca-2.2.1.tar.xz
Normal file
Binary file not shown.
400
qca.spec
Normal file
400
qca.spec
Normal file
@ -0,0 +1,400 @@
|
||||
|
||||
%if 0%{?fedora}
|
||||
%global qt4 1
|
||||
%endif
|
||||
%global qt5 1
|
||||
|
||||
%if 0%{?fedora} > 26 || 0%{?rhel} > 7
|
||||
%global botan 1
|
||||
%endif
|
||||
|
||||
|
||||
Name: qca
|
||||
Summary: Qt Cryptographic Architecture
|
||||
Version: 2.2.1
|
||||
Release: 1
|
||||
|
||||
License: LGPLv2+
|
||||
URL: https://userbase.kde.org/QCA
|
||||
%if 0%{?snap}
|
||||
Source0: qca-%{version}-%{snap}git.tar.xz
|
||||
Source10: qca.sh
|
||||
%else
|
||||
Source0: http://download.kde.org/stable/qca/%{version}/qca-%{version}.tar.xz
|
||||
%endif
|
||||
|
||||
|
||||
BuildRequires: cmake >= 2.8.12
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: libgcrypt-devel
|
||||
%if 0%{?botan}
|
||||
BuildRequires: pkgconfig(botan-2)
|
||||
%else
|
||||
Obsoletes: qca-botan < %{version}-%{release}
|
||||
%endif
|
||||
BuildRequires: pkgconfig(libcrypto) pkgconfig(libssl)
|
||||
BuildRequires: pkgconfig(nss)
|
||||
BuildRequires: pkgconfig(libpkcs11-helper-1)
|
||||
BuildRequires: pkgconfig(libsasl2)
|
||||
%if 0%{?qt4}
|
||||
BuildRequires: pkgconfig(QtCore)
|
||||
%endif
|
||||
BuildRequires: doxygen
|
||||
BuildRequires: graphviz
|
||||
|
||||
Obsoletes: qca2 < 2.1.0
|
||||
Provides: qca2 = %{version}-%{release}
|
||||
Provides: qca2%{?_isa} = %{version}-%{release}
|
||||
|
||||
Recommends: %{name}-ossl%{?_isa}
|
||||
|
||||
%description
|
||||
Taking a hint from the similarly-named Java Cryptography Architecture,
|
||||
QCA aims to provide a straightforward and cross-platform crypto API,
|
||||
using Qt datatypes and conventions. QCA separates the API from the
|
||||
implementation, using plugins known as Providers. The advantage of this
|
||||
model is to allow applications to avoid linking to or explicitly depending
|
||||
on any particular cryptographic library. This allows one to easily change
|
||||
or upgrade crypto implementations without even needing to recompile the
|
||||
application!
|
||||
|
||||
%package devel
|
||||
Summary: Qt Cryptographic Architecture development files
|
||||
Obsoletes: qca2-devel < 2.1.0
|
||||
Provides: qca2-devel = %{version}-%{release}
|
||||
Provides: qca2-devel%{?_isa} = %{version}-%{release}
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
%description devel
|
||||
This packages contains the development files for QCA.
|
||||
|
||||
%package doc
|
||||
Summary: QCA API documentation
|
||||
BuildArch: noarch
|
||||
%description doc
|
||||
This package includes QCA API documentation in HTML
|
||||
|
||||
%package botan
|
||||
Summary: Botan plugin for the Qt Cryptographic Architecture
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
%description botan
|
||||
%{summary}.
|
||||
|
||||
%package cyrus-sasl
|
||||
Summary: Cyrus-SASL plugin for the Qt Cryptographic Architecture
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
%description cyrus-sasl
|
||||
%{summary}.
|
||||
|
||||
%package gcrypt
|
||||
Summary: Gcrypt plugin for the Qt Cryptographic Architecture
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
%description gcrypt
|
||||
%{summary}.
|
||||
|
||||
%package gnupg
|
||||
Summary: Gnupg plugin for the Qt Cryptographic Architecture
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
Requires: gnupg
|
||||
%description gnupg
|
||||
%{summary}.
|
||||
|
||||
%package logger
|
||||
Summary: Logger plugin for the Qt Cryptographic Architecture
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
%description logger
|
||||
%{summary}.
|
||||
|
||||
%package nss
|
||||
Summary: Nss plugin for the Qt Cryptographic Architecture
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
%description nss
|
||||
%{summary}.
|
||||
|
||||
%package ossl
|
||||
Summary: Openssl plugin for the Qt Cryptographic Architecture
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
%description ossl
|
||||
%{summary}.
|
||||
|
||||
%package pkcs11
|
||||
Summary: Pkcs11 plugin for the Qt Cryptographic Architecture
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
%description pkcs11
|
||||
%{summary}.
|
||||
|
||||
%package softstore
|
||||
Summary: Pkcs11 plugin for the Qt Cryptographic Architecture
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
%description softstore
|
||||
%{summary}.
|
||||
|
||||
%if 0%{?qt5}
|
||||
%package qt5
|
||||
Summary: Qt5 Cryptographic Architecture
|
||||
BuildRequires: pkgconfig(Qt5Core)
|
||||
%if ! 0%{?botan}
|
||||
Obsoletes: qca-qt5-botan < %{version}-%{release}
|
||||
%endif
|
||||
Recommends: %{name}-qt5-ossl%{?_isa}
|
||||
%description qt5
|
||||
Taking a hint from the similarly-named Java Cryptography Architecture,
|
||||
QCA aims to provide a straightforward and cross-platform crypto API,
|
||||
using Qt datatypes and conventions. QCA separates the API from the
|
||||
implementation, using plugins known as Providers. The advantage of this
|
||||
model is to allow applications to avoid linking to or explicitly depending
|
||||
on any particular cryptographic library. This allows one to easily change
|
||||
or upgrade crypto implementations without even needing to recompile the
|
||||
application!
|
||||
|
||||
%package qt5-devel
|
||||
Summary: Qt5 Cryptographic Architecture development files
|
||||
Requires: %{name}-qt5%{?_isa} = %{version}-%{release}
|
||||
%description qt5-devel
|
||||
%{summary}.
|
||||
|
||||
%package qt5-botan
|
||||
Summary: Botan plugin for the Qt5 Cryptographic Architecture
|
||||
Requires: %{name}-qt5%{?_isa} = %{version}-%{release}
|
||||
%description qt5-botan
|
||||
%{summary}.
|
||||
|
||||
%package qt5-cyrus-sasl
|
||||
Summary: Cyrus-SASL plugin for the Qt5 Cryptographic Architecture
|
||||
Requires: %{name}-qt5%{?_isa} = %{version}-%{release}
|
||||
%description qt5-cyrus-sasl
|
||||
%{summary}.
|
||||
|
||||
%package qt5-gcrypt
|
||||
Summary: Gcrypt plugin for the Qt5 Cryptographic Architecture
|
||||
Requires: %{name}-qt5%{?_isa} = %{version}-%{release}
|
||||
%description qt5-gcrypt
|
||||
%{summary}.
|
||||
|
||||
%package qt5-gnupg
|
||||
Summary: Gnupg plugin for the Qt Cryptographic Architecture
|
||||
Requires: %{name}-qt5%{?_isa} = %{version}-%{release}
|
||||
Requires: gnupg
|
||||
%description qt5-gnupg
|
||||
%{summary}.
|
||||
|
||||
%package qt5-logger
|
||||
Summary: Logger plugin for the Qt5 Cryptographic Architecture
|
||||
Requires: %{name}-qt5%{?_isa} = %{version}-%{release}
|
||||
%description qt5-logger
|
||||
%{summary}.
|
||||
|
||||
%package qt5-nss
|
||||
Summary: Nss plugin for the Qt5 Cryptographic Architecture
|
||||
Requires: %{name}-qt5%{?_isa} = %{version}-%{release}
|
||||
%description qt5-nss
|
||||
%{summary}.
|
||||
|
||||
%package qt5-ossl
|
||||
Summary: Openssl plugin for the Qt5 Cryptographic Architecture
|
||||
Requires: %{name}-qt5%{?_isa} = %{version}-%{release}
|
||||
%description qt5-ossl
|
||||
%{summary}.
|
||||
|
||||
%package qt5-pkcs11
|
||||
Summary: Pkcs11 plugin for the Qt5 Cryptographic Architecture
|
||||
Requires: %{name}-qt5%{?_isa} = %{version}-%{release}
|
||||
%description qt5-pkcs11
|
||||
%{summary}.
|
||||
|
||||
%package qt5-softstore
|
||||
Summary: Pkcs11 plugin for the Qt5 Cryptographic Architecture
|
||||
Requires: %{name}-qt5%{?_isa} = %{version}-%{release}
|
||||
%description qt5-softstore
|
||||
%{summary}.
|
||||
%endif
|
||||
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
|
||||
%build
|
||||
%if 0%{?qt5}
|
||||
mkdir %{_target_platform}-qt5
|
||||
pushd %{_target_platform}-qt5
|
||||
%{cmake} .. \
|
||||
-DQCA_BINARY_INSTALL_DIR:STRING=%{_bindir} \
|
||||
-DQCA_FEATURE_INSTALL_DIR:PATH=%{_qt5_archdatadir}/mkspecs/features \
|
||||
-DQCA_INCLUDE_INSTALL_DIR:PATH=%{_qt5_headerdir} \
|
||||
-DQCA_LIBRARY_INSTALL_DIR:PATH=%{_qt5_libdir} \
|
||||
-DQCA_PLUGINS_INSTALL_DIR:PATH=%{_qt5_plugindir} \
|
||||
-DQCA_PRIVATE_INCLUDE_INSTALL_DIR:PATH=%{_qt5_headerdir} \
|
||||
-DQT4_BUILD:BOOL=OFF
|
||||
popd
|
||||
|
||||
%make_build -C %{_target_platform}-qt5
|
||||
%endif
|
||||
|
||||
%if 0%{?qt4}
|
||||
mkdir %{_target_platform}
|
||||
pushd %{_target_platform}
|
||||
%{cmake} .. \
|
||||
-DQCA_DOC_INSTALL_DIR:PATH=%{_docdir}/qca \
|
||||
-DQCA_BINARY_INSTALL_DIR:STRING=%{_bindir} \
|
||||
-DQCA_FEATURE_INSTALL_DIR:PATH=%{_qt4_prefix}/mkspecs/features \
|
||||
-DQCA_INCLUDE_INSTALL_DIR:PATH=%{_qt4_headerdir} \
|
||||
-DQCA_LIBRARY_INSTALL_DIR:PATH=%{_qt4_libdir} \
|
||||
-DQCA_PLUGINS_INSTALL_DIR:PATH=%{_qt4_plugindir} \
|
||||
-DQCA_PRIVATE_INCLUDE_INSTALL_DIR:PATH=%{_qt4_headerdir} \
|
||||
-DQT4_BUILD:BOOL=ON
|
||||
popd
|
||||
|
||||
%make_build -C %{_target_platform}
|
||||
|
||||
%make_build doc -C %{_target_platform}
|
||||
%endif
|
||||
|
||||
|
||||
%install
|
||||
%if 0%{?qt5}
|
||||
make install/fast DESTDIR=%{buildroot} -C %{_target_platform}-qt5
|
||||
%endif
|
||||
%if 0%{?qt4}
|
||||
make install/fast DESTDIR=%{buildroot} -C %{_target_platform}
|
||||
|
||||
# no make install target for docs yet
|
||||
mkdir -p %{buildroot}%{_docdir}/qca
|
||||
cp -a %{_target_platform}/apidocs/html/ \
|
||||
%{buildroot}%{_docdir}/qca/
|
||||
%endif
|
||||
|
||||
|
||||
%check
|
||||
export CTEST_OUTPUT_ON_FAILURE=1
|
||||
export PKG_CONFIG_PATH=%{buildroot}%{_libdir}/pkgconfig
|
||||
%ifnarch %{arm} ppc64 s390x
|
||||
%if 0%{?qt4}
|
||||
test "$(pkg-config --modversion qca2)" = "%{version}"
|
||||
make test ARGS="--timeout 180 --output-on-failure" -C %{_target_platform} ||:
|
||||
%endif
|
||||
%if 0%{?qt5}
|
||||
test "$(pkg-config --modversion qca2-qt5)" = "%{version}"
|
||||
make test ARGS="--timeout 180 --output-on-failure" -C %{_target_platform}-qt5
|
||||
%endif
|
||||
%endif
|
||||
|
||||
|
||||
%if 0%{?qt4}
|
||||
%ldconfig_scriptlets
|
||||
|
||||
%files
|
||||
%doc README TODO
|
||||
%license COPYING
|
||||
%{_qt4_libdir}/libqca.so.2*
|
||||
%{_bindir}/mozcerts
|
||||
%{_bindir}/qcatool
|
||||
%{_mandir}/man1/qcatool.1*
|
||||
%dir %{_qt4_plugindir}/crypto/
|
||||
%exclude %{_docdir}/qca/html/
|
||||
|
||||
%files doc
|
||||
%{_docdir}/qca/html/
|
||||
|
||||
%files devel
|
||||
%{_qt4_headerdir}/QtCrypto
|
||||
%{_qt4_libdir}/libqca.so
|
||||
%{_libdir}/pkgconfig/qca2.pc
|
||||
%{_libdir}/cmake/Qca/
|
||||
%{_qt4_prefix}/mkspecs/features/crypto.prf
|
||||
|
||||
%files botan
|
||||
%doc plugins/qca-botan/README
|
||||
%{_qt4_plugindir}/crypto/libqca-botan.so
|
||||
|
||||
%files cyrus-sasl
|
||||
%doc plugins/qca-gcrypt/README
|
||||
%{_qt4_plugindir}/crypto/libqca-cyrus-sasl.so
|
||||
|
||||
%files gcrypt
|
||||
%{_qt4_plugindir}/crypto/libqca-gcrypt.so
|
||||
|
||||
%files gnupg
|
||||
%doc plugins/qca-cyrus-sasl/README
|
||||
%{_qt4_plugindir}/crypto/libqca-gnupg.so
|
||||
|
||||
%files logger
|
||||
%doc plugins/qca-logger/README
|
||||
%{_qt4_plugindir}/crypto/libqca-logger.so
|
||||
|
||||
%files nss
|
||||
%doc plugins/qca-nss/README
|
||||
%{_qt4_plugindir}/crypto/libqca-nss.so
|
||||
|
||||
%files ossl
|
||||
%doc plugins/qca-ossl/README
|
||||
%{_qt4_plugindir}/crypto/libqca-ossl.so
|
||||
|
||||
%files pkcs11
|
||||
%doc plugins/qca-pkcs11/README
|
||||
%{_qt4_plugindir}/crypto/libqca-pkcs11.so
|
||||
|
||||
%files softstore
|
||||
%doc plugins/qca-softstore/README
|
||||
%{_qt4_plugindir}/crypto/libqca-softstore.so
|
||||
%endif
|
||||
|
||||
%if 0%{?qt5}
|
||||
%ldconfig_scriptlets qt5
|
||||
|
||||
%files qt5
|
||||
%doc README TODO
|
||||
%license COPYING
|
||||
%{_bindir}/mozcerts-qt5
|
||||
%{_bindir}/qcatool-qt5
|
||||
%{_mandir}/man1/qcatool-qt5.1*
|
||||
%{_qt5_libdir}/libqca-qt5.so.2*
|
||||
%dir %{_qt5_plugindir}/crypto/
|
||||
|
||||
%files qt5-devel
|
||||
%{_qt5_headerdir}/QtCrypto
|
||||
%{_qt5_libdir}/libqca-qt5.so
|
||||
%{_libdir}/pkgconfig/qca2-qt5.pc
|
||||
%{_libdir}/cmake/Qca-qt5/
|
||||
%{_qt5_archdatadir}/mkspecs/features/crypto.prf
|
||||
|
||||
%files qt5-botan
|
||||
%doc plugins/qca-botan/README
|
||||
%{_qt5_plugindir}/crypto/libqca-botan.so
|
||||
|
||||
%files qt5-cyrus-sasl
|
||||
%doc plugins/qca-gcrypt/README
|
||||
%{_qt5_plugindir}/crypto/libqca-cyrus-sasl.so
|
||||
|
||||
%files qt5-gcrypt
|
||||
%{_qt5_plugindir}/crypto/libqca-gcrypt.so
|
||||
|
||||
%files qt5-gnupg
|
||||
%doc plugins/qca-cyrus-sasl/README
|
||||
%{_qt5_plugindir}/crypto/libqca-gnupg.so
|
||||
|
||||
%files qt5-logger
|
||||
%doc plugins/qca-logger/README
|
||||
%{_qt5_plugindir}/crypto/libqca-logger.so
|
||||
|
||||
%files qt5-nss
|
||||
%doc plugins/qca-nss/README
|
||||
%{_qt5_plugindir}/crypto/libqca-nss.so
|
||||
|
||||
%files qt5-ossl
|
||||
%doc plugins/qca-ossl/README
|
||||
%{_qt5_plugindir}/crypto/libqca-ossl.so
|
||||
|
||||
%files qt5-pkcs11
|
||||
%doc plugins/qca-pkcs11/README
|
||||
%{_qt5_plugindir}/crypto/libqca-pkcs11.so
|
||||
|
||||
%files qt5-softstore
|
||||
%doc plugins/qca-softstore/README
|
||||
%{_qt5_plugindir}/crypto/libqca-softstore.so
|
||||
%endif
|
||||
|
||||
|
||||
%changelog
|
||||
* Fri Feb 18 2022 tanyulong <tanyulong@kylinos.cn> - 2.2.1-1
|
||||
- init packages for openEuler
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user