This commit is contained in:
putao66 2019-11-29 11:01:54 +08:00
commit 590f8f56ae
3 changed files with 206 additions and 0 deletions

BIN
papi-5.6.0.tar.gz Normal file

Binary file not shown.

115
papi-ldflags.patch Normal file
View File

@ -0,0 +1,115 @@
commit bde3da26f1f2755689e16fc9f5ab404367d1fdc8
Author: Vince Weaver <vincent.weaver@maine.edu>
Date: Wed Jan 24 14:13:28 2018 -0500
build: fix various LDFLAGS/CFLAGS issues
issues were reported by Andreas Beckmann <anbe@debian.org>
diff --git a/src/components/Makefile_comp_tests.target.in b/src/components/Makefile_comp_tests.target.in
index 9a369adb..a4412bea 100644
--- a/src/components/Makefile_comp_tests.target.in
+++ b/src/components/Makefile_comp_tests.target.in
@@ -9,7 +9,7 @@ INCLUDE = -I. -I@includedir@ -I$(datadir) -I$(testlibdir) -I$(validationlibdir)
LIBDIR = @libdir@
PAPILIB = $(datadir)/@LIBRARY@
TESTLIB = $(testlibdir)/libtestlib.a
-LDFLAGS = @LDL@
+LDFLAGS = @LDFLAGS@ @LDL@
CC = @CC@
F77 = @F77@
CC_R = @CC_R@
diff --git a/src/components/perf_event_uncore/tests/Makefile b/src/components/perf_event_uncore/tests/Makefile
index 3ee8fc2a..d70debe6 100644
--- a/src/components/perf_event_uncore/tests/Makefile
+++ b/src/components/perf_event_uncore/tests/Makefile
@@ -17,19 +17,19 @@ perf_event_uncore_lib.o: perf_event_uncore_lib.c perf_event_uncore_lib.h
perf_event_amd_northbridge: perf_event_amd_northbridge.o $(DOLOOPS) $(UTILOBJS) $(PAPILIB) $(DOLOOPS)
- $(CC) $(LFLAGS) -o perf_event_amd_northbridge perf_event_amd_northbridge.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB) $(LDFLAGS)
+ $(CC) $(CFLAGS) -o perf_event_amd_northbridge perf_event_amd_northbridge.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB) $(LDFLAGS)
perf_event_uncore: perf_event_uncore.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB) perf_event_uncore_lib.o
- $(CC) $(LFLAGS) -o perf_event_uncore perf_event_uncore.o perf_event_uncore_lib.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB) $(LDFLAGS)
+ $(CC) $(CFLAGS) -o perf_event_uncore perf_event_uncore.o perf_event_uncore_lib.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB) $(LDFLAGS)
perf_event_uncore_attach: perf_event_uncore_attach.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB) perf_event_uncore_lib.o
- $(CC) $(LFLAGS) -o perf_event_uncore_attach perf_event_uncore_attach.o perf_event_uncore_lib.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB) $(LDFLAGS)
+ $(CC) $(CFLAGS) -o perf_event_uncore_attach perf_event_uncore_attach.o perf_event_uncore_lib.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB) $(LDFLAGS)
perf_event_uncore_multiple: perf_event_uncore_multiple.o perf_event_uncore_lib.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB)
- $(CC) $(LFLAGS) $(INCLUDE) -o perf_event_uncore_multiple perf_event_uncore_multiple.o perf_event_uncore_lib.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB) $(LDFLAGS)
+ $(CC) $(CFLAGS) $(INCLUDE) -o perf_event_uncore_multiple perf_event_uncore_multiple.o perf_event_uncore_lib.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB) $(LDFLAGS)
perf_event_uncore_cbox: perf_event_uncore_cbox.o perf_event_uncore_lib.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB)
- $(CC) $(LFLAGS) $(INCLUDE) -o perf_event_uncore_cbox perf_event_uncore_cbox.o perf_event_uncore_lib.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB) $(LDFLAGS)
+ $(CC) $(CFLAGS) $(INCLUDE) -o perf_event_uncore_cbox perf_event_uncore_cbox.o perf_event_uncore_lib.o $(UTILOBJS) $(DOLOOPS) $(PAPILIB) $(LDFLAGS)
diff --git a/src/ctests/Makefile.recipies b/src/ctests/Makefile.recipies
index 63c107c0..201f3c85 100644
--- a/src/ctests/Makefile.recipies
+++ b/src/ctests/Makefile.recipies
@@ -350,7 +350,7 @@ code2name: code2name.c $(TESTLIB) $(PAPILIB)
$(CC) $(INCLUDE) $(CFLAGS) $(TOPTFLAGS) code2name.c $(TESTLIB) $(PAPILIB) $(LDFLAGS) -o code2name
attach_target: attach_target.c $(DOLOOPS)
- -$(CC) $(INCLUDE) $(CFLAGS) $(TOPTFLAGS) attach_target.c -o attach_target $(DOLOOPS) $(TESTLIB)
+ -$(CC) $(INCLUDE) $(CFLAGS) $(TOPTFLAGS) attach_target.c -o attach_target $(DOLOOPS) $(TESTLIB) $(LDFLAGS)
zero_attach: zero_attach.c $(TESTLIB) $(DOLOOPS) $(PAPILIB)
-$(CC) $(INCLUDE) $(CFLAGS) $(TOPTFLAGS) zero_attach.c $(TESTLIB) $(DOLOOPS) $(PAPILIB) $(LDFLAGS) -o zero_attach
diff --git a/src/ctests/Makefile.target.in b/src/ctests/Makefile.target.in
index bb51c350..fcc3373b 100644
--- a/src/ctests/Makefile.target.in
+++ b/src/ctests/Makefile.target.in
@@ -12,7 +12,7 @@ LIBRARY=@LIBRARY@
SHLIB=@SHLIB@
PAPILIB = ../@LINKLIB@
TESTLIB = $(testlibdir)/libtestlib.a
-LDFLAGS = @LDL@ @STATIC@
+LDFLAGS = @LDFLAGS@ @LDL@ @STATIC@
CC = @CC@
MPICC = @MPICC@
F77 = @F77@
diff --git a/src/ftests/Makefile.target.in b/src/ftests/Makefile.target.in
index 718586e5..8006dd8d 100644
--- a/src/ftests/Makefile.target.in
+++ b/src/ftests/Makefile.target.in
@@ -11,7 +11,7 @@ LIBRARY = @LIBRARY@
SHLIB=@SHLIB@
PAPILIB = ../@LINKLIB@
TESTLIB = $(testlibdir)/libtestlib.a
-LDFLAGS = @LDL@
+LDFLAGS = @LDFLAGS@ @LDL@
CC = @CC@
F77 = @F77@
CC_R = @CC_R@
diff --git a/src/utils/Makefile.target.in b/src/utils/Makefile.target.in
index a5eab438..58d438a1 100644
--- a/src/utils/Makefile.target.in
+++ b/src/utils/Makefile.target.in
@@ -11,7 +11,7 @@ LIBRARY=@LIBRARY@
SHLIB=@SHLIB@
PAPILIB = ../@LINKLIB@
TESTLIB = $(testlibdir)/libtestlib.a
-LDFLAGS = @LDL@ @STATIC@
+LDFLAGS = @LDFLAGS@ @LDL@ @STATIC@
CC = @CC@
MPICC = @MPICC@
F77 = @F77@
diff --git a/src/validation_tests/Makefile.target.in b/src/validation_tests/Makefile.target.in
index a5eab438..58d438a1 100644
--- a/src/validation_tests/Makefile.target.in
+++ b/src/validation_tests/Makefile.target.in
@@ -11,7 +11,7 @@ LIBRARY=@LIBRARY@
SHLIB=@SHLIB@
PAPILIB = ../@LINKLIB@
TESTLIB = $(testlibdir)/libtestlib.a
-LDFLAGS = @LDL@ @STATIC@
+LDFLAGS = @LDFLAGS@ @LDL@ @STATIC@
CC = @CC@
MPICC = @MPICC@
F77 = @F77@

