[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#929318: unblock: papi/5.7.0+dfsg-1



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
Control: block -1 with 928368

Please unblock package papi

Hi,

there are two things that need to be fixed in PAPI for buster.
* transition libpapi5 -> libpapi5.7, (one package needs a binNMU),
  see #928368 for details (upstream has now accepted and applied my
  patch)
* removal of non-dfsg-free iozone code (only used for tests for a
  component not included in our builds, so no negative effect)

The package is not uploaded to unstable yet, waiting for 5.7.0-2 to pass
experimental/NEW for libpapi5.7.

 debian/changelog                                                       |    16 +
 debian/control                                                         |    12 +-
 debian/copyright                                                       |     6 +-
 debian/gbp.conf                                                        |     2 +-
 debian/libpapi5.install                                                |     2 -
 debian/{libpapi5.README.Debian => libpapiSOVERSION.README.Debian}      |     0
 debian/{libpapi5.docs => libpapiSOVERSION.docs}                        |     0
 debian/libpapiSOVERSION.install                                        |     2 +
 debian/{libpapi5.symbols => libpapiSOVERSION.symbols}                  |    20 +-
 debian/patches/0001-set-SONAME-to-libpapi.so.-PAPIVER-.-PAPIREV.patch  |   163 +
 debian/patches/0002-Clean-up-of-carriage-return-character-M-from.patch |   119 +
 debian/patches/do-not-ignore-failures.patch                            |     8 +-
 debian/patches/for-debian-no-rpath.patch                               |     4 +-
 debian/patches/series                                                  |     2 +
 debian/rules                                                           |    20 +
 debian/watch                                                           |     3 +-
 src/components/appio/tests/iozone/Changes.txt                          |  2409 ----
 src/components/appio/tests/iozone/Generate_Graphs                      |    32 -
 src/components/appio/tests/iozone/Gnuplot.txt                          |    23 -
 src/components/appio/tests/iozone/client_list                          |    36 -
 src/components/appio/tests/iozone/fileop.c                             |  1389 ---
 src/components/appio/tests/iozone/gengnuplot.sh                        |    57 -
 src/components/appio/tests/iozone/gnu3d.dem                            |   146 -
 src/components/appio/tests/iozone/gnuplot.dem                          |    60 -
 src/components/appio/tests/iozone/gnuplotps.dem                        |    63 -
 src/components/appio/tests/iozone/iozone.c                             | 25297 ---------------------------------------
 src/components/appio/tests/iozone/iozone_visualizer.pl                 |   262 -
 src/components/appio/tests/iozone/libasync.c                           |  1604 ---
 src/components/appio/tests/iozone/libbif.c                             |   452 -
 src/components/appio/tests/iozone/makefile                             |  1461 ---
 src/components/appio/tests/iozone/pit_server.c                         |   831 --
 src/components/appio/tests/iozone/read_telemetry                       |    29 -
 src/components/appio/tests/iozone/report.pl                            |   150 -
 src/components/appio/tests/iozone/spec.in                              |   107 -
 src/components/appio/tests/iozone/write_telemetry                      |    29 -
 35 files changed, 350 insertions(+), 34466 deletions(-)

A git diff (since it better copes with the renames) from 5.7.0-1 in buster
with the deletions excluded is attached. Obviously still needs a dch -r :-)

unblock papi/5.7.0+dfsg-1

Thanks for considering,


