%if 0%{?rhel} == 8 %undefine __cmake_in_source_build %endif Name: libyang Version: {{ version }} Release: {{ release }}%{?dist} Summary: YANG data modeling language library Url: https://github.com/CESNET/libyang Source: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz License: BSD BuildRequires: cmake BuildRequires: doxygen BuildRequires: gcc BuildRequires: cmake(cmocka) >= 1.0.1 BuildRequires: make BuildRequires: pkgconfig(libpcre2-8) >= 10.21 %package devel Summary: Development files for libyang Requires: %{name}%{?_isa} = %{version}-%{release} Requires: pcre2-devel %package devel-doc Summary: Documentation of libyang API Requires: %{name}%{?_isa} = %{version}-%{release} %package tools Summary: YANG validator tools Requires: %{name}%{?_isa} = %{version}-%{release} # This was not properly split out before Conflicts: %{name} < 1.0.225-3 %description devel Headers of libyang library. %description devel-doc Documentation of libyang API. %description tools YANG validator tools. %description Libyang is YANG data modeling language parser and toolkit written (and providing API) in C. %prep %autosetup -p1 %if 0%{?rhel} && 0%{?rhel} < 8 mkdir build %endif %build %if 0%{?rhel} && 0%{?rhel} < 8 cd build cmake \ -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \ -DCMAKE_BUILD_TYPE:String="Release" \ -DCMAKE_C_FLAGS="${RPM_OPT_FLAGS}" \ -DCMAKE_CXX_FLAGS="${RPM_OPT_FLAGS}" \ .. make %else %cmake -DCMAKE_BUILD_TYPE=RELWITHDEBINFO %cmake_build %if "x%{?suse_version}" == "x" cd %{__cmake_builddir} %endif %endif make doc %check %if ( 0%{?rhel} == 0 ) || 0%{?rhel} > 7 %if "x%{?suse_version}" == "x" cd %{__cmake_builddir} %endif %endif ctest --output-on-failure -V %{?_smp_mflags} %install mkdir -m0755 -p %{buildroot}/%{_docdir}/libyang %if 0%{?rhel} && 0%{?rhel} < 8 cd build make DESTDIR=%{buildroot} install %else %cmake_install cp -a doc/html %{buildroot}/%{_docdir}/libyang/html %endif %files %license LICENSE %{_libdir}/libyang.so.2 %{_libdir}/libyang.so.2.* %{_datadir}/yang/modules/libyang/*.yang %dir %{_datadir}/yang/ %dir %{_datadir}/yang/modules/ %dir %{_datadir}/yang/modules/libyang/ %files tools %{_bindir}/yanglint %{_bindir}/yangre %{_datadir}/man/man1/yanglint.1.gz %{_datadir}/man/man1/yangre.1.gz %files devel %{_libdir}/libyang.so %{_libdir}/pkgconfig/libyang.pc %{_includedir}/libyang/*.h %dir %{_includedir}/libyang/ %files devel-doc %{_docdir}/libyang %changelog * {{ now }} Jakub Ružička - {{ version }}-{{ release }} - upstream package