91
papi.spec Normal file
View File

@ -0,0 +1,91 @@
Name: papi
Version: 5.6.0
Release: 8
Summary: Performance Application Programming Interface
License: BSD
URL: http://icl.cs.utk.edu/papi/
Source0: http://icl.cs.utk.edu/projects/papi/downloads/%{name}-%{version}.tar.gz
BuildRequires: autoconf doxygen ncurses-devel gcc-gfortran kernel-headers >= 2.6.32
BuildRequires: chrpath lm_sensors-devel libpfm-devel >= 4.6.0-1 libpfm-static >= 4.6.0-1
BuildRequires: net-tools rdma-core-devel infiniband-diags-devel perl-generators
Provides: papi-libs = %{version}-%{release}
Obsoletes: papi-libs < %{version}-%{release}
Patch0001: papi-ldflags.patch
%description
PAPI provides a programmer interface to monitor the performance of
running programs,and contains the run-time libraries for any application that wishes
to use PAPI.
%package devel
Summary: Header files for the compiling programs with PAPI
Requires: papi = %{version}-%{release} pkgconfig
Provides: papi-testsuite = %{version}-%{release} papi-static = %{version}-%{release}
Obsoletes: papi-testsuite < %{version}-%{release} papi-static < %{version}-%{release}
%description devel
PAPI-devel provides C header files for specifying PAPI user-space libraries and interfaces,
a test testuiste for checking PAPI functionality, and static libraries for compiling programs with PAPI.
%package help
Summary: Help documents for papi
%description help
The papi-help package conatins manual pages and documents for papi.
%prep
%autosetup -p1
%build
cd src
autoconf
%configure --with-perf-events --with-pfm-incdir=%{_includedir} --with-pfm-libdir=%{_libdir} \
--with-static-lib=yes --with-shared-lib=yes --with-shlib --with-shlib-tools \
--with-components="appio coretemp example infiniband lmsensors lustre micpower mx net rapl stealtime"
cd components
cd infiniband_umad; %configure
cd ../lmsensors; %configure --with-sensors_incdir=/usr/include/sensors --with-sensors_libdir=%{_libdir};
cd ../../
DBG="" make %{?_smp_mflags}
cd ../doc
DBG="" make
DBG="" make install
%install
cd src
make DESTDIR=$RPM_BUILD_ROOT LDCONFIG=/bin/true install-all
chrpath --delete $RPM_BUILD_ROOT%{_libdir}/*.so*
%post
/sbin/ldconfig
%postun
/sbin/ldconfig
%files
%doc LICENSE.txt
%{_bindir}/*
%{_libdir}/*.so.*
%dir /usr/share/papi
/usr/share/papi/papi_events.csv
%files devel
%{_includedir}/*.h
%{_libdir}/*.so
%{_libdir}/pkgconfig/papi*.pc
%{_libdir}/*.a
/usr/share/papi/*
%exclude /usr/share/papi/papi_events.csv
%files help
%doc INSTALL.txt README RELEASENOTES.txt
%{_mandir}/man1/*
%{_mandir}/man3/*
%changelog
* Thu Nov 28 2019 liujing<liujing144@huawei.com> - 5.6.0-8
- Package init