Andreas
diff --git a/debian/changelog b/debian/changelog
index d019e5d..2c87196 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,19 @@
+papi (5.7.0+dfsg-1) UNRELEASED; urgency=medium
+
+  * Repack upstream tarball to remove src/components/appio/tests/iozone/*
+    which does not permit distribution of derivative works.  (Closes: #928959)
+
+ -- Andreas Beckmann <anbe@debian.org>  Mon, 20 May 2019 14:35:18 +0200
+
+papi (5.7.0-2) experimental; urgency=medium
+
+  * Restore support for changing the SOVERSION frequently.
+  * Change SONAME to libpapi.so.5.7.  (Closes: #928367)
+  * Bump libpfm4-dev B-D to >= 4.10.1+git7.
+  * Upload to experimental.
+
+ -- Andreas Beckmann <anbe@debian.org>  Mon, 06 May 2019 02:14:13 +0200
+
 papi (5.7.0-1) unstable; urgency=medium
 
   * New upstream release.
diff --git a/debian/control b/debian/control
index 9cb1a61..8da8e4c 100644
--- a/debian/control
+++ b/debian/control
@@ -7,7 +7,7 @@ Uploaders:
  Andreas Beckmann <anbe@debian.org>
 Build-Depends:
  debhelper-compat (= 12),
- libpfm4-dev (>= 4.10.1+git6),
+ libpfm4-dev (>= 4.10.1+git7),
  gfortran,
 Rules-Requires-Root: no
 Standards-Version: 4.3.0
@@ -15,15 +15,17 @@ Homepage: https://icl.utk.edu/papi/software/index.html
 Vcs-Browser: https://salsa.debian.org/hpc-team/papi
 Vcs-Git: https://salsa.debian.org/hpc-team/papi.git
 
-Package: libpapi5
+Package: libpapi5.7
 Section: libs
 Architecture: any
 Multi-Arch: same
 Pre-Depends: ${misc:Pre-Depends}
 Depends:
  ${shlibs:Depends}, ${misc:Depends}
-Breaks: libpapi5.3
-Replaces: libpapi5.3
+Breaks:
+ libpapi5 (>= 5.7),
+Replaces:
+ libpapi5 (>= 5.7),
 Description: PAPI runtime (shared libraries)
  Performance Application Programming Interface (PAPI) provides the tool
  designer and application engineer with a consistent interface and methodology
@@ -45,7 +47,7 @@ Section: libdevel
 Architecture: any
 Multi-Arch: same
 Depends:
- libpapi5 (= ${binary:Version}),
+ libpapi${papi:SOVERSION} (= ${binary:Version}),
  ${misc:Depends}
 Description: PAPI development files (headers and API documentation)
  Performance Application Programming Interface (PAPI) provides the tool
diff --git a/debian/copyright b/debian/copyright
index ab565fe..3d67d68 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -1,15 +1,13 @@
 Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
 Upstream-Name: papi
 Source: https://icl.utk.edu/papi/software/index.html
+Files-Excluded:
+ src/components/appio/tests/iozone
 
 Files: *
 Copyright: 2005-2015 University of Tennessee
 License: BSD-3-Clause
 
-Files: src/components/appio/tests/iozone/gengnuplot.sh
-Copyright: 2001 Yves Rougy <Yves@Rougy.net>
-License: GPL-2+
-
 Files: src/components/cuda/tests/nvlink_bandwidth*
        src/components/cuda/tests/simpleMultiGPU*
        src/components/cuda/tests/timer.h
diff --git a/debian/gbp.conf b/debian/gbp.conf
index b851e1b..56bdfa1 100644
--- a/debian/gbp.conf
+++ b/debian/gbp.conf
@@ -1,3 +1,3 @@
 [DEFAULT]
-#compression		= xz
+compression		= xz
 compression-level	= 9
diff --git a/debian/libpapi5.install b/debian/libpapi5.install
deleted file mode 100644
index 9ea1476..0000000
diff --git a/debian/libpapi5.README.Debian b/debian/libpapiSOVERSION.README.Debian
similarity index 100%
rename from debian/libpapi5.README.Debian
rename to debian/libpapiSOVERSION.README.Debian
diff --git a/debian/libpapi5.docs b/debian/libpapiSOVERSION.docs
similarity index 100%
rename from debian/libpapi5.docs
rename to debian/libpapiSOVERSION.docs
diff --git a/debian/libpapiSOVERSION.install b/debian/libpapiSOVERSION.install
new file mode 100644
index 0000000..41ad231
--- /dev/null
+++ b/debian/libpapiSOVERSION.install
@@ -0,0 +1,2 @@
+usr/lib/*/lib*.so.*
+usr/share/papi/papi_events.csv	usr/share/papi/@SOVERSION@/
diff --git a/debian/libpapi5.symbols b/debian/libpapiSOVERSION.symbols
similarity index 97%
rename from debian/libpapi5.symbols
rename to debian/libpapiSOVERSION.symbols
index 82c78e4..98d059e 100644
--- a/debian/libpapi5.symbols
+++ b/debian/libpapiSOVERSION.symbols
@@ -1,4 +1,4 @@
-libpapi.so.5 #PACKAGE# #MINVER#
+libpapi.so.@SOVERSION@ #PACKAGE# #MINVER#
 * Build-Depends-Package: libpapi-dev
  PAPIF_ACCUM@Base 0
  PAPIF_ACCUM_COUNTERS@Base 0
@@ -10,7 +10,7 @@ libpapi.so.5 #PACKAGE# #MINVER#
  PAPIF_CREATE_EVENTSET@Base 0
  PAPIF_DESTROY_EVENTSET@Base 0
  PAPIF_ENUM_EVENT@Base 0
- PAPIF_EPC@Base 5.2.0
+ PAPIF_EPC@Base 0
  PAPIF_EVENT_CODE_TO_NAME@Base 0
  PAPIF_EVENT_NAME_TO_CODE@Base 0
  PAPIF_FLIPS@Base 0
@@ -64,7 +64,7 @@ libpapi.so.5 #PACKAGE# #MINVER#
  PAPIF_STOP_COUNTERS@Base 0
  PAPIF_THREAD_ID@Base 0
  PAPIF_THREAD_INIT@Base 0
