debian/0000755000000000000000000000000012247130240007161 5ustar debian/manpages0000644000000000000000000000001412212377036010702 0ustar doc/man/*.1 debian/libeztrace-dev.install0000644000000000000000000000011612212121262013443 0ustar usr/include/eztrace* usr/lib/*/lib*.a usr/lib/*/lib*.so usr/lib/*/pkgconfig/* debian/compat0000644000000000000000000000000212212121262010353 0ustar 8 debian/source/0000755000000000000000000000000012212121262010455 5ustar debian/source/format0000644000000000000000000000001412212121262011663 0ustar 3.0 (quilt) debian/watch0000644000000000000000000000014012212121262010201 0ustar version=3 https://gforge.inria.fr/frs/?group_id=2774 /frs/download.php/.*/eztrace-(.*)\.tar\.gz debian/changelog0000644000000000000000000000605412247130164011045 0ustar eztrace (0.9.1-5) unstable; urgency=low * control: Replace binutils-dev build-dependency with libiberty-dev for libiberty.a (Closes: #730945). -- Samuel Thibault Mon, 02 Dec 2013 16:31:23 +0100 eztrace (0.9.1-4) unstable; urgency=low * Bump Standards-Version to 3.9.5 (no changes). * patches/static-bfd: Link against libbfd statically to avoid rebuilding on each and every binutils upload (Closes: #728084). -- Samuel Thibault Fri, 01 Nov 2013 16:05:36 +0100 eztrace (0.9.1-3) unstable; urgency=medium * patches/manpages: Import manpages from upstream trunk. * control: Make eztrace depend on the same version of libeztrace0. * patches/libdir: Fix autostart load by fixing multiarch libdir. -- Samuel Thibault Wed, 09 Oct 2013 19:01:27 +0200 eztrace (0.9.1-2) unstable; urgency=low * patches/pptrace-option: Add --without-pptrace option. * rules: Disable pptrace on non-linux-x86 ports. -- Samuel Thibault Fri, 06 Sep 2013 00:23:00 +0200 eztrace (0.9.1-1) unstable; urgency=low * New upstream release. - patches/parameter_parsing_crash: Drop, merged upstream. - docs: Add README.stats. -- Samuel Thibault Thu, 05 Sep 2013 17:33:34 +0200 eztrace (0.9-1) unstable; urgency=low * New upstream release. - patches/gtg: Remove, fixed upstream. - patches/extlib: Refresh. - control: switch to opari2. * Bump Standards-Version to 3.9.4 (no changes). * rules: Disable PIE hardening, it makes the static test module hang. * patches/test-fix: Fix test segfault. * patches/plugins-abi-version: Fix static test module too. * patches/mpi-fix: Fix list issue in MPI conversion. * patches/mpi3: Fix bindnow support when MPI3 is not supported. * control: add mpirun. * patches/no-libpomp: Do not build a libpomp, use the one from libpomp2-dev. -- Samuel Thibault Thu, 05 Sep 2013 16:30:05 +0200 eztrace (0.7-2-5) unstable; urgency=low * control: Make libeztrace-dev Multi-Arch: same. * patches/parameter_parsing_crash: Fix a parameter parsing crash. -- Samuel Thibault Thu, 27 Jun 2013 14:21:44 +0200 eztrace (0.7-2-4) unstable; urgency=low * patches/plugins-abi-version: Fix abi version in configure.ac instead of source code, as it is needed in several places. -- Samuel Thibault Sat, 30 Jun 2012 10:25:42 -0300 eztrace (0.7-2-3) unstable; urgency=low * patches/plugins-abi-version: Fix module loading without libeztrace-dev installed by making eztrace load with abi version, not just .so. * Only ship /usr/include/eztrace* -- Samuel Thibault Fri, 29 Jun 2012 13:16:49 -0300 eztrace (0.7-2-2) unstable; urgency=low * control: Move eztrace to section devel. -- Samuel Thibault Thu, 24 May 2012 01:22:08 +0200 eztrace (0.7-2-1) unstable; urgency=low * Initial release (Closes: 658116) -- Samuel Thibault Sun, 20 May 2012 21:29:16 +0200 debian/rules0000755000000000000000000000131312225304474010247 0ustar #!/usr/bin/make -f DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) DEB_HOST_ARCH_CPU=$(shell dpkg-architecture -qDEB_HOST_ARCH_CPU) DEB_HOST_ARCH_OS=$(shell dpkg-architecture -qDEB_HOST_ARCH_OS) export DEB_BUILD_HARDENING=1 export DEB_BUILD_HARDENING_PIE=0 NO_PPTRACE= ifneq ($(DEB_HOST_ARCH_OS),linux) NO_PPTRACE=--without-pptrace endif ifneq ($(DEB_HOST_ARCH_CPU),i386) ifneq ($(DEB_HOST_ARCH_CPU),amd64) NO_PPTRACE=--without-pptrace endif endif %: dh $@ --with autoreconf override_dh_auto_configure: dh_auto_configure -- $(NO_PPTRACE) --with-mpi-include=/usr/include/mpi --with-fxt=/usr --with-gtg=/usr --libdir=/usr/lib/$(DEB_HOST_MULTIARCH) override_dh_auto_test: -dh_auto_test debian/libeztrace0.install0000644000000000000000000000002412212121262012745 0ustar usr/lib/*/lib*.so.* debian/docs0000644000000000000000000000004612212121776010042 0ustar NEWS README README.stats TODO example debian/eztrace.install0000644000000000000000000000002112212121262012173 0ustar usr/bin/eztrace* debian/control0000644000000000000000000000427312247124577010612 0ustar Source: eztrace Section: devel Priority: extra Maintainer: Samuel Thibault Build-Depends: debhelper (>= 8.0.0), dh-autoreconf, hardening-wrapper, gfortran, libiberty-dev, libfxt-dev, fxt-tools, libgtg-dev, libpomp2-dev, mpi-default-dev, mpi-default-bin Build-Conflicts: libeztrace0 Standards-Version: 3.9.5 Homepage: http://eztrace.gforge.inria.fr/ Vcs-Git: git://git.debian.org/collab-maint/eztrace.git Vcs-Browser: http://git.debian.org/?p=collab-maint/eztrace.git;a=summary Package: eztrace Section: devel Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, libeztrace0 (= ${binary:Version}), opari2 Description: Automatic execution trace generation for HPC - tools EZTrace is a tool that aims at generating automatically execution traces from HPC (High Performance Computing) programs. It generates execution trace files that can be interpreted by visualization tools such as ViTE. It uses LD_PRELOAD and dlsym() to intercept calls to the usual HPC primitives, to be observed. . This package contains the tools. Package: libeztrace-dev Section: libdevel Architecture: any Multi-Arch: same Depends: libeztrace0 (= ${binary:Version}), ${misc:Depends} Description: Automatic execution trace generation for HPC - development files EZTrace is a tool that aims at generating automatically execution traces from HPC (High Performance Computing) programs. It generates execution trace files that can be interpreted by visualization tools such as ViTE. It uses LD_PRELOAD and dlsym() to intercept calls to the usual HPC primitives, to be observed. . This package contains the development files. Package: libeztrace0 Section: libs Architecture: any Multi-arch: same Depends: ${shlibs:Depends}, ${misc:Depends} Pre-Depends: ${misc:Pre-Depends} Description: Automatic execution trace generation for HPC - development files EZTrace is a tool that aims at generating automatically execution traces from HPC (High Performance Computing) programs. It generates execution trace files that can be interpreted by visualization tools such as ViTE. It uses LD_PRELOAD and dlsym() to intercept calls to the usual HPC primitives, to be observed. . This package contains the development files. debian/patches/0000755000000000000000000000000012234740053010615 5ustar debian/patches/manpages0000644000000000000000000002760612212377014012345 0ustar --- /dev/null 2013-09-06 16:46:15.327715999 +0200 +++ eztrace/doc/man/eztrace.1 2013-09-06 18:00:50.000000000 +0200 @@ -0,0 +1,41 @@ +.\" Manpage for eztrace. +.\" Contact eztrace-devel@lists.gforge.inria.fr to correct errors or typos. +.TH man 1 "05 September 2013" "1.0" "eztrace man page" +.SH NAME +eztrace \- performance analysis tool +.SH SYNOPSIS +eztrace [OPTION] COMMAND_LINE +.SH DESCRIPTION +Run COMMAND_LINE and generate an execution trace. + +.SH OPTIONS +.TP 5 +-t [plugin1 plugin2 ... pluginN] +Select a list of plugins +.TP +-o DIRECTORY +Select the output DIRECTORY +.TP +-l DIRECTORY +Add DIRECTORY to the list of directories in which eztrace search for plugins +.TP +-f +Enable EZTRACE_FLUSH +.TP +-d +Debug mode +.TP +-?, -h +Display this help and exit +.SH EXAMPLES +$ eztrace -t "memory pthread" ./my_program param1 param2 + +$ mpirun -np 2 eztrace -t "mpi pthread" ./my_program param1 param2 +.SH SEE ALSO +eztrace_convert(1), eztrace_stats(1), eztrace.old(1), eztrace_cc(1), eztrace_avail(1), eztrace_loaded(1), eztrace_create_plugin(1) +.SH REPORTING BUGS +Report eztrace bugs to eztrace-devel@lists.gforge.inria.fr +.br +EZTrace home page: +.SH AUTHOR +Francois Trahay (francois.trahay@telecom-sduparis.eu) --- /dev/null 2013-09-06 16:46:15.327715999 +0200 +++ eztrace/doc/man/eztrace.old.1 2013-09-06 18:00:50.000000000 +0200 @@ -0,0 +1,54 @@ +.\" Manpage for eztrace.old. +.\" Contact eztrace-devel@lists.gforge.inria.fr to correct errors or typos. +.TH man 1 "05 September 2013" "1.0" "eztrace.old man page" +.SH NAME +eztrace.old \- performance analysis tool +.SH SYNOPSIS +eztrace [OPTION] COMMAND_LINE +.SH DESCRIPTION +Run COMMAND_LINE and generate an execution trace. + +.SH OPTIONS +.TP +-d +Run eztrace.old with gdb +.TP +-e +Show environment +.TP +-p +PadicoTM mode +.TP +-m +MPI mode +.TP 5 +-t [plugin1 plugin2 ... pluginN] +Select a list of plugins +.TP +-o DIRECTORY +Select the output DIRECTORY +.TP +-l DIRECTORY +Add DIRECTORY to the list of directories in which eztrace search for plugins +.TP +-f +Enable EZTRACE_FLUSH +.TP +-? +Display this help and exit +.SH EXAMPLES +$ eztrace.old -t "memory pthread" ./my_program param1 param2 + +For MPI programs: +.br +$ mpirun -np 2 `eztrace.old -m ./my_program` param1 param2 +.SH SEE ALSO +eztrace(1), eztrace_convert(1), eztrace_stats(1), eztrace_cc(1), eztrace_avail(1), eztrace_loaded(1), eztrace_create_plugin(1) +.SH BUGS +eztrace.old is a fallback launcher for eztrace. It relies on LD_PRELOAD for interception function calls. Thus, it only works for shared libraries. +.SH REPORTING BUGS +Report eztrace bugs to eztrace-devel@lists.gforge.inria.fr +.br +EZTrace home page: +.SH AUTHOR +Francois Trahay (francois.trahay@telecom-sduparis.eu) --- /dev/null 2013-09-06 16:46:15.327715999 +0200 +++ eztrace/doc/man/eztrace_avail.1 2013-09-06 18:00:50.000000000 +0200 @@ -0,0 +1,39 @@ +.\" Manpage for eztrace_avail. +.\" Contact eztrace-devel@lists.gforge.inria.fr to correct errors or typos. +.TH man 1 "05 September 2013" "1.0" "eztrace_avail man page" +.SH NAME +eztrace_avail \- print the list of available EZTrace modules +.SH SYNOPSIS +eztrace_avail [OPTIONS] +.SH DESCRIPTION +Print the list of available EZTrace modules + +.SH OPTIONS +.TP +-v +Select the verbose mode +.TP +-h +Display this help and exit +.SH EXAMPLES +$ eztrace_avail +.br +3 stdio Module for stdio functions (read, write, select, poll, etc.) +.br +2 pthread Module for PThread synchronization functions (mutex, semaphore, spinlock, etc.) +.br +6 papi Module for PAPI Performance counters +.br +1 omp Module for OpenMP parallel regions +.br +4 mpi Module for MPI functions +.br +5 memory Module for memory functions (malloc, free, etc.) +.SH SEE ALSO +eztrace_convert(1), eztrace_stats(1), eztrace.old(1), eztrace_cc(1), eztrace_avail(1), eztrace_loaded(1), eztrace_create_plugin(1) +.SH REPORTING BUGS +Report eztrace bugs to eztrace-devel@lists.gforge.inria.fr +.br +EZTrace home page: +.SH AUTHOR +Francois Trahay (francois.trahay@telecom-sduparis.eu) --- /dev/null 2013-09-06 16:46:15.327715999 +0200 +++ eztrace/doc/man/eztrace_cc.1 2013-09-06 18:00:50.000000000 +0200 @@ -0,0 +1,20 @@ +.\" Manpage for eztrace_cc. +.\" Contact eztrace-devel@lists.gforge.inria.fr to correct errors or typos. +.TH man 1 "05 September 2013" "1.0" "eztrace_cc man page" +.SH NAME +eztrace_cc \- Compile an OpenMP application for eztrace +.SH SYNOPSIS +eztrace_cc COMPILATION_COMMAND +.SH DESCRIPTION +Compile an OpenMP application for eztrace. + +.SH EXAMPLES +$ eztrace_cc gcc -o openmp_program openmp_program.c -fopenm +.SH SEE ALSO +eztrace_convert(1), eztrace_stats(1), eztrace.old(1), eztrace_cc(1), eztrace_avail(1), eztrace_loaded(1), eztrace_create_plugin(1) +.SH REPORTING BUGS +Report eztrace bugs to eztrace-devel@lists.gforge.inria.fr +.br +EZTrace home page: +.SH AUTHOR +Francois Trahay (francois.trahay@telecom-sduparis.eu) --- /dev/null 2013-09-06 16:46:15.327715999 +0200 +++ eztrace/doc/man/eztrace_convert.1 2013-09-06 18:00:50.000000000 +0200 @@ -0,0 +1,46 @@ +.\" Manpage for eztrace_convert. +.\" Contact eztrace-devel@lists.gforge.inria.fr to correct errors or typos. +.TH man 1 "05 September 2013" "1.0" "eztrace_convert man page" +.SH NAME +eztrace_convert \- create PAJE/OTF traces +.SH SYNOPSIS +eztrace_convert [OPTIONS] INPUT_FILES +.SH DESCRIPTION +Browse the INPUT_FILES generated by the eztrace command (or eztrace.old) and create PAJE or OTF trace files. + +.SH OPTIONS +.TP +-v +Enable verbose mode. +.TP +-t TRACE_FORMAT +Select the output trace format. Available trace formats are PAJE, OTF (default: PAJE). +.TP +-z +Enable trace compression. +.TP +-o OUTPUT_FILENAME +Save the output trace as OUTPUT_FILENAME (default: eztrace_output.trace). +.TP +-h +Display this help and exit +.SH EXAMPLES + +$ eztrace -t pthread ./application +.br +Starting EZTrace... done +.br +[...] +.br +Stopping EZTrace... saving trace /tmp/user_eztrace_log_rank_1 +.br +$ eztrace_convert /tmp/user_eztrace_log_rank_1 + +.SH SEE ALSO +eztrace(1), eztrace_stats(1), eztrace.old(1), eztrace_cc(1), eztrace_avail(1), eztrace_loaded(1), eztrace_create_plugin(1) +.SH REPORTING BUGS +Report eztrace bugs to eztrace-devel@lists.gforge.inria.fr +.br +EZTrace home page: +.SH AUTHOR +Francois Trahay (francois.trahay@telecom-sduparis.eu) --- /dev/null 2013-09-06 16:46:15.327715999 +0200 +++ eztrace/doc/man/eztrace_create_plugin.1 2013-09-06 18:00:50.000000000 +0200 @@ -0,0 +1,111 @@ +.\" Manpage for eztrace_create_plugin. +.\" Contact eztrace-devel@lists.gforge.inria.fr to correct errors or typos. +.TH man 1 "05 September 2013" "1.0" "eztrace_create_plugin man page" +.SH NAME +eztrace_create_plugin \- creates an EZTrace plugin +.SH SYNOPSIS +eztrace_create [OPTION] FILE +.SH DESCRIPTION +Generate an EZTrace plugin + +.SH OPTIONS +.TP +-I > +Add specific include directories for the compilation of the generated code. +.TP +-o > +Select the output directory. +.TP +-h --help +Print a brief help message and exits. +.SH EXAMPLES + +eztrace_create_plugin generates the source code of an EZTrace plugin described by a template file. The template file has to be structure as follows: + +--- foo.tpl +.br +BEGIN_MODULE +.br +NAME example_lib +.br +DESC "module for the example library" +.br +LANGUAGE C +.br +ID 99 +.br +int foo(int n) +.br +BEGIN +.br + EVENT("Do function foo") +.br +END +.br +void bar(int n) +.br +BEGIN +.br + RECORD_STATE("running function bar") +.br +END +.br +END_MODULE +.br +--- end of foo.tpl + +Passing foo.tpl to eztrace_create_plugin will result in a directory (default: output) that contains the source code of an EZTrace plugin that intercepts the foo and bar functions. +$ eztrace_create_plugin foo.tpl +.br +New Module +.br +Module name : 'example_lib' +.br +Module description : '"module for the example library"' +.br +Language : 'C' +.br +Module id : '99' +.br +Function 'foo' done +.br +Function 'bar' done +.br +End of Module example_lib + +Once the generated source code is compiled, the resulting plugin can be used with eztrace or eztrace.old: + +$ cd output +.br +$ make +.br +$ export EZTRACE_LIBRARY_PATH=$PWD +.br +$ eztrace_avail +.br +3 stdio Module for stdio functions (read, write, select, poll, etc.) +.br +2 pthread Module for PThread synchronization functions (mutex, semaphore, spinlock, etc.) +.br +6 papi Module for PAPI Performance counters +.br +1 omp Module for OpenMP parallel regions +.br +4 mpi Module for MPI functions +.br +5 memory Module for memory functions (malloc, free, etc.) +.br +153 example_lib module for the example library +.br +$ eztrace -t example_lib my_application +.br +[...] + +.SH SEE ALSO +eztrace_convert(1), eztrace_stats(1), eztrace.old(1), eztrace_cc(1), eztrace_avail(1), eztrace_loaded(1), eztrace_create_plugin(1) +.SH REPORTING BUGS +Report eztrace bugs to eztrace-devel@lists.gforge.inria.fr +.br +EZTrace home page: +.SH AUTHOR +Francois Trahay (francois.trahay@telecom-sduparis.eu) --- /dev/null 2013-09-06 16:46:15.327715999 +0200 +++ eztrace/doc/man/eztrace_loaded.1 2013-09-06 18:00:50.000000000 +0200 @@ -0,0 +1,39 @@ +.\" Manpage for eztrace_loaded. +.\" Contact eztrace-devel@lists.gforge.inria.fr to correct errors or typos. +.TH man 1 "05 September 2013" "1.0" "eztrace_loaded man page" +.SH NAME +eztrace_loaded \- print the list of selected EZTrace modules +.SH SYNOPSIS +eztrace_loaded [OPTIONS] +.SH DESCRIPTION +Print the list of selected EZTrace modules + +.SH OPTIONS +.TP +-v +Select the verbose mode +.TP +-h +Display this help and exit +.SH EXAMPLES +$ eztrace_loaded +.br +3 stdio Module for stdio functions (read, write, select, poll, etc.) +.br +2 pthread Module for PThread synchronization functions (mutex, semaphore, spinlock, etc.) +.br +6 papi Module for PAPI Performance counters +.br +1 omp Module for OpenMP parallel regions +.br +4 mpi Module for MPI functions +.br +5 memory Module for memory functions (malloc, free, etc.) +.SH SEE ALSO +eztrace_convert(1), eztrace_stats(1), eztrace.old(1), eztrace_cc(1), eztrace_avail(1), eztrace_loaded(1), eztrace_create_plugin(1) +.SH REPORTING BUGS +Report eztrace bugs to eztrace-devel@lists.gforge.inria.fr +.br +EZTrace home page: +.SH AUTHOR +Francois Trahay (francois.trahay@telecom-sduparis.eu) --- /dev/null 2013-09-06 16:46:15.327715999 +0200 +++ eztrace/doc/man/eztrace_stats.1 2013-09-06 18:00:50.000000000 +0200 @@ -0,0 +1,49 @@ +.\" Manpage for eztrace_stats. +.\" Contact eztrace-devel@lists.gforge.inria.fr to correct errors or typos. +.TH man 1 "05 September 2013" "1.0" "eztrace_stats man page" +.SH NAME +eztrace_stats \- compute statistics from execution traces +.SH SYNOPSIS +eztrace_stats [OPTIONS] INPUT_FILES +.SH DESCRIPTION +Browse the INPUT_FILES generated by the eztrace command (or eztrace.old) and extract statistics. +.SH OPTIONS +.TP +-o DIRECTORY +Select the output directory +.TP +-v +Enable verbose mode. +.TP +-h +Display this help and exit + +.SH EXAMPLES +$ eztrace_stats /tmp/user_eztrace_log_rank_1 +.br +[...] +.br +PThread: +.br +------- +.br +CT_Process #0: +.br + semaphore 0x601300 was acquired 2 times. +.br + semaphore 0x601320 was acquired 10 times. +.br + mutex 0x6012c0 was acquired 20 times. total duration of critical_sections: 1000.065697 ms. +.br + semaphore 0x601340 was acquired 10 times. +.br +Total: 4 locks acquired 42 times + +.SH SEE ALSO +eztrace(1), eztrace_convert(1), eztrace.old(1), eztrace_cc(1), eztrace_avail(1), eztrace_loaded(1), eztrace_create_plugin(1) +.SH REPORTING BUGS +Report eztrace bugs to eztrace-devel@lists.gforge.inria.fr +.br +EZTrace home page: +.SH AUTHOR +Francois Trahay (francois.trahay@telecom-sduparis.eu) debian/patches/extlib0000644000000000000000000000256412212121262012025 0ustar diff --git a/Makefile.am b/Makefile.am index a90a1a0..2dc6570 100644 --- a/Makefile.am +++ b/Makefile.am @@ -17,7 +17,7 @@ GTGCFLAGS = -I$(top_srcdir)/extlib/gtg/tools -I$(top_builddir)/extlib/gtg GTGLDFLAGS = $(top_builddir)/extlib/gtg/libgtg.la endif -SUBDIRS = extlib/ \ +SUBDIRS = \ src/core/ \ src/modules/omp \ src/modules/mpi \ diff --git a/configure.ac b/configure.ac index 163bdda..7107d4d 100644 --- a/configure.ac +++ b/configure.ac @@ -542,11 +542,7 @@ AM_CONDITIONAL([USE_PTHREAD], [test "$have_full_pthread" = yes]) AM_CONDITIONAL(AMEXTERNFXT, test x"$use_extern_fxt" = "xyes") AM_CONDITIONAL(AMEXTERNGTG, test x"$use_extern_gtg" = "xyes") -AC_CONFIG_SUBDIRS([extlib/gtg extlib/fxt extlib/opari2]) - - AC_OUTPUT([Makefile eztrace.pc \ - extlib/Makefile \ src/core/Makefile \ src/modules/omp/Makefile \ src/modules/mpi/Makefile \ diff --git a/test/automake/testcommon.h.in b/test/automake/testcommon.h.in index 3679cd6..7d72629 100644 --- a/test/automake/testcommon.h.in +++ b/test/automake/testcommon.h.in @@ -19,7 +19,7 @@ #define TOP_BUILDDIR "@abs_top_builddir@/" #define EZTRACE "@abs_top_builddir@/src/core/eztrace" #define EZTRACE_CONVERT "@abs_top_builddir@/src/core/eztrace_convert" -#define FXT_PRINT "@abs_top_builddir@/extlib/fxt/tools/fxt_print" +#define FXT_PRINT "/usr/bin/fxt_print" char pwd[512]; char user[32]; debian/patches/no-libpomp0000644000000000000000000000111212212121262012576 0ustar --- a/src/modules/omp/Makefile.am +++ b/src/modules/omp/Makefile.am @@ -31,8 +31,7 @@ bin_SCRIPTS = eztrace_cc lib_LTLIBRARIES = libeztrace-convert-omp.la \ libeztrace-omp.la \ - libeztrace-autostart-omp.la \ - libpomp2.la + libeztrace-autostart-omp.la AM_CFLAGS = -W -Wall -Wextra --- a/src/modules/omp/eztrace_cc.in +++ b/src/modules/omp/eztrace_cc.in @@ -13,7 +13,7 @@ bindir=@bindir@ OPARI=${bindir}/opari2 CFLAGS=-I${includedir} -LDFLAGS="-lpomp2 -L${libdir} -Wl,-rpath=${libdir}" +LDFLAGS="-lpomp -L${libdir} -Wl,-rpath=${libdir}" instrumentFile() { debian/patches/mpi30000644000000000000000000002646112212121262011410 0ustar --- a/src/modules/mpi/mpi_funcs/mpi_iallgather.c +++ b/src/modules/mpi/mpi_funcs/mpi_iallgather.c @@ -21,6 +21,7 @@ #include "mpi_ev_codes.h" #include "eztrace.h" +#ifdef USE_MPI3 static int MPI_Iallgather_core(CONST void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm, MPI_Request *r) @@ -70,3 +71,4 @@ void mpif_iallgather_(void *sbuf, int *s MPI_Iallgather_epilog(sbuf, *scount, c_stype, rbuf, *rcount, c_rtype, c_comm, r); } +#endif --- a/src/modules/mpi/mpi_funcs/mpi_iallgatherv.c +++ b/src/modules/mpi/mpi_funcs/mpi_iallgatherv.c @@ -21,6 +21,7 @@ #include "mpi_ev_codes.h" #include "eztrace.h" +#ifdef USE_MPI3 static int MPI_Iallgatherv_core (CONST void *sendbuf __attribute__((unused)), int sendcount, MPI_Datatype sendtype, @@ -78,3 +79,4 @@ void mpif_iallgatherv_(void *sbuf, int * MPI_Iallgatherv_epilog(sbuf, *scount, c_stype, rbuf, rcount, displs, c_rtype, c_comm, r); } +#endif --- a/src/modules/mpi/mpi_funcs/mpi_iallreduce.c +++ b/src/modules/mpi/mpi_funcs/mpi_iallreduce.c @@ -22,6 +22,7 @@ #include "eztrace.h" +#ifdef USE_MPI3 static int MPI_Iallreduce_core (CONST void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *r) @@ -74,3 +75,4 @@ void mpif_iallreduce_(void *sbuf, void * *r = MPI_Request_c2f(c_req); MPI_Iallreduce_epilog(sbuf, rbuf, *count, c_type, c_op, c_comm, r); } +#endif --- a/src/modules/mpi/mpi_funcs/mpi_ialltoall.c +++ b/src/modules/mpi/mpi_funcs/mpi_ialltoall.c @@ -22,6 +22,7 @@ #include "eztrace.h" +#ifdef USE_MPI3 static int MPI_Ialltoall_core (CONST void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcnt, MPI_Datatype recvtype, MPI_Comm comm, @@ -78,3 +79,4 @@ void mpif_ialltoall_(void *sbuf, int *sc *r = MPI_Request_c2f(c_req); MPI_Ialltoall_epilog(sbuf, *scount, c_stype, rbuf, *rcount, c_rtype, c_comm, r); } +#endif --- a/src/modules/mpi/mpi_funcs/mpi_ialltoallv.c +++ b/src/modules/mpi/mpi_funcs/mpi_ialltoallv.c @@ -23,6 +23,7 @@ +#ifdef USE_MPI3 static int MPI_Ialltoallv_core (CONST void *sendbuf, CONST int *sendcnts, CONST int *sdispls, MPI_Datatype sendtype, void *recvbuf, CONST int *recvcnts, CONST int *rdispls, MPI_Datatype recvtype, MPI_Comm comm, @@ -81,3 +82,4 @@ void mpif_ialltoallv_(void *sbuf, int *s *r = MPI_Request_c2f(c_req); MPI_Ialltoallv_epilog(sbuf, scount, sdispls, c_stype, rbuf, rcount, rdispls, c_rtype, c_comm, r); } +#endif --- a/src/modules/mpi/mpi_funcs/mpi_ibarrier.c +++ b/src/modules/mpi/mpi_funcs/mpi_ibarrier.c @@ -21,6 +21,7 @@ #include "mpi_ev_codes.h" #include "eztrace.h" +#ifdef USE_MPI3 static int MPI_Ibarrier_core (MPI_Comm c, MPI_Request *r) { return libMPI_Ibarrier(c, r); @@ -54,3 +55,4 @@ void mpif_ibarrier_(MPI_Fint *c, MPI_Fin *r= MPI_Request_c2f(c_req); MPI_Ibarrier_epilog(c_comm, r); } +#endif --- a/src/modules/mpi/mpi_funcs/mpi_ibcast.c +++ b/src/modules/mpi/mpi_funcs/mpi_ibcast.c @@ -21,6 +21,7 @@ #include "mpi_ev_codes.h" #include "eztrace.h" +#ifdef USE_MPI3 static int MPI_Ibcast_core(void *buffer, int count, MPI_Datatype datatype, int root, MPI_Comm comm, MPI_Request *r) { return libMPI_Ibcast(buffer, count, datatype, root, comm, r); @@ -62,3 +63,4 @@ void mpif_ibcast_(void *buf, int *count, *r= MPI_Request_c2f(c_req); MPI_Ibcast_epilog(buf, *count, c_type, *root, c_comm, r); } +#endif --- a/src/modules/mpi/mpi_funcs/mpi_igather.c +++ b/src/modules/mpi/mpi_funcs/mpi_igather.c @@ -21,6 +21,7 @@ #include "mpi_ev_codes.h" #include "eztrace.h" +#ifdef USE_MPI3 static int MPI_Igather_core(CONST void *sendbuf, int sendcnt, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Request *r) @@ -76,3 +77,4 @@ void mpif_igather_(void *sbuf, int *scou *r= MPI_Request_c2f(c_req); MPI_Igather_epilog(sbuf, *scount, c_stype, rbuf, *rcount, c_rtype, *root, c_comm, r); } +#endif --- a/src/modules/mpi/mpi_funcs/mpi_igatherv.c +++ b/src/modules/mpi/mpi_funcs/mpi_igatherv.c @@ -21,6 +21,7 @@ #include "mpi_ev_codes.h" #include "eztrace.h" +#ifdef USE_MPI3 static int MPI_Igatherv_core(CONST void *sendbuf, int sendcnt, MPI_Datatype sendtype, void *recvbuf, CONST int *recvcnts, CONST int *displs, MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Request *r) @@ -78,3 +79,4 @@ void mpif_igatherv_(void *sbuf, int *sco *r= MPI_Request_c2f(c_req); MPI_Igatherv_epilog(sbuf, *scount, c_stype, rbuf, rcount, displs, c_rtype, *root, c_comm, r); } +#endif --- a/src/modules/mpi/mpi_funcs/mpi_ireduce.c +++ b/src/modules/mpi/mpi_funcs/mpi_ireduce.c @@ -21,6 +21,7 @@ #include "mpi_ev_codes.h" #include "eztrace.h" +#ifdef USE_MPI3 static int MPI_Ireduce_core (CONST void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op, int root, MPI_Comm comm, MPI_Request *r) @@ -73,3 +74,4 @@ void mpif_ireduce_(void *sbuf, void *rbu *r = MPI_Request_c2f(c_req); MPI_Ireduce_epilog(sbuf, rbuf, *count, c_type, c_op, *root, c_comm, r); } +#endif --- a/src/modules/mpi/mpi_funcs/mpi_ireduce_scatter.c +++ b/src/modules/mpi/mpi_funcs/mpi_ireduce_scatter.c @@ -22,6 +22,7 @@ #include "eztrace.h" +#ifdef USE_MPI3 static int MPI_Ireduce_scatter_core (CONST void *sendbuf, void *recvbuf, CONST int *recvcnts, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *r) @@ -73,3 +74,4 @@ void mpif_ireduce_scatter_(void *sbuf, v *r = MPI_Request_c2f(c_req); MPI_Ireduce_scatter_epilog(sbuf, rbuf, rcount, c_type, c_op, c_comm, r); } +#endif --- a/src/modules/mpi/mpi_funcs/mpi_iscan.c +++ b/src/modules/mpi/mpi_funcs/mpi_iscan.c @@ -21,6 +21,7 @@ #include "mpi_ev_codes.h" #include "eztrace.h" +#ifdef USE_MPI3 static int MPI_Iscan_core (CONST void *sendbuf, void *recvbuf, int count, MPI_Datatype datatype, MPI_Op op, MPI_Comm comm, MPI_Request *r) @@ -72,3 +73,4 @@ void mpif_iscan_(void *sbuf, void *rbuf, *r = MPI_Request_c2f(c_req); MPI_Iscan_epilog(sbuf, rbuf, *count, c_type, c_op, c_comm, r); } +#endif --- a/src/modules/mpi/mpi_funcs/mpi_iscatter.c +++ b/src/modules/mpi/mpi_funcs/mpi_iscatter.c @@ -21,6 +21,7 @@ #include "mpi_ev_codes.h" #include "eztrace.h" +#ifdef USE_MPI3 static int MPI_Iscatter_core(CONST void *sendbuf, int sendcnt, MPI_Datatype sendtype, void *recvbuf, int recvcnt, MPI_Datatype recvtype, int root, MPI_Comm comm, MPI_Request *r) { @@ -76,3 +77,4 @@ void mpif_iscatter_(void *sbuf, int *sco rbuf, *rcount, c_rtype, *root, c_comm, r); } +#endif --- a/src/modules/mpi/mpi_funcs/mpi_iscatterv.c +++ b/src/modules/mpi/mpi_funcs/mpi_iscatterv.c @@ -21,6 +21,7 @@ #include "mpi_ev_codes.h" #include "eztrace.h" +#ifdef USE_MPI3 static int MPI_Iscatterv_core(CONST void *sendbuf, CONST int *sendcnts, CONST int *displs, @@ -94,3 +95,4 @@ void mpif_iscatterv_(void *sbuf, int *sc rbuf, *rcount, c_rtype, *root, c_comm, r); } +#endif --- a/src/modules/mpi/mpi_f.f90 +++ b/src/modules/mpi/mpi_f.f90 @@ -221,78 +221,75 @@ return end - - -subroutine MPI_IBarrier(COMM, REQ, IERROR) -call MPIF_IBarrier(COMM, REQ, IERROR) -return -end - -subroutine MPI_IBCast(BUFFER, COUNT, DATATYPE, ROOT, COMM, REQ, IERROR) -call MPIF_IBCast(BUFFER, COUNT, DATATYPE, ROOT, COMM, REQ, IERROR) -return -end - -subroutine MPI_IGather(SBUF,SCNT,STYPE,RBUF,RCNT, RTYPE, R, C, REQ, E) -call MPIF_IGather(SBUF, SCNT, STYPE, RBUF, RCNT, RTYPE, R, C, REQ, E) -return -end - -subroutine MPI_IGatherv(SBUF,SCNT,STYPE,RBUF,RCNT,DSP,RTYPE,R,C,REQ,E) -call MPIF_IGatherv(SBUF,SCNT,STYPE,RBUF,RCNT,DSP,RTYPE,R,C,REQ,E) -return -end - -subroutine MPI_IScatter(SBUF,SCNT,STYPE,RBUF,RCNT,RTYPE,R,C,REQ,E) -call MPIF_IScatter(SBUF, SCNT, STYPE, RBUF, RCNT, RTYPE, R, C,REQ, E) -return -end - -subroutine MPI_IScatterv(SBUF,SCNT,DSP,SDTYP,RBUF,RCNT,RTYP,R,C,REQ,E) -call MPIF_IScatterv(SBUF,SCNT,DSP,STYP,RBUF, RCNT, RTYP, R, C, REQ,E) -return -end - -subroutine MPI_IAllgather(SBUF, SCNT, STYP, RBUF, RCNT, RTYP, C, REQ, E) -call MPIF_IAllgather(SBUF, SCNT, STYP, RBUF, RCNT, RTYP, C, REQ, E) -return -end - -subroutine MPI_IAllgatherv(SB, SC, ST, RB, RC, D, RT, C, REQ,IERROR) -call MPIF_IAllgatherv(SB, SC, ST, RB, RC, D, RT, C, REQ,IERROR) -return -end - -subroutine MPI_IAlltoall(SB, SC, ST, RB, RC, RT, COMM, REQ,IERROR) -call MPIF_IAlltoall(SB, SC, ST, RB, RC, RT, COMM, REQ,IERROR) -return -end - -subroutine MPI_IAlltoallv(SB, SC, SD, ST, RB, RC, RD, RT, C, REQ,ERROR) -call MPIF_IAlltoallv(SB, SC, SD, ST, RB, RC, RD, RT, C, REQ,ERROR) -return -end - -subroutine MPI_IReduce(SBUF, RBUF, CNT, D, OP, ROOT, COMM, REQ,IERROR) -call MPIF_IReduce(SBUF, RBUF, CNT, D, OP, ROOT, COMM, REQ,IERROR) -return -end - -subroutine MPI_IAllreduce(SBUF, RBUF, CNT, D, OP, COMM, REQ,IERROR) -call MPIF_IAllreduce(SBUF, RBUF, CNT, D, OP, COMM, REQ,IERROR) -return -end - -subroutine MPI_IReduce_scatter(SBUF, RBUF, RCNT, D, OP, C, REQ,IERROR) -call MPIF_IReduce_scatter(SBUF, RBUF, RCNT, D, OP, C, REQ,IERROR) -return -end - -subroutine MPI_IScan(SBUF, RBUF, CNT, D, OP, COMM, REQ,IERROR) -call MPIF_IScan(SBUF, RBUF, CNT, D, OP, COMM, REQ,IERROR) -return -end - +!subroutine MPI_IBarrier(COMM, REQ, IERROR) +!call MPIF_IBarrier(COMM, REQ, IERROR) +!return +!end +! +!subroutine MPI_IBCast(BUFFER, COUNT, DATATYPE, ROOT, COMM, REQ, IERROR) +!call MPIF_IBCast(BUFFER, COUNT, DATATYPE, ROOT, COMM, REQ, IERROR) +!return +!end +! +!subroutine MPI_IGather(SBUF,SCNT,STYPE,RBUF,RCNT, RTYPE, R, C, REQ, E) +!call MPIF_IGather(SBUF, SCNT, STYPE, RBUF, RCNT, RTYPE, R, C, REQ, E) +!return +!end +! +!subroutine MPI_IGatherv(SBUF,SCNT,STYPE,RBUF,RCNT,DSP,RTYPE,R,C,REQ,E) +!call MPIF_IGatherv(SBUF,SCNT,STYPE,RBUF,RCNT,DSP,RTYPE,R,C,REQ,E) +!return +!end +! +!subroutine MPI_IScatter(SBUF,SCNT,STYPE,RBUF,RCNT,RTYPE,R,C,REQ,E) +!call MPIF_IScatter(SBUF, SCNT, STYPE, RBUF, RCNT, RTYPE, R, C,REQ, E) +!return +!end +! +!subroutine MPI_IScatterv(SBUF,SCNT,DSP,SDTYP,RBUF,RCNT,RTYP,R,C,REQ,E) +!call MPIF_IScatterv(SBUF,SCNT,DSP,STYP,RBUF, RCNT, RTYP, R, C, REQ,E) +!return +!end +! +!subroutine MPI_IAllgather(SBUF, SCNT, STYP, RBUF, RCNT, RTYP, C, REQ, E) +!call MPIF_IAllgather(SBUF, SCNT, STYP, RBUF, RCNT, RTYP, C, REQ, E) +!return +!end +! +!subroutine MPI_IAllgatherv(SB, SC, ST, RB, RC, D, RT, C, REQ,IERROR) +!call MPIF_IAllgatherv(SB, SC, ST, RB, RC, D, RT, C, REQ,IERROR) +!return +!end +! +!subroutine MPI_IAlltoall(SB, SC, ST, RB, RC, RT, COMM, REQ,IERROR) +!call MPIF_IAlltoall(SB, SC, ST, RB, RC, RT, COMM, REQ,IERROR) +!return +!end +! +!subroutine MPI_IAlltoallv(SB, SC, SD, ST, RB, RC, RD, RT, C, REQ,ERROR) +!call MPIF_IAlltoallv(SB, SC, SD, ST, RB, RC, RD, RT, C, REQ,ERROR) +!return +!end +! +!subroutine MPI_IReduce(SBUF, RBUF, CNT, D, OP, ROOT, COMM, REQ,IERROR) +!call MPIF_IReduce(SBUF, RBUF, CNT, D, OP, ROOT, COMM, REQ,IERROR) +!return +!end +! +!subroutine MPI_IAllreduce(SBUF, RBUF, CNT, D, OP, COMM, REQ,IERROR) +!call MPIF_IAllreduce(SBUF, RBUF, CNT, D, OP, COMM, REQ,IERROR) +!return +!end +! +!subroutine MPI_IReduce_scatter(SBUF, RBUF, RCNT, D, OP, C, REQ,IERROR) +!call MPIF_IReduce_scatter(SBUF, RBUF, RCNT, D, OP, C, REQ,IERROR) +!return +!end +! +!subroutine MPI_IScan(SBUF, RBUF, CNT, D, OP, COMM, REQ,IERROR) +!call MPIF_IScan(SBUF, RBUF, CNT, D, OP, COMM, REQ,IERROR) +!return +!end subroutine MPI_Send_init(B, C, T, D, TAG, COMM, R, IERROR) debian/patches/pptrace-option0000644000000000000000000000714212212201275013502 0ustar --- a/configure.ac (révision 1466) +++ b/configure.ac (révision 1467) @@ -161,41 +161,58 @@ # pptrace stuff +use_pptrace=yes +AC_ARG_WITH(pptrace, [AS_HELP_STRING([--with-pptrace], [Use PPtrace for instrumenting])], + [ + if test x$withval != xno; then + if test x$withval = xyes; then + use_pptrace=yes + AC_MSG_RESULT(yes) + fi + else + AC_MSG_RESULT(no) + use_pptrace=no + fi + ]) + pptrace_lib_found=no pptrace_binary_type=0 -AC_ARG_WITH([pptrace-binary-type], - [AS_HELP_STRING([--with-pptrace-binary-type], - [use pptrace-binary-type (bfd or elf)])], - [ - if test x$withval = xelf; then - AC_CHECK_LIB(elf, elf_begin, [pptrace_binary_type=2], AC_MSG_ERROR([Error! You need to have libelf]) ) - AC_MSG_RESULT(using elf binary type) - else if test x$withval = xbfd; then - AC_CHECK_LIB(bfd, bfd_release, [pptrace_binary_type=1], AC_MSG_ERROR([Error! You need to have libbfd]) ) - AC_MSG_RESULT(using bfd binary type) - else - AC_MSG_ERROR([Unknown binary type]) - fi - fi - ], - [ - AC_CHECK_LIB(bfd, bfd_release, - [ - pptrace_lib_found=yes - AC_MSG_RESULT(bfd is present: use bfd binary type) - pptrace_binary_type=1], - [ - AC_CHECK_LIB(elf, elf_begin, - [ - pptrace_lib_found=yes - pptrace_binary_type=2 - AC_MSG_RESULT(bfd not present: use elf binary type) - ], - [ - PPTRACE_LIB_FOUND=no - ]) - ]) - ]) +if test $use_pptrace = yes ; then + AC_ARG_WITH([pptrace-binary-type], + [AS_HELP_STRING([--with-pptrace-binary-type], + [use pptrace-binary-type (bfd or elf)])], + [ + if test x$withval = xelf; then + AC_CHECK_LIB(elf, elf_begin, [pptrace_binary_type=2], AC_MSG_ERROR([Error! You need to have libelf]) ) + AC_MSG_RESULT(using elf binary type) + else if test x$withval = xbfd; then + AC_CHECK_LIB(bfd, bfd_release, [pptrace_binary_type=1], AC_MSG_ERROR([Error! You need to have libbfd]) ) + AC_MSG_RESULT(using bfd binary type) + else + AC_MSG_ERROR([Unknown binary type]) + fi + fi + ], + [ + AC_CHECK_LIB(bfd, bfd_release, + [ + pptrace_lib_found=yes + AC_MSG_RESULT(bfd is present: use bfd binary type) + pptrace_binary_type=1], + [ + AC_CHECK_LIB(elf, elf_begin, + [ + pptrace_lib_found=yes + pptrace_binary_type=2 + AC_MSG_RESULT(bfd not present: use elf binary type) + ], + [ + PPTRACE_LIB_FOUND=no + ]) + ]) + ]) +fi + AM_CONDITIONAL([USE_PPTRACE], [test "$pptrace_lib_found" = yes]) AM_CONDITIONAL([USE_LIBELF], [test "$pptrace_binary_type" = 2]) AC_SUBST(PPTRACE_BINARY_TYPE, $pptrace_binary_type) debian/patches/mpi-fix0000644000000000000000000000137612212121262012107 0ustar diff --git a/src/modules/mpi/eztrace_convert_mpi_p2p.c b/src/modules/mpi/eztrace_convert_mpi_p2p.c index 12d3f6e..7195d4f 100644 --- a/src/modules/mpi/eztrace_convert_mpi_p2p.c +++ b/src/modules/mpi/eztrace_convert_mpi_p2p.c @@ -396,8 +396,8 @@ static void __remove_message_from_pending_comm(struct mpi_p2p_msg_t* msg, enum comm_type_t comm_type) { INIT_MPI_PROCESS_INFO(GET_PROCESS_INFO(cont), process_info); - struct ezt_list_token_t *token; - ezt_list_foreach(&process_info->pending_comm[comm_type], token) { + struct ezt_list_token_t *token, *next; + ezt_list_foreach_safe(&process_info->pending_comm[comm_type], token, next) { struct mpi_pending_comm* p_comm = (struct mpi_pending_comm*) token->data; if((p_comm->msg == msg) && debian/patches/test-fix0000644000000000000000000000103112212121262012265 0ustar diff --git a/test/automake/testcommon.h b/test/automake/testcommon.h index b890c6d..6fc935f 100644 --- a/test/automake/testcommon.h.in +++ b/test/automake/testcommon.h.in @@ -302,7 +302,7 @@ inline void fetch_traces() { snprintf(buffertrace, 256, "%s/%s_eztrace_log_rank_", trace_dir, user); if (nproc == 1) { - snprintf(trace[i], 256, "%s1", buffertrace); + snprintf(trace[0], 256, "%s1", buffertrace); if (debug >= DEBUG_VERBOSE) fprintf(stderr, "trace = %s\n", trace[0]); } else { debian/patches/plugins-abi-version0000644000000000000000000000441412212121262014427 0ustar diff --git a/configure.ac b/configure.ac index 91d651e..013674d 100644 --- a/configure.ac +++ b/configure.ac @@ -57,7 +57,7 @@ if [ test "x$os_type" = "xLinux" ]; then # Linux AC_MSG_WARN([OS: Linux]) CFLAGS="$CFLAGS -DHAVE_LINUX" - DYNLIB_EXT=".so" + DYNLIB_EXT=".so.0" LD_PRELOAD_NAME="LD_PRELOAD" LD_LIBRARY_PATH_NAME="LD_LIBRARY_PATH" elif [ test "x$os_type" = "xDarwin" ]; then @@ -71,7 +71,7 @@ else # unknown OS, let's try Linux AC_MSG_WARN([unknown OS: falling back to Linux]) CFLAGS="$CFLAGS -DHAVE_LINUX" - DYNLIB_EXT=".so" + DYNLIB_EXT=".so.0" LD_PRELOAD_NAME="LD_PRELOAD" LD_LIBRARY_PATH_NAME="LD_LIBRARY_PATH" fi diff --git a/test/static/Makefile.am b/test/static/Makefile.am index c92e6a5..69e9b36 100644 --- a/test/static/Makefile.am +++ b/test/static/Makefile.am @@ -39,18 +39,18 @@ AM_CFLAGS = -W -Wall -Wextra -I$(srcdir)/../../core/ -I$(top_builddir)/src/core libeztrace_convert_staticlib_la_CPPFLAGS = $(AM_CPPFLAGS) $(FXTCFLAGS) $(GTGCFLAGS) libeztrace_convert_staticlib_la_LIBADD = $(FXT_LIB) $(GTG_LIB) -libeztrace_convert_staticlib_la_LDFLAGS = $(GTGLDFLAGS) $(FXTLDFLAGS) -module -avoid-version -rpath /dev/null +libeztrace_convert_staticlib_la_LDFLAGS = $(GTGLDFLAGS) $(FXTLDFLAGS) -module -rpath /dev/null libeztrace_convert_staticlib_la_DEPENDENCIES = $(GTGDEPENDENCIES) libeztrace_convert_staticlib_la_SOURCES = eztrace_convert_staticlib.c libeztrace_staticlib_la_CPPFLAGS = $(AM_CPPFLAGS) $(FXTCFLAGS) libeztrace_staticlib_la_LIBADD = $(FXT_LIB) -libeztrace_staticlib_la_LDFLAGS = --no-undefined $(FXTLDFLAGS) -Wl,-Bsymbolic -module -avoid-version -rpath /dev/null +libeztrace_staticlib_la_LDFLAGS = --no-undefined $(FXTLDFLAGS) -Wl,-Bsymbolic -module -rpath /dev/null libeztrace_staticlib_la_SOURCES = staticlib.c libeztrace_autostart_staticlib_la_CPPFLAGS = $(AM_CPPFLAGS) $(FXTCFLAGS) libeztrace_autostart_staticlib_la_LIBADD = $(FXT_LIB) -libeztrace_autostart_staticlib_la_LDFLAGS = --no-undefined $(FXTLDFLAGS) -Wl,-Bsymbolic -module -avoid-version -rpath /dev/null +libeztrace_autostart_staticlib_la_LDFLAGS = --no-undefined $(FXTLDFLAGS) -Wl,-Bsymbolic -module -rpath /dev/null libeztrace_autostart_staticlib_la_CFLAGS = $(AM_CFLAGS) -W -Wall -Wextra -DEZTRACE_AUTOSTART libeztrace_autostart_staticlib_la_SOURCES = staticlib.c debian/patches/series0000644000000000000000000000014612234732027012035 0ustar manpages no-libpomp extlib plugins-abi-version test-fix mpi-fix mpi3 pptrace-option libdir static-bfd debian/patches/static-bfd0000644000000000000000000000104212234740053012555 0ustar We don't really want to rebuild eztrace on each and every binutils upload. --- a/src/core/Makefile.am +++ b/src/core/Makefile.am @@ -53,7 +53,7 @@ eztrace_SOURCES = eztrace.c \ $(top_srcdir)/src/pptrace/tracing.c eztrace_CPPFLAGS = -I$(top_srcdir)/src/pptrace/ $(FXTCFLAGS) -g -O0 eztrace_LDFLAGS = -g -O0 $(FXTLDFLAGS) -eztrace_LDADD = -L${prefix}/lib -leztrace -ldl -lbfd $(FXTLIBADD) +eztrace_LDADD = -L${prefix}/lib -leztrace -ldl /usr/lib/libbfd.a /usr/lib/libiberty.a -lz $(FXTLIBADD) if USE_LIBELF eztrace_LDADD += -lelf endif debian/patches/libdir0000644000000000000000000000115612225302660012006 0ustar diff --git a/src/core/eztrace.c.in b/src/core/eztrace.c.in index 01c7a5c..b298964 100644 --- a/src/core/eztrace.c.in +++ b/src/core/eztrace.c.in @@ -227,7 +227,7 @@ int main(int argc, char **argv) { fprintf(stderr, "Eztrace test Mode\n"); files = alloc_and_copy("@abs_top_builddir@/src/core/.libs/libeztrace-autostart@DYNLIB_EXT@"); }else{ - files = alloc_and_copy("@prefix@/lib/libeztrace-autostart@DYNLIB_EXT@"); + files = alloc_and_copy("@libdir@/libeztrace-autostart@DYNLIB_EXT@"); } if(pptrace_add_preload(bin, files)){ fprintf(stderr, "Unable to add %s to @LD_PRELOAD_NAME@\n", files); debian/copyright0000644000000000000000000000354612212121262011120 0ustar Format: http://dep.debian.net/deps/dep5 Upstream-Name: eztrace Source: http://eztrace.gforge.inria.fr/ Files: * Copyright: CNRS, INRIA, Université Bordeaux 1 License: GPL2+ Copyright © CNRS, INRIA, Université Bordeaux 1. . This program is free software ; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation ; either version 2 of the License, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with the program ; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. . On Debian systems, the complete text of the GNU General Public License version 2 can be found in "/usr/share/common-licenses/GPL-2". Files: debian/* Copyright: 2012 Samuel Thibault License: GPL-2+ This package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see . On Debian systems, the complete text of the GNU General Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".