commit 0e6bf821f07c94d363a3715e9da67c6f4c459ecd Author: MSVSphere Packaging Team Date: Fri Oct 25 16:45:43 2024 +0300 import libzdnn-1.0.1-7.el10 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9461b2c --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/libzdnn-1.0.1.tar.gz diff --git a/.libzdnn.metadata b/.libzdnn.metadata new file mode 100644 index 0000000..8b32f48 --- /dev/null +++ b/.libzdnn.metadata @@ -0,0 +1 @@ +d31a6ffe6ae619c8763bd86198a2b18d0be06ffc SOURCES/libzdnn-1.0.1.tar.gz diff --git a/SOURCES/ldflags.patch b/SOURCES/ldflags.patch new file mode 100644 index 0000000..8b0f01e --- /dev/null +++ b/SOURCES/ldflags.patch @@ -0,0 +1,32 @@ +From 4ae92a0b84751aa5880f5fa8a18b2295de1b8adb Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jakub=20=C4=8Cajka?= +Date: Fri, 21 Jun 2024 17:12:06 +0200 +Subject: [PATCH] fix: use system LDFLAGS (#20) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +- pass system LDFLAGS to linker in all cases + +Signed-off-by: Jakub Čajka +--- + config.zdnn | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/config.zdnn b/config.zdnn +index 2eb5948..0396098 100644 +--- a/config.zdnn ++++ b/config.zdnn +@@ -43,9 +43,9 @@ case "${target}" in + LIBNAME_PRIVATE="${LIBNAME_PRIVATE:-${LIBNAME}-private}" + LIBSONAME_PRIVATE="${LIBSONAME_PRIVATE:-${LIBNAME_PRIVATE}.so.0}" + LDFLAGS="${LDFLAGS:-}" +- LDFLAGS_SHARED="-shared -Wl,-Bsymbolic-functions -Wl,-soname,${LIBSONAME} -Wl,--version-script=zdnn.map -lm ${LDFLAGS_SHARED:-}" +- LDFLAGS_SHARED_EXPORTALL="-shared -Wl,-Bsymbolic-functions -Wl,-soname,${LIBSONAME_PRIVATE} -Wl,--version-script=zdnn_exportall.map -lm ${LDFLAGS_SHARED_EXPORTALL:-}" +- LDFLAGS_TEST="-L ../zdnn/${SODIR} -l${LIBNAME_PRIVATE#lib} ../zdnn/${SODIR}/${LIBNAME_PRIVATE}.so -lm ${LDFLAGS_TEST:-}" ++ LDFLAGS_SHARED="-shared -Wl,-Bsymbolic-functions -Wl,-soname,${LIBSONAME} -Wl,--version-script=zdnn.map -lm ${LDFLAGS_SHARED:-} ${LDFLAGS:-}" ++ LDFLAGS_SHARED_EXPORTALL="-shared -Wl,-Bsymbolic-functions -Wl,-soname,${LIBSONAME_PRIVATE} -Wl,--version-script=zdnn_exportall.map -lm ${LDFLAGS_SHARED_EXPORTALL:-} ${LDFLAGS:-}" ++ LDFLAGS_TEST="-L ../zdnn/${SODIR} -l${LIBNAME_PRIVATE#lib} ../zdnn/${SODIR}/${LIBNAME_PRIVATE}.so -lm ${LDFLAGS_TEST:-} ${LDFLAGS:-}" + LD_PATH_VAR="${LD_PATH_VAR:-LD_LIBRARY_PATH}" + ECHOFLAGS="-e" + ZDNN_TMAKE_FILES="t-static t-libsoname t-gccexpo t-symcheck t-listings" diff --git a/SPECS/libzdnn.spec b/SPECS/libzdnn.spec new file mode 100644 index 0000000..e0554e6 --- /dev/null +++ b/SPECS/libzdnn.spec @@ -0,0 +1,146 @@ +Name: libzdnn +Version: 1.0.1 +Release: 7%{?dist} +Summary: Driver library for the IBM Z Neural Network Processing Assist Facility + +License: Apache-2.0 +Url: https://github.com/IBM/zDNN +Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz +Patch0: ldflags.patch + +ExclusiveArch: s390x +BuildRequires: gcc +BuildRequires: g++ +BuildRequires: make +BuildRequires: gawk +BuildRequires: automake +BuildRequires: autoconf + +# Be explicit about the soversion in order to avoid unintentional changes. +%global soversion 0 + +%description +The zDNN library provide a user space API for exploitation of the +Neural Network Processing Assist Facility. All application which +intend to use that facility on IBM Z are supposed to do this via this +library. + + +%package devel +Summary: Development files for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +The %{name}-devel package contains libraries and header files for +developing applications that use %{name}. + + +%package static +Summary: Static library version %{name} +Requires: %{name}-devel%{?_isa} = %{version}-%{release} + +%description static +The %{name}-static package contains the static library of %{name}. + + +%prep +%autosetup -p1 -n zDNN-%{version} +autoreconf -i + +%build +# libzdnn needs to be built with z14 support so override the distro wide options to append -march=z14. +# cflags for the init routines in e.g. zdnn_init.c should just use the distro options. +# export CFLAGS_INIT explicitely since it is not handled by configure +CFLAGS_INIT="%{build_cflags}"; export CFLAGS_INIT; CFLAGS="%{build_cflags} -march=z14 -mtune=z14" CXXFLAGS="%{build_cxxflags} -march=z14 -mtune=z14" %configure +%make_build build + +%install +%make_install +mv $RPM_BUILD_ROOT%{_libdir}/libzdnn.so.%{soversion} $RPM_BUILD_ROOT%{_libdir}/libzdnn.so.%{version} +ln -s -r $RPM_BUILD_ROOT%{_libdir}/libzdnn.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libzdnn.so.%{soversion} + +rm -f $RPM_BUILD_ROOT%{_libdir}/libzdnn.so +ln -s -r $RPM_BUILD_ROOT%{_libdir}/libzdnn.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libzdnn.so + + +%files +%{_libdir}/libzdnn.so.%{version} +%{_libdir}/libzdnn.so.%{soversion} +%doc README.md +%license LICENSE + +%files devel +%{_includedir}/zdnn.h +%{_libdir}/*.so + +%files static +%{_libdir}/libzdnn.a + +%changelog +* Fri Oct 25 2024 MSVSphere Packaging Team - 1.0.1-7 +- Rebuilt for MSVSphere 10 + +* Fri Jun 28 2024 Jakub Čajka - 1.0.1-7 +- Release bump +- Related: RHEL-33503 + +* Fri Jun 28 2024 Jakub Čajka - 1.0.1-6 +- LDFLAGS correction +- Resolves: RHEL-33503 + +* Mon Jun 24 2024 Troy Dawson - 1.0.1-5 +- Bump release for June 2024 mass rebuild + +* Thu Jan 25 2024 Fedora Release Engineering - 1.0.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sun Jan 21 2024 Fedora Release Engineering - 1.0.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Thu Jul 20 2023 Fedora Release Engineering - 1.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Wed Mar 1 2023 Andreas Krebbel - 1.0.1-1 +- New release. + +* Thu Jan 19 2023 Fedora Release Engineering - 0.4.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Thu Jul 21 2022 Fedora Release Engineering - 0.4.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Thu Jan 20 2022 Fedora Release Engineering - 0.4.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Fri Dec 10 2021 Andreas Krebbel - 0.4.0-1 +- New release. +- Remove: libzdnn-cflags_init.patch +- Remove: libzdnn-symbol_check.patch +- Remove: libzdnn-makedeps_fix.patch + +* Fri Oct 29 2021 Andreas Krebbel - 0.3.1-6 +- Include libzdnn-makedeps_fix.patch. + +* Thu Oct 21 2021 Andreas Krebbel - 0.3.1-5 +- Include libzdnn-symbol_check.patch. + +* Tue Oct 19 2021 Andreas Krebbel - 0.3.1-4 +- Add missing blank in the description of the static package. +- Add build dependency for g++ for the initializer.cpp file. +- Make devel dependency on the main package arched. +- Change the dependency in the static package to devel and make it arched. + +* Thu Oct 7 2021 Andreas Krebbel - 0.3.1-3 +- Add -mtune=z14 to override flags. +- Fix changelog formatting + +* Sat Oct 2 2021 Andreas Krebbel - 0.3.1-2 +- Add proper source path. +- Add -n parameter to autosetup to deal with the different top-level + dirname in the github created tarballs. +- Mention zdnn.h explicitely in the files section +- Include libzdnn-cflags_init.patch and pass CFLAGS_INIT to configure. + +* Fri Sep 24 2021 Andreas Krebbel - 0.3.1-1 +- Initial version based on an IBM internal version provided by Stefan + Liebler