diff --git a/.gitignore b/.gitignore index e69de29..e6e2403 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1,7 @@ +/libyang-0.16.105-1.tar.gz +/v1.0-r4.tar.gz +/v1.0-r5.tar.gz +/v1.0.130.tar.gz +/v1.0.167.tar.gz +/v1.0.176.tar.gz +/v1.0.184.tar.gz diff --git a/README.md b/README.md new file mode 100644 index 0000000..07e6d38 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# libyang + +The libyang package \ No newline at end of file diff --git a/libyang-1.0.184-doc.patch b/libyang-1.0.184-doc.patch new file mode 100644 index 0000000..53a1b69 --- /dev/null +++ b/libyang-1.0.184-doc.patch @@ -0,0 +1,19 @@ +commit 66db639f2c6c1b9dda8cf18e2a212f160b268a3b +Author: Tomas Korbar +Date: Thu Jul 23 09:35:56 2020 +0200 + + Search for libyang.h in build directory + +diff --git a/Doxyfile.in b/Doxyfile.in +index 2534da3..272248e 100644 +--- a/Doxyfile.in ++++ b/Doxyfile.in +@@ -781,7 +781,7 @@ WARN_LOGFILE = + # spaces. See also FILE_PATTERNS and EXTENSION_MAPPING + # Note: If this tag is empty the current directory is searched. + +-INPUT = @CMAKE_BINARY_DIR@/src/libyang.h \ ++INPUT = ./build/src/libyang.h \ + ./src/tree_data.h \ + ./src/tree_schema.h \ + ./src/extensions.h \ diff --git a/libyang.spec b/libyang.spec new file mode 100644 index 0000000..8bc9776 --- /dev/null +++ b/libyang.spec @@ -0,0 +1,195 @@ +# valgrind finds invalid writes in libcmocka on arm and power +# see bug #1699304 for more information +%ifarch %arm ppc64le +%global run_valgrind_tests OFF +%else +%global run_valgrind_tests ON +%endif + +Name: libyang +Version: 1.0.184 +Release: 3%{?dist} +Summary: YANG data modeling language library +Url: https://github.com/CESNET/libyang +Source: %{url}/archive/v%{version}.tar.gz +License: BSD + +Patch0: libyang-1.0.184-doc.patch + +Requires: pcre +BuildRequires: cmake +BuildRequires: doxygen +BuildRequires: pcre-devel +BuildRequires: gcc +BuildRequires: valgrind +BuildRequires: gcc-c++ +BuildRequires: swig >= 3.0.12 +BuildRequires: libcmocka-devel +BuildRequires: python3-devel +BuildRequires: flex +BuildRequires: bison +BuildRequires: graphviz + +%package devel +Summary: Development files for libyang +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: pcre-devel + +%package devel-doc +Summary: Documentation of libyang API +Requires: %{name} = %{version}-%{release} +BuildArch: noarch + +%package -n libyang-cpp +Summary: C++ bindings for libyang +Requires: %{name}%{?_isa} = %{version}-%{release} + +%package -n libyang-cpp-devel +Summary: Development files for libyang-cpp +Requires: libyang-cpp%{?_isa} = %{version}-%{release} +Requires: pcre-devel + +%package -n python3-libyang +Summary: Python3 bindings for libyang +Requires: libyang-cpp%{?_isa} = %{version}-%{release} +%{?python_provide:%python_provide python3-libyang} + +%description -n libyang-cpp +Bindings of libyang library to C++ language. + +%description -n libyang-cpp-devel +Headers of bindings to c++ language. + +%description -n python3-libyang +Bindings of libyang library to python language. + +%description devel +Headers of libyang library. + +%description devel-doc +Documentation of libyang API. + +%description +Libyang is YANG data modeling language parser and toolkit +written (and providing API) in C. + +%prep +%autosetup + +%build +%cmake \ + -DCMAKE_INSTALL_PREFIX:PATH=/usr \ + -DCMAKE_BUILD_TYPE:String="Package" \ + -DENABLE_LYD_PRIV=ON \ + -DGEN_JAVA_BINDINGS=OFF \ + -DGEN_JAVASCRIPT_BINDINGS=OFF \ + -DGEN_LANGUAGE_BINDINGS=ON \ + -DENABLE_VALGRIND_TESTS=%{run_valgrind_tests} .. +%cmake_build +mkdir build +cp ./%_target_platform/src/libyang.h ./build/libyang.h +pushd %_target_platform +make doc +popd + +%check +pushd %_target_platform +ctest --output-on-failure -V %{?_smp_mflags} +popd + +%install +%cmake_install +mkdir -m0755 -p %{buildroot}/%{_docdir}/libyang +cp -r doc/html %{buildroot}/%{_docdir}/libyang/html + +%files +%license LICENSE +%{_bindir}/yanglint +%{_bindir}/yangre +%{_datadir}/man/man1/yanglint.1.gz +%{_datadir}/man/man1/yangre.1.gz +%{_libdir}/libyang.so.1 +%{_libdir}/libyang.so.1.* +%{_libdir}/libyang1 + +%files devel +%{_libdir}/libyang.so +%{_libdir}/pkgconfig/libyang.pc +%{_includedir}/libyang/*.h +%dir %{_includedir}/libyang/ + +%files devel-doc +%{_docdir}/libyang + +%files -n libyang-cpp +%{_libdir}/libyang-cpp.so.1 +%{_libdir}/libyang-cpp.so.1.* + +%files -n libyang-cpp-devel +%{_libdir}/libyang-cpp.so +%{_includedir}/libyang/*.hpp +%{_libdir}/pkgconfig/libyang-cpp.pc +%dir %{_includedir}/libyang/ + +%files -n python3-libyang +%{python3_sitearch}/yang.py +%{python3_sitearch}/_yang.so +%{python3_sitearch}/__pycache__/yang* + +%changelog +* Wed Sep 02 2020 Merlin Mathesius - 1.0.184-3 +- Fix FTBFS by disabling valgrind on power since it finds bogus invalid + writes in libcmocka + +* Tue Jul 28 2020 Fedora Release Engineering - 1.0.184-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jul 22 2020 Tomas Korbar - 1.0.184-1 +- Update to 1.0.184 +- Fix build + +* Fri Jun 19 2020 Tomas Korbar - 1.0.176-1 +- Update to 1.0.176 + +* Tue May 26 2020 Miro Hrončok - 1.0.167-2 +- Rebuilt for Python 3.9 + +* Mon May 18 2020 Tomas Korbar - 1.0.167-1 +- Update to 1.0.167 + +* Fri Feb 07 2020 Tomas Korbar - 1.0.130-1 +- Rebase to version 1.0.130 (#1797495) + +* Wed Jan 29 2020 Fedora Release Engineering - 1.0.101-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Mon Dec 09 2019 Tomas Korbar - 1.0.101-1 +- Rebase to version 1.0.101 +- Fix CVE-2019-19333 (#1780495) +- Fix CVE-2019-19334 (#1780494) + +* Fri Oct 25 2019 Tomas Korbar - 1.0.73-1 +- Rebase to version 1.0.73 (#1758512) + +* Thu Oct 03 2019 Miro Hrončok - 0.16.105-4 +- Rebuilt for Python 3.8.0rc1 (#1748018) + +* Mon Aug 19 2019 Miro Hrončok - 0.16.105-3 +- Rebuilt for Python 3.8 + +* Thu Jul 25 2019 Fedora Release Engineering - 0.16.105-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Tue May 07 2019 Tomas Korbar - 0.16.105-1 +- Initial import (#1699846). + +* Fri Apr 26 2019 Tomas Korbar - 0.16.105-1 +- Change specfile accordingly to mosvald's review +- Remove obsolete ldconfig scriptlets +- libyang-devel-doc changed to noarch package +- Add python_provide macro to python3-libyang subpackage +- Remove obsolete Requires from libyang-cpp-devel +- Start using cmake with smp_mflags macro + +* Wed Apr 03 2019 Tomas Korbar - 0.16.105-1 +- Initial commit of package after editation of specfile diff --git a/sources b/sources new file mode 100644 index 0000000..82daa7d --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (v1.0.184.tar.gz) = bb1c396b6048d848ea844cc462f1ee9f14b0dad848c7618ec0f9bd239d28db8a94f94550c5439ca07e01824a910a748ec6be699c58150b34072c2f9b76acd95c