diff --git a/liberasurecode-1.6.2-docs.patch b/liberasurecode-1.6.2-docs.patch new file mode 100644 index 0000000000000000000000000000000000000000..4d198690d9cf1c0aa8c7cd9b76087e596afc4db2 --- /dev/null +++ b/liberasurecode-1.6.2-docs.patch @@ -0,0 +1,12 @@ +diff -ur tsg--liberasurecode-4e1290ea61e5/doc/Makefile.am tsg--liberasurecode-4e1290ea61e5-p3/doc/Makefile.am +--- tsg--liberasurecode-4e1290ea61e5/doc/Makefile.am 2015-03-13 01:47:05.000000000 -0600 ++++ tsg--liberasurecode-4e1290ea61e5-p3/doc/Makefile.am 2015-03-30 21:49:20.078340707 -0600 +@@ -1,6 +1,6 @@ + DOC_MODULE=@PACKAGE@ +-HTML_DIR=$(datadir)/$(DOC_MODULE)/html +-TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE) ++HTML_DIR=$(datadir)/doc/$(DOC_MODULE)/html ++TARGET_DIR=$(HTML_DIR) + + all-local: html/index.html + diff --git a/liberasurecode-1.6.2-ldtest.patch b/liberasurecode-1.6.2-ldtest.patch new file mode 100644 index 0000000000000000000000000000000000000000..a050da2ba76a6ea28168fed0a39351043ad27614 --- /dev/null +++ b/liberasurecode-1.6.2-ldtest.patch @@ -0,0 +1,72 @@ +This patch undoes parts of the following upstream patches: + +commit 19442df2cd9a5bc8ec4deded7046ea7aca1d50a2 +Author: Kota Tsuyuzaki +Date: Mon Feb 20 14:12:43 2017 -0800 + + Fix warning on automake tool + + .......... + + Change-Id: I0e79bed7755a1f286b746a70fcf56fdc972bfd5d + +commit b046ff7091e710ecafb31b13678e0092fd1d3fd7 +Author: Ondřej Nový +Date: Sun Sep 30 12:23:22 2018 +0200 + + Fix building with LD_LIBRARY_PATH set + + .......... + + Change-Id: Ib7a1d6b839d4a207ee0471b55233e1ce5d958705 + +diff -ur liberasurecode-1.6.1/Makefile.am liberasurecode-1.6.1-p3/Makefile.am +--- liberasurecode-1.6.1/Makefile.am 2019-05-24 08:10:22.000000000 -0500 ++++ liberasurecode-1.6.1-p3/Makefile.am 2020-02-05 21:12:35.031620770 -0600 +@@ -46,20 +46,38 @@ + $(LN_S) liberasurecode/config_liberasurecode.h) + + test: check +- @./test/liberasurecode_test +- @./test/alg_sig_test +- @./test/test_xor_hd_code +- @./test/libec_slap ++ $(eval SONAMES := $(shell find $(abs_top_builddir) -name '*.so')) ++ $(eval SODIRS := $(dir $(SONAMES))) ++ $(eval LD_LIBRARY_PATH := LD_LIBRARY_PATH="$(LD_LIBRARY_PATH):$(subst / ,/:,$(SODIRS))") ++ $(eval DYLD_LIBRARY_PATH := DYLD_LIBRARY_PATH="$(DYLD_LIBRARY_PATH):$(subst / ,/:,$(SODIRS))") ++ $(eval DYLD_FALLBACK_LIBRARY_PATH := DYLD_FALLBACK_LIBRARY_PATH=$(DYLD_FALLBACK_LIBRARY_PATH):"$(subst / ,/:,$(SODIRS))") ++ @$(LD_LIBRARY_PATH) $(DYLD_LIBRARY_PATH) $(DYLD_FALLBACK_LIBRARY_PATH) \ ++ ./test/liberasurecode_test ++ @$(LD_LIBRARY_PATH) $(DYLD_LIBRARY_PATH) $(DYLD_FALLBACK_LIBRARY_PATH) \ ++ ./test/alg_sig_test ++ @$(LD_LIBRARY_PATH) $(DYLD_LIBRARY_PATH) $(DYLD_FALLBACK_LIBRARY_PATH) \ ++ ./test/test_xor_hd_code ++ @$(LD_LIBRARY_PATH) $(DYLD_LIBRARY_PATH) $(DYLD_FALLBACK_LIBRARY_PATH) \ ++ ./test/libec_slap + + VALGRIND_EXEC_COMMAND = $(LIBTOOL_COMMAND) valgrind --tool=memcheck \ + --error-exitcode=1 --leak-check=yes --track-fds=yes \ + --malloc-fill=A5 --free-fill=DE --fullpath-after=. --trace-children=yes + + valgrind-test: check +- @$(VALGRIND_EXEC_COMMAND) ./test/alg_sig_test +- @$(VALGRIND_EXEC_COMMAND) ./test/liberasurecode_test +- @$(VALGRIND_EXEC_COMMAND) ./test/test_xor_hd_code +- @$(VALGRIND_EXEC_COMMAND) ./test/libec_slap ++ $(eval SONAMES := $(shell find $(abs_top_builddir) -name '*.so')) ++ $(eval SODIRS := $(dir $(SONAMES))) ++ $(eval LD_LIBRARY_PATH := LD_LIBRARY_PATH="$(LD_LIBRARY_PATH):$(subst / ,/:,$(SODIRS))") ++ $(eval DYLD_LIBRARY_PATH := DYLD_LIBRARY_PATH="$(DYLD_LIBRARY_PATH):$(subst / ,/:,$(SODIRS))") ++ $(eval DYLD_FALLBACK_LIBRARY_PATH := DYLD_FALLBACK_LIBRARY_PATH=$(DYLD_FALLBACK_LIBRARY_PATH):"$(subst / ,/:,$(SODIRS))") ++ @$(LD_LIBRARY_PATH) $(DYLD_LIBRARY_PATH) $(DYLD_FALLBACK_LIBRARY_PATH) \ ++ $(VALGRIND_EXEC_COMMAND) ./test/alg_sig_test ++ @$(LD_LIBRARY_PATH) $(DYLD_LIBRARY_PATH) $(DYLD_FALLBACK_LIBRARY_PATH) \ ++ $(VALGRIND_EXEC_COMMAND) ./test/liberasurecode_test ++ @$(LD_LIBRARY_PATH) $(DYLD_LIBRARY_PATH) $(DYLD_FALLBACK_LIBRARY_PATH) \ ++ $(VALGRIND_EXEC_COMMAND) ./test/test_xor_hd_code ++ @$(LD_LIBRARY_PATH) $(DYLD_LIBRARY_PATH) $(DYLD_FALLBACK_LIBRARY_PATH) \ ++ $(VALGRIND_EXEC_COMMAND) ./test/libec_slap + + CLEANFILES = cscope.in.out cscope.out cscope.po.out + diff --git a/liberasurecode-1.6.2.tar.gz b/liberasurecode-1.6.2.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..10fa7b24719745a47dd30ee6327c648a3331241d Binary files /dev/null and b/liberasurecode-1.6.2.tar.gz differ diff --git a/liberasurecode.spec b/liberasurecode.spec new file mode 100644 index 0000000000000000000000000000000000000000..44a003260ea198fb14215878097318ac94adf77f --- /dev/null +++ b/liberasurecode.spec @@ -0,0 +1,84 @@ +Name: liberasurecode +Version: 1.6.2 +Release: 1 +Summary: Erasure Code API library written in C with pluggable backends +License: BSD and CRC32 +URL: https://bitbucket.org/tsg-/liberasurecode/ +Source0: %{name}-%{version}.tar.gz +Patch2: liberasurecode-1.6.2-docs.patch +Patch3: liberasurecode-1.6.2-ldtest.patch + +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: coreutils +BuildRequires: doxygen +BuildRequires: findutils +BuildRequires: gcc +BuildRequires: libtool +BuildRequires: make +BuildRequires: sed +BuildRequires: zlib-devel + +%description +An API library for Erasure Code, written in C. It provides a number +of pluggable backends, such as Intel ISA-L library. + +%package doc +Summary: Documentation for %{name} + +%description doc +The documentation for %{name}. + +%package devel +Summary: Development files for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: gcc + +%description devel +The %{name}-devel package contains libraries and header files for +developing applications that use %{name}. + +%prep +%setup -q +%patch2 -p1 +%patch3 -p1 + +%build +autoreconf -i -v +%configure --disable-static --disable-mmi +sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool +sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool +make V=1 %{?_smp_mflags} + +%check +make test + +%install +%make_install +find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';' +find $RPM_BUILD_ROOT%{_datadir}/doc -type f -exec chmod a-x {} ';' + +%post +/sbin/ldconfig + +%postun +/sbin/ldconfig + + +%files +%license COPYING +%doc AUTHORS ChangeLog README.md +%{_libdir}/*.so +%{_libdir}/*.so.* + +%files doc +%{_datadir}/doc/liberasurecode/html/* + +%files devel +%{_includedir}/* +%{_libdir}/pkgconfig/erasurecode-1.pc + + +%changelog +* Sun Aug 15 2021 OpenStack_SIG - 1.6.2-1 +- Initial release