rename 64_ libraries to lib*64_*

This commit is contained in:
Tom Callaway 2017-08-14 17:00:31 -04:00
parent 24c2b26e99
commit 168ca78335
3 changed files with 47 additions and 44 deletions

View File

@ -60,13 +60,13 @@ ifeq "$(SYMBOLPREFIX)" ""
ar ruv libblas.a $(OBJS) ar ruv libblas.a $(OBJS)
ranlib libblas.a ranlib libblas.a
else else
ar ruv $(SYMBOLPREFIX)libblas.a $(OBJS) ar ruv libblas$(SYMBOLPREFIX).a $(OBJS)
ranlib $(SYMBOLPREFIX)libblas.a ranlib libblas$(SYMBOLPREFIX).a
for i in `nm $(SYMBOLPREFIX)libblas.a |grep " T " | awk '{print $$3}'`; do echo "$$i" "64_$$i"; done > blas-static-prefix.def.dirty for i in `nm libblas$(SYMBOLPREFIX).a |grep " T " | awk '{print $$3}'`; do echo "$$i" "64_$$i"; done > blas-static-prefix.def.dirty
sort -n blas-static-prefix.def.dirty | uniq > blas-static-prefix.def sort -n blas-static-prefix.def.dirty | uniq > blas-static-prefix.def
$(OBJCOPY) --redefine-syms blas-static-prefix.def $(SYMBOLPREFIX)libblas.a $(SYMBOLPREFIX)libblas.a.fixed $(OBJCOPY) --redefine-syms blas-static-prefix.def libblas$(SYMBOLPREFIX).a libblas$(SYMBOLPREFIX).a.fixed
rm -rf $(SYMBOLPREFIX)libblas.a rm -rf libblas$(SYMBOLPREFIX).a
mv $(SYMBOLPREFIX)libblas.a.fixed $(SYMBOLPREFIX)libblas.a mv libblas$(SYMBOLPREFIX).a.fixed libblas$(SYMBOLPREFIX).a
endif endif
shared: $(OBJS) shared: $(OBJS)
@ -74,11 +74,11 @@ ifeq "$(SYMBOLPREFIX)" ""
# No renaming needed # No renaming needed
cc $(CFLAGS) -shared -Wl,-soname,libblas.so.@SHORTVER@ -o libblas.so.@LONGVER@ $(OBJS) -lm -lgfortran -lc cc $(CFLAGS) -shared -Wl,-soname,libblas.so.@SHORTVER@ -o libblas.so.@LONGVER@ $(OBJS) -lm -lgfortran -lc
else else
cc $(CFLAGS) -shared -Wl,-soname,$(SYMBOLPREFIX)libblas.so.@SHORTVER@ -o $(SYMBOLPREFIX)libblas.so.@LONGVER@ $(OBJS) -lm -lgfortran -lc cc $(CFLAGS) -shared -Wl,-soname,libblas$(SYMBOLPREFIX).so.@SHORTVER@ -o libblas$(SYMBOLPREFIX).so.@LONGVER@ $(OBJS) -lm -lgfortran -lc
# generate a list of all symbols in shared library and rename with SYMBOLPREFIX # generate a list of all symbols in shared library and rename with SYMBOLPREFIX
for i in `readelf -Ws $(SYMBOLPREFIX)libblas.so.@LONGVER@ | awk '{print $$8}' | grep -v GLIBC |grep -v GFORTRAN |grep -v "Name" `; do echo "$$i" "64_$$i"; done > blas-prefix.def.dirty for i in `readelf -Ws libblas$(SYMBOLPREFIX).so.@LONGVER@ | awk '{print $$8}' | grep -v GLIBC |grep -v GFORTRAN |grep -v "Name" `; do echo "$$i" "64_$$i"; done > blas-prefix.def.dirty
sort -n blas-prefix.def.dirty | uniq > blas-prefix.def sort -n blas-prefix.def.dirty | uniq > blas-prefix.def
$(OBJCOPY) --redefine-syms blas-prefix.def $(SYMBOLPREFIX)libblas.so.@LONGVER@ $(SYMBOLPREFIX)libblas.so.@LONGVER@.fixed $(OBJCOPY) --redefine-syms blas-prefix.def libblas$(SYMBOLPREFIX).so.@LONGVER@ libblas$(SYMBOLPREFIX).so.@LONGVER@.fixed
rm -rf $(SYMBOLPREFIX)libblas.so.@LONGVER@ rm -rf libblas$(SYMBOLPREFIX).so.@LONGVER@
mv $(SYMBOLPREFIX)libblas.so.@LONGVER@.fixed $(SYMBOLPREFIX)libblas.so.@LONGVER@ mv libblas$(SYMBOLPREFIX).so.@LONGVER@.fixed libblas$(SYMBOLPREFIX).so.@LONGVER@
endif endif