- PAPIF_UNREGISTER_THREAD@Base 5.6.0
+ PAPIF_UNREGISTER_THREAD@Base 0
  PAPIF_UNREGSTER_THREAD@Base 0
  PAPIF_WRITE@Base 0
  PAPIF_num_cmp_hwctrs@Base 0
@@ -85,7 +85,7 @@ libpapi.so.5 #PACKAGE# #MINVER#
  PAPI_disable_component_by_name@Base 0
  PAPI_enum_cmp_event@Base 0
  PAPI_enum_event@Base 0
- PAPI_epc@Base 5.2.0
+ PAPI_epc@Base 0
  PAPI_event_code_to_name@Base 0
  PAPI_event_name_to_code@Base 0
  PAPI_flips@Base 0
@@ -186,9 +186,9 @@ libpapi.so.5 #PACKAGE# #MINVER#
  papif_enum_event@Base 0
  papif_enum_event_@Base 0
  papif_enum_event__@Base 0
- papif_epc@Base 5.2.0
- papif_epc_@Base 5.2.0
- papif_epc__@Base 5.2.0
+ papif_epc@Base 0
+ papif_epc_@Base 0
+ papif_epc__@Base 0
  papif_event_code_to_name@Base 0
  papif_event_code_to_name_@Base 0
  papif_event_code_to_name__@Base 0
@@ -357,9 +357,9 @@ libpapi.so.5 #PACKAGE# #MINVER#
  papif_unlock@Base 0
  papif_unlock_@Base 0
  papif_unlock__@Base 0
- papif_unregister_thread@Base 5.6
- papif_unregister_thread_@Base 5.6
- papif_unregister_thread__@Base 5.6
+ papif_unregister_thread@Base 0
+ papif_unregister_thread_@Base 0
+ papif_unregister_thread__@Base 0
  papif_unregster_thread@Base 0
  papif_unregster_thread_@Base 0
  papif_unregster_thread__@Base 0
