# # spec file for package ding-libs # # Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # # Defined in version.m4 %global path_utils_version 0.2.1 %global dhash_version 0.5.0 %global collection_version 0.7.0 %global ref_array_version 0.1.5 %global basicobjects_version 0.1.1 %global ini_config_version 1.3.1 Name: ding-libs Version: 0.6.1 Release: 0 Summary: "Ding is not GLib" assorted utility libraries License: GPL-3.0-or-later AND LGPL-3.0-or-later Group: Development/Libraries/C and C++ URL: https://pagure.io/SSSD/ding-libs Source: https://fedorahosted.org/released/ding-libs/%{name}-%{version}.tar.gz Source2: https://fedorahosted.org/released/ding-libs/%{name}-%{version}.tar.gz.asc Source3: %{name}.keyring Source4: baselibs.conf Patch1: 0001-increase-ini-max-value-length.patch Patch2: INI-Fix-detection-of-error-messages.patch Patch3: INI-Silence-ini_augment-match-failures.patch Patch4: TEST-validators_ut_check-Fix-fail-with-new-glibc.patch BuildRequires: doxygen BuildRequires: pkgconfig BuildRequires: pkgconfig(check) >= 0.9.5 %description Assorted C utility libraries: libcollection, libdhash, libini_config, librefarray, libpath_utils and libbasicobjects. %package -n libbasicobjects0 Version: %{basicobjects_version} Release: 0 Summary: Library containing basic objects like dynamic string License: GPL-3.0-or-later Group: System/Libraries %description -n libbasicobjects0 A small library that provides a buffer object. %package -n libbasicobjects-devel Version: %{basicobjects_version} Release: 0 Summary: Library containing basic objects like dynamic string License: GPL-3.0-or-later Group: Development/Libraries/C and C++ Requires: libbasicobjects0 = %{version} %description -n libbasicobjects-devel A small library that provides a buffer object. %package -n libcollection4 Version: %{collection_version} Release: 0 Summary: Collection data-type for C License: LGPL-3.0-or-later Group: System/Libraries %description -n libcollection4 A data-type to collect data in a hierarchical structure for easy iteration and serialization %package -n libcollection-devel Version: %{collection_version} Release: 0 Summary: Development files for libcollection License: LGPL-3.0-or-later Group: Development/Libraries/C and C++ Requires: libcollection4 = %{collection_version} %description -n libcollection-devel A data-type to collect data in a hierarchical structure for easy iteration and serialization %package -n libdhash1 Version: %{dhash_version} Release: 0 Summary: Dynamic hash table library License: LGPL-3.0-or-later Group: System/Libraries %description -n libdhash1 A hash table which will dynamically resize to achieve optimal storage & access time properties %package -n libdhash-devel Version: %{dhash_version} Release: 0 Summary: Development files for libdhash License: LGPL-3.0-or-later Group: Development/Libraries/C and C++ Requires: libdhash1 = %{dhash_version} %description -n libdhash-devel A hash table which will dynamically resize to achieve optimal storage & access time properties %package -n libini_config5 Version: %{ini_config_version} Release: 0 Summary: INI file parser for C License: LGPL-3.0-or-later Group: System/Libraries %description -n libini_config5 Library to process config files in INI format into a libcollection data structure %package -n libini_config-devel Version: %{ini_config_version} Release: 0 Summary: Development files for libini_config License: LGPL-3.0-or-later Group: Development/Libraries/C and C++ Requires: libini_config5 = %{ini_config_version} %description -n libini_config-devel Library to process config files in INI format into a libcollection data structure %package -n libpath_utils1 Version: %{path_utils_version} Release: 0 Summary: Filesystem Path Utilities License: LGPL-3.0-or-later Group: System/Libraries %description -n libpath_utils1 Utility functions to manipulate filesystem pathnames %package -n libpath_utils-devel Version: %{path_utils_version} Release: 0 Summary: Development files for libpath_utils License: LGPL-3.0-or-later Group: Development/Libraries/C and C++ Requires: libpath_utils1 = %{path_utils_version} %description -n libpath_utils-devel Utility functions to manipulate filesystem pathnames %package -n libref_array1 Version: %{ref_array_version} Release: 0 Summary: A refcounted array for C License: GPL-3.0-or-later Group: System/Libraries %description -n libref_array1 A dynamically-growing, reference-counted array %package -n libref_array-devel Version: %{ref_array_version} Release: 0 Summary: Development files for libref_array License: GPL-3.0-or-later Group: Development/Libraries/C and C++ Requires: libref_array1 = %{ref_array_version} %description -n libref_array-devel A dynamically-growing, reference-counted array %prep %setup -q %autopatch -p1 %build %configure --disable-static make %{?_smp_mflags} all docs %check make %{?_smp_mflags} check %install %make_install find %{buildroot} -type f -name "*.la" -delete -print # Remove the example files from the output directory # We will copy them directly from the source directory # for packaging rm -f \ "%{buildroot}/%{_datadir}/doc/ding-libs"/README.* \ "%{buildroot}/%{_datadir}/doc/ding-libs/examples/dhash_example.c" \ "%{buildroot}/%{_datadir}/doc/ding-libs/examples/dhash_test.c" # Remove document install script. RPM is handling this rm -f */doc/html/installdox %post -n libbasicobjects0 -p /sbin/ldconfig %postun -n libbasicobjects0 -p /sbin/ldconfig %post -n libcollection4 -p /sbin/ldconfig %postun -n libcollection4 -p /sbin/ldconfig %post -n libdhash1 -p /sbin/ldconfig %postun -n libdhash1 -p /sbin/ldconfig %post -n libini_config5 -p /sbin/ldconfig %postun -n libini_config5 -p /sbin/ldconfig %post -n libpath_utils1 -p /sbin/ldconfig %postun -n libpath_utils1 -p /sbin/ldconfig %post -n libref_array1 -p /sbin/ldconfig %postun -n libref_array1 -p /sbin/ldconfig %files -n libbasicobjects0 %{_libdir}/libbasicobjects.so.0* %files -n libbasicobjects-devel %{_includedir}/simplebuffer.h %{_libdir}/libbasicobjects.so %{_libdir}/pkgconfig/basicobjects.pc %files -n libcollection4 %{_libdir}/libcollection.so.4* %files -n libcollection-devel %license COPYING COPYING.LESSER %{_includedir}/collection.h %{_includedir}/collection_tools.h %{_includedir}/collection_queue.h %{_includedir}/collection_stack.h %{_libdir}/libcollection.so %{_libdir}/pkgconfig/collection.pc %doc collection/doc/html/ %files -n libdhash1 %{_libdir}/libdhash.so.1* %files -n libdhash-devel %license COPYING COPYING.LESSER %{_includedir}/dhash.h %{_libdir}/libdhash.so %{_libdir}/pkgconfig/dhash.pc %doc dhash/README.dhash %files -n libini_config5 %{_libdir}/libini_config.so.5* %files -n libini_config-devel %license COPYING COPYING.LESSER %{_includedir}/ini_*.h %{_libdir}/libini_config.so %{_libdir}/pkgconfig/ini_config.pc %doc ini/doc/html/ %files -n libpath_utils1 %{_libdir}/libpath_utils.so.1* %files -n libpath_utils-devel %license COPYING COPYING.LESSER %{_includedir}/path_utils.h %{_libdir}/libpath_utils.so %{_libdir}/pkgconfig/path_utils.pc %doc path_utils/README.path_utils %doc path_utils/doc/html/ %files -n libref_array1 %{_libdir}/libref_array.so.1* %files -n libref_array-devel %license COPYING COPYING.LESSER %{_includedir}/ref_array.h %{_libdir}/libref_array.so %{_libdir}/pkgconfig/ref_array.pc %doc refarray/README.ref_array %doc refarray/doc/html/ %changelog