View File

@ -440,13 +440,13 @@ ifeq "$(SYMBOLPREFIX)" ""
ar ruv liblapack.a $(ALLOBJ) $(ALLXOBJ) ar ruv liblapack.a $(ALLOBJ) $(ALLXOBJ)
ranlib liblapack.a ranlib liblapack.a
else else
ar ruv $(SYMBOLPREFIX)liblapack.a $(ALLOBJ) $(ALLXOBJ) ar ruv liblapack$(SYMBOLPREFIX).a $(ALLOBJ) $(ALLXOBJ)
ranlib $(SYMBOLPREFIX)liblapack.a ranlib liblapack$(SYMBOLPREFIX).a
for i in `nm $(SYMBOLPREFIX)liblapack.a |grep " T " | awk '{print $$3}'`; do echo "$$i" "64_$$i"; done > lapack-static-prefix.def.dirty for i in `nm liblapack$(SYMBOLPREFIX).a |grep " T " | awk '{print $$3}'`; do echo "$$i" "64_$$i"; done > lapack-static-prefix.def.dirty
sort -n lapack-static-prefix.def.dirty | uniq > lapack-static-prefix.def sort -n lapack-static-prefix.def.dirty | uniq > lapack-static-prefix.def
$(OBJCOPY) --redefine-syms lapack-static-prefix.def $(SYMBOLPREFIX)liblapack.a $(SYMBOLPREFIX)liblapack.a.fixed $(OBJCOPY) --redefine-syms lapack-static-prefix.def liblapack$(SYMBOLPREFIX).a liblapack$(SYMBOLPREFIX).a.fixed
rm -rf $(SYMBOLPREFIX)liblapack.a rm -rf liblapack$(SYMBOLPREFIX).a
mv $(SYMBOLPREFIX)liblapack.a.fixed $(SYMBOLPREFIX)liblapack.a mv liblapack$(SYMBOLPREFIX).a.fixed liblapack$(SYMBOLPREFIX).a
endif endif
shared: $(ALLOBJ) $(ALLXOBJ) shared: $(ALLOBJ) $(ALLXOBJ)
@ -454,11 +454,11 @@ ifeq "$(SYMBOLPREFIX)" ""
# No renaming needed # No renaming needed
cc $(CFLAGS) -shared -Wl,-soname,liblapack.so.@SHORTVER@ -o liblapack.so.@LONGVER@ $(ALLOBJ) $(ALLXOBJ) -L.. -lblas -lm -lgfortran -lc cc $(CFLAGS) -shared -Wl,-soname,liblapack.so.@SHORTVER@ -o liblapack.so.@LONGVER@ $(ALLOBJ) $(ALLXOBJ) -L.. -lblas -lm -lgfortran -lc
else else
cc $(CFLAGS) -shared -Wl,-soname,$(SYMBOLPREFIX)liblapack.so.@SHORTVER@ -o $(SYMBOLPREFIX)liblapack.so.@LONGVER@ $(ALLOBJ) $(ALLXOBJ) -L.. -lblas -lm -lgfortran -lc cc $(CFLAGS) -shared -Wl,-soname,liblapack$(SYMBOLPREFIX).so.@SHORTVER@ -o liblapack$(SYMBOLPREFIX).so.@LONGVER@ $(ALLOBJ) $(ALLXOBJ) -L.. -lblas -lm -lgfortran -lc
# generate a list of all symbols in shared library and rename with SYMBOLPREFIX # generate a list of all symbols in shared library and rename with SYMBOLPREFIX
for i in `readelf -Ws $(SYMBOLPREFIX)liblapack.so.@LONGVER@ | awk '{print $$8}' | grep -v GLIBC |grep -v GFORTRAN |grep -v "Name" `; do echo "$$i" "64_$$i"; done > lapack-prefix.def.dirty for i in `readelf -Ws liblapack$(SYMBOLPREFIX).so.@LONGVER@ | awk '{print $$8}' | grep -v GLIBC |grep -v GFORTRAN |grep -v "Name" `; do echo "$$i" "64_$$i"; done > lapack-prefix.def.dirty
sort -n lapack-prefix.def.dirty | uniq > lapack-prefix.def sort -n lapack-prefix.def.dirty | uniq > lapack-prefix.def
$(OBJCOPY) --redefine-syms lapack-prefix.def $(SYMBOLPREFIX)liblapack.so.@LONGVER@ $(SYMBOLPREFIX)liblapack.so.@LONGVER@.fixed $(OBJCOPY) --redefine-syms lapack-prefix.def liblapack$(SYMBOLPREFIX).so.@LONGVER@ liblapack$(SYMBOLPREFIX).so.@LONGVER@.fixed
rm -rf $(SYMBOLPREFIX)liblapack.so.@LONGVER@ rm -rf liblapack$(SYMBOLPREFIX).so.@LONGVER@
mv $(SYMBOLPREFIX)liblapack.so.@LONGVER@.fixed $(SYMBOLPREFIX)liblapack.so.@LONGVER@ mv liblapack$(SYMBOLPREFIX).so.@LONGVER@.fixed liblapack$(SYMBOLPREFIX).so.@LONGVER@
endif endif

