json-c/json-c.spec

136 lines
3.4 KiB
RPMSpec
Raw Normal View History

2019-09-30 10:54:03 -04:00
%{!?_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
2020-08-26 20:39:04 +08:00
%global so_ver 5
%global reldate 20200726
2019-09-30 10:54:03 -04:00
Name: json-c
2020-08-26 20:39:04 +08:00
Version: 0.15
2023-03-17 07:30:39 +00:00
Release: 5
2019-09-30 10:54:03 -04:00
Summary: JSON implementation in C
License: MIT
URL: https://github.com/%{name}/%{name}
Source0: %{url}/archive/%{name}-%{version}-%{reldate}.tar.gz
BuildRequires: cmake gcc ninja-build
2019-09-30 10:54:03 -04:00
Patch6000: backport-json-escape-str-avoid-harmless-unsigned-integer-overflow.patch
2019-09-30 10:54:03 -04:00
%description
JSON-C implements a reference counting object model that allows you
to easily construct JSON objects in C, output them as JSON formatted
strings and parse JSON formatted strings back into the C representation
of JSON objects. It aims to conform to RFC 7159.
%package devel
Summary: Development files for %{name}
Requires: %{name}%{?_isa} == %{version}-%{release}
%description devel
This package contains libraries and header files for
developing applications that use %{name}.
%package help
Summary: Reference manual for json-c
BuildArch: noarch
BuildRequires: doxygen hardlink
Provides: %{name}-doc = %{version}-%{release}
Obsoletes: %{name}-doc = %{version}-%{release}
%description help
This package contains the reference manual for %{name}.
%prep
2020-08-26 20:39:04 +08:00
%autosetup -n %{name}-%{name}-%{version}-%{reldate} -p 1
# Remove pre-built html documentation.
rm -fr doc/html
# Update Doxyfile.
doxygen -s -u doc/Doxyfile.in
2019-09-30 10:54:03 -04:00
%build
2020-08-26 20:39:04 +08:00
%cmake \
-DBUILD_STATIC_LIBS:BOOL=OFF \
-DCMAKE_BUILD_TYPE:STRING=RELEASE \
-DCMAKE_C_FLAGS_RELEASE:STRING="" \
-DDISABLE_BSYMBOLIC:BOOL=OFF \
-DDISABLE_WERROR:BOOL=ON \
-DENABLE_RDRAND:BOOL=ON \
-DENABLE_THREADING:BOOL=ON \
-G Ninja\
%{!?__cmake_in_source_build:-S "%{_vpath_srcdir}"} \
%{!?__cmake_in_source_build:-B "%{_vpath_builddir}"} \
%__cmake --build "%{_vpath_builddir}" %{?_smp_mflags} --verbose --target all doc
#%cmake_build
2023-03-17 07:30:39 +00:00
%check
%ninja_test -C %{_vpath_builddir}
2020-08-26 20:39:04 +08:00
2019-09-30 10:54:03 -04:00
%install
2020-08-26 20:39:04 +08:00
#%cmake_install
DESTDIR="%{buildroot}" %__cmake --install "%{_vpath_builddir}"
2019-09-30 10:54:03 -04:00
2020-08-26 20:39:04 +08:00
mkdir -p %{buildroot}%{_pkgdocdir}
hardlink -cfv %{buildroot}%{_pkgdocdir}
2019-09-30 10:54:03 -04:00
%pretrans devel -p <lua>
path = "%{_includedir}/%{name}"
st = posix.stat(path)
if st and st.type == "link" then
os.remove(path)
end
2019-09-30 10:54:03 -04:00
%ldconfig_scriptlets
%files
%license AUTHORS COPYING
%{_libdir}/lib%{name}.so.%{so_ver}*
%files devel
%{_includedir}/%{name}/
2020-08-26 20:39:04 +08:00
%{_libdir}/cmake/%{name}
2019-09-30 10:54:03 -04:00
%{_libdir}/lib%{name}.so
%{_libdir}/pkgconfig/%{name}.pc
%files help
%doc %{_pkgdocdir}
%changelog
2023-03-17 07:30:39 +00:00
* Fri Mar 17 2023 chenhaixing <chenhaixing@huawei.com> - 0.15-5
- CVE:NA
- SUG:NA
- DESC:json-c:enable DT
* Sat Sep 3 2022 zhangrui <zhangrui182@huawei.com> - 0.15-4
- add remove unlink file in pretrans devel
* Tue Aug 30 2022 zhouwenpei <zhouwenpei1@h-partners> - 0.15-3
- delete old so files
* Mon May 9 2022 wuchaochao <cyanrose@yeah.net> - 0.15-2
- add backport-json-escape-str-avoid-harmless-unsigned-integer-overflow.patch
2020-08-26 20:39:04 +08:00
* Thu Aug 20 2020 jinzhimin <jinzhimin2@huawei.com> - 0.15-1
- update to 0.15
2020-05-22 14:27:37 +08:00
* Fri May 22 2020 ruanweidong <ruanweidong1@huawei.com> -0.13.1-7
- fix CVE-2020-12762
2020-03-21 20:19:49 +08:00
* Sat Mar 21 2020 songnannan <songnannan2@huawei.com> - 0.13.1-6
- delete the check
2020-03-03 17:22:14 +08:00
* Tue Mar 3 2020 songnannan<songnannan2@huawei.com> - 0.13.1-5
- bugfix in oss-fuzz
2019-09-30 10:54:03 -04:00
* Thu Sep 19 2019 openEuler Buildteam <buildteam@openeuler.org> - 0.13.1-4
- Package init