diff --git a/debian/patches/0001-set-SONAME-to-libpapi.so.-PAPIVER-.-PAPIREV.patch b/debian/patches/0001-set-SONAME-to-libpapi.so.-PAPIVER-.-PAPIREV.patch
new file mode 100644
index 0000000..f7688dd
--- /dev/null
+++ b/debian/patches/0001-set-SONAME-to-libpapi.so.-PAPIVER-.-PAPIREV.patch
@@ -0,0 +1,163 @@
+From 5434010ff4057d6e31493afcb317ba69d01d0e24 Mon Sep 17 00:00:00 2001
+From: Andreas Beckmann <a.beckmann@fz-juelich.de>
+Date: Mon, 6 May 2019 18:28:14 -0400
+Subject: [PATCH 1/2] [PATCH] set SONAME to libpapi.so.$(PAPIVER).$(PAPIREV)
+
+The version check in PAPI_library_init() requires matching
+PAPI_VER_CURRENT, therefore libpapi.so.5 from papi-5.6.x and papi-5.7.x
+are not interchangeable, but require applications to be recompiled.
+
+Change the SONAME to contain the two version components that define
+PAPI_VER_CURRENT, thereafter upgrading the shared library to a new
+version does no longer break existing applications (which will pick up
+the new SONAME upon recompilation).
+
+Introduce a new variable PAPISOVER and use it in all places where
+the SONAME is being used.
+
+drop unused symlinks with three version components:
+$(PAPIVER).$(PAPIREV).$(PAPIAGE)
+
+Signed-off-by: Heike Jagode <jagode@icl.utk.edu>
+---
+ src/Makefile.in    |  1 +
+ src/Makefile.inc   | 16 +++++++---------
+ src/Rules.perfmon2 |  4 ++--
+ src/configure      |  5 ++++-
+ src/configure.in   |  4 +++-
+ 5 files changed, 17 insertions(+), 13 deletions(-)
+
+diff --git a/src/Makefile.in b/src/Makefile.in
+index 99f0c9e5e..fcc41b996 100644
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -75,6 +75,7 @@ PMAPI     = @PMAPI@
+ PMINIT    = @PMINIT@
+ SETPATH = @SETPATH@
+ SHLIB = @SHLIB@
++PAPISOVER = @PAPISOVER@
+ VLIB = @VLIB@
+ SHLIBDEPS = @SHLIBDEPS@
+ SHOW_CONF = @SHOW_CONF@
+diff --git a/src/Makefile.inc b/src/Makefile.inc
+index 9497326c7..69b428f7e 100644
+--- a/src/Makefile.inc
++++ b/src/Makefile.inc
+@@ -58,13 +58,13 @@ $(LIBRARY): $(OBJECTS)
+ 	rm -f $(LIBRARY)
+ 	$(AR) $(ARG64) rv $(LIBRARY) $(OBJECTS)
+ 
+-shared: libpapi.so libpapi.so.$(PAPIVER)
++shared: libpapi.so libpapi.so.$(PAPISOVER)
+ 
+-libpapi.so libpapi.so.$(PAPIVER): $(SHLIB)
++libpapi.so libpapi.so.$(PAPISOVER): $(SHLIB)
+ 	ln -sf $(SHLIB) $@
+ 
+ $(SHLIB): $(HEADERS) $(SOURCES) $(SHLIBOBJS)
+-	rm -f $(SHLIB) libpapi.so libpapi.so.$(PAPIVER); 
++	rm -f $(SHLIB) libpapi.so libpapi.so.$(PAPISOVER)
+ 	$(CC_SHR) $(LIBCFLAGS) $(OPTFLAGS) $(SOURCES) $(SHLIBOBJS) -o $@ $(SHLIBDEPS) $(LDFLAGS)
+ 	@set -ex; if test "$(POST_BUILD)" != "" ; then \
+ 		-$(POST_BUILD) ; \
+@@ -258,7 +258,7 @@ ifneq (${COMPONENTS},)
+ endif
+ 
+ clean: comp_tests_clean native_clean
+-	rm -rf $(LIBRARY) $(SHLIB) libpapi.so libpapi.so.$(PAPIVER) $(OBJECTS) core rii_files genpapifdef *~ so_locations papi_fwrappers_.c papi_fwrappers__.c upper_PAPI_FWRAPPERS.c
++	rm -rf $(LIBRARY) $(SHLIB) libpapi.so libpapi.so.$(PAPISOVER) $(OBJECTS) core rii_files genpapifdef *~ so_locations papi_fwrappers_.c papi_fwrappers__.c upper_PAPI_FWRAPPERS.c
+ 	$(MAKE) -C ../doc clean
+ 	$(MAKE) -C ctests clean
+ 	$(MAKE) -C ftests clean
+@@ -317,8 +317,7 @@ install-lib: native_install
+ 		cp -p $(SHLIB) $(DESTDIR)$(LIBDIR)/libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC); \
+ 		chmod go+r $(DESTDIR)$(LIBDIR)/libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) ; \
+ 		cd $(DESTDIR)$(LIBDIR); \
+-		ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE); \
+-		ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) libpapi.so.$(PAPIVER); \
++		ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) libpapi.so.$(PAPISOVER); \
+ 		ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) libpapi.so; \
+ 	fi
+ 
+@@ -352,9 +351,8 @@ install-pkgconf:
+ 	-mkdir -p $(DESTDIR)$(LIBPC)
+ 	-chmod go+rx $(DESTDIR)$(LIBPC)
+ 	cp papi.pc $(DESTDIR)$(LIBPC)/papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc
+-	cd $(DESTDIR)$(LIBPC); ln -sf papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).pc;
+-	cd $(DESTDIR)$(LIBPC); ln -sf papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc papi-$(PAPIVER).pc;
+-	cd $(DESTDIR)$(LIBPC); ln -sf papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc papi.pc;
++	ln -sf papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc $(DESTDIR)$(LIBPC)/papi-$(PAPISOVER).pc
++	ln -sf papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc $(DESTDIR)$(LIBPC)/papi.pc
+ 
+ #
+ # Dummy targets for configurations that do not also include a Rules file with targets
+diff --git a/src/Rules.perfmon2 b/src/Rules.perfmon2
+index 4f86b6c87..f17aa877d 100644
+--- a/src/Rules.perfmon2
++++ b/src/Rules.perfmon2
+@@ -60,8 +60,8 @@ endif
+ 	-install -d $(DESTDIR)$(LIBDIR)
+ ifneq (,$(findstring shared,$(LIBS)))
+ 	cp -p $(SHLIB) $(DESTDIR)$(LIBDIR)/libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC)
+-	cd $(DESTDIR)$(LIBDIR); ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) libpapi.so.$(PAPIVER)
+-	cd $(DESTDIR)$(LIBDIR); ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) libpapi.so
++	ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) $(DESTDIR)$(LIBDIR)/libpapi.so.$(PAPISOVER)
++	ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) $(DESTDIR)$(LIBDIR)/libpapi.so
+ endif
+ 	-install -d $(DESTDIR)$(DATADIR)
+ 	cp -f ./papi_events.csv $(DESTDIR)$(DATADIR)
+diff --git a/src/configure b/src/configure
+index 362dac999..922fee51b 100755
+--- a/src/configure
++++ b/src/configure
+@@ -664,6 +664,7 @@ CPUCOMPONENT_NAME
+ OPTFLAGS
+ PAPICFLAGS
+ VLIB
++PAPISOVER
+ SHLIB
+ LIBRARY
+ FILENAME
+@@ -6190,7 +6191,8 @@ CTEST_TARGETS="all"
+ FTEST_TARGETS="all"
+ LIBRARY=libpapi.a
+ SHLIB='libpapi.so.5.7.0.0'
+-VLIB='libpapi.so.$(PAPIVER)'
++PAPISOVER='$(PAPIVER).$(PAPIREV)'
++VLIB='libpapi.so.$(PAPISOVER)'
+ OMPCFLGS=-fopenmp
+ CC_R='$(CC) -pthread'
+ CC_SHR='$(CC) -fPIC -DPIC -shared -Wl,-soname -Wl,$(VLIB) -Xlinker "-rpath" -Xlinker "$(LIBDIR)"'
+@@ -6788,6 +6790,7 @@ $as_echo "$PAPI_EVENTS_CSV" >&6; }
+ 
+ 
+ 
++
+ if test "$cross_compiling" = "yes" ; then
+   { $as_echo "$as_me:${as_lineno-$LINENO}: Compiling genpapifdef with $nativecc because cross compiling" >&5
+ $as_echo "$as_me: Compiling genpapifdef with $nativecc because cross compiling" >&6;}
+diff --git a/src/configure.in b/src/configure.in
+index db16d3dca..e1d255948 100644
+--- a/src/configure.in
++++ b/src/configure.in
+@@ -1262,7 +1262,8 @@ CTEST_TARGETS="all"
+ FTEST_TARGETS="all"
+ LIBRARY=libpapi.a
+ SHLIB='libpapi.so.AC_PACKAGE_VERSION'
+-VLIB='libpapi.so.$(PAPIVER)'
++PAPISOVER='$(PAPIVER).$(PAPIREV)'
++VLIB='libpapi.so.$(PAPISOVER)'
+ OMPCFLGS=-fopenmp
+ CC_R='$(CC) -pthread'
+ CC_SHR='$(CC) -fPIC -DPIC -shared -Wl,-soname -Wl,$(VLIB) -Xlinker "-rpath" -Xlinker "$(LIBDIR)"'
+@@ -1769,6 +1770,7 @@ AC_SUBST(CPU)
+ AC_SUBST(FILENAME)
+ AC_SUBST(LIBRARY)
+ AC_SUBST(SHLIB)
++AC_SUBST(PAPISOVER)
+ AC_SUBST(VLIB)
+ AC_SUBST(PAPICFLAGS)
+ AC_SUBST(OPTFLAGS)
+-- 
+2.11.0
+
diff --git a/debian/patches/0002-Clean-up-of-carriage-return-character-M-from.patch b/debian/patches/0002-Clean-up-of-carriage-return-character-M-from.patch
new file mode 100644
index 0000000..ed8ab48
--- /dev/null
+++ b/debian/patches/0002-Clean-up-of-carriage-return-character-M-from.patch
@@ -0,0 +1,119 @@
+From 6676556a79ed2e8f5840eecc23f8a26cf040f4c2 Mon Sep 17 00:00:00 2001
+From: Heike Jagode <jagode@icl.utk.edu>
+Date: Tue, 7 May 2019 10:29:54 -0400
+Subject: [PATCH 2/2] Clean up of carriage return character (^M) from previous
+ patch (commit 5434010).
+
+Thanks to Steve Kaufmann from Cray!
+---
+ src/Makefile.in    |  2 +-
+ src/Makefile.inc   | 14 +++++++-------
+ src/Rules.perfmon2 |  4 ++--
+ src/configure.in   |  6 +++---
+ 4 files changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/src/Makefile.in b/src/Makefile.in
+index fcc41b996..4334c3e2b 100644
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -75,7 +75,7 @@ PMAPI     = @PMAPI@
+ PMINIT    = @PMINIT@
+ SETPATH = @SETPATH@
+ SHLIB = @SHLIB@
+-PAPISOVER = @PAPISOVER@
++PAPISOVER = @PAPISOVER@
+ VLIB = @VLIB@
+ SHLIBDEPS = @SHLIBDEPS@
+ SHOW_CONF = @SHOW_CONF@
+diff --git a/src/Makefile.inc b/src/Makefile.inc
+index 69b428f7e..c7d6a3953 100644
+--- a/src/Makefile.inc
++++ b/src/Makefile.inc
+@@ -58,13 +58,13 @@ $(LIBRARY): $(OBJECTS)
+ 	rm -f $(LIBRARY)
+ 	$(AR) $(ARG64) rv $(LIBRARY) $(OBJECTS)
+ 
+-shared: libpapi.so libpapi.so.$(PAPISOVER)
++shared: libpapi.so libpapi.so.$(PAPISOVER)
+ 
+-libpapi.so libpapi.so.$(PAPISOVER): $(SHLIB)
++libpapi.so libpapi.so.$(PAPISOVER): $(SHLIB)
+ 	ln -sf $(SHLIB) $@
+ 
+ $(SHLIB): $(HEADERS) $(SOURCES) $(SHLIBOBJS)
+-	rm -f $(SHLIB) libpapi.so libpapi.so.$(PAPISOVER)
++	rm -f $(SHLIB) libpapi.so libpapi.so.$(PAPISOVER)
+ 	$(CC_SHR) $(LIBCFLAGS) $(OPTFLAGS) $(SOURCES) $(SHLIBOBJS) -o $@ $(SHLIBDEPS) $(LDFLAGS)
+ 	@set -ex; if test "$(POST_BUILD)" != "" ; then \
+ 		-$(POST_BUILD) ; \
+@@ -258,7 +258,7 @@ ifneq (${COMPONENTS},)
+ endif
+ 
+ clean: comp_tests_clean native_clean
+-	rm -rf $(LIBRARY) $(SHLIB) libpapi.so libpapi.so.$(PAPISOVER) $(OBJECTS) core rii_files genpapifdef *~ so_locations papi_fwrappers_.c papi_fwrappers__.c upper_PAPI_FWRAPPERS.c
++	rm -rf $(LIBRARY) $(SHLIB) libpapi.so libpapi.so.$(PAPISOVER) $(OBJECTS) core rii_files genpapifdef *~ so_locations papi_fwrappers_.c papi_fwrappers__.c upper_PAPI_FWRAPPERS.c
+ 	$(MAKE) -C ../doc clean
+ 	$(MAKE) -C ctests clean
+ 	$(MAKE) -C ftests clean
+@@ -317,7 +317,7 @@ install-lib: native_install
+ 		cp -p $(SHLIB) $(DESTDIR)$(LIBDIR)/libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC); \
+ 		chmod go+r $(DESTDIR)$(LIBDIR)/libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) ; \
+ 		cd $(DESTDIR)$(LIBDIR); \
+-		ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) libpapi.so.$(PAPISOVER); \
++		ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) libpapi.so.$(PAPISOVER); \
+ 		ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) libpapi.so; \
+ 	fi
+ 
+@@ -351,8 +351,8 @@ install-pkgconf:
+ 	-mkdir -p $(DESTDIR)$(LIBPC)
+ 	-chmod go+rx $(DESTDIR)$(LIBPC)
+ 	cp papi.pc $(DESTDIR)$(LIBPC)/papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc
+-	ln -sf papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc $(DESTDIR)$(LIBPC)/papi-$(PAPISOVER).pc
+-	ln -sf papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc $(DESTDIR)$(LIBPC)/papi.pc
++	ln -sf papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc $(DESTDIR)$(LIBPC)/papi-$(PAPISOVER).pc
++	ln -sf papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc $(DESTDIR)$(LIBPC)/papi.pc
+ 
+ #
+ # Dummy targets for configurations that do not also include a Rules file with targets
+diff --git a/src/Rules.perfmon2 b/src/Rules.perfmon2
+index f17aa877d..06b7b4554 100644
+--- a/src/Rules.perfmon2
++++ b/src/Rules.perfmon2
+@@ -60,8 +60,8 @@ endif
+ 	-install -d $(DESTDIR)$(LIBDIR)
+ ifneq (,$(findstring shared,$(LIBS)))
+ 	cp -p $(SHLIB) $(DESTDIR)$(LIBDIR)/libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC)
+-	ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) $(DESTDIR)$(LIBDIR)/libpapi.so.$(PAPISOVER)
+-	ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) $(DESTDIR)$(LIBDIR)/libpapi.so
++	ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) $(DESTDIR)$(LIBDIR)/libpapi.so.$(PAPISOVER)
++	ln -sf libpapi.so.$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC) $(DESTDIR)$(LIBDIR)/libpapi.so
+ endif
+ 	-install -d $(DESTDIR)$(DATADIR)
+ 	cp -f ./papi_events.csv $(DESTDIR)$(DATADIR)
+diff --git a/src/configure.in b/src/configure.in
+index e1d255948..99b6353bc 100644
+--- a/src/configure.in
++++ b/src/configure.in
+@@ -1262,8 +1262,8 @@ CTEST_TARGETS="all"
+ FTEST_TARGETS="all"
+ LIBRARY=libpapi.a
+ SHLIB='libpapi.so.AC_PACKAGE_VERSION'
+-PAPISOVER='$(PAPIVER).$(PAPIREV)'
+-VLIB='libpapi.so.$(PAPISOVER)'
++PAPISOVER='$(PAPIVER).$(PAPIREV)'
++VLIB='libpapi.so.$(PAPISOVER)'
+ OMPCFLGS=-fopenmp
+ CC_R='$(CC) -pthread'
+ CC_SHR='$(CC) -fPIC -DPIC -shared -Wl,-soname -Wl,$(VLIB) -Xlinker "-rpath" -Xlinker "$(LIBDIR)"'
+@@ -1770,7 +1770,7 @@ AC_SUBST(CPU)
+ AC_SUBST(FILENAME)
+ AC_SUBST(LIBRARY)
+ AC_SUBST(SHLIB)
+-AC_SUBST(PAPISOVER)
++AC_SUBST(PAPISOVER)
+ AC_SUBST(VLIB)
+ AC_SUBST(PAPICFLAGS)
+ AC_SUBST(OPTFLAGS)
+-- 
+2.11.0
+
diff --git a/debian/patches/do-not-ignore-failures.patch b/debian/patches/do-not-ignore-failures.patch
index 968fabc..0150c9f 100644
--- a/debian/patches/do-not-ignore-failures.patch
+++ b/debian/patches/do-not-ignore-failures.patch
@@ -21,7 +21,7 @@ Description: do not ignore any errors in the Makefiles
  	@set -ex; if test -r $(LIBRARY) ; then \
  		cp $(LIBRARY) $(DESTDIR)$(LIBDIR); \
  		chmod go+r $(DESTDIR)$(LIBDIR)/$(LIBRARY); \
