diff --git a/ding-libs-0.6.2.tar.gz b/ding-libs-0.6.2.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..8823a6f74c60e0def61d5ca87643c5c0eb116f8d Binary files /dev/null and b/ding-libs-0.6.2.tar.gz differ diff --git a/ding-libs.spec b/ding-libs.spec new file mode 100644 index 0000000000000000000000000000000000000000..f95e2d1b0a13ffb8dbce5371f020509349cf1bac --- /dev/null +++ b/ding-libs.spec @@ -0,0 +1,334 @@ +%define anolis_release 1 + +Name: ding-libs +Version: 0.6.2 +Release: %{anolis_release}%{?dist} +Summary: "Ding is not GLib" assorted utility libraries +License: LGPLv3+ +URL: https://pagure.io/SSSD/ding-libs +Source0: https://releases.pagure.org/SSSD/ding-libs/%{name}-%{version}.tar.gz + +# If a new upstream release changes some, but not all of these +# version numbers, remember to keep the Release tag in order to +# allow clean upgrades! +%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 + +### Patches ### + +### Dependencies ### +# ding-libs is a meta-package that will pull in all of its own +# sub-packages +Requires: libpath_utils = %{path_utils_version}-%{release} +Requires: libdhash = %{dhash_version}-%{release} +Requires: libcollection = %{collection_version}-%{release} +Requires: libref_array = %{ref_array_version}-%{release} +Requires: libbasicobjects = %{basicobjects_version}-%{release} +Requires: libini_config = %{ini_config_version}-%{release} + +### Build Dependencies ### + +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: gettext-devel +BuildRequires: gcc +BuildRequires: git +BuildRequires: libtool +BuildRequires: m4 +BuildRequires: doxygen +BuildRequires: pkgconfig +BuildRequires: check-devel +BuildRequires: make + +%description +A meta-package that pulls in libcollection, libdhash, libini_config, +librefarray libbasicobjects, and libpath_utils. + +%package devel +Summary: Development packages for ding-libs +License: LGPLv3+ + +# ding-libs is a meta-package that will pull in all of its own +# sub-packages +Requires: libpath_utils-devel = %{path_utils_version}-%{release} +Requires: libdhash-devel = %{dhash_version}-%{release} +Requires: libcollection-devel = %{collection_version}-%{release} +Requires: libref_array-devel = %{ref_array_version}-%{release} +Requires: libbasicobjects-devel = %{basicobjects_version}-%{release} +Requires: libini_config-devel = %{ini_config_version}-%{release} + +%description devel +A meta-package that pulls in development libraries for libcollection, +libdhash, libini_config, librefarray and libpath_utils. + +############################################################################## +# Path Utils +############################################################################## + +%package -n libpath_utils +Summary: Filesystem Path Utilities +License: LGPLv3+ +Version: %{path_utils_version} + +%description -n libpath_utils +Utility functions to manipulate filesystem pathnames + +%package -n libpath_utils-devel +Summary: Development files for libpath_utils +Requires: libpath_utils = %{path_utils_version}-%{release} +License: LGPLv3+ +Version: %{path_utils_version} + +%description -n libpath_utils-devel +Utility functions to manipulate filesystem pathnames + +%ldconfig_scriptlets -n libpath_utils + +%files -n libpath_utils +%doc COPYING COPYING.LESSER +%{_libdir}/libpath_utils.so.1 +%{_libdir}/libpath_utils.so.1.0.1 + +%files -n libpath_utils-devel +%{_includedir}/path_utils.h +%{_libdir}/libpath_utils.so +%{_libdir}/pkgconfig/path_utils.pc +%doc path_utils/README.path_utils +%doc path_utils/doc/html/ + + +############################################################################## +# dhash +############################################################################## + +%package -n libdhash +Summary: Dynamic hash table +License: LGPLv3+ +Version: %{dhash_version} + +%description -n libdhash +A hash table which will dynamically resize to achieve optimal storage & access +time properties + +%package -n libdhash-devel +Summary: Development files for libdhash +Requires: libdhash = %{dhash_version}-%{release} +License: LGPLv3+ +Version: %{dhash_version} + +%description -n libdhash-devel +A hash table which will dynamically resize to achieve optimal storage & access +time properties + +%ldconfig_scriptlets -n libdhash + +%files -n libdhash +%doc COPYING COPYING.LESSER +%{_libdir}/libdhash.so.1 +%{_libdir}/libdhash.so.1.1.0 + +%files -n libdhash-devel +%{_includedir}/dhash.h +%{_libdir}/libdhash.so +%{_libdir}/pkgconfig/dhash.pc +%doc dhash/README.dhash +%doc dhash/examples/*.c + + +############################################################################## +# collection +############################################################################## +%package -n libcollection +Summary: Collection data-type for C +License: LGPLv3+ +Version: %{collection_version} + +%description -n libcollection +A data-type to collect data in a hierarchical structure for easy iteration +and serialization + +%package -n libcollection-devel +Summary: Development files for libcollection +License: LGPLv3+ +Requires: libcollection = %{collection_version}-%{release} +Version: %{collection_version} + +%description -n libcollection-devel +A data-type to collect data in a hierarchical structure for easy iteration +and serialization + +%ldconfig_scriptlets -n libcollection + + +%files -n libcollection +%doc COPYING +%doc COPYING.LESSER +%{_libdir}/libcollection.so.* + +%files -n libcollection-devel +%{_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/ + + +############################################################################## +# ref_array +############################################################################## + +%package -n libref_array +Summary: A refcounted array for C +License: LGPLv3+ +Version: %{ref_array_version} + +%description -n libref_array +A dynamically-growing, reference-counted array + +%package -n libref_array-devel +Summary: Development files for libref_array +Requires: libref_array = %{ref_array_version}-%{release} +License: LGPLv3+ +Version: %{ref_array_version} + +%description -n libref_array-devel +A dynamically-growing, reference-counted array + +%ldconfig_scriptlets -n libref_array + +%files -n libref_array +%doc COPYING +%doc COPYING.LESSER +%{_libdir}/libref_array.so.1 +%{_libdir}/libref_array.so.1.2.1 + +%files -n libref_array-devel +%{_includedir}/ref_array.h +%{_libdir}/libref_array.so +%{_libdir}/pkgconfig/ref_array.pc +%doc refarray/README.ref_array +%doc refarray/doc/html/ + +############################################################################## +# basicobjects +############################################################################## + +%package -n libbasicobjects +Summary: Basic object types for C +License: GPLv3+ +Version: %{basicobjects_version} + +%description -n libbasicobjects +Basic object types + +%package -n libbasicobjects-devel +Summary: Development files for libbasicobjects +License: GPLv3+ +Version: %{basicobjects_version} +Requires: libbasicobjects = %{basicobjects_version}-%{release} + +%description -n libbasicobjects-devel +Basic object types + +%ldconfig_scriptlets -n libbasicobjects + +%files -n libbasicobjects +%doc COPYING +%doc COPYING.LESSER +%{_libdir}/libbasicobjects.so.0 +%{_libdir}/libbasicobjects.so.0.1.0 + +%files -n libbasicobjects-devel +%{_includedir}/simplebuffer.h +%{_libdir}/libbasicobjects.so +%{_libdir}/pkgconfig/basicobjects.pc + +############################################################################## +# ini_config +############################################################################## + +%package -n libini_config +Summary: INI file parser for C +License: LGPLv3+ +Version: %{ini_config_version} + +%description -n libini_config +Library to process config files in INI format into a libcollection data +structure + +%package -n libini_config-devel +Summary: Development files for libini_config +License: LGPLv3+ +Requires: libini_config = %{ini_config_version}-%{release} +Requires: libcollection-devel = %{collection_version}-%{release} +Requires: libref_array-devel = %{ref_array_version}-%{release} +Requires: libbasicobjects-devel = %{basicobjects_version}-%{release} +Version: %{ini_config_version} + +%description -n libini_config-devel +Library to process config files in INI format into a libcollection data +structure + +%ldconfig_scriptlets -n libini_config + +%files -n libini_config +%doc COPYING +%doc COPYING.LESSER +%{_libdir}/libini_config.so.5 +%{_libdir}/libini_config.so.5.2.1 + +%files -n libini_config-devel +%{_includedir}/ini_config.h +%{_includedir}/ini_configobj.h +%{_includedir}/ini_valueobj.h +%{_includedir}/ini_comment.h +%{_includedir}/ini_configmod.h +%{_libdir}/libini_config.so +%{_libdir}/pkgconfig/ini_config.pc +%doc ini/doc/html/ + + +############################################################################## +# Build steps +############################################################################## + +%prep +%autosetup -S git + +%build +autoreconf -ivf +%configure \ + --disable-static + +make %{?_smp_mflags} all docs + +%check +make %{?_smp_mflags} check + +%install +make install DESTDIR=$RPM_BUILD_ROOT + +# Remove .la files created by libtool +rm -f $RPM_BUILD_ROOT/%{_libdir}/*.la + +# Remove the example files from the output directory +# We will copy them directly from the source directory +# for packaging +rm -f \ + $RPM_BUILD_ROOT/usr/share/doc/ding-libs/README.* \ + $RPM_BUILD_ROOT/usr/share/doc/ding-libs/examples/dhash_example.c \ + $RPM_BUILD_ROOT/usr/share/doc/ding-libs/examples/dhash_test.c + +# Remove document install script. RPM is handling this +rm -f */doc/html/installdox + +%changelog +* Thu Mar 03 2022 Hongwei Qin - 0.6.2-1 +- New upstream release 0.6.2 +- Init for Anolis OS 23