qjson/qjson.spec

150 lines
3.2 KiB
RPMSpec
Raw Normal View History

2020-07-23 11:25:28 +08:00
%if 0%{?fedora} || 0%{?rhel} > 6
%global qt5 1
%endif
Name: qjson
Version: 0.9.0
2021-12-20 10:08:10 +08:00
Release: 9
2020-07-23 11:25:28 +08:00
Summary: A qt-based library that maps JSON data to QVariant objects
License: GPLv2+
URL: https://github.com/flavio/qjson
%if 0%{?commit0:1}
Source0: https://github.com/flavio/qjson/archive/%{commit0}.tar.gz#/%{name}-%{shortcommit0}.tar.gz
%else
Source0: https://github.com/flavio/qjson/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
%endif
## upstreamable patches
Patch100: qjson-0.9.0-static.patch
BuildRequires: cmake >= 2.8.8
BuildRequires: doxygen
BuildRequires: pkgconfig(QtCore)
%if 0%{?qt5}
BuildRequires: pkgconfig(Qt5Core)
%endif
# %%check
BuildRequires: xorg-x11-server-Xvfb
%description
JSON is a lightweight data-interchange format. It can represents integer, real
number, string, an ordered sequence of value, and a collection of
name/value pairs.QJson is a qt-based library that maps JSON data to
QVariant objects.
%package devel
Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
%{summary}.
%package qt5
Summary: A Qt5-based barcode abstraction library
%description qt5
%{summary}.
%package qt5-devel
Summary: Development files for %{name}-qt5
Requires: %{name}-qt5%{?_isa} = %{version}-%{release}
%description qt5-devel
%{summary}.
%prep
%setup -q %{?commit0:-n %{name}-%{commit0}}
%patch100 -p1 -b .static
%build
mkdir %{_target_platform}
pushd %{_target_platform}
%{cmake} .. \
-DQJSON_BUILD_TESTS:BOOL=ON \
-DQT4_BUILD:BOOL=ON
make %{?_smp_mflags}
popd
%if 0%{?qt5}
mkdir %{_target_platform}-qt5
pushd %{_target_platform}-qt5
%{cmake} .. \
-DQJSON_BUILD_TESTS:BOOL=ON \
-DQT4_BUILD:BOOL=OFF
make %{?_smp_mflags}
popd
%endif
# build docs
pushd doc
doxygen
popd
%install
%if 0%{?qt5}
make install/fast DESTDIR=%{buildroot} -C %{_target_platform}-qt5
%endif
make install/fast DESTDIR=%{buildroot} -C %{_target_platform}
%check
export PKG_CONFIG_PATH=%{buildroot}%{_datadir}/pkgconfig:%{buildroot}%{_libdir}/pkgconfig
test "$(pkg-config --modversion QJson)" = "%{version}"
export CTEST_OUTPUT_ON_FAILURE=1
xvfb-run -a make test -C %{_target_platform} ||:
%if 0%{?qt5}
test "$(pkg-config --modversion QJson-qt5)" = "%{version}"
xvfb-run -a make test -C %{_target_platform}-qt5 ||:
%endif
%ldconfig_scriptlets
%files
%license COPYING.lib
%doc README.md README.license
%{_libdir}/libqjson.so.%{version}
%{_libdir}/libqjson.so.0*
%files devel
%doc doc/html
%{_includedir}/qjson/
%{_libdir}/libqjson.so
%{_libdir}/pkgconfig/QJson.pc
%dir %{_libdir}/cmake
%{_libdir}/cmake/qjson/
%if 0%{?qt5}
%files qt5
%license COPYING.lib
%doc README.md README.license
%{_libdir}/libqjson-qt5.so.%{version}
%{_libdir}/libqjson-qt5.so.0*
%files qt5-devel
%doc doc/html
%{_includedir}/qjson-qt5/
%{_libdir}/libqjson-qt5.so
%{_libdir}/pkgconfig/QJson-qt5.pc
%dir %{_libdir}/cmake
%{_libdir}/cmake/qjson-qt5/
%endif
%changelog
2021-12-20 10:08:10 +08:00
* Mon Dec 20 2021 tanyulong <tanyulong@kylinos.cn> - 0.9.0-9
- remove Annotation in spec files
2021-12-13 10:48:46 +08:00
* Mon Dec 13 2021 huayadong <huayadong@kylinos.cn> - 0.9.0-8
- remove %{?dist}
2020-07-23 11:25:28 +08:00
* Thu Jul 23 2020 Zhao Yang <yangzhao1@kylinos.cn> - 0.9.0-7
- Initial release for OpenEuler