-@@ -326,11 +326,11 @@ install-tests:  install-comp_tests
+@@ -325,11 +325,11 @@ install-tests:  install-comp_tests
  	$(SETPATH) $(MAKE) -C ctests install
  	$(SETPATH) $(MAKE) -C ftests install
  	$(SETPATH) $(MAKE) -C validation_tests install
@@ -38,7 +38,7 @@ Description: do not ignore any errors in the Makefiles
  
  # Component tests installing
  install-comp_tests:
-@@ -342,8 +342,8 @@ endif
+@@ -341,8 +341,8 @@ endif
  
  install-pkgconf:
  	@echo "pkcongfig being installed in: \"$(DESTDIR)$(LIBPC)\"";
@@ -47,8 +47,8 @@ Description: do not ignore any errors in the Makefiles
 +	mkdir -p $(DESTDIR)$(LIBPC)
 +	chmod go+rx $(DESTDIR)$(LIBPC)
  	cp papi.pc $(DESTDIR)$(LIBPC)/papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc
- 	cd $(DESTDIR)$(LIBPC); ln -sf papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).pc;
- 	cd $(DESTDIR)$(LIBPC); ln -sf papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc papi-$(PAPIVER).pc;
+ 	ln -sf papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc $(DESTDIR)$(LIBPC)/papi-$(PAPISOVER).pc
+ 	ln -sf papi-$(PAPIVER).$(PAPIREV).$(PAPIAGE).$(PAPIINC).pc $(DESTDIR)$(LIBPC)/papi.pc
 --- a/src/components/Makefile_comp_tests
 +++ b/src/components/Makefile_comp_tests
 @@ -8,14 +8,14 @@ tests: $(NAME)_tests