View File

@ -10,7 +10,7 @@
Summary: Numerical linear algebra package libraries Summary: Numerical linear algebra package libraries
Name: lapack Name: lapack
Version: %{mediumver}.1 Version: %{mediumver}.1
Release: 4%{?dist} Release: 5%{?dist}
License: BSD License: BSD
Group: System Environment/Libraries Group: System Environment/Libraries
URL: http://www.netlib.org/lapack/ URL: http://www.netlib.org/lapack/
@ -190,17 +190,17 @@ cp libblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/
make clean make clean
FFLAGS="$RPM_OPT_O_FLAGS -fdefault-integer-8" make dcabs1.o FFLAGS="$RPM_OPT_O_FLAGS -fdefault-integer-8" make dcabs1.o
SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" make static SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" make static
cp 64_libblas.a ${RPM_BUILD_DIR}/%{name}-%{version}/64_libblas.a cp libblas64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64_.a
make clean make clean
FFLAGS="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" make dcabs1.o FFLAGS="$RPM_OPT_O_FLAGS -fPIC -fdefault-integer-8" make dcabs1.o
SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" make shared SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" make shared
cp 64_libblas.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/64_libblas.so.%{version} cp libblas64_.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/libblas64_.so.%{version}
%endif %endif
popd popd
ln -s libblas.so.%{version} libblas.so ln -s libblas.so.%{version} libblas.so
%if 0%{?arch64} %if 0%{?arch64}
ln -s 64_libblas.so.%{version} 64_libblas.so ln -s libblas64_.so.%{version} libblas64_.so
%endif %endif
# Build the static dlamch, dsecnd, lsame, second, slamch bits # Build the static dlamch, dsecnd, lsame, second, slamch bits
@ -236,7 +236,7 @@ popd
# Build the static lapack library # Build the static lapack library
pushd SRC pushd SRC
make SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" static make SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS" static
cp 64_liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/64_liblapack.a cp liblapack64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64_.a
popd popd
# Build the static with pic dlamch, dsecnd, lsame, second, slamch bits (64bit INTEGER) # Build the static with pic dlamch, dsecnd, lsame, second, slamch bits (64bit INTEGER)
@ -249,7 +249,7 @@ popd
pushd SRC pushd SRC
make clean make clean
make SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" static make SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC" static
cp 64_liblapack.a ${RPM_BUILD_DIR}/%{name}-%{version}/64_liblapack_pic.a cp liblapack64_.a ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64_pic.a
popd popd
%endif %endif
@ -277,14 +277,14 @@ popd
pushd SRC pushd SRC
make clean make clean
make SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" shared make SYMBOLPREFIX="64_" FFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" CFLAGS="$RPM_OPT_FLAGS -fPIC -fdefault-integer-8" shared
cp 64_liblapack.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/64_liblapack.so.%{version} cp liblapack64_.so.%{version} ${RPM_BUILD_DIR}/%{name}-%{version}/liblapack64_.so.%{version}
popd popd
%endif %endif
ln -s liblapack.so.%{version} liblapack.so ln -s liblapack.so.%{version} liblapack.so
%if 0%{?arch64} %if 0%{?arch64}
ln -s 64_liblapack.so.%{version} 64_liblapack.so ln -s liblapack64_.so.%{version} liblapack64_.so
%endif %endif
# Build the lapacke libraries # Build the lapacke libraries
@ -310,7 +310,7 @@ for f in liblapack.so.%{version} libblas.so.%{version} liblapacke.so.%{version}
done done
%if 0%{?arch64} %if 0%{?arch64}
for f in 64_liblapack.so.%{version} 64_libblas.so.%{version} 64_libblas.a 64_liblapack.a 64_liblapack_pic.a; do for f in liblapack64_.so.%{version} libblas64_.so.%{version} libblas64_.a liblapack64_.a liblapack_64_pic.a; do
cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f cp -f $f ${RPM_BUILD_ROOT}%{_libdir}/$f
done done
%endif %endif
@ -380,12 +380,12 @@ ln -sf liblapacke.so.%{version} liblapacke.so
ln -sf liblapacke.so.%{version} liblapacke.so.%{shortver} ln -sf liblapacke.so.%{version} liblapacke.so.%{shortver}
ln -sf liblapacke.so.%{version} liblapacke.so.%{mediumver} ln -sf liblapacke.so.%{version} liblapacke.so.%{mediumver}
%if 0%{?arch64} %if 0%{?arch64}
ln -sf 64_liblapack.so.%{version} 64_liblapack.so ln -sf liblapack64_.so.%{version} liblapack64_.so
ln -sf 64_liblapack.so.%{version} 64_liblapack.so.%{shortver} ln -sf liblapack64_.so.%{version} liblapack64_.so.%{shortver}
ln -sf 64_liblapack.so.%{version} 64_liblapack.so.%{mediumver} ln -sf liblapack64_.so.%{version} liblapack64_.so.%{mediumver}
ln -sf 64_libblas.so.%{version} 64_libblas.so ln -sf libblas64_.so.%{version} libblas64_.so
ln -sf 64_libblas.so.%{version} 64_libblas.so.%{shortver} ln -sf libblas64_.so.%{version} libblas64_.so.%{shortver}
ln -sf 64_libblas.so.%{version} 64_libblas.so.%{mediumver} ln -sf libblas64_.so.%{version} libblas64_.so.%{mediumver}
%endif %endif
%post -p /sbin/ldconfig %post -p /sbin/ldconfig
@ -434,27 +434,30 @@ ln -sf 64_libblas.so.%{version} 64_libblas.so.%{mediumver}
%if 0%{?arch64} %if 0%{?arch64}
%files -n blas64 %files -n blas64
%doc LICENSE %doc LICENSE
%{_libdir}/64_libblas.so.* %{_libdir}/libblas64_.so.*
%files -n blas64-devel %files -n blas64-devel
%{_libdir}/64_libblas.so %{_libdir}/libblas64_.so
%files -n blas64-static %files -n blas64-static
%{_libdir}/64_libblas.a %{_libdir}/libblas64_.a
%files -n lapack64 %files -n lapack64
%doc README.md LICENSE %doc README.md LICENSE
%{_libdir}/64_liblapack.so.* %{_libdir}/liblapack64_.so.*
%files -n lapack64-devel %files -n lapack64-devel
%{_libdir}/64_liblapack.so %{_libdir}/liblapack64_.so
%files -n lapack64-static %files -n lapack64-static
%{_libdir}/64_liblapack.a %{_libdir}/liblapack64_.a
%{_libdir}/64_liblapack_pic.a %{_libdir}/liblapack64_pic.a
%endif %endif
%changelog %changelog
* Mon Aug 14 2017 Tom Callaway <spot@fedoraproject.org> - 3.7.1-5
- rename 64_ libraries to lib*64_*
* Fri Aug 11 2017 Tom Callaway <spot@fedoraproject.org> - 3.7.1-4 * Fri Aug 11 2017 Tom Callaway <spot@fedoraproject.org> - 3.7.1-4
- move to 64_ suffix and symbol mangling (bz1295965) - move to 64_ suffix and symbol mangling (bz1295965)