tag 320891 +patch tag 321052 +patch tag 321093 +patch tag 321158 +patch thanks
Hello Adam, I've prepared a non-maintainer upload to fix the various RC bugs reported against the mpich source package. It is based on the 1.2.5.3-6 version you uploaded a month ago, which was recently rejected from the NEW queue. I attach the NMU diff and, for your convenience, an diff of the result of applying the new 18_link_against_needed_libs.dpatch, so it can be read more easily. As the diff is sort of big, I will wait a bit before making the upload despite being in 0-day NMU policy; I'd really like to upload (or not) after having heard from you, but note that I can't wait indefinitely. So please let me know if there are any problems with the proposed patch I should fix before uploading, or if you'll be making an upload yourself _soon_. Hoping being of help, -- Adeodato Simó EM: asp16 [ykwim] alu.ua.es | PK: DA6AE621 Listening to: Oasis - Dont Look Back In Anger Proper treatment will cure a cold in seven days, but left to itself, a cold will hang on for a week. -- Darrell Huff
diff -u -Nrua mpich-1.2.5.3-6/debian/changelog mpich-1.2.5.3-6.1/debian/changelog --- mpich-1.2.5.3-6/debian/changelog 2005-08-03 22:03:14.000000000 +0200 +++ mpich-1.2.5.3-6.1/debian/changelog 2005-08-04 01:01:25.000000000 +0200 @@ -1,3 +1,41 @@ +mpich (1.2.5.3-6.1) unstable; urgency=low + + * Non-maintainer upload based on 1.2.5.3-6 (never in unstable since it was + rejected from NEW; files grabbed from the maintainer's website). + + * Make the necessary changes for the C++ ABI transition: the libmpich1.0, + libmpich-mpd1.0 and libmpich-shmem1.0 packages get renamed as appropriate + ('c2' suffix added): + + debian/control: + - renamed packages, and conflict and replace the old ones. + - updated the dependencies of the *-dev and *-bin packages. + + debian/rules: + - added the c2 suffix in a couple places in the install target. + + * Make sure all shipped shared libraries are linked against all libraries + they use symbols from (closes: #320891). List of changes introduced in + debian/patches/18_link_against_needed_libs.dpatch: + + + link libmpich++ against libstdc++ and libmpich. + + link libmpe and libfmpich against libmpich. + + always invoke the linker with -z defs, and make the build fail if the + linkage fails (errors were previously ignored). + + move target "mpichsharelibs" before "mpelib" in the Makefile, so that + -lmpich is available when creating libmpe.so. + + to implement the above, make util/makesharedlib use the value of + $EXTRA_LIBS as extra arguments to the linker, and fix the path of the + created .so symlinks. + + * Fix bogus libpmpich++-p4mpd.so symlink; the soname is libpmpich-p4mpd++ + (closes: #321158). Fix libpmpich++-shmem.so as well, new in 1.2.5.3-6. + + * Remove on clean several files created during build which were not being + removed (closes: #321052). + + * Added missing build-dependency on tk8.4 | wish (closes: #321093). + + -- Adeodato Simó <[EMAIL PROTECTED]> Thu, 04 Aug 2005 00:15:23 +0200 + mpich (1.2.5.3-6) unstable; urgency=low * Removed mpich and mpich-mpd packages which were deprecated in sarge. diff -u -Nrua mpich-1.2.5.3-6/debian/control mpich-1.2.5.3-6.1/debian/control --- mpich-1.2.5.3-6/debian/control 2005-08-03 22:03:14.000000000 +0200 +++ mpich-1.2.5.3-6.1/debian/control 2005-08-04 00:06:04.000000000 +0200 @@ -3,12 +3,12 @@ Priority: extra Maintainer: Adam C. Powell, IV <[EMAIL PROTECTED]> Standards-Version: 3.6.2.1 -Build-Depends: g77, rsh-client, libx11-dev, libxt-dev, file, debhelper (>> 4.0.0), dpatch +Build-Depends: g77, rsh-client, libx11-dev, libxt-dev, file, debhelper (>> 4.0.0), dpatch, tk8.4 | wish Build-Depends-Indep: bzip2 Package: mpich-bin Architecture: any -Depends: ${shlibs:Depends}, rsh-client, libmpich1.0 (= ${Source-Version}) +Depends: ${shlibs:Depends}, rsh-client, libmpich1.0c2 (= ${Source-Version}) Suggests: mpi-doc, libmpich1.0-dev (= ${Source-Version}), update-cluster, wish, rsh-server Conflicts: lam (<= 6.1), mpich (<< 1.2.5.3-2), mpich-common Replaces: mpich-common @@ -24,7 +24,7 @@ Package: mpich-mpd-bin Architecture: any -Depends: ${shlibs:Depends}, rsh-client, gdb, libmpich-mpd1.0 (= ${Source-Version}) +Depends: ${shlibs:Depends}, rsh-client, gdb, libmpich-mpd1.0c2 (= ${Source-Version}) Suggests: mpi-doc, libmpich-mpd1.0-dev (= ${Source-Version}), update-cluster, wish, rsh-server Conflicts: lam (<=6.1), mpich-mpd (<< 1.2.5.3-2), mpich-common Replaces: libmpich-p4mpd1.0 (<= 1.2.4-8), mpich-common @@ -40,7 +40,7 @@ Package: mpich-shmem-bin Architecture: any -Depends: ${shlibs:Depends}, gdb, libmpich-shmem1.0 (= ${Source-Version}) +Depends: ${shlibs:Depends}, gdb, libmpich-shmem1.0c2 (= ${Source-Version}) Suggests: mpi-doc, libmpich-shmem1.0-dev (= ${Source-Version}) Conflicts: lam (<=6.1), mpich-common Replaces: mpich-common @@ -58,7 +58,7 @@ Package: libmpich1.0-dev Architecture: any Section: libdevel -Depends: libmpich1.0 +Depends: libmpich1.0c2 Suggests: mpi-doc Provides: libmpich-dev Conflicts: lam (<= 6.1), mpich (<< 1.2.5.3-2), mpich-common @@ -71,7 +71,7 @@ Package: libmpich-mpd1.0-dev Architecture: any Section: libdevel -Depends: libmpich-mpd1.0 +Depends: libmpich-mpd1.0c2 Suggests: mpi-doc Provides: libmpich-dev Conflicts: lam (<=6.1), mpich-mpd (<< 1.2.5.3-2), mpich-common @@ -84,7 +84,7 @@ Package: libmpich-shmem1.0-dev Architecture: any Section: libdevel -Depends: libmpich-shmem1.0 +Depends: libmpich-shmem1.0c2 Suggests: mpi-doc Provides: libmpich-dev Conflicts: lam (<=6.1), mpich-shmem (<< 1.2.5.3-2), mpich-common @@ -94,30 +94,32 @@ compiler wrappers (mpicc etc.) used to compile programs using the ch_p4shmem version of mpich. -Package: libmpich1.0 +Package: libmpich1.0c2 Architecture: any Section: libs Depends: ${shlibs:Depends} Suggests: mpich-bin (= ${Source-Version}) +Conflicts: libmpich1.0 +Replaces: libmpich1.0 Description: mpich runtime shared library This package includes the shared library files used for mpich runtime. -Package: libmpich-mpd1.0 +Package: libmpich-mpd1.0c2 Architecture: any Section: libs Depends: ${shlibs:Depends} -Conflicts: libmpich-p4mpd1.0 -Replaces: libmpich-p4mpd1.0 +Conflicts: libmpich-p4mpd1.0, libmpich-mpd1.0 +Replaces: libmpich-p4mpd1.0, libmpich-mpd1.0 Recommends: mpich-mpd-bin (= ${Source-Version}) Description: mpich-mpd runtime shared library This package includes the shared library files used for mpich-mpd runtime. -Package: libmpich-shmem1.0 +Package: libmpich-shmem1.0c2 Architecture: any Section: libs Depends: ${shlibs:Depends} -Conflicts: libmpich-p4shmem1.0 -Replaces: libmpich-p4shmem1.0 +Conflicts: libmpich-p4shmem1.0, libmpich-shmem1.0 +Replaces: libmpich-p4shmem1.0, libmpich-shmem1.0 Recommends: mpich-shmem-bin (= ${Source-Version}) Description: mpich-shmem runtime shared library This package includes the shared library files used for mpich-shmem runtime. diff -u -Nrua mpich-1.2.5.3-6/debian/patches/00list mpich-1.2.5.3-6.1/debian/patches/00list --- mpich-1.2.5.3-6/debian/patches/00list 2005-08-03 22:03:14.000000000 +0200 +++ mpich-1.2.5.3-6.1/debian/patches/00list 2005-08-03 13:52:58.000000000 +0200 @@ -13,3 +13,4 @@ 15_shared_c++ 16_initf_in_shlib 17_mpd_rm_extern_arrays +18_link_against_needed_libs diff -u -Nrua mpich-1.2.5.3-6/debian/patches/18_link_against_needed_libs.dpatch mpich-1.2.5.3-6.1/debian/patches/18_link_against_needed_libs.dpatch --- mpich-1.2.5.3-6/debian/patches/18_link_against_needed_libs.dpatch 1970-01-01 01:00:00.000000000 +0100 +++ mpich-1.2.5.3-6.1/debian/patches/18_link_against_needed_libs.dpatch 2005-08-04 01:56:07.000000000 +0200 @@ -0,0 +1,94 @@ +#! /bin/sh -e +## 18_link_against_needed_libs.dpatch by Adeodato Simó <[EMAIL PROTECTED]> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Make sure all shipped shared libraries are linked against all libraries +## DP: they use symbols from. See debian/changelog 1.2.5.3-6.1 for explanations. + +if [ $# -ne 1 ]; then + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1 +fi +case "$1" in + -patch) patch -f --no-backup-if-mismatch -p1 < $0;; + -unpatch) patch -f --no-backup-if-mismatch -R -p1 < $0;; + *) + echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" + exit 1;; +esac + +exit 0 + + + +--- a/util/makesharedlib ++++ b/util/makesharedlib +@@ -149,7 +149,7 @@ + # Include any other libraries needed to link with in case they are + # needed to resolve any symbols. This is needed for Scyld and should + # be harmless in general. +- OtherLibs="$BASE_LIB_LIST -lg2c " ++ OtherLibs="$BASE_LIB_LIST -lg2c $EXTRA_LIBS " + for libname in $SHLIBS ; do + $Verbose "Making a shared library of $libname" + rm -rf .tmp +@@ -189,7 +189,7 @@ + if [ $slsuffix != $req_slsuffix -a $nolink = 0 ] ; then + rm -f shared/$libbase.$req_slsuffix + (cd shared ; \ +- ln -s ../$libbase.$slsuffix $libbase.$req_slsuffix ) ++ ln -s $libbase.$slsuffix $libbase.$req_slsuffix ) + fi + fi + rm -rf .tmp +--- a/Makefile.in ++++ b/Makefile.in +@@ -135,9 +135,9 @@ + + # Use this target for add-on features + mpi-addons: +- $(MAKE) mpelib +- [EMAIL PROTECTED] [ "@SHAREDKIND@" != "ignore" ] ; then \ ++ @if [ "@SHAREDKIND@" != "ignore" ] ; then \ + $(MAKE) mpichsharelibs ; fi ++ $(MAKE) mpelib + + # This target is for various utilities (mpirun, servers) + # Note that ch_p4 now invokes the device-dependent mpirun_setup script +@@ -190,14 +190,22 @@ + # The test on the filenames below simply prevents error messages + # when using these tests. + mpichsharelibs: +- @-( cd $(libbuild_dir) && \ ++ @( set -e; cd $(libbuild_dir) && \ + CC="$(CC)" ; export CC ; CLINKER="@CLINKER@" ; export CLINKER ; \ +- for lib in lib${MPILIBNAME}.a libp${MPILIBNAME}.a \ +- lib${FMPILIBNAME}.a libp${MPILIBNAME}++.a ; do \ ++ for lib in lib${MPILIBNAME}.a libp${MPILIBNAME}.a; do \ + if [ -s $$lib ] ; then \ ++ env EXTRA_LIBS="-Wl,-z,defs" \ + ${top_srcdir}/util/makesharedlib -lib=$$lib [EMAIL PROTECTED]@ ; \ + fi ; \ + done ; \ ++ lib=lib${FMPILIBNAME}.a ; if [ -s $$lib ] ; then \ ++ env EXTRA_LIBS="-Wl,-z,defs -L../shared -l${MPILIBNAME}" \ ++ ${top_srcdir}/util/makesharedlib -lib=$$lib [EMAIL PROTECTED]@ ; \ ++ fi ; \ ++ lib=libp${MPILIBNAME}++.a ; if [ -s $$lib ] ; then \ ++ env EXTRA_LIBS="-Wl,-z,defs -lstdc++ -L../shared -l${MPILIBNAME}" \ ++ ${top_srcdir}/util/makesharedlib -lib=$$lib [EMAIL PROTECTED]@ ; \ ++ fi ; \ + if [ $(NOF77) = 0 ] ; then \ + if [ "@FLIBNAME@" != "@MPILIBNAME@" ] ; then \ + ${top_srcdir}/util/makesharedlib [EMAIL PROTECTED]@.a [EMAIL PROTECTED]@ ; \ +--- a/mpe/src/Makefile.in ++++ b/mpe/src/Makefile.in +@@ -174,7 +174,7 @@ + # the approriate command to handle other shared libraries on other systems. + ${libbuild_dir}/shared/lib$(PROF_LIBNAME).so: $(MPE_SHLOBJECTS) + if [ ! -d ${libbuild_dir}/shared ]; then mkdir ${libbuild_dir}/shared; fi +- $(CLINKER) -shared -Wl,-soname,lib$(PROF_LIBNAME).so.1.0 -o [EMAIL PROTECTED] $(MPE_SHLOBJECTS) -L /usr/X11R6/lib -lX11 -L ../slog_api/lib/shared -l$(SLOG_LIBNAME) -lm ++ $(CLINKER) -shared -Wl,-z,defs -Wl,-soname,lib$(PROF_LIBNAME).so.1.0 -o [EMAIL PROTECTED] $(MPE_SHLOBJECTS) -L /usr/X11R6/lib -lX11 -L ../slog_api/lib/shared -l$(SLOG_LIBNAME) -lm -L../../lib/shared -l`echo $(PROF_LIBNAME) | sed -e 's/^mpe/mpich/'` + ln -sf lib$(PROF_LIBNAME).so.1.0 ${libbuild_dir}/shared/lib$(PROF_LIBNAME).so + + ${libbuild_dir}/lib$(PROF_LIBNAME)_nompi.a: $(MPEGRAPHICS_SOURCE) diff -u -Nrua mpich-1.2.5.3-6/debian/rules mpich-1.2.5.3-6.1/debian/rules --- mpich-1.2.5.3-6/debian/rules 2005-08-03 22:03:14.000000000 +0200 +++ mpich-1.2.5.3-6.1/debian/rules 2005-08-04 00:01:04.000000000 +0200 @@ -87,6 +87,11 @@ done;\ done;\ ) + for INST in mpich mpich-mpd mpich-shmem; do \ + for FILES in postinst prerm links; do \ + rm -f debian/lib$${INST}1.0-dev.$$FILES; \ + done; \ + done rm -rf image_mpich image_mpich-mpd image_mpich-shmem # cleaning cruft created by MPD. rm -f mpid/ch_p4mpd/p4mpd/lib/p4_MD.c mpid/ch_p4mpd/p4mpd/lib/p4_MD.h mpid/ch_p4mpd/p4mpd/lib/p4_alloc.c mpid/ch_p4mpd/p4mpd/lib/p4_args.c mpid/ch_p4mpd/p4mpd/lib/p4_broadcast.c mpid/ch_p4mpd/p4mpd/lib/p4_debug.c mpid/ch_p4mpd/p4mpd/lib/p4_defs.h mpid/ch_p4mpd/p4mpd/lib/p4_funcs.h mpid/ch_p4mpd/p4mpd/lib/p4_error.c mpid/ch_p4mpd/p4mpd/lib/p4_rm.c mpid/ch_p4mpd/p4mpd/lib/p4_secure.c mpid/ch_p4mpd/p4mpd/lib/p4_sock_conn.c mpid/ch_p4mpd/p4mpd/lib/p4_sock_cr.c mpid/ch_p4mpd/p4mpd/lib/p4_sock_sr.c mpid/ch_p4mpd/p4mpd/lib/p4_sock_util.c mpid/ch_p4mpd/p4mpd/lib/p4_sock_util.h mpid/ch_p4mpd/p4mpd/lib/p4_sys.h mpid/ch_p4mpd/p4mpd/lib/p4_sys_funcs.h mpid/ch_p4mpd/p4mpd/lib/xdr_float.c mpid/ch_p4mpd/p4mpd/lib/listener_p4.c mpid/ch_p4mpd/p4mpd/lib/p4.h mpid/ch_p4mpd/p4mpd/lib/p4_fc.c mpid/ch_p4mpd/p4mpd/lib/p4_globals.c mpid/ch_p4mpd/p4mpd/lib/p4_globals.h mpid/ch_p4mpd/p4mpd/lib/p4_macros.h mpid/ch_p4mpd/p4mpd/lib/p4_mon.c mpid/ch_p4mpd/p4mpd/lib/p4_mon.h mpid/ch_p4mpd/p4mpd/lib/p4_patchlevel.h mpid/ch_p4mpd/p4mpd/lib/p4_procgroup.c mpid/ch_p4mpd/p4mpd/lib/p4_shmem_sr.c mpid/ch_p4mpd/p4mpd/lib/p4_sr.h mpid/ch_p4mpd/p4mpd/lib/sfcdchi.h mpid/ch_p4mpd/p4mpd/lib/makefile.proto mpid/ch_p4mpd/p4mpd/monitors mpid/ch_p4mpd/p4mpd/CHANGES mpid/ch_p4mpd/p4mpd/MACHINES mpid/ch_p4mpd/p4mpd/OPTIONS mpid/ch_p4mpd/p4mpd/README mpid/ch_p4mpd/p4mpd/config.guess mpid/ch_p4mpd/p4mpd/defs.all mpid/ch_p4mpd/p4mpd/p4_config.h.in mpid/ch_p4mpd/p4mpd/configure mpid/ch_p4mpd/p4mpd/configure.in mpid/ch_p4mpd/p4mpd/alog mpid/ch_p4mpd/p4mpd/bin mpid/ch_p4mpd/p4mpd/servers mpid/ch_p4mpd/p4mpd/usc mpid/ch_p4mpd/p4mpd/doc mpid/ch_p4mpd/p4mpd/messages mpid/ch_p4mpd/p4mpd/contrib mpid/ch_p4mpd/p4mpd/contrib_f mpid/ch_p4mpd/p4mpd/messages_f mpid/ch_p4mpd/p4mpd/misc @@ -161,7 +166,7 @@ ) # install libs to proper places. (set -e; for INST in mpich mpich-mpd mpich-shmem ; do \ - $(INSTALL_DIR) debian/lib"$$INST"1.0/usr/lib/$$INST/lib/shared; \ + $(INSTALL_DIR) debian/lib"$$INST"1.0c2/usr/lib/$$INST/lib/shared; \ $(INSTALL_DIR) debian/lib"$$INST"1.0-dev/usr/lib/$$INST/bin; \ $(INSTALL_DIR) debian/lib"$$INST"1.0-dev/usr/lib/$$INST/etc; \ $(INSTALL_DIR) debian/lib"$$INST"1.0-dev/usr/lib/$$INST/man/man1; \ @@ -172,9 +177,9 @@ mv debian/$$INST-bin/usr/lib/$$INST/include debian/lib"$$INST"1.0-dev/usr/lib/$$INST/; \ mv debian/$$INST-bin/usr/lib/$$INST/lib debian/lib"$$INST"1.0-dev/usr/lib/$$INST/; \ mv debian/lib"$$INST"1.0-dev/usr/lib/$$INST/lib/lib*.so.1.0 debian/lib"$$INST"1.0-dev/usr/lib/$$INST/lib/shared/; \ - mv debian/lib"$$INST"1.0-dev/usr/lib/$$INST/lib/shared/lib*.so.1.0 debian/lib"$$INST"1.0/usr/lib/$$INST/lib/shared/; \ - for LIB in `(cd debian/lib"$$INST"1.0/usr/lib/$$INST/lib/shared && ls lib*.so.*)`; do \ - ln -s $$INST/lib/shared/$$LIB debian/lib"$$INST"1.0/usr/lib/$$LIB; \ + mv debian/lib"$$INST"1.0-dev/usr/lib/$$INST/lib/shared/lib*.so.1.0 debian/lib"$$INST"1.0c2/usr/lib/$$INST/lib/shared/; \ + for LIB in `(cd debian/lib"$$INST"1.0c2/usr/lib/$$INST/lib/shared && ls lib*.so.*)`; do \ + ln -s $$INST/lib/shared/$$LIB debian/lib"$$INST"1.0c2/usr/lib/$$LIB; \ done; \ done;\ ) @@ -213,18 +218,22 @@ done; \ # mpich-mpd lib symlinks - for LIB in libmpich libfmpich libpmpich libpmpich++ libtvmpich libmpe libslog; do \ + for LIB in libmpich libfmpich libpmpich libtvmpich libmpe libslog; do \ ln -s $$LIB-p4mpd.so.1.0 debian/libmpich-mpd1.0-dev/usr/lib/mpich-mpd/lib/shared/$$LIB-p4mpd.so; \ done + # libpmpich-p4mpd++.so.1.0 has a soname that does not suit the loop above + ln -s libpmpich-p4mpd++.so.1.0 debian/libmpich-mpd1.0-dev/usr/lib/mpich-mpd/lib/shared/libpmpich-p4mpd++.so # hack mpe-mpd to have libmpe.so and libslog.so in their directory. ln -s libmpe-p4mpd.so.1.0 debian/libmpich-mpd1.0-dev/usr/lib/mpich-mpd/lib/shared/libmpe.so ln -s libslog-p4mpd.so.1.0 debian/libmpich-mpd1.0-dev/usr/lib/mpich-mpd/lib/shared/libslog.so # -- end of custom installation # mpich-shmem lib symlinks - for LIB in libmpich libfmpich libpmpich libpmpich++ libtvmpich libmpe libslog; do \ + for LIB in libmpich libfmpich libpmpich libtvmpich libmpe libslog; do \ ln -s $$LIB-shmem.so.1.0 debian/libmpich-shmem1.0-dev/usr/lib/mpich-shmem/lib/shared/$$LIB-shmem.so; \ done + # libpmpich-shmem++.so.1.0 has a soname that does not suit the loop above + ln -s libpmpich-shmem++.so.1.0 debian/libmpich-shmem1.0-dev/usr/lib/mpich-shmem/lib/shared/libpmpich-shmem++.so # hack mpe-shmem to have libmpe.so and libslog.so in their directory. ln -s libmpe-shmem.so.1.0 debian/libmpich-shmem1.0-dev/usr/lib/mpich-shmem/lib/shared/libmpe.so ln -s libslog-shmem.so.1.0 debian/libmpich-shmem1.0-dev/usr/lib/mpich-shmem/lib/shared/libslog.so
diff -u -Nrua -x debian mpich-1.2.5.3-6/mpe/src/Makefile.in mpich-1.2.5.3-6.1/mpe/src/Makefile.in --- mpich-1.2.5.3-6/mpe/src/Makefile.in 2005-08-04 00:37:43.000000000 +0200 +++ mpich-1.2.5.3-6.1/mpe/src/Makefile.in 2005-08-04 00:37:48.000000000 +0200 @@ -174,7 +174,7 @@ # the approriate command to handle other shared libraries on other systems. ${libbuild_dir}/shared/lib$(PROF_LIBNAME).so: $(MPE_SHLOBJECTS) if [ ! -d ${libbuild_dir}/shared ]; then mkdir ${libbuild_dir}/shared; fi - $(CLINKER) -shared -Wl,-soname,lib$(PROF_LIBNAME).so.1.0 -o [EMAIL PROTECTED] $(MPE_SHLOBJECTS) -L /usr/X11R6/lib -lX11 -L ../slog_api/lib/shared -l$(SLOG_LIBNAME) -lm + $(CLINKER) -shared -Wl,-z,defs -Wl,-soname,lib$(PROF_LIBNAME).so.1.0 -o [EMAIL PROTECTED] $(MPE_SHLOBJECTS) -L /usr/X11R6/lib -lX11 -L ../slog_api/lib/shared -l$(SLOG_LIBNAME) -lm -L../../lib/shared -l`echo $(PROF_LIBNAME) | sed -e 's/^mpe/mpich/'` ln -sf lib$(PROF_LIBNAME).so.1.0 ${libbuild_dir}/shared/lib$(PROF_LIBNAME).so ${libbuild_dir}/lib$(PROF_LIBNAME)_nompi.a: $(MPEGRAPHICS_SOURCE) diff -u -Nrua -x debian mpich-1.2.5.3-6/Makefile.in mpich-1.2.5.3-6.1/Makefile.in --- mpich-1.2.5.3-6/Makefile.in 2005-08-04 00:37:43.000000000 +0200 +++ mpich-1.2.5.3-6.1/Makefile.in 2005-08-04 00:37:48.000000000 +0200 @@ -135,9 +135,9 @@ # Use this target for add-on features mpi-addons: - $(MAKE) mpelib - [EMAIL PROTECTED] [ "@SHAREDKIND@" != "ignore" ] ; then \ + @if [ "@SHAREDKIND@" != "ignore" ] ; then \ $(MAKE) mpichsharelibs ; fi + $(MAKE) mpelib # This target is for various utilities (mpirun, servers) # Note that ch_p4 now invokes the device-dependent mpirun_setup script @@ -190,14 +190,22 @@ # The test on the filenames below simply prevents error messages # when using these tests. mpichsharelibs: - @-( cd $(libbuild_dir) && \ + @( set -e; cd $(libbuild_dir) && \ CC="$(CC)" ; export CC ; CLINKER="@CLINKER@" ; export CLINKER ; \ - for lib in lib${MPILIBNAME}.a libp${MPILIBNAME}.a \ - lib${FMPILIBNAME}.a libp${MPILIBNAME}++.a ; do \ + for lib in lib${MPILIBNAME}.a libp${MPILIBNAME}.a; do \ if [ -s $$lib ] ; then \ + env EXTRA_LIBS="-Wl,-z,defs" \ ${top_srcdir}/util/makesharedlib -lib=$$lib [EMAIL PROTECTED]@ ; \ fi ; \ done ; \ + lib=lib${FMPILIBNAME}.a ; if [ -s $$lib ] ; then \ + env EXTRA_LIBS="-Wl,-z,defs -L../shared -l${MPILIBNAME}" \ + ${top_srcdir}/util/makesharedlib -lib=$$lib [EMAIL PROTECTED]@ ; \ + fi ; \ + lib=libp${MPILIBNAME}++.a ; if [ -s $$lib ] ; then \ + env EXTRA_LIBS="-Wl,-z,defs -lstdc++ -L../shared -l${MPILIBNAME}" \ + ${top_srcdir}/util/makesharedlib -lib=$$lib [EMAIL PROTECTED]@ ; \ + fi ; \ if [ $(NOF77) = 0 ] ; then \ if [ "@FLIBNAME@" != "@MPILIBNAME@" ] ; then \ ${top_srcdir}/util/makesharedlib [EMAIL PROTECTED]@.a [EMAIL PROTECTED]@ ; \ diff -u -Nrua -x debian mpich-1.2.5.3-6/util/makesharedlib mpich-1.2.5.3-6.1/util/makesharedlib --- mpich-1.2.5.3-6/util/makesharedlib 2005-08-04 00:37:43.000000000 +0200 +++ mpich-1.2.5.3-6.1/util/makesharedlib 2005-08-04 00:37:48.000000000 +0200 @@ -149,7 +149,7 @@ # Include any other libraries needed to link with in case they are # needed to resolve any symbols. This is needed for Scyld and should # be harmless in general. - OtherLibs="$BASE_LIB_LIST -lg2c " + OtherLibs="$BASE_LIB_LIST -lg2c $EXTRA_LIBS " for libname in $SHLIBS ; do $Verbose "Making a shared library of $libname" rm -rf .tmp @@ -189,7 +189,7 @@ if [ $slsuffix != $req_slsuffix -a $nolink = 0 ] ; then rm -f shared/$libbase.$req_slsuffix (cd shared ; \ - ln -s ../$libbase.$slsuffix $libbase.$req_slsuffix ) + ln -s $libbase.$slsuffix $libbase.$req_slsuffix ) fi fi rm -rf .tmp
signature.asc
Description: Digital signature