diff --git a/debian/patches/for-debian-no-rpath.patch b/debian/patches/for-debian-no-rpath.patch
index 4232ec6..b550e82 100644
--- a/debian/patches/for-debian-no-rpath.patch
+++ b/debian/patches/for-debian-no-rpath.patch
@@ -1,8 +1,8 @@
 On Debian, we do not want an rpath for standard lib dir
 --- a/src/configure.in
 +++ b/src/configure.in
-@@ -1236,7 +1236,7 @@ SHLIB='libpapi.so.AC_PACKAGE_VERSION'
- VLIB='libpapi.so.$(PAPIVER)'
+@@ -1266,7 +1266,7 @@ PAPISOVER='$(PAPIVER).$(PAPIREV)'
+ VLIB='libpapi.so.$(PAPISOVER)'
  OMPCFLGS=-fopenmp
  CC_R='$(CC) -pthread'
 -CC_SHR='$(CC) -fPIC -DPIC -shared -Wl,-soname -Wl,$(VLIB) -Xlinker "-rpath" -Xlinker "$(LIBDIR)"'
diff --git a/debian/patches/series b/debian/patches/series
index e74f3db..8e0f8eb 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,5 @@
+0001-set-SONAME-to-libpapi.so.-PAPIVER-.-PAPIREV.patch
+0002-Clean-up-of-carriage-return-character-M-from.patch
 fix-typos.patch
 for-debian-no-rpath.patch
 for-debian-do-not-embed-libpfm4.patch
