diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ca6693b --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/yaksa-0.2.tar.gz +/yaksa-0.3.tar.gz +/yaksa-0.4.tar.gz diff --git a/sources b/sources new file mode 100644 index 0000000..a9ac232 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (yaksa-0.4.tar.gz) = cc8c309bdbd732733d7c87ec1ca0f9e3a9147ecd13e9f1a8fa53cada68c731b53ce8fdaf55a423cc6915a31edd82a91def2f485ad26caaec6837041dbdf7a7a4 diff --git a/yaksa.spec b/yaksa.spec index 5c77064..c4215a5 100644 --- a/yaksa.spec +++ b/yaksa.spec @@ -1,12 +1,16 @@ +%bcond tests 1 + Name: yaksa -Version: 0.1 +Version: 0.4 Release: %autorelease Summary: High-performance library for noncontiguous data %global forgeurl https://github.com/pmodels/yaksa/ %forgemeta -License: BSD +%global soversion 0 + +License: BSD-3-Clause URL: %forgeurl Source0: %forgesource @@ -16,12 +20,12 @@ BuildRequires: libtool BuildRequires: make BuildRequires: gcc BuildRequires: python3 +BuildRequires: uthash-devel %description -Yaksa is a high-performance noncontiguous datatype engine that can be -used to express and manipulate noncontiguous data. The library sports -features related to packing/unpacking, I/O vectors, and flattening -noncontiguous datatypes. +Yaksa is a high-performance noncontiguous datatype engine that can be used to +express and manipulate noncontiguous data. The library sports features related +to packing/unpacking, I/O vectors, and flattening noncontiguous datatypes. %package devel Summary: Development files for libyaksa @@ -33,6 +37,11 @@ Requires: %{name}%{_isa} = %{version}-%{release} %prep %autosetup +# Poor man's unbundling: uthash is a header-only library, so we can +# effectively replace the local version with the system copy by symlinking. +ln -fvs /usr/include/uthash.h src/external/yuthash.h +ln -fvs /usr/include/utlist.h src/external/yutlist.h + %build ./autogen.sh %configure \ @@ -44,13 +53,15 @@ Requires: %{name}%{_isa} = %{version}-%{release} rm %{buildroot}%{_libdir}/libyaksa.la -%global soversion 0 +%if %{with tests} +%check +timeout -v 2h make -j%{_smp_build_ncpus} testing +%endif %files %license COPYRIGHT %doc README.md -%{_libdir}/libyaksa.so.%{soversion} -%{_libdir}/libyaksa.so.%{soversion}.* +%{_libdir}/libyaksa.so.%{soversion}{,.*} %files devel %{_includedir}/yaksa.h