resolves rhbz986673 - /usr/lib64/libpapi.so is unowned
This commit is contained in:
parent
c311b21be4
commit
cca5a3d460
46
papi-shlib.patch
Normal file
46
papi-shlib.patch
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
commit f4ec143eef7b714718b766bdc641af7856a950af
|
||||||
|
Author: William Cohen <wcohen@redhat.com>
|
||||||
|
Date: Mon Jul 22 12:26:02 2013 -0400
|
||||||
|
|
||||||
|
Correct versioning of libpapi.so
|
||||||
|
|
||||||
|
The configure for linux always set the soname to libpapi.so. This
|
||||||
|
causes problems when /sbin/ldconfig tries to update the library
|
||||||
|
information on linux. The shared library is installed as
|
||||||
|
/lib{64}/libpapi.so.$VERSION, but the shared library has the soname of
|
||||||
|
libpapi.so. ldconfig makes a symbolic link from /lib/libpapi.so to
|
||||||
|
the actual versioned shared library, /lib/{64}/libpapi.so$VERSION.
|
||||||
|
The configure should get the soname correct to avoid creating this
|
||||||
|
symbolic link.
|
||||||
|
|
||||||
|
This patch only addresses the issues for some of the possible
|
||||||
|
platforms and similar patches may be needed for other platforms.
|
||||||
|
|
||||||
|
Signed-off-by: William Cohen <wcohen@redhat.com>
|
||||||
|
|
||||||
|
diff --git a/src/configure.in b/src/configure.in
|
||||||
|
index 4bee24d..b5a6c80 100644
|
||||||
|
--- a/src/configure.in
|
||||||
|
+++ b/src/configure.in
|
||||||
|
@@ -1234,10 +1234,10 @@ CTEST_TARGETS="papi_api serial forkexec_tests overflow_tests profile_tests attac
|
||||||
|
FTEST_TARGETS="all"
|
||||||
|
UTIL_TARGETS="papi_avail papi_mem_info papi_cost papi_clockres papi_native_avail papi_command_line papi_event_chooser papi_decode papi_xml_event_info papi_version papi_multiplex_cost papi_component_avail papi_error_codes"
|
||||||
|
LIBRARY=libpapi.a
|
||||||
|
-SHLIB='libpapi.so.$(PAPIVER)'
|
||||||
|
+SHLIB='libpapi.so.AC_PACKAGE_VERSION'
|
||||||
|
OMPCFLGS=-fopenmp
|
||||||
|
CC_R='$(CC) -pthread'
|
||||||
|
-CC_SHR='$(CC) -fPIC -DPIC -shared -Wl,-soname -Wl,libpapi.so -Xlinker "-rpath" -Xlinker "$(LIBDIR)"'
|
||||||
|
+CC_SHR='$(CC) -fPIC -DPIC -shared -Wl,-soname -Wl,$(SHLIB) -Xlinker "-rpath" -Xlinker "$(LIBDIR)"'
|
||||||
|
if test "$CC_COMMON_NAME" = "gcc"; then
|
||||||
|
if test "$bitmode" = "32"; then
|
||||||
|
BITFLAGS=-m32
|
||||||
|
@@ -1383,7 +1383,7 @@ elif test "$MAKEVER" = "bgp"; then
|
||||||
|
SHLIB=libpapi.so
|
||||||
|
DESCR="Linux for BlueGene/P"
|
||||||
|
LIBS=static
|
||||||
|
- CC_SHR='$(CC) -shared -Xlinker "-soname" -Xlinker "libpapi.so" -Xlinker "-rpath" -Xlinker "$(LIBDIR)"'
|
||||||
|
+ CC_SHR='$(CC) -shared -Xlinker "-soname" -Xlinker "$(SHLIB)" -Xlinker "-rpath" -Xlinker "$(LIBDIR)"'
|
||||||
|
OMPCFLGS=""
|
||||||
|
|
||||||
|
elif test "$MAKEVER" = "bgq"; then
|
17
papi.spec
17
papi.spec
@ -2,7 +2,7 @@
|
|||||||
Summary: Performance Application Programming Interface
|
Summary: Performance Application Programming Interface
|
||||||
Name: papi
|
Name: papi
|
||||||
Version: 5.1.1
|
Version: 5.1.1
|
||||||
Release: 4%{?dist}
|
Release: 5%{?dist}
|
||||||
License: BSD
|
License: BSD
|
||||||
Group: Development/System
|
Group: Development/System
|
||||||
URL: http://icl.cs.utk.edu/papi/
|
URL: http://icl.cs.utk.edu/papi/
|
||||||
@ -10,6 +10,7 @@ Source0: http://icl.cs.utk.edu/projects/papi/downloads/%{name}-%{version}.tar.gz
|
|||||||
Patch200: papi-testsuite1.patch
|
Patch200: papi-testsuite1.patch
|
||||||
Patch210: papi-native-option.patch
|
Patch210: papi-native-option.patch
|
||||||
Patch211: papi-man.patch
|
Patch211: papi-man.patch
|
||||||
|
Patch212: papi-shlib.patch
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
|
||||||
BuildRequires: doxygen
|
BuildRequires: doxygen
|
||||||
BuildRequires: ncurses-devel
|
BuildRequires: ncurses-devel
|
||||||
@ -63,6 +64,7 @@ the PAPI user-space libraries and interfaces.
|
|||||||
%patch200 -p1
|
%patch200 -p1
|
||||||
%patch210 -p1
|
%patch210 -p1
|
||||||
%patch211 -p1
|
%patch211 -p1
|
||||||
|
%patch212 -p1 -b .shlib
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%if %{without bundled_libpfm}
|
%if %{without bundled_libpfm}
|
||||||
@ -71,6 +73,7 @@ the PAPI user-space libraries and interfaces.
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
cd src
|
cd src
|
||||||
|
autoconf
|
||||||
%configure --with-perf-events \
|
%configure --with-perf-events \
|
||||||
%{?libpfm_config} \
|
%{?libpfm_config} \
|
||||||
--with-static-lib=yes --with-shared-lib=yes --with-shlib \
|
--with-static-lib=yes --with-shared-lib=yes --with-shlib \
|
||||||
@ -94,8 +97,8 @@ DBG="" make %{?_smp_mflags}
|
|||||||
#generate updated versions of the documentation
|
#generate updated versions of the documentation
|
||||||
#DBG workaround to make sure libpfm just uses the normal CFLAGS
|
#DBG workaround to make sure libpfm just uses the normal CFLAGS
|
||||||
pushd ../doc
|
pushd ../doc
|
||||||
DBG="" make %{?_smp_mflags}
|
DBG="" make
|
||||||
DBG="" make %{?_smp_mflags} install
|
DBG="" make install
|
||||||
popd
|
popd
|
||||||
|
|
||||||
%install
|
%install
|
||||||
@ -114,7 +117,8 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
%{_bindir}/*
|
%{_bindir}/*
|
||||||
%{_libdir}/*.so.*
|
%{_libdir}/*.so.*
|
||||||
/usr/share/papi
|
%dir /usr/share/papi
|
||||||
|
/usr/share/papi/papi_events.csv
|
||||||
%doc INSTALL.txt README LICENSE.txt RELEASENOTES.txt
|
%doc INSTALL.txt README LICENSE.txt RELEASENOTES.txt
|
||||||
%doc %{_mandir}/man1/*
|
%doc %{_mandir}/man1/*
|
||||||
|
|
||||||
@ -140,6 +144,11 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%{_libdir}/*.a
|
%{_libdir}/*.a
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Jul 22 2013 William Cohen <wcohen@redhat.com> - 5.1.1-5
|
||||||
|
- rhbz986673 - /usr/lib64/libpapi.so is unowned
|
||||||
|
- Package files in /usr/share/papi only once.
|
||||||
|
- Avoid dependency problem with parallel make of man pages.
|
||||||
|
|
||||||
* Fri Jul 19 2013 William Cohen <wcohen@redhat.com> - 5.1.1-4
|
* Fri Jul 19 2013 William Cohen <wcohen@redhat.com> - 5.1.1-4
|
||||||
- Correct changelog.
|
- Correct changelog.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user