diff --git a/debian/rules b/debian/rules
index c62fcee..7957fcc 100755
--- a/debian/rules
+++ b/debian/rules
@@ -3,6 +3,8 @@
 # output every command that modifies files on the build system.
 #export DH_VERBOSE = 1
 
+SOVERSION	 = 5.7
+
 # see FEATURE AREAS in dpkg-buildflags(1)
 export DEB_BUILD_MAINT_OPTIONS = hardening=+all
 export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
@@ -59,3 +61,21 @@ override_dh_installchangelogs:
 
 override_dh_compress:
 	dh_compress -X.c -X.h -X.F -XMakefile
+
+override_dh_gencontrol:
+	dh_gencontrol -- \
+		-V'papi:SOVERSION=$(SOVERSION)'
+
+
+TEMPLATES	:= $(wildcard debian/libpapiSOVERSION.*)
+GENERATED	 = $(subst SOVERSION,$(SOVERSION),$(TEMPLATES))
+
+libpapi$(SOVERSION).%: libpapiSOVERSION.%
+	sed 's/@SOVERSION@/$(SOVERSION)/g' $< > $@
+
+build-generated: $(GENERATED) ;
+clean-generated:
+	$(RM) $(GENERATED)
+
+override_dh_auto_configure: build-generated
+clean: clean-generated
diff --git a/debian/watch b/debian/watch
index 8e70cc4..57ee4d2 100644
--- a/debian/watch
+++ b/debian/watch
@@ -1,3 +1,4 @@
-version=3
+version=4
 
+opts="dversionmangle=s/\+dfsg\d*$//,repacksuffix=+dfsg" \
 https://icl.utk.edu/papi/software/index.html .*/papi-(.*)\.tar\.gz
diff --git a/src/components/appio/tests/iozone/Changes.txt b/src/components/appio/tests/iozone/Changes.txt
deleted file mode 100644
index a619f8b..0000000
diff --git a/src/components/appio/tests/iozone/Generate_Graphs b/src/components/appio/tests/iozone/Generate_Graphs
deleted file mode 100755
index 7c14a9a..0000000
diff --git a/src/components/appio/tests/iozone/Gnuplot.txt b/src/components/appio/tests/iozone/Gnuplot.txt
deleted file mode 100644
index 5ea63d8..0000000
diff --git a/src/components/appio/tests/iozone/client_list b/src/components/appio/tests/iozone/client_list
deleted file mode 100644
index c3f043b..0000000
diff --git a/src/components/appio/tests/iozone/fileop.c b/src/components/appio/tests/iozone/fileop.c
deleted file mode 100644
index 588a2d2..0000000
diff --git a/src/components/appio/tests/iozone/gengnuplot.sh b/src/components/appio/tests/iozone/gengnuplot.sh
deleted file mode 100755
index ec1d3ee..0000000
diff --git a/src/components/appio/tests/iozone/gnu3d.dem b/src/components/appio/tests/iozone/gnu3d.dem
deleted file mode 100644
index bcbf48f..0000000
diff --git a/src/components/appio/tests/iozone/gnuplot.dem b/src/components/appio/tests/iozone/gnuplot.dem
deleted file mode 100644
index d1abdf5..0000000
diff --git a/src/components/appio/tests/iozone/gnuplotps.dem b/src/components/appio/tests/iozone/gnuplotps.dem
deleted file mode 100644
index 39e1c71..0000000
diff --git a/src/components/appio/tests/iozone/iozone.c b/src/components/appio/tests/iozone/iozone.c
deleted file mode 100644
index 7708cd7..0000000
diff --git a/src/components/appio/tests/iozone/iozone_visualizer.pl b/src/components/appio/tests/iozone/iozone_visualizer.pl
deleted file mode 100755
index a7c6b13..0000000
diff --git a/src/components/appio/tests/iozone/libasync.c b/src/components/appio/tests/iozone/libasync.c
deleted file mode 100644
index 4548a2c..0000000
diff --git a/src/components/appio/tests/iozone/libbif.c b/src/components/appio/tests/iozone/libbif.c
deleted file mode 100644
index a69475d..0000000
diff --git a/src/components/appio/tests/iozone/makefile b/src/components/appio/tests/iozone/makefile
deleted file mode 100644
index f7db172..0000000
diff --git a/src/components/appio/tests/iozone/pit_server.c b/src/components/appio/tests/iozone/pit_server.c
deleted file mode 100644
index 638e2f0..0000000
diff --git a/src/components/appio/tests/iozone/read_telemetry b/src/components/appio/tests/iozone/read_telemetry
deleted file mode 100644
index 1cfd252..0000000
diff --git a/src/components/appio/tests/iozone/report.pl b/src/components/appio/tests/iozone/report.pl
deleted file mode 100755
index f9b9b30..0000000
diff --git a/src/components/appio/tests/iozone/spec.in b/src/components/appio/tests/iozone/spec.in
deleted file mode 100644
index b385b58..0000000
diff --git a/src/components/appio/tests/iozone/write_telemetry b/src/components/appio/tests/iozone/write_telemetry
deleted file mode 100644
index 8b789d1..0000000

Reply to: