From: Julien Cristau Date: Fri, 14 Nov 2014 16:57:11 +0000 (+0000) Subject: openmpi (1.6.5-9.1) unstable; urgency=medium X-Git-Tag: archive/raspbian/2.1.1-7+rpi1~1^2^2^2^2^2^2^2~13 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=62c27031a8e7ada9f6d74ce02c22fd85790c0491;p=openmpi.git openmpi (1.6.5-9.1) unstable; urgency=medium * Non-maintainer upload. * Disable torque support (see #767411). [dgit import unpatched openmpi 1.6.5-9.1] --- 62c27031a8e7ada9f6d74ce02c22fd85790c0491 diff --cc debian/TODO index 00000000,00000000..f7874f10 new file mode 100644 --- /dev/null +++ b/debian/TODO @@@ -1,0 -1,0 +1,4 @@@ ++* moved mpi.mod into the -dev package ++* *.so in /usr/lib/openmpi/lib/openmpi/ should be in a versionned directory ++ ++ diff --cc debian/changelog index 00000000,00000000..1403771b new file mode 100644 --- /dev/null +++ b/debian/changelog @@@ -1,0 -1,0 +1,929 @@@ ++openmpi (1.6.5-9.1) unstable; urgency=medium ++ ++ * Non-maintainer upload. ++ * Disable torque support (see #767411). ++ ++ -- Julien Cristau Fri, 14 Nov 2014 17:57:11 +0100 ++ ++openmpi (1.6.5-9) unstable; urgency=medium ++ ++ * Add myself as uploader. ++ * Standards-Version: 3.9.6; no changes required. ++ * Rebuild against lastest gfortran. Closes: #647908, #675115. ++ * Patch for mpi.pc support. Closes: #752785. ++ * Patch from Michael Cree to fix bad atomic ops on Alpha that ++ causes mpi4py to segfault. Closes: #754524. ++ ++ -- Alastair McKinstry Tue, 28 Oct 2014 11:07:44 +0000 ++ ++openmpi (1.6.5-8) unstable; urgency=low ++ ++ [ Dimitri John Ledkov ] ++ * Set ppc64el gnu-type to use ppc atomics code-path. ++ * Attempt ppc64el build. ++ ++ [ Sylvestre Ledru ] ++ * Sync changes from Ubuntu (it would be nice to have contribution ++ directly in Debian btw) ++ * Fix a link issue on libopen-pal.so (Closes: #733086) ++ ++ -- Sylvestre Ledru Thu, 26 Dec 2013 14:29:07 +0100 ++ ++openmpi (1.6.5-7) unstable; urgency=low ++ ++ [ Logan Rosen ] ++ * Bring over Ubuntu changes from openmpi1.6: ++ - Call dh_shlibdeps with -lfoo to not break fakeroot. ++ - Add basic AArch64 support (Leif Lindholm). ++ - Use and install AArch64 header files, not ARM header files. ++ ++ [ Adam Conrad ] ++ * Remove unnecessary fakeroot from dh_shlibdeps call. ++ ++ -- Sylvestre Ledru Wed, 18 Dec 2013 12:10:47 -0500 ++ ++openmpi (1.6.5-6) unstable; urgency=low ++ ++ * Add the support of mips64 & mips64el. (Closes: #727141) ++ Thanks to YunQiang Su ++ * Also support of mips & mipsel. Thanks to Jurica Stanojkovic ++ (Closes: #732027) ++ * Fix an upgrade issue (Closes: #730622) ++ * Standards-Version updated to 3.9.5 ++ ++ -- Sylvestre Ledru Wed, 04 Dec 2013 18:14:59 +0100 ++ ++openmpi (1.6.5-5) unstable; urgency=low ++ ++ * Fix the incorrect symlink in libopenmpi1.6 (Closes: #722888) ++ ++ -- Sylvestre Ledru Sat, 14 Sep 2013 18:54:05 +0200 ++ ++openmpi (1.6.5-4) unstable; urgency=low ++ ++ * Fix again the HURD build. Thanks to Pino Toscano (Closes: #720395) ++ * orte_snapc manpage has moved from openmpi-checkpoint to openmpi-doc ++ (Closes: #717978) ++ ++ -- Sylvestre Ledru Wed, 28 Aug 2013 08:54:09 +0200 ++ ++openmpi (1.6.5-3) unstable; urgency=low ++ ++ * Increase the priority of the libopenmpi-dev package to make sure OpenMPI ++ is used before mpich. Otherwise, it causes issues like: ++ «PKGBUILDDIR»/./src/mpi.c:143: undefined reference to `ompi_mpi_comm_world' ++ «PKGBUILDDIR»/./src/mpi.c:143: undefined reference to `ompi_mpi_double' ++ ++ -- Sylvestre Ledru Tue, 20 Aug 2013 13:39:25 +0200 ++ ++openmpi (1.6.5-2) unstable; urgency=low ++ ++ * Update of the HURD port (Closes: #719797) ++ * Fix path mistakes on libmpi_f90 (Closes: #720124) ++ ++ -- Sylvestre Ledru Sat, 17 Aug 2013 19:35:24 +0200 ++ ++openmpi (1.6.5-1) unstable; urgency=low ++ ++ * Upload to unstable (will need a transition) ++ ++ -- Sylvestre Ledru Thu, 15 Aug 2013 08:55:11 +0200 ++ ++openmpi (1.6.5-1~exp2) experimental; urgency=low ++ ++ * quilt as dependency is not necessary ++ * Limit the usage of libibverbs-dev on Linux kernels ++ ++ -- Sylvestre Ledru Thu, 11 Jul 2013 09:36:23 +0200 ++ ++openmpi (1.6.5-1~exp1) experimental; urgency=low ++ ++ * New upstream release ++ * Build-Conflicts libopenmpi1.3 (avoid wrong dependencies) ++ ++ -- Sylvestre Ledru Mon, 01 Jul 2013 09:43:57 +0200 ++ ++openmpi (1.6.4+-1~exp1) experimental; urgency=low ++ ++ * Upload the 1.6 release over the 1.4 ++ Note that this will require a transition ++ * Standards-Version updated to 3.9.4 ++ * Add libfakeroot path to the LD_LIBRARY_PATH ++ ++ -- Sylvestre Ledru Tue, 04 Jun 2013 17:16:16 +0200 ++ ++openmpi1.6 (1.6.4-2) unstable; urgency=low ++ ++ * Inconsistency in debian/libopenmpi1.6.install. ++ Thanks Hiroyuki Yamamoto (Closes: #704936) ++ ++ -- Sylvestre Ledru Thu, 11 Apr 2013 16:02:35 +0200 ++ ++openmpi1.6 (1.6.4-1) unstable; urgency=low ++ ++ * New upstream release ++ ++ -- Sylvestre Ledru Fri, 22 Feb 2013 09:27:09 +0100 ++ ++openmpi1.6 (1.6.3-3) unstable; urgency=low ++ ++ * Rename manpages to avoid conflicts with mpich2-doc (Closes: #692937) ++ ++ -- Sylvestre Ledru Fri, 16 Nov 2012 17:42:56 +0100 ++ ++openmpi1.6 (1.6.3-2) unstable; urgency=low ++ ++ * Bring back manpages for MPI functions (LP: #1027289) ++ * Remove mca_rml_ftrm.so on ia64 & sparc ++ ++ -- Sylvestre Ledru Fri, 09 Nov 2012 14:09:11 +0100 ++ ++openmpi1.6 (1.6.3-1) unstable; urgency=low ++ ++ * New upstream release ++ * Fix bashims (Closes: #690929) ++ * Remove mca_pml_crcpw.so on ia64 & sparc ++ ++ -- Sylvestre Ledru Wed, 07 Nov 2012 11:50:54 +0100 ++ ++openmpi1.6 (1.6.2-2) unstable; urgency=low ++ ++ * Remove mca_grpcomm_hier.so on all archs ++ ++ -- Sylvestre Ledru Sat, 29 Sep 2012 14:03:42 +0200 ++ ++openmpi1.6 (1.6.2-1) unstable; urgency=low ++ ++ * New upstream release ++ * Add dpkg-dev (>= 1.16.1~) dependency (hardening) ++ * Enable hardening flags (but not taken in account everywhere) ++ ++ -- Sylvestre Ledru Sat, 29 Sep 2012 09:40:58 +0200 ++ ++openmpi1.6 (1.6.1-1) unstable; urgency=low ++ ++ * New upstream release ++ * Some libs have been removed from upstream: mca_rmcast_tcp.so, ++ mca_rmcast_udp.so & mca_io_romio.so ++ * Remove fix_orte_default_hostfile_path.diff (applied upstream) ++ * Switch to automake as build dependency ++ ++ -- Sylvestre Ledru Thu, 23 Aug 2012 15:49:02 +0200 ++ ++openmpi1.6 (1.6-4) unstable; urgency=low ++ ++ * Update library list for sparc & ia64 ++ * --enable-mpi-threads -> --enable-opal-multi-threads ++ * --enable-ft-thread is needed to have a similar level of checkpointing as ++ before ++ Thanks to Matthieu Volat for the two last changes ++ ++ -- Sylvestre Ledru Sun, 01 Jul 2012 14:38:42 +0200 ++ ++openmpi1.6 (1.6-3) unstable; urgency=low ++ ++ * Try another change in the detection of armel (v5 instead of v6) ++ * Fix a problem in the default hostfile with orte. Thanks to Matthieu Volat ++ for the patch ++ * Update lib library for sparc, armhf and armel ++ ++ -- Sylvestre Ledru Wed, 27 Jun 2012 22:34:28 +0200 ++ ++openmpi1.6 (1.6-2) unstable; urgency=low ++ ++ * Update the detection of armel & armhf (See arm_detection.diff) ++ * Add the dependency on hwloc-dev from libopenmpi1.6-dev (Closes: #677744) ++ ++ -- Sylvestre Ledru Mon, 25 Jun 2012 13:47:07 +0200 ++ ++openmpi1.6 (1.6-1) unstable; urgency=low ++ ++ * Sync from Ubuntu (which has been uploaded with a new name). ++ * Rename openmpi 1.5 => 1.6 ++ * Standards-Version updated to version 3.9.3 ++ ++ -- Sylvestre Ledru Wed, 06 Jun 2012 17:45:07 +0200 ++ ++openmpi1.5 (1.5.4-0ubuntu1) precise; urgency=low ++ ++ [ Robie Basak ] ++ * Fork new openmpi1.5 package for co-existence with openmpi 1.4 ++ (LP: #889644). ++ * Move required plugins from openmpi-checkpoint to libopenmpi1.5-2: ++ - d/control: openmpi-checkpoint now depends on libopenmpi1-5-2 ++ - d/libopenmpi1.5-2.install*: switch to wildcard plugin install, drop ++ specific install files for armel and armhf. ++ - d/openmpi-checkpoint.install: Don't install any plugins. ++ ++ -- Sylvestre Ledru Fri, 18 May 2012 17:06:10 +0200 ++ ++openmpi (1.5.4-2~exp2) experimental; urgency=low ++ ++ [ Manuel Prinz ] ++ * Fixed dangling symlinks. Thanks to Roderich Schupp for the patch! ++ Closes: #658594. ++ ++ [ James Pages ] ++ * The checks for FAKEROOT introduced to fix this bug upstream are ++ preceeded by a new check that calls stat re-producing the original bug. ++ Re-ordering the checks to ensure that FAKEROOT is detected first ++ appears to resolve this issue. ++ Closes: #658600. ++ ++ -- Sylvestre Ledru Sun, 19 Feb 2012 15:42:41 +0100 ++ ++openmpi (1.5.4-2~exp1) experimental; urgency=low ++ ++ [ Manuel Prinz ] ++ * Moved all CR components from libopenmpi2 to openmpi-checkpoint. Fixes the ++ build issue on ia64. ++ ++ [ Jani Monoses ] ++ * Build for armhf as well. ++ * Add armel/armhf specific libopenmpi2.install files. ++ * debian/patches/configure_arm_fix.patch: Fix arm FTBFS. ++ ++ -- Sylvestre Ledru Tue, 24 Jan 2012 16:34:52 +0100 ++ ++openmpi (1.5.4-1) experimental; urgency=low ++ ++ * New upstream release. Closes: #619998. ++ - ABI changes, bumped SONAME. ++ * Changes in packaging: ++ - Using "3.0 (quilt)" source format. ++ - Deleted README.source (obsolete). ++ - Updated watch file. ++ - Bumped Standards-Version to 3.9.2. No changes needed. ++ - Changed hard-coded list of non-Linux architectures in Build-Depends to ++ "linux-any". Closes: #634628. ++ - openmpi-bin now "Suggests" openmpi-checkpoint instead of recommending it. ++ - Deleted shlibs.local (obsolete). ++ - Updated debian/copyright. ++ - Updated patches. ++ - Substituted "OpenMPI" with "Open MPI" (official writing). ++ - Fixed a small bug when calling dh_installdocs. Thanks to Jean-Louis Dupond ++ for the patch! Closes: #634899. ++ - Dropped .la files (no rdepends with .la files). Closes: #628070. ++ - Build against libltdl and libhwloc provided by Debian. ++ * Acknowledge NMU. Thanks to Riku Voipio! ++ * Builds support for GridEngine. Closes: #626164. ++ * Enabled support for MPI threads. Closes: #602132. ++ ++ -- Manuel Prinz Wed, 21 Dec 2011 00:38:25 +0100 ++ ++openmpi (1.4.3-2.1) unstable; urgency=low ++ ++ * Non-maintainer upload ++ * Add openmpi link fix, closes: #621978 ++ - Thanks to Daniel Schepler ++ * Add arm support from ubuntu, closes: #617779 ++ - Thanks to Jani Monoses ++ ++ -- Riku Voipio Wed, 20 Apr 2011 19:53:03 +0300 ++ ++openmpi (1.4.3-2) unstable; urgency=low ++ ++ * Fixed symlinks for shared libraries. Thanks to Matthias Klose ++ for the patch! Closes: #608717, #609830. ++ * Fixed symlink loop in openmpi-checkpoint. Closes: #611454. ++ ++ -- Manuel Prinz Fri, 11 Mar 2011 14:45:20 +0100 ++ ++openmpi (1.4.3-1) unstable; urgency=low ++ ++ * New upstream release. ++ * Removed the following patches, all applied upstream: ++ - build_kfreebsd ++ - manpage-errors-checkpoint ++ - manpage-errors-macro ++ - manpage-errors-whatis ++ - manpage-spelling-errors ++ - var-copy ++ * Added a patch that fixes man page issues. ++ * Added sparc64 to Architecture list. Thanks to Aurelien Jarno for ++ the patch! Closes: #596134. ++ ++ -- Manuel Prinz Wed, 15 Dec 2010 18:50:16 +0100 ++ ++openmpi (1.4.2-4) unstable; urgency=low ++ ++ * Added patch to remove use of AS_VAR_GET. Closes: #592892. ++ * debian/control: Added powerpcspe to architecture list. Thanks to ++ Sebastian Andrzej Siewior for the patch! Closes: #593481. ++ * Build with support for Torque (except on HURD). Closes: #592887. ++ * Updated Standards-Version to 3.9.1. No changes needed. ++ ++ -- Manuel Prinz Wed, 01 Sep 2010 17:53:44 +0200 ++ ++openmpi (1.4.2-3) unstable; urgency=low ++ ++ * Fixed build issue on kFreeBSD. Closes: #589467. ++ * Added and updated patch meta-information. ++ ++ -- Manuel Prinz Tue, 20 Jul 2010 17:31:52 +0200 ++ ++openmpi (1.4.2-2) unstable; urgency=low ++ ++ * Fixed broken broken library symlinks. Closes: #589319. ++ ++ -- Manuel Prinz Fri, 16 Jul 2010 20:49:24 +0200 ++ ++openmpi (1.4.2-1) unstable; urgency=low ++ ++ * New upstream release. Closes: #585800. ++ * Updated patches. ++ * Updated Standards-Version. No changes needed. ++ * Install previously uninstalled files. Closes: #589043. ++ * Fixed several errors in man pages. ++ ++ -- Manuel Prinz Thu, 15 Jul 2010 17:19:23 +0200 ++ ++openmpi (1.4.1-3) unstable; urgency=low ++ ++ * Added slave alternatives symlinks for MPI FORTRAN libraries. ++ Thanks to Adam C. Powell, IV for the patch! Closes: #563705. ++ * Recommend openmpi-checkpoint only on available architectures. ++ * Increased update-alternatives priority of libopenmpi-dev. ++ ++ -- Manuel Prinz Thu, 25 Mar 2010 16:32:21 +0100 ++ ++openmpi (1.4.1-2) unstable; urgency=low ++ ++ * Fixed build issues on HURD. Thanks to Pino Toscano for the patch! ++ Closes: #552397. ++ * Recreate autotools stuff during build. Added autoconf, automake, ++ libtool and libltdl-dev to Build-Depends. ++ * openmpi-checkpoint now depends on blcr-util. Closes: #572229. ++ * Fixed symlink issues with ompi-{checkpoint,restart}. Closes: #572021. ++ * Retroactively adding LP entries to close bugs in Ubuntu's Launchpad. ++ ++ -- Manuel Prinz Thu, 18 Mar 2010 17:57:30 +0100 ++ ++openmpi (1.4.1-1) unstable; urgency=low ++ ++ [ Sylvestre Ledru ] ++ * New upstream release. Libtool patch removed, included upstream. ++ * Watch file updated. ++ ++ [ Manuel Prinz ] ++ * Bumped Standards-Version to 3.8.4. No changes needed. ++ * Updated section on alternatives in README.Debian. ++ * Removed conflict with libopal-dev in libopenmpi-dev. Closes: #559161. ++ * Removed conflict with ancient pgapack in libopenmpi-dev. ++ * Fixed several spelling-error-in-manpage lintian warnings. ++ * Deleted man pages provided by Debian, all included upstream. ++ * Changed .install files to match soname bumps. The soname bumps were ++ introduced by upstream to follow the libtool versioning guidelines. ++ The ABI did not change and recompilations of rdepends are not needed. ++ * Compile with support for heterogeneous environments and memory affinity. ++ LP: #419074. ++ * Provide symlinks for orte-{checkpoint,restart} for smoother transition. ++ The tools were merged with ompi-{checkpoint,restart}. ++ * Added ${misc:Depends} everywhere so lintian is happy. ++ ++ -- Manuel Prinz Tue, 16 Feb 2010 17:59:12 +0100 ++ ++openmpi (1.3.3-4) unstable; urgency=medium ++ ++ * Fixed security issue in copy of libtool, see CVE-2009-3736. ++ Closes: #559836. ++ ++ -- Manuel Prinz Tue, 08 Dec 2009 00:58:02 +0100 ++ ++openmpi (1.3.3-3.1) unstable; urgency=low ++ ++ * Non-maintainer upload with the maintainer's permission. ++ * Improve alternatives upgrade. ++ ++ -- Lucas Nussbaum Thu, 19 Nov 2009 16:44:20 -0600 ++ ++openmpi (1.3.3-3) unstable; urgency=low ++ ++ * Removed mpiexec alternative, as discussed in #552429. It is now a slave ++ of the mpirun master alternative. Also raised the priority to 40, along ++ with MPICH2. Closes: #493876. ++ ++ -- Manuel Prinz Wed, 11 Nov 2009 21:16:59 +0100 ++ ++openmpi (1.3.3-2) unstable; urgency=low ++ ++ * Removing ancient mpirun alternatives in preinst. Closes: #534740, #544372. ++ * Build with BLCR support on supported architectures. The openmpi-checkpoint ++ package includes the binaries for checkpointing and documentation. Many ++ thanks to Alan Woodland for the implementation! Closes: #545919. ++ * Added a README.source file. ++ * Empty dependency_libs in .la files. ++ ++ -- Manuel Prinz Tue, 13 Oct 2009 20:50:51 +0200 ++ ++openmpi (1.3.3-1) unstable; urgency=low ++ ++ * New upstream version ++ * Change of my email address since I am now DD ++ * Standards-Version updated to 3.8.3 ++ * XS-Dm-Upload-Allowed tag removed ++ * Patch disable-memory-allocator (see bug #531522) removed. Applied upstream ++ ++ -- Sylvestre Ledru Sat, 29 Aug 2009 18:39:48 +0200 ++ ++openmpi (1.3.2-4) unstable; urgency=low ++ ++ [ Cyril Brulebois ] ++ * Fix installability of libopenmpi-dev on non-Linux architectures, where ++ libibverbs-dev isn't built (due to its being Linux-specific) by removing ++ the latter from the dependencies of the former for kfreebsd-* and ++ hurd-i386 (for reference, that was already done for Build-Depends). ++ (Closes: #535225) ++ ++ -- Sylvestre Ledru Tue, 30 Jun 2009 23:52:42 +0200 ++ ++openmpi (1.3.2-3) unstable; urgency=low ++ ++ * Re-uploading, as last upload was not successful. ++ * Acknowledgement of NMU. Thanks to Steve M. Robbins for the patches and ++ NMUs! Closes: #531522. ++ * Removing ancient mpicc, mpiCC and mpiexec master alternatives in preinst. ++ Closes: #531184, #532008, #532910. ++ * debian/control: Bumped Standards-Version. No changes needed. ++ * Fixed typo in README.Debian of openmpi-bin. ++ ++ -- Manuel Prinz Wed, 24 Jun 2009 00:33:23 +0200 ++ ++openmpi (1.3.2-2.2) unstable; urgency=low ++ ++ * Non-Maintainer Upload (NMU) ++ * debian/patches/disable-memory-allocator: Replace with improved patch ++ from upstream. ++ ++ -- Steve M. Robbins Sun, 21 Jun 2009 13:08:05 -0500 ++ ++openmpi (1.3.2-2.1) unstable; urgency=low ++ ++ * Non-Maintainer Upload (NMU) ++ * debian/patches/disable-memory-allocator: New. Patch ++ opal/mca/memory/ptmalloc2/hooks.c to add check for environment ++ variable OMPI_MCA_disable_memory_allocator. If set, avoid setting up ++ malloc hooks and avoid stat() calls from the malloc init hook. ++ Closes: #531522. ++ ++ -- Steve M. Robbins Wed, 17 Jun 2009 22:03:31 -0500 ++ ++openmpi (1.3.2-2) unstable; urgency=low ++ ++ * Upload to unstable. No changes compared to 1.3.2-1. ++ ++ -- Manuel Prinz Thu, 28 May 2009 12:28:37 +0200 ++ ++openmpi (1.3.2-1) experimental; urgency=low ++ ++ * New upstream release. (Closes: #520597, #515116) ++ - Manpage and VampirTrace patches removed, included upstream. ++ * Fixed build issues on Alpha. Huge thanks to Arthur Loiret for providing ++ access to his machines for testing! (Closes: #510845, #517543) ++ * Fixed build issues on Sparc. (Closes: #519725) ++ * Fixed manpage-has-errors-from-man lintian warnings. ++ * Faked SONAME change by renaming library package. (Closes: #512616) ++ * Made libopenmpi-dev depend on libibverbs-dev. (Closes: #522153, LP: #342344) ++ * Support for "nocheck" build option in debian/rules. ++ * Updated Standards-Version in debian/control. ++ * Changed section of libopenmpi-dbg to "debug". ++ * Updated debian/copyright. ++ ++ * Dirk Eddelbuettel removed himself from Uploaders. The team thanks Dirk ++ for his long-term contribution and effort to get Open MPI back to life. ++ I personally thank Dirk for encouraging me to become a Debian Developer ++ and his support and mentoring on that way and beyond. ++ ++ -- Manuel Prinz Thu, 23 Apr 2009 14:01:21 +0200 ++ ++openmpi (1.3-2) unstable; urgency=low ++ ++ * Updated debian/watch to point to 1.3 series download location ++ * Added a patch to fix build issues with VampirTrace ++ * Added a patch to fix lintian warnings: manpage-has-errors-from-man ++ * Added a patch to enable Open MPI to build on MIPS. Many thanks to ++ Thiemo Seufer, he will be missed! ++ ++ -- Manuel Prinz Wed, 28 Jan 2009 23:38:02 +0100 ++ ++openmpi (1.3-1) unstable; urgency=low ++ ++ [ Dirk Eddelbuettel ] ++ * New upstream version. ++ * debian/rules: Pass empty LDFLAGS to configure call to prevent seg.fault. ++ on load due to overly hungry link command on Ubuntu ++ ++ [ Manuel Prinz ] ++ * Header files are now available under /usr/include/openmpi via symlink ++ (Closes: #493875) ++ ++ -- Dirk Eddelbuettel Tue, 20 Jan 2009 20:10:20 -0600 ++ ++openmpi (1.2.8-3) unstable; urgency=low ++ ++ * Building static libraries (again) (Closes: #502232) ++ * Removed *.so files from libopenmpi-dev package (Closes: #504161) ++ ++ -- Manuel Prinz Sun, 02 Nov 2008 15:53:19 +0100 ++ ++openmpi (1.2.8-2) unstable; urgency=low ++ ++ * Reverted back to revision r137 corresponding to Debian release 1.2.7-1 ++ (Closes: #504161) ++ ++ -- Dirk Eddelbuettel Sat, 01 Nov 2008 17:37:07 -0500 ++ ++openmpi (1.2.8-1) unstable; urgency=low ++ ++ * New upstream version. ++ * libopenmpi-dev ships static libraries (Closes: #502232) ++ * Remaining lintian warnings removed ++ ++ -- Sylvestre Ledru Tue, 28 Oct 2008 23:49:37 +0200 ++ ++openmpi (1.2.7-1) unstable; urgency=low ++ ++ * New upstream version. ++ ++ [ Sylvestre Ledru ] ++ * debian/control: Added myself to Uploaders field ++ ++ [ Manuel Prinz ] ++ * debian/control: Changed my email address in Uploaders field ++ ++ -- Manuel Prinz Wed, 24 Sep 2008 21:22:35 +0200 ++ ++openmpi (1.2.7~rc2-2) unstable; urgency=low ++ ++ * Updated README.Debian of libopenmpi-dev. It contained references to closed ++ bugs. Also added a recommendation on correct linking. ++ * debian/control: Removed XS-Autobuild field ++ * debian/copyright: Added missing copyrights and licenses for ROMIO and ++ GNU libltdl ++ ++ -- Manuel Prinz Mon, 25 Aug 2008 22:41:16 +0200 ++ ++openmpi (1.2.7~rc2-1) unstable; urgency=low ++ ++ [ Dirk Eddelbuettel ] ++ * New upstream pre-release version ++ * Thanks to Manuel for the work on this release, and on 1.2.6-3 which ++ we never uploaded, and to the Open MPI team for the integrating the patch ++ from 1.2.6-3 into what will be 1.2.7 ++ ++ [ Manuel Prinz ] ++ * debian/control: Changed Standards-Version to 3.8.0 ++ * Deleted all patches, removed Build-Depends of dpatch ++ ++ -- Dirk Eddelbuettel Wed, 02 Jul 2008 19:08:07 -0500 ++ ++openmpi (1.2.6-3) unstable; urgency=low ++ ++ [ Manuel Prinz ] ++ * debian/patches/01openfabrics.dpatch: Applied patch by Jeff Squyres that ++ deals with the warnings printed when OpenFabrics hardware is not present. ++ Thanks to Jeff for the patch! ++ * debian/patches/10fix_config_infiniband.dpatch: Removed, it's obsoleted ++ by the above mentioned OpenFabrics patch. ++ * Updated README.Debian with information about the OpenFabrics patch. ++ * debian/patches/02manpages-lintian-fix.dpatch: Applied patch another patch ++ by Jeff Squyres that fixes Lintian manpage-has-errors-from-man issues. ++ Thanks again to Jeff for the patch! ++ ++ -- Manuel Prinz Sat, 31 May 2008 23:49:13 +0200 ++ ++openmpi (1.2.6-2) unstable; urgency=low ++ ++ [ Sylvestre Ledru ] ++ * Can be built under ppc64. Thanks to Andreas Jochens (Closes: #478427) ++ ++ [ Dirk Eddelbuettel ] ++ * Built and uploaded. Thanks to Sylvestre for applying the patch. ++ ++ -- Dirk Eddelbuettel Mon, 05 May 2008 07:16:49 -0500 ++ ++openmpi (1.2.6-1) unstable; urgency=low ++ ++ [ Dirk Eddelbuettel ] ++ * New upstream version ++ * debian/patches/00list: Disabled man page patches 60* which ++ has been included upstream in version 1.2.6 ++ ++ -- Dirk Eddelbuettel Tue, 08 Apr 2008 20:19:24 -0500 ++ ++openmpi (1.2.5-3) unstable; urgency=low ++ ++ [ Dirk Eddelbuettel ] ++ * debian/control: Version the Conflicts: of libopenmpi-dev with pgapack to ++ 'pgapack (<= 1.0.0.1-4.2)' as newer pgapack do not exhibit a conflict. ++ ++ -- Dirk Eddelbuettel Mon, 10 Mar 2008 16:55:37 -0500 ++ ++openmpi (1.2.5-2) unstable; urgency=low ++ ++ [ Dirk Eddelbuettel ] ++ * Debian build and upload ++ * Thanks to Manuel for all the work, and to Ondrej for persistent debugging. ++ ++ [ Manuel Prinz ] ++ * Added missing ${shlibs:Depends} to Depends: line of libopenmpi-dev ++ * debian/shlibs.local: Added entry for libibverbs until the package provides ++ the necessary information. (Closes: #464705) ++ * debian/control: Added versioned dependency to libibverbs in Build-Depends ++ * debian/libopenmpi-dev.postinst: Corrected dead symlinks. Thanks to Ondrej ++ Certik for reporting the issue! (Closes: #464795) ++ * debian/patches/60_fix_manpage_name_section.dpatch: Fixing name line in the ++ MPI_Comm_f2c.3 manpage. Thanks to Jeff Squyres! ++ ++ -- Dirk Eddelbuettel Thu, 14 Feb 2008 20:54:06 -0600 ++ ++openmpi (1.2.5-1) unstable; urgency=low ++ ++ [ Dirk Eddelbuettel ] ++ * New upstream version ++ * debian/patches/00list: Disabled man page patches 20*, 30* and 31* which ++ have been included upstream ++ * debian/patches/60_fix_manpage_name_section.dpatch: Applied small correction ++ * Debian build and upload ++ ++ [ Manuel Prinz ] ++ * debian/*.lintian-override: Deleted, all issues are fixed ++ - debian/libopenmpi{1,-dev}.links, debian/libopenmpi1.install: ++ Moved *.so.0 links from /usr/lib/openmpi/lib to /usr/lib. Created ++ *.so.0.0.0 symlinks in /usr/lib, pointing to /usr/lib/openmpi/lib. ++ This fixes postinst-has-useless-call-to-ldconfig, postrm-has-useless- ++ call-to-ldconfig and package-name-doesnt-match-sonames warnings. ++ - debian/rules, debian/control: Added chrpath to Build-Depends and ++ deleting all rpath info with chrpath in install-arch target. This ++ fixes all binary-or-shlib-defines-rpath warnings. ++ * debian/rules: Adjusted target dependencies to be more sane. Renamed ++ "test" target to "check". ++ * Applied a patch by Adam Powell IV that adds /usr/lib/libmpi++.so via ++ update-alternatives for compatibility with LAM/MPI and MPICH. Thanks to ++ Adam for the patch! (Closes: #459642) ++ ++ -- Dirk Eddelbuettel Wed, 09 Jan 2008 16:30:33 -0600 ++ ++openmpi (1.2.4-5) unstable; urgency=low ++ ++ [ Manuel Prinz ] ++ * Several changes in the libopenmpi-dev package to correct the library ++ soname links (Closes: #456721) ++ ++ [ Dirk Eddelbuettel ] ++ * Debian build and upload ++ ++ -- Dirk Eddelbuettel Tue, 18 Dec 2007 20:00:53 -0600 ++ ++openmpi (1.2.4-4) unstable; urgency=low ++ ++ [ Manuel Prinz ] ++ * debian/rules: Several minor changes ++ - Added cross-compilation support ++ - Replaced (un)patch targets with dpatch's makefile snippet ++ * debian/control: Changed Standards-Version to match latest policy ++ * debian/control: Several cosmetic changes to control fields ++ - XS-Vcs-*: Renamed fields to Vcs-* ++ - XS-DM-Upload-Allowed: Added, allowing uploads for Debian Maintainers ++ - Homepage: Newly added ++ - Build-Depends: Removed libsysfs-dev (Closes: #449084) ++ - Build-Depends: Removed automake ++ - Uploaders: Added myself ++ * Moved include files and libraries to /usr/lib/openmpi and use the "mpi" ++ alternative. Thanks to Nicholas Breen for assistance! (Closes: #452047) ++ ++ [ Dirk Eddelbuettel ] ++ * Debian build and upload ++ ++ -- Dirk Eddelbuettel Wed, 12 Dec 2007 09:40:29 -0600 ++ ++openmpi (1.2.4-3) unstable; urgency=low ++ ++ [ Manuel Prinz ] ++ * debian/control: Added openmpi-common to libopenmpi-dev's Depends ++ (Closes: #445230) ++ ++ [ Dirk Eddelbuettel ] ++ * Debian build and upload ++ ++ -- Dirk Eddelbuettel Sat, 06 Oct 2007 07:54:47 -0500 ++ ++openmpi (1.2.4-2) unstable; urgency=low ++ ++ [ Manuel Prinz ] ++ * debian/control: Added sparc to list of supported architectures ++ ++ [ Dirk Eddelbuettel ] ++ * Debian build and upload ++ ++ -- Dirk Eddelbuettel Tue, 02 Oct 2007 22:04:04 -0500 ++ ++openmpi (1.2.4-1) unstable; urgency=low ++ ++ [ Manuel Prinz ] ++ * debian/control: Modified package relationships to prevent problems when ++ upgrading from 1.2.3-4 (Closes: #444432) ++ ++ [ Dirk Eddelbuettel ] ++ * Debian build and upload ++ ++ -- Dirk Eddelbuettel Fri, 28 Sep 2007 16:25:13 -0500 ++ ++openmpi (1.2.4-0) unstable; urgency=low ++ ++ * New upstream release ++ ++ [ Sylvestre Ledru ] ++ * debian/patches: Removed 50fix_kfreebsd_build patch (Fixed upstream) ++ ++ [ Manuel Prinz ] ++ * Patch added: Please shut up libibverbs (Closes: #439730) ++ * Moved compiler wrappers from package openmpi-bin to libopenmpi-dev. ++ ++ [ Dirk Eddelbuettel ] ++ * Debian build and upload ++ ++ -- Dirk Eddelbuettel Wed, 26 Sep 2007 22:07:15 -0500 ++ ++openmpi (1.2.3-4) unstable; urgency=low ++ ++ [ Manuel Prinz ] ++ * Fixed: openmpi-bin: FTBFS on kFreeBSD and maybe Hurd. Thanks to ++ Uwe Hermann for providing the patches! (Closes: #437839) ++ * debian/rules: Disabled threading support (Closes: #435581) ++ * debian/openmpi-bin.README.Debian: Documented disabling of threading ++ * debian/patches: Removed 10opal_noexecstack and 99autoconf patches ++ because they are no longer needed. Thanks to Brian Barrett for ++ clarification. ++ ++ [ Dirk Eddelbuettel ] ++ * debian/control: Add 'kfreebsd-i386 kfreebsd-amd64 hurd-i386' to list ++ of build architecture (via Uwe's patch referenced above) ++ ++ -- Dirk Eddelbuettel Mon, 20 Aug 2007 20:10:46 -0500 ++ ++openmpi (1.2.3-3) unstable; urgency=low ++ ++ [ Manuel Prinz ] ++ * Fixed: openmpi-bin: libibverbs only available for Linux. Thanks to ++ Uwe Hermann for providing the patch! (Closes: #435573) ++ * Changed section of openmpi-doc to doc to satisfy overrides ++ ++ [ Dirk Eddelbuettel ] ++ * debian/control: Trying something moderately radical here -- we are ++ switching the binary packages from 'Architecture: any' to the set ++ of five architectures that can actually build the package, given the ++ lack of upstream support for atomistic operations on the other ++ architectures (c.f. Debian BTS for openmpi) ++ ++ -- Dirk Eddelbuettel Sun, 12 Aug 2007 19:43:29 -0500 ++ ++openmpi (1.2.3-2) unstable; urgency=low ++ ++ [ Dirk Eddelbuettel ] ++ * debian/control: Added some per-package text to the common titles ++ of the Descriptions ++ ++ [ Manuel Prinz ] ++ * Fixed: FTBFS on GNU/kFreeBSD, Thanks to Petr Salinger for providing ++ the patch! (Closes: #433142). ++ * debian/control: Changed priority to "extra" to comply with the Debian ++ Policy, section 2.5. ++ ++ -- Dirk Eddelbuettel Mon, 30 Jul 2007 21:12:11 -0500 ++ ++openmpi (1.2.3-1) unstable; urgency=low ++ ++ [ Dirk Eddelbuettel ] ++ * debian/rules: Ensure AUTHORS NEWS README are installed everywhere ++ * debian/rules: Add examples/ directory to openmpi-doc ++ * debian/control: More Conflicts/Replaces/Provides for renamed packages ++ ++ -- Dirk Eddelbuettel Sun, 24 Jun 2007 21:18:31 -0500 ++ ++openmpi (1.2.3-0) unstable; urgency=low ++ ++ * First release by the new maintainer group 'pkg-openmpi' ++ ++ * Takeover of the package is coordinated with the previous maintainer. ++ Our thanks to Florian for his initial packaging. ++ * We also would like to thank everybody who has prepared a previous NMU, ++ ++ [ Dirk Eddelbuettel ] ++ * debian/control: Add myself as Uploaders ++ * debian/patches/31_fix_manpages_lintian.dpatch: Another small man page fix ++ * debian/{ompi_info.1,opal_wrapper.1,orted.1}: Contributed three man pages ++ * Renaming some sub-package: ++ - openmpi-libs0 package renamed to libopenmpi1 ++ - openmpi-dev package renamed to libopenmpi-dev ++ - openmpi-dbg package rename to libopenmpi-dbg ++ - new openmpi-mpidoc package renamed to openmpi-doc ++ * debian/control: Add Build-Depends: on 'gcc (>= 4.1.2)' to build for the ++ 'long double' transition -- and as we happen to have renamed the library ++ package name, is requivalent to the 'ldbl' suffix (Closes: #430321) ++ ++ [ Upstream ] ++ * Fixed: mpif77 and mpif90 incorrect default include file search path ++ (Closes: #405472) ++ ++ [ Sylvestre Ledru ] ++ * New upstream release 1.2.3 ++ * New upstream release 1.2.2 (Closes: #427356) ++ * Patch removed: 20implicit_pointer_conversion.dpatch ++ * Apply all of Tilman's patches below (Closes: #415338) ++ * Add the correct XS-Autobuild, XS-Vcs-Svn and XS-Vcs-Browser fields in ++ debian/control. ++ * Fix errors in manpages (Lintian complaining) ++ ++ [ Manuel Prinz ] ++ * Patch removed: 30_alpha_inline_assembly.dpatch (Fixed upstream) ++ * Updated patch of autogenerated autoconf files by Steve Langasek. ++ * Fixed: Please make openmpi thread-compartible by adding ++ --enable-mpi-threads and --enable-progress-threads (Closes: #419867) ++ * Fixed: Use Debian alternatives (Closes: #396761) ++ * Added watch file. ++ ++ [ Tilman Koschnick ] ++ * New upstream release 1.2.0 ++ * Acknowledge previous NMUs (Closes: #386491, #392633, #404003, #404026). ++ * Fix: mpicc.openmpi fails to run when named mpicc.openmpi (Closes: #388216). ++ * Include manual pages (Closes: #413607). ++ * Add openmpi-mpidoc package for man pages describing the MPI standard. ++ * Update copyrights. ++ ++ [ Andreas Barth ] ++ * Spelling mistake in the description of the package (Closes: #390238) ++ ++ -- Dirk Eddelbuettel Sat, 23 Jun 2007 18:55:31 -0500 ++ ++openmpi (1.1-2.5) unstable; urgency=high ++ ++ * Non-maintainer upload. ++ * High urgency upload for RC bugfix. ++ * Add missing build-dependency on libsysfs-dev, which is used in the build ++ but was previously pulled in via libibverbs-dev. ++ ++ -- Steve Langasek Sun, 29 Apr 2007 22:03:58 -0700 ++ ++openmpi (1.1-2.4) unstable; urgency=low ++ ++ * Non-maintainer upload. ++ * 0-day alpha porter upload. ++ * Fix wrong inline assembler check on alpha: 'zero' is not recognized ++ as a mnemonic for $31 with binutils. This broken check resulted ++ in various atomic operations remaining undefined, leading to a build ++ failure on alpha. Likewise, fix the inline assembly provided in ++ opal/include/opal/sys/alpha/atomic.h so that it's valid under GNU ++ binutils. Closes: #384792. ++ ++ -- Steve Langasek Sun, 29 Apr 2007 02:27:51 -0700 ++ ++openmpi (1.1-2.3) unstable; urgency=high ++ ++ * Non-maintainer upload. ++ * Add conflicts between openmpi-dev and libopal-dev, pgapack. ++ Closes: #404003, #404026 ++ ++ -- Andreas Barth Fri, 22 Dec 2006 13:57:13 +0000 ++ ++openmpi (1.1-2.2) unstable; urgency=low ++ ++ * Non-maintainer upload. ++ * Remove --host=* from debian/rules to make autoconf not enable ++ cross-building mode. Thanks to Steve Langasek for pointing this out. ++ Closes: #392633. ++ ++ -- Mark Hymers Sun, 15 Oct 2006 00:46:11 +0100 ++ ++openmpi (1.1-2.1) unstable; urgency=high ++ ++ * NMU ++ * Make sparc build UltraSPARC-only, since upstream seems to have ++ dropped support for 32-bit machines. closes: #386491. ++ ++ -- Clint Adams Tue, 26 Sep 2006 00:31:36 -0400 ++ ++openmpi (1.1-2) unstable; urgency=low ++ ++ * Apply patch by Tilman Koschnick to add a new package ++ with debugging symbols (Closes: #383997). ++ ++ -- Florian Ragwitz Wed, 23 Aug 2006 12:43:16 +0200 ++ ++openmpi (1.1-1) unstable; urgency=low ++ ++ * New upstream release. ++ * Applied patch by dann frazier to fix an implicit ++ pointer conversion on 64bit platforms (Closes: #377725). ++ * Fixed mix-up in package descriptions (Closes: #379594). ++ * Use the alternatives system for the mpi* executables in openmpi-bin ++ (Closes: #377297). ++ ++ -- Florian Ragwitz Mon, 7 Aug 2006 16:57:42 +0200 ++ ++openmpi (1.0.2-1) unstable; urgency=low ++ ++ * Initial release (Closes: #340426). ++ ++ -- Florian Ragwitz Fri, 6 Jan 2006 15:13:31 +0100 ++ diff --cc debian/compat index 00000000,00000000..45a4fb75 new file mode 100644 --- /dev/null +++ b/debian/compat @@@ -1,0 -1,0 +1,1 @@@ ++8 diff --cc debian/control index 00000000,00000000..33ea6c5e new file mode 100644 --- /dev/null +++ b/debian/control @@@ -1,0 -1,0 +1,133 @@@ ++Source: openmpi ++Section: net ++Priority: extra ++Maintainer: Debian Open MPI Maintainers ++Uploaders: Manuel Prinz , Sylvestre Ledru , ++ Alastair McKinstry ++Build-Depends: dpkg-dev (>= 1.16.1~), debhelper (>= 8.0.0~), ++ libibverbs-dev (>= 1.1.1) [!kfreebsd-i386 !kfreebsd-amd64 !hurd-i386], ++ gfortran, gcc (>= 4:4.1.2), chrpath, libhwloc-dev, ++ libcr-dev [amd64 armel armhf i386 powerpc], libtool, libltdl-dev, ++ libnuma-dev [amd64 i386 ia64 mips mipsel mipsn32 mipsn32el mips64 mips64el powerpc ppc64el], autoconf (>= 2.59), ++ automake ++Build-Conflicts: libopenmpi1.3 ++Standards-Version: 3.9.6 ++Homepage: http://www.open-mpi.org/ ++Vcs-Svn: svn://svn.debian.org/svn/pkg-openmpi/openmpi/trunk/ ++Vcs-Browser: http://svn.debian.org/wsvn/pkg-openmpi/openmpi/trunk/ ++ ++Package: openmpi-bin ++Architecture: alpha amd64 armel armhf arm64 i386 ia64 powerpc powerpcspe ppc64 ppc64el sparc sparc64 kfreebsd-i386 kfreebsd-amd64 hurd-i386 mips64 mips64el mips mipsel ++Depends: ${shlibs:Depends}, ${misc:Depends}, openmpi-common (= ${source:Version}) ++Conflicts: openmpi-bin ++Suggests: gfortran, openmpi-checkpoint [amd64 armel armhf i386 powerpc] ++Description: high performance message passing library -- binaries ++ Open MPI is a project combining technologies and resources from several other ++ projects (FT-MPI, LA-MPI, LAM/MPI, and PACX-MPI) in order to build the best ++ MPI library available. A completely new MPI-2 compliant implementation, Open ++ MPI offers advantages for system and software vendors, application developers ++ and computer science researchers. ++ . ++ Features: ++ * Full MPI-2 standards conformance ++ * Thread safety and concurrency ++ * Dynamic process spawning ++ * High performance on all platforms ++ * Reliable and fast job management ++ * Network and process fault tolerance ++ * Support network heterogeneity ++ * Single library supports all networks ++ * Run-time instrumentation ++ * Many job schedulers supported ++ * Internationalized error messages ++ * Component-based design, documented APIs ++ . ++ This package contains the Open MPI utility programs. ++ ++Package: libopenmpi-dev ++Section: libdevel ++Architecture: alpha amd64 armel armhf arm64 i386 ia64 powerpc powerpcspe ppc64 ppc64el sparc sparc64 kfreebsd-i386 kfreebsd-amd64 hurd-i386 mips64 mips64el mips mipsel ++Depends: ${shlibs:Depends}, ${misc:Depends}, libopenmpi1.6 (= ${binary:Version}), openmpi-common (= ${source:Version}), libibverbs-dev [!kfreebsd-i386 !kfreebsd-amd64 !hurd-i386], libhwloc-dev ++Conflicts: openmpi-dev, libopenmpi-dev, openmpi-bin (<= 1.2.4-0) ++Description: high performance message passing library -- header files ++ Open MPI is a project combining technologies and resources from several other ++ projects (FT-MPI, LA-MPI, LAM/MPI, and PACX-MPI) in order to build the best ++ MPI library available. A completely new MPI-2 compliant implementation, Open ++ MPI offers advantages for system and software vendors, application developers ++ and computer science researchers. ++ . ++ This package contains the header files and compiler wrappers which are needed ++ to compile and link programs against libopenmpi. ++ ++Package: libopenmpi1.6 ++Section: libs ++Architecture: alpha amd64 armel armhf arm64 i386 ia64 powerpc powerpcspe ppc64 ppc64el sparc sparc64 kfreebsd-i386 kfreebsd-amd64 hurd-i386 mips64 mips64el mips mipsel ++Depends: ${shlibs:Depends}, ${misc:Depends} ++Conflicts: openmpi-libs0, libopenmpi1, libopenmpi1.3, libopenmpi2 ++Replaces: openmpi-checkpoint (<< 1.6.5-1) ++Breaks: openmpi-checkpoint (<< 1.6.5-1) ++Description: high performance message passing library -- shared library ++ Open MPI is a project combining technologies and resources from several other ++ projects (FT-MPI, LA-MPI, LAM/MPI, and PACX-MPI) in order to build the best ++ MPI library available. A completely new MPI-2 compliant implementation, Open ++ MPI offers advantages for system and software vendors, application developers ++ and computer science researchers. ++ . ++ This package contains the Open MPI shared libraries. ++ ++Package: openmpi-common ++Architecture: all ++Depends: ${misc:Depends} ++Conflicts: openmpi-common ++Description: high performance message passing library -- common files ++ Open MPI is a project combining technologies and resources from several other ++ projects (FT-MPI, LA-MPI, LAM/MPI, and PACX-MPI) in order to build the best ++ MPI library available. A completely new MPI-2 compliant implementation, Open ++ MPI offers advantages for system and software vendors, application developers ++ and computer science researchers. ++ . ++ This package contains platform independent files for Open MPI. ++ ++Package: openmpi-doc ++Section: doc ++Architecture: all ++Depends: ${misc:Depends} ++Conflicts: mpi-doc, lam-mpidoc, lam4-dev, openmpi-mpidoc, openmpi-doc ++Replaces: openmpi-checkpoint (<< 1.6.5-1) ++Breaks: openmpi-checkpoint (<< 1.6.5-1) ++Description: high performance message passing library -- man pages ++ Open MPI is a project combining technologies and resources from several other ++ projects (FT-MPI, LA-MPI, LAM/MPI, and PACX-MPI) in order to build the best ++ MPI library available. A completely new MPI-2 compliant implementation, Open ++ MPI offers advantages for system and software vendors, application developers ++ and computer science researchers. ++ . ++ This package contains man pages describing the Message Passing Interface ++ standard. ++ ++Package: libopenmpi1.6-dbg ++Section: debug ++Architecture: alpha amd64 armel armhf arm64 i386 ia64 powerpc powerpcspe ppc64 ppc64el sparc sparc64 kfreebsd-i386 kfreebsd-amd64 hurd-i386 mips64 mips64el mips mipsel ++Depends: ${misc:Depends}, openmpi-bin (= ${binary:Version}), libopenmpi1.6 (= ${binary:Version}) ++Conflicts: openmpi-dbg, libopenmpi-dbg ++Description: high performance message passing library -- debug library ++ Open MPI is a project combining technologies and resources from several other ++ projects (FT-MPI, LA-MPI, LAM/MPI, and PACX-MPI) in order to build the best ++ MPI library available. A completely new MPI-2 compliant implementation, Open ++ MPI offers advantages for system and software vendors, application developers ++ and computer science researchers. ++ . ++ This package contains debugging symbols for Open MPI. ++ ++Package: openmpi-checkpoint ++Architecture: amd64 armel armhf i386 powerpc ++Depends: ${shlibs:Depends}, ${misc:Depends}, openmpi-bin (= ${binary:Version}), blcr-util, libopenmpi1.6 (= ${binary:Version}) ++Conflicts: openmpi-checkpoint ++Description: high performance message passing library -- checkpoint support ++ Open MPI is a project combining technologies and resources from several other ++ projects (FT-MPI, LA-MPI, LAM/MPI, and PACX-MPI) in order to build the best ++ MPI library available. A completely new MPI-2 compliant implementation, Open ++ MPI offers advantages for system and software vendors, application developers ++ and computer science researchers. ++ . ++ This package contains binaries needed for checkpointing Open MPI applications. diff --cc debian/copyright index 00000000,00000000..d56fe256 new file mode 100644 --- /dev/null +++ b/debian/copyright @@@ -1,0 -1,0 +1,166 @@@ ++This package was debianized by Florian Ragwitz on ++Fri, 6 Jan 2006 15:13:31 +0100. ++ ++It was downloaded from http://open-mpi.org/ ++ ++Copyright Holder: ++ ++Copyright (c) 2004-2010 The Trustees of Indiana University and Indiana ++ University Research and Technology ++ Corporation. All rights reserved. ++Copyright (c) 2004-2010 The University of Tennessee and The University ++ of Tennessee Research Foundation. All rights ++ reserved. ++Copyright (c) 2004-2010 High Performance Computing Center Stuttgart, ++ University of Stuttgart. All rights reserved. ++Copyright (c) 2004-2008 The Regents of the University of California. ++ All rights reserved. ++Copyright (c) 2006-2010 Los Alamos National Security, LLC. All rights ++ reserved. ++Copyright (c) 2006-2010 Cisco Systems, Inc. All rights reserved. ++Copyright (c) 2006-2010 Voltaire, Inc. All rights reserved. ++Copyright (c) 2006-2010 Sandia National Laboratories. All rights reserved. ++Copyright (c) 2006-2010 Sun Microsystems, Inc. All rights reserved. ++ Use is subject to license terms. ++Copyright (c) 2006-2010 The University of Houston. All rights reserved. ++Copyright (c) 2006-2009 Myricom, Inc. All rights reserved. ++Copyright (c) 2007-2008 UT-Battelle, LLC. All rights reserved. ++Copyright (c) 2007-2008 IBM Corporation. All rights reserved. ++Copyright (c) 1998-2005 Forschungszentrum Juelich, Juelich Supercomputing ++ Centre, Federal Republic of Germany ++Copyright (c) 2005-2008 ZIH, TU Dresden, Federal Republic of Germany ++Copyright (c) 2007 Evergrid, Inc. All rights reserved. ++Copyright (c) 2008 Institut National de Recherche en ++ Informatique. All rights reserved. ++Copyright (c) 2007 Lawrence Livermore National Security, LLC. ++ All rights reserved. ++Copyright (c) 2007-2009 Mellanox Technologies. All rights reserved. ++Copyright (c) 2006-2010 QLogic Corporation. All rights reserved. ++Copyright (c) 2008-2010 Oak Ridge National Labs. All rights reserved. ++Copyright (c) 2006-2010 Oracle and/or its affiliates. All rights reserved. ++Copyright (c) 2009 Bull SAS. All rights reserved. ++Copyright (c) 2010 ARM ltd. All rights reserved. ++ ++License: ++ ++Redistribution and use in source and binary forms, with or without ++modification, are permitted provided that the following conditions are ++met: ++ ++- Redistributions of source code must retain the above copyright ++ notice, this list of conditions and the following disclaimer. ++ ++- Redistributions in binary form must reproduce the above copyright ++ notice, this list of conditions and the following disclaimer listed ++ in this license in the documentation and/or other materials ++ provided with the distribution. ++ ++- Neither the name of the copyright holders nor the names of its ++ contributors may be used to endorse or promote products derived from ++ this software without specific prior written permission. ++ ++The copyright holders provide no reassurances that the source code ++provided does not infringe any patent, copyright, or any other ++intellectual property rights of third parties. The copyright holders ++disclaim any liability to any recipient for claims brought against ++recipient by any third party for infringement of that parties ++intellectual property rights. ++ ++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ++"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ++LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ++A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ++OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ++SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ++LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ++DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ++THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ++(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ++OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ++ ++ ++ROMIO (Files under ./ompi/mca/io/romio/romio/) ++===== ++ ++ COPYRIGHT ++ ++The following is a notice of limited availability of the code and ++disclaimer, which must be included in the prologue of the code and in ++all source listings of the code. ++ ++Copyright (C) 1997 University of Chicago ++ ++Permission is hereby granted to use, reproduce, prepare derivative ++works, and to redistribute to others. ++ ++The University of Chicago makes no representations as to the suitability, ++operability, accuracy, or correctness of this software for any purpose. ++It is provided "as is" without express or implied warranty. ++ ++This software was authored by: ++Rajeev Thakur: (630) 252-1682; thakur@mcs.anl.gov ++Mathematics and Computer Science Division ++Argonne National Laboratory, Argonne IL 60439, USA ++ ++ ++ GOVERNMENT LICENSE ++ ++Portions of this material resulted from work developed under a U.S. ++Government Contract and are subject to the following license: the ++Government is granted for itself and others acting on its behalf a ++paid-up, nonexclusive, irrevocable worldwide license in this computer ++software to reproduce, prepare derivative works, and perform publicly ++and display publicly. ++ ++ ++ptmalloc2 (Files under ./opal/mca/memory/ptmalloc2/) ++========= ++ ++Copyright (C) 2001 Free Software Foundation, Inc. ++This file is part of the GNU C Library. ++Contributed by Wolfram Gloger , 2001. ++ ++The GNU C Library is free software; you can redistribute it and/or ++modify it under the terms of the GNU Lesser General Public ++License as published by the Free Software Foundation; either ++version 2.1 of the License, or (at your option) any later version. ++ ++The GNU C Library 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 ++Lesser General Public License for more details. ++ ++On Debian systems, the complete text of the GNU Library General Public License ++can be found in /usr/share/common-licenses/LGPL-2. ++ ++ ++GNU Libltdl ++=========== ++ ++Copyright Holder: ++ ++Copyright (C) 1998-2007 Free Software Foundation, Inc. ++ ++License: ++ ++GNU Libltdl is free software; you can redistribute it and/or ++modify it under the terms of the GNU Lesser General Public ++License as published by the Free Software Foundation; either ++version 2 of the License, or (at your option) any later version. ++ ++As a special exception to the GNU Lesser General Public License, ++if you distribute this file as part of a program or library that ++is built using GNU Libtool, you may include this file under the ++same distribution terms that you use for the rest of that program. ++ ++GNU Libltdl 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 Lesser General Public License for more details. ++ ++You should have received a copy of the GNU Lesser General Public ++License along with GNU Libltdl; see the file COPYING.LIB. If not, a ++copy can be downloaded from http://www.gnu.org/licenses/lgpl.html, ++or obtained by writing to the Free Software Foundation, Inc., ++51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ++ diff --cc debian/libopenmpi-dev.README.Debian index 00000000,00000000..cb682dcf new file mode 100644 --- /dev/null +++ b/debian/libopenmpi-dev.README.Debian @@@ -1,0 -1,0 +1,26 @@@ ++Open MPI for Debian - Developer Notes ++------------------------------------- ++ ++MPI Alternatives ++---------------- ++ ++The current Open MPI version of Debian uses the Debian Alternatives system. ++Although Open MPI might replace most of the existing MPI implementations in the ++future (see http://www.open-mpi.org/faq/?category=general#why), we decided to ++not affect any other MPI implementation already installed on your system. ++ ++You can setup Open MPI as default MPI implementation by selecting openmpi as ++the "mpi" alternative: ++ ++ update-alternatives --config mpi ++ ++Please note that there is a bug in update-alternatives (namely #388313) that ++may cause trouble when you install several development packages of other ++MPI implementations, i.e. LAM or MPICH. ++ ++If you would like to build Debian packages that link against multiple MPI ++implementations, we recommend to point your build system to the locations ++under /usr/lib instead of relying on update-alternatives. This may also allow ++parallel builds. ++ ++ -- Debian Open MPI Team , Mon, 21 Jul 2008 16:34:30 +0200 diff --cc debian/libopenmpi-dev.install index 00000000,00000000..7591814b new file mode 100644 --- /dev/null +++ b/debian/libopenmpi-dev.install @@@ -1,0 -1,0 +1,35 @@@ ++## Compiler wrappers (symlinks) and man pages ++usr/bin/mpic++.openmpi ++usr/share/man/man1/mpic++.openmpi.1 ++usr/bin/mpicc.openmpi ++usr/share/man/man1/mpicc.openmpi.1 ++usr/bin/mpiCC.openmpi ++# NOTE: mpiCC.openmpi.1 is installed as symlink ++usr/bin/mpicxx.openmpi ++usr/share/man/man1/mpicxx.openmpi.1 ++usr/bin/mpif77.openmpi ++usr/share/man/man1/mpif77.openmpi.1 ++usr/bin/mpif90.openmpi ++usr/share/man/man1/mpif90.openmpi.1 ++usr/bin/opalc++ ++# usr/share/man/man1/opalc++.1 ++# NOTE: opalc++.1 is not provided upstream in 1.5.4 ++usr/bin/opalcc ++usr/share/man/man1/opalcc.1 ++usr/bin/ortec++ ++# usr/share/man/man1/ortec++.1 ++usr/bin/ortecc ++# usr/share/man/man1/ortecc.1 ++usr/bin/orteCC ++# Note: There's no man page for ortecc ++## Wrappers and man pages ++usr/bin/opal_wrapper ++usr/share/man/man1/opal_wrapper.1 ++usr/bin/orte_wrapper_script ++# NOTE: There's no man page for opal_wrapper_script (upstream, lintian warning) ++## Library headers ++usr/lib/openmpi/include/* ++## .so symlinks ++usr/lib/openmpi/lib/*.so ++## pkg-config .pc files ++usr/lib/openmpi/lib/pkgconfig/*.pc diff --cc debian/libopenmpi-dev.links index 00000000,00000000..6614297c new file mode 100644 --- /dev/null +++ b/debian/libopenmpi-dev.links @@@ -1,0 -1,0 +1,18 @@@ ++## Man pages (link provided by upstream, needs recreation because of renaming): ++usr/share/man/man1/mpic++.openmpi.1 usr/share/man/man1/mpiCC.openmpi.1 ++# Missing links ++usr/share/man/man1/opal_wrapper.1 usr/share/man/man1/opalCC.1 ++usr/share/man/man1/opal_wrapper.1 usr/share/man/man1/opalc++.1 ++usr/share/man/man1/opal_wrapper.1 usr/share/man/man1/orteCC.1 ++usr/share/man/man1/opal_wrapper.1 usr/share/man/man1/ortec++.1 ++usr/share/man/man1/opal_wrapper.1 usr/share/man/man1/ortecc.1 ++## SONAME symlinks ++usr/lib/libmca_common_sm.so.3 usr/lib/libmca_common_sm.so ++usr/lib/libmpi_cxx.so.1 usr/lib/libmpi_cxx.so ++usr/lib/libmpi_f77.so.1 usr/lib/libmpi_f77.so ++usr/lib/libmpi_f90.so.1 usr/lib/libmpi_f90.so ++usr/lib/libompitrace.so.0 usr/lib/libompitrace.so ++usr/lib/libopen-pal.so.4 usr/lib/libopen-pal.so ++usr/lib/libopen-rte.so.4 usr/lib/libopen-rte.so ++## Convenience link for header files, see bug #493875 ++usr/lib/openmpi/include/ usr/include/openmpi diff --cc debian/libopenmpi-dev.postinst index 00000000,00000000..c6111a31 new file mode 100644 --- /dev/null +++ b/debian/libopenmpi-dev.postinst @@@ -1,0 -1,0 +1,26 @@@ ++#!/bin/sh ++ ++set -e ++ ++update-alternatives \ ++ --install /usr/include/mpi mpi /usr/lib/openmpi/include 50 \ ++ --slave /usr/lib/libmpi.so libmpi.so /usr/lib/openmpi/lib/libmpi.so \ ++ --slave /usr/lib/libmpi++.so libmpi++.so /usr/lib/openmpi/lib/libmpi_cxx.so \ ++ --slave /usr/lib/libmpif77.so libmpif77.so /usr/lib/openmpi/lib/libmpi_f77.so \ ++ --slave /usr/lib/libmpif90.so libmpif90.so /usr/lib/openmpi/lib/libmpi_f90.so \ ++ --slave /usr/bin/mpicc mpicc /usr/bin/mpicc.openmpi \ ++ --slave /usr/bin/mpic++ mpic++ /usr/bin/mpic++.openmpi \ ++ --slave /usr/bin/mpicxx mpicxx /usr/bin/mpic++.openmpi \ ++ --slave /usr/bin/mpiCC mpiCC /usr/bin/mpic++.openmpi \ ++ --slave /usr/bin/mpif77 mpif77 /usr/bin/mpif77.openmpi \ ++ --slave /usr/bin/mpif90 mpif90 /usr/bin/mpif90.openmpi \ ++ --slave /usr/share/man/man1/mpicc.1.gz mpicc.1.gz /usr/share/man/man1/mpicc.openmpi.1.gz \ ++ --slave /usr/share/man/man1/mpic++.1.gz mpic++.1.gz /usr/share/man/man1/mpic++.openmpi.1.gz \ ++ --slave /usr/share/man/man1/mpicxx.1.gz mpicxx.1.gz /usr/share/man/man1/mpicxx.openmpi.1.gz \ ++ --slave /usr/share/man/man1/mpiCC.1.gz mpiCC.1.gz /usr/share/man/man1/mpiCC.openmpi.1.gz \ ++ --slave /usr/share/man/man1/mpif77.1.gz mpif77.1.gz /usr/share/man/man1/mpif77.openmpi.1.gz \ ++ --slave /usr/share/man/man1/mpif90.1.gz mpif90.1.gz /usr/share/man/man1/mpif90.openmpi.1.gz ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/libopenmpi-dev.preinst index 00000000,00000000..ce109590 new file mode 100644 --- /dev/null +++ b/debian/libopenmpi-dev.preinst @@@ -1,0 -1,0 +1,14 @@@ ++#!/bin/sh ++ ++set -e ++ ++# mpicc seemed to be used as a master alternative by some MPI package. But ++# currently, all MPI packages have the mpicc alternative installed as a slave ++# link. We remove the link here in order to resolve bugs #531184 and #532910. ++ ++update-alternatives --quiet --remove-all mpicc >/dev/null 2>&1 || true ++update-alternatives --quiet --remove-all mpiCC >/dev/null 2>&1 || true ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/libopenmpi-dev.prerm index 00000000,00000000..1f97684a new file mode 100644 --- /dev/null +++ b/debian/libopenmpi-dev.prerm @@@ -1,0 -1,0 +1,11 @@@ ++#!/bin/sh ++ ++set -e ++ ++if [ "$1" != "upgrade" ]; then ++ update-alternatives --remove mpi /usr/lib/openmpi/include ++fi ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/libopenmpi1.6.install index 00000000,00000000..3bb45169 new file mode 100644 --- /dev/null +++ b/debian/libopenmpi1.6.install @@@ -1,0 -1,0 +1,13 @@@ ++## Shared libraries ++usr/lib/openmpi/lib/libmca_common_sm.so.3.0.1 ++usr/lib/openmpi/lib/libmpi_cxx.so.1.0.2 ++usr/lib/openmpi/lib/libmpi_f77.so.1.0.7 ++usr/lib/openmpi/lib/libmpi_f90.so.1.3.0 ++usr/lib/openmpi/lib/libmpi.so.1.0.8 ++usr/lib/openmpi/lib/libompitrace.so.0.0.0 ++usr/lib/openmpi/lib/libopen-pal.so.4.0.5 ++usr/lib/openmpi/lib/libopen-rte.so.4.0.3 ++## Plugins ++usr/lib/openmpi/lib/openmpi/*.so ++## Other files ++usr/lib/openmpi/lib/mpi.mod diff --cc debian/libopenmpi1.6.links index 00000000,00000000..bb4a6ea5 new file mode 100644 --- /dev/null +++ b/debian/libopenmpi1.6.links @@@ -1,0 -1,0 +1,18 @@@ ++# Compatibility links to /usr/bin ++usr/lib/openmpi/lib/libmca_common_sm.so.3.0.1 usr/lib/libmca_common_sm.so.3.0.1 ++usr/lib/openmpi/lib/libmpi_cxx.so.1.0.2 usr/lib/libmpi_cxx.so.1.0.2 ++usr/lib/openmpi/lib/libmpi_f77.so.1.0.7 usr/lib/libmpi_f77.so.1.0.7 ++usr/lib/openmpi/lib/libmpi_f90.so.1.3.0 usr/lib/libmpi_f90.so.1.3.0 ++usr/lib/openmpi/lib/libmpi.so.1.0.8 usr/lib/libmpi.so.1.0.8 ++usr/lib/openmpi/lib/libompitrace.so.0.0.0 usr/lib/libompitrace.so.0.0.0 ++usr/lib/openmpi/lib/libopen-pal.so.4.0.5 usr/lib/libopen-pal.so.4.0.5 ++usr/lib/openmpi/lib/libopen-rte.so.4.0.3 usr/lib/libopen-rte.so.4.0.3 ++# SONAME symlinks ++usr/lib/libmca_common_sm.so.3.0.0 usr/lib/libmca_common_sm.so.3 ++usr/lib/libmpi_cxx.so.1.0.2 usr/lib/libmpi_cxx.so.1 ++usr/lib/libmpi_f77.so.1.0.7 usr/lib/libmpi_f77.so.1 ++usr/lib/libmpi_f90.so.1.3.0 usr/lib/libmpi_f90.so.1 ++usr/lib/libmpi.so.1.0.8 usr/lib/libmpi.so.1 ++usr/lib/libompitrace.so.0.0.0 usr/lib/libompitrace.so.0 ++usr/lib/libopen-pal.so.4.0.5 usr/lib/libopen-pal.so.5 ++usr/lib/libopen-rte.so.4.0.3 usr/lib/libopen-rte.so.4 diff --cc debian/openmpi-bin.README.Debian index 00000000,00000000..5b258649 new file mode 100644 --- /dev/null +++ b/debian/openmpi-bin.README.Debian @@@ -1,0 -1,0 +1,60 @@@ ++Open MPI for Debian ++------------------- ++ ++InfiniBand support ++------------------ ++ ++This section provides information about warning messages when OpenFabrics ++hardware isn't present. This is fixed since version 1.2.6-3. The information ++provided here is only for historical reasons. ++ ++InfiniBand support is build into the package and enabled by default. On ++systems that don't have InfiniBand, a warning like this will be issued: ++ ++ libibverbs: Fatal: couldn't read uverbs ABI version. ++ -------------------------------------------------------------------------- ++ [0,1,2]: OpenIB on host xyz was unable to find any HCAs. ++ Another transport will be used instead, although this may result in ++ lower performance. ++ -------------------------------------------------------------------------- ++ ++To get rid of the warning, you can either disable the use of the "openib" BTL ++in /etc/openmpi/openmpi-mca-params.conf by adding a line that reads ++ ++ btl = ^openib ++ ++or pass "--mca btl ^openib" to mpirun or mpiexec. ++ ++Please see http://bugs.debian.org/439730 for a discussion on that topic. ++ ++ ++Thread support ++-------------- ++ ++Thread support was enabled until package version 1.2.3-3. It is known to be ++broken in upstream and led to segfaults on several architectures. ++ ++We disabled threading for this reason in 1.2.3-4 and will re-enable it as soon ++as it is known to be working, probably in the 1.3 branch of Open MPI. Please ++see http://bugs.debian.org/435581 for a discussion of this issue. ++ ++ ++MPI Alternatives ++---------------- ++ ++The current Open MPI version of Debian uses the Debian Alternatives system. ++Open MPI is considered the default MPI implementation in Debian. MPICH2 is ++also available. You can check which MPI is the default on your system with ++ ++ update-alternatives --list mpirun ++ ++and list all installed implementations with ++ ++ update-alternatives --display mpirun ++ ++If you have several implementations installed and Open MPI is not the default ++on your system, you can enable it explicitly with ++ ++ update-alternatives --set mpirun /usr/bin/mpirun.openmpi ++ ++ -- Debian Open MPI Team , Tue, 05 Jan 2010 14:17:49 +0100 diff --cc debian/openmpi-bin.install index 00000000,00000000..9301755f new file mode 100644 --- /dev/null +++ b/debian/openmpi-bin.install @@@ -1,0 -1,0 +1,19 @@@ ++## Configuration files ++etc/openmpi/* ++## Executables ++usr/bin/ompi-clean ++usr/bin/ompi_info ++usr/bin/ompi-iof ++usr/bin/ompi-ps ++usr/bin/ompi-server ++usr/bin/orte-clean ++usr/bin/orted ++usr/bin/orte-iof ++usr/bin/orte-ps ++usr/bin/orterun ++usr/bin/ompi-probe ++usr/bin/ompi-profiler ++usr/bin/ompi-top ++# orte-bootproxy.sh was renamed to orte-bootproxy in debian/rules ++usr/bin/orte-bootproxy ++usr/bin/orte-top diff --cc debian/openmpi-bin.links index 00000000,00000000..d6da9417 new file mode 100644 --- /dev/null +++ b/debian/openmpi-bin.links @@@ -1,0 -1,0 +1,3 @@@ ++usr/bin/orterun usr/bin/mpirun.openmpi ++usr/bin/orterun usr/bin/mpiexec.openmpi ++usr/share/man/man1/mpiexec.openmpi.1 usr/share/man/man1/mpirun.openmpi.1 diff --cc debian/openmpi-bin.manpages index 00000000,00000000..2c5aa1aa new file mode 100644 --- /dev/null +++ b/debian/openmpi-bin.manpages @@@ -1,0 -1,0 +1,17 @@@ ++debian/tmp/usr/share/man/man1/ompi-clean.1 ++debian/tmp/usr/share/man/man1/ompi_info.1 ++debian/tmp/usr/share/man/man1/ompi-iof.1 ++debian/tmp/usr/share/man/man1/ompi-probe.1 ++debian/tmp/usr/share/man/man1/ompi-profiler.1 ++debian/tmp/usr/share/man/man1/ompi-ps.1 ++debian/tmp/usr/share/man/man1/ompi-server.1 ++debian/tmp/usr/share/man/man1/ompi-top.1 ++debian/tmp/usr/share/man/man1/orte-clean.1 ++debian/tmp/usr/share/man/man1/orted.1 ++debian/tmp/usr/share/man/man1/orte-iof.1 ++debian/tmp/usr/share/man/man1/orte-ps.1 ++debian/tmp/usr/share/man/man1/orte-top.1 ++# Note: Those are identical and could by symlinked ++debian/tmp/usr/share/man/man1/orterun.1 ++debian/tmp/usr/share/man/man1/mpiexec.openmpi.1 ++debian/tmp/usr/share/man/man1/mpirun.openmpi.1 diff --cc debian/openmpi-bin.postinst index 00000000,00000000..cb3456be new file mode 100644 --- /dev/null +++ b/debian/openmpi-bin.postinst @@@ -1,0 -1,0 +1,34 @@@ ++#!/bin/sh ++ ++set -e ++ ++case "$1" in ++ configure) ++ # Continue below ++ ;; ++ abort-upgrade|abort-remove|abort-deconfigure) ++ exit 0; ++ ;; ++ *) ++ echo "postinst called with unknown argument \`$1'" >&2 ++ exit 0; ++ ;; ++esac ++ ++# so, we are running with $1 = configure ++# openmpi versions before 1.3.3-2 were using two alternatives where other ++# MPI implementations were using only one, which breaks. Clean up ++# our mess. ++if [ "$2" != "" ] && dpkg --compare-versions "$2" le "1.3.3-2"; then ++ update-alternatives --remove mpiexec /usr/bin/mpiexec.openmpi ++fi ++ ++update-alternatives \ ++ --install /usr/bin/mpirun mpirun /usr/bin/mpirun.openmpi 50 \ ++ --slave /usr/share/man/man1/mpirun.1.gz mpirun.1.gz /usr/share/man/man1/mpirun.openmpi.1.gz \ ++ --slave /usr/bin/mpiexec mpiexec /usr/bin/mpiexec.openmpi \ ++ --slave /usr/share/man/man1/mpiexec.1.gz mpiexec.1.gz /usr/share/man/man1/mpiexec.openmpi.1.gz ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/openmpi-bin.prerm index 00000000,00000000..06b1f4e2 new file mode 100644 --- /dev/null +++ b/debian/openmpi-bin.prerm @@@ -1,0 -1,0 +1,11 @@@ ++#!/bin/sh ++ ++set -e ++ ++if [ "$1" != "upgrade" ]; then ++ update-alternatives --remove mpirun /usr/bin/mpirun.openmpi ++fi ++ ++#DEBHELPER# ++ ++exit 0 diff --cc debian/openmpi-checkpoint.install index 00000000,00000000..bceebf83 new file mode 100644 --- /dev/null +++ b/debian/openmpi-checkpoint.install @@@ -1,0 -1,0 +1,7 @@@ ++## Binaries ++usr/bin/ompi-checkpoint ++usr/bin/ompi-restart ++usr/bin/opal-checkpoint ++usr/bin/opal-restart ++usr/bin/orte-checkpoint ++usr/bin/orte-restart diff --cc debian/openmpi-checkpoint.links index 00000000,00000000..e4464879 new file mode 100644 --- /dev/null +++ b/debian/openmpi-checkpoint.links @@@ -1,0 -1,0 +1,2 @@@ ++#usr/bin/orte-checkpoint usr/bin/ompi-checkpoint ++#usr/bin/orte-restart usr/bin/ompi-restart diff --cc debian/openmpi-checkpoint.manpages index 00000000,00000000..2af65ea7 new file mode 100644 --- /dev/null +++ b/debian/openmpi-checkpoint.manpages @@@ -1,0 -1,0 +1,8 @@@ ++debian/tmp/usr/share/man/man1/ompi-checkpoint.1 ++debian/tmp/usr/share/man/man1/ompi-restart.1 ++debian/tmp/usr/share/man/man1/opal-checkpoint.1 ++debian/tmp/usr/share/man/man1/opal-restart.1 ++debian/tmp/usr/share/man/man1/orte-checkpoint.1 ++debian/tmp/usr/share/man/man1/orte-restart.1 ++debian/tmp/usr/share/man/man7/ompi_crcp.7 ++debian/tmp/usr/share/man/man7/opal_crs.7 diff --cc debian/openmpi-common.install index 00000000,00000000..62dc9f18 new file mode 100644 --- /dev/null +++ b/debian/openmpi-common.install @@@ -1,0 -1,0 +1,4 @@@ ++## Aggregate MCA (AMCA) Parameter Sets ++usr/share/openmpi/amca-param-sets/* ++## Help files and other stuff ++usr/share/openmpi/* diff --cc debian/openmpi-common.links index 00000000,00000000..8193e988 new file mode 100644 --- /dev/null +++ b/debian/openmpi-common.links @@@ -1,0 -1,0 +1,6 @@@ ++usr/share/openmpi/mpic++-wrapper-data.txt usr/share/openmpi/mpic++.openmpi-wrapper-data.txt ++usr/share/openmpi/mpicc-wrapper-data.txt usr/share/openmpi/mpicc.openmpi-wrapper-data.txt ++usr/share/openmpi/mpicxx-wrapper-data.txt usr/share/openmpi/mpicxx.openmpi-wrapper-data.txt ++usr/share/openmpi/mpiCC-wrapper-data.txt usr/share/openmpi/mpiCC.openmpi-wrapper-data.txt ++usr/share/openmpi/mpif77-wrapper-data.txt usr/share/openmpi/mpif77.openmpi-wrapper-data.txt ++usr/share/openmpi/mpif90-wrapper-data.txt usr/share/openmpi/mpif90.openmpi-wrapper-data.txt diff --cc debian/openmpi-doc.install index 00000000,00000000..434e29a9 new file mode 100644 --- /dev/null +++ b/debian/openmpi-doc.install @@@ -1,0 -1,0 +1,3 @@@ ++#usr/share/man/man7/orte_filem.7 ++#usr/share/man/man7/orte_hosts.7 ++#usr/share/man/man7/orte_snapc.7 diff --cc debian/openmpi-doc.manpages index 00000000,00000000..686a911f new file mode 100644 --- /dev/null +++ b/debian/openmpi-doc.manpages @@@ -1,0 -1,0 +1,4 @@@ ++debian/tmp/usr/share/man/man7/orte_filem.7 ++debian/tmp/usr/share/man/man7/orte_hosts.7 ++debian/tmp/usr/share/man/man7/orte_snapc.7 ++debian/tmp/usr/share/man/man3/* diff --cc debian/patches/alpha_badatomic.patch index 00000000,00000000..40c9978a new file mode 100644 --- /dev/null +++ b/debian/patches/alpha_badatomic.patch @@@ -1,0 -1,0 +1,26 @@@ ++Index: openmpi-1.6.5/opal/include/opal/sys/alpha/atomic.h ++=================================================================== ++--- openmpi-1.6.5.orig/opal/include/opal/sys/alpha/atomic.h +++++ openmpi-1.6.5/opal/include/opal/sys/alpha/atomic.h ++@@ -96,9 +96,7 @@ static inline int opal_atomic_cmpset_32( ++ "mov %3, %0 \n\t" ++ "stl_c %0, %1 \n\t" ++ "beq %0, 1b \n\t" ++- "jmp 3f \n" ++- "2: mov $31, %0 \n" ++- "3: \n" +++ "2: \n" ++ : "=&r" (ret), "+m" (*addr) ++ : "r" (oldval), "r" (newval) ++ : "memory"); ++@@ -141,9 +139,7 @@ static inline int opal_atomic_cmpset_64( ++ "mov %3, %0 \n\t" ++ "stq_c %0, %1 \n\t" ++ "beq %0, 1b \n\t" ++- "jmp 3f \n" ++- "2: mov $31, %0 \n" ++- "3: \n" +++ "2: \n" ++ : "=&r" (ret), "+m" (*addr) ++ : "r" (oldval), "r" (newval) ++ : "memory"); diff --cc debian/patches/arm_detection.diff index 00000000,00000000..5a17541a new file mode 100644 --- /dev/null +++ b/debian/patches/arm_detection.diff @@@ -1,0 -1,0 +1,44 @@@ ++Index: openmpi-1.6.5/opal/config/opal_config_asm.m4 ++=================================================================== ++--- openmpi-1.6.5.orig/opal/config/opal_config_asm.m4 2013-07-01 09:47:08.000000000 +0200 +++++ openmpi-1.6.5/opal/config/opal_config_asm.m4 2013-07-01 09:47:07.000000000 +0200 ++@@ -900,7 +900,7 @@ ++ OMPI_GCC_INLINE_ASSIGN='"bis [$]31,[$]31,%0" : "=&r"(ret)' ++ ;; ++ ++- armv7*) +++ armv7*|arm-*-linux-gnueabihf) ++ ompi_cv_asm_arch="ARM" ++ OPAL_ASM_SUPPORT_64BIT=1 ++ OPAL_ASM_ARM_VERSION=7 ++@@ -919,7 +919,7 @@ ++ OMPI_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)' ++ ;; ++ ++- armv5*linux*|armv4*linux*) +++ armv5*linux*|armv4*linux*|arm-*-linux-gnueabi) ++ # uses Linux kernel helpers for some atomic operations ++ ompi_cv_asm_arch="ARM" ++ OPAL_ASM_SUPPORT_64BIT=0 ++Index: openmpi-1.6.5/configure ++=================================================================== ++--- openmpi-1.6.5.orig/configure 2013-07-01 09:47:08.000000000 +0200 +++++ openmpi-1.6.5/configure 2013-07-01 09:47:08.000000000 +0200 ++@@ -27192,7 +27192,7 @@ ++ OMPI_GCC_INLINE_ASSIGN='"bis $31,$31,%0" : "=&r"(ret)' ++ ;; ++ ++- armv7*) +++ armv7*|arm-*-linux-gnueabihf) ++ ompi_cv_asm_arch="ARM" ++ OPAL_ASM_SUPPORT_64BIT=1 ++ OPAL_ASM_ARM_VERSION=7 ++@@ -27217,7 +27217,7 @@ ++ OMPI_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)' ++ ;; ++ ++- armv5*linux*|armv4*linux*) +++ armv5*linux*|armv4*linux*|arm-*-linux-gnueabi) ++ # uses Linux kernel helpers for some atomic operations ++ ompi_cv_asm_arch="ARM" ++ OPAL_ASM_SUPPORT_64BIT=0 diff --cc debian/patches/arm_support index 00000000,00000000..18fe4026 new file mode 100644 --- /dev/null +++ b/debian/patches/arm_support @@@ -1,0 -1,0 +1,316 @@@ ++## Description: Support building for arm ++## Origin/Author: jani.monoses@canonical.com ++## Bug: bug URL ++Index: openmpi-1.4.3/config/ompi_config_asm.m4 ++=================================================================== ++--- openmpi-1.4.3.orig/config/ompi_config_asm.m4 2011-01-06 14:07:27.000000000 +0200 +++++ openmpi-1.4.3/config/ompi_config_asm.m4 2011-01-06 14:49:30.000000000 +0200 ++@@ -875,6 +875,12 @@ ++ OMPI_GCC_INLINE_ASSIGN='"movl [$]0, %0" : "=&r"(ret)' ++ ;; ++ +++ arm*) +++ ompi_cv_asm_arch="ARM" +++ OMPI_ASM_SUPPORT_64BIT=1 +++ OMPI_GCC_INLINE_ASSIGN='"mov r0, 0" : "=&r"(ret)' +++ ;; +++ ++ ia64-*) ++ ompi_cv_asm_arch="IA64" ++ OMPI_ASM_SUPPORT_64BIT=1 ++Index: openmpi-1.4.3/opal/include/opal/sys/Makefile.am ++=================================================================== ++--- openmpi-1.4.3.orig/opal/include/opal/sys/Makefile.am 2011-01-06 14:07:27.000000000 +0200 +++++ openmpi-1.4.3/opal/include/opal/sys/Makefile.am 2011-01-06 14:49:30.000000000 +0200 ++@@ -27,6 +27,7 @@ ++ ++ include opal/sys/alpha/Makefile.am ++ include opal/sys/amd64/Makefile.am +++include opal/sys/arm/Makefile.am ++ include opal/sys/ia32/Makefile.am ++ include opal/sys/ia64/Makefile.am ++ include opal/sys/mips/Makefile.am ++Index: openmpi-1.4.3/opal/include/opal/sys/architecture.h ++=================================================================== ++--- openmpi-1.4.3.orig/opal/include/opal/sys/architecture.h 2011-01-06 14:07:27.000000000 +0200 +++++ openmpi-1.4.3/opal/include/opal/sys/architecture.h 2011-01-06 14:49:30.000000000 +0200 ++@@ -36,6 +36,7 @@ ++ #define OMPI_SPARCV9_32 0061 ++ #define OMPI_SPARCV9_64 0062 ++ #define OMPI_MIPS 0070 +++#define OMPI_ARM 0100 ++ ++ /* Formats */ ++ #define OMPI_DEFAULT 1000 /* standard for given architecture */ ++Index: openmpi-1.4.3/opal/include/opal/sys/arm/Makefile.am ++=================================================================== ++--- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++++ openmpi-1.4.3/opal/include/opal/sys/arm/Makefile.am 2011-01-06 14:49:30.000000000 +0200 ++@@ -0,0 +1,23 @@ +++# +++# Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana +++# University Research and Technology +++# Corporation. All rights reserved. +++# Copyright (c) 2004-2005 The University of Tennessee and The University +++# of Tennessee Research Foundation. All rights +++# reserved. +++# Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, +++# University of Stuttgart. All rights reserved. +++# Copyright (c) 2004-2005 The Regents of the University of California. +++# All rights reserved. +++# $COPYRIGHT$ +++# +++# Additional copyrights may follow +++# +++# $HEADER$ +++# +++ +++# This makefile.am does not stand on its own - it is included from opal/include/Makefile.am +++ +++headers += \ +++ opal/sys/arm/atomic.h \ +++ opal/sys/arm/timer.h ++Index: openmpi-1.4.3/opal/include/opal/sys/arm/atomic.h ++=================================================================== ++--- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++++ openmpi-1.4.3/opal/include/opal/sys/arm/atomic.h 2011-01-06 14:49:30.000000000 +0200 ++@@ -0,0 +1,163 @@ +++/* +++ * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana +++ * University Research and Technology +++ * Corporation. All rights reserved. +++ * Copyright (c) 2004-2005 The University of Tennessee and The University +++ * of Tennessee Research Foundation. All rights +++ * reserved. +++ * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, +++ * University of Stuttgart. All rights reserved. +++ * Copyright (c) 2004-2005 The Regents of the University of California. +++ * All rights reserved. +++ * $COPYRIGHT$ +++ * +++ * Additional copyrights may follow +++ * +++ * $HEADER$ +++ */ +++ +++#ifndef OMPI_SYS_ARCH_ATOMIC_H +++#define OMPI_SYS_ARCH_ATOMIC_H 1 +++ +++/* +++ * On armv7, everything is load-locked, store-conditional... +++ */ +++ +++#if OMPI_WANT_SMP_LOCKS +++#define MB() __sync_synchronize(); +++#define RMB() MB() +++#define WMB() MB(); +++ +++#else +++ +++#define MB() +++#define RMB() +++#define WMB() +++ +++#endif +++ +++ +++/********************************************************************** +++ * +++ * Define constants for ARM +++ * +++ *********************************************************************/ +++#define OPAL_HAVE_ATOMIC_MEM_BARRIER 1 +++ +++#define OPAL_HAVE_ATOMIC_CMPSET_32 1 +++#define OPAL_HAVE_ATOMIC_MATH_32 1 +++#define OPAL_HAVE_ATOMIC_ADD_32 1 +++#define OPAL_HAVE_ATOMIC_SUB_32 1 +++ +++#define OPAL_HAVE_ATOMIC_CMPSET_64 0 +++#define OPAL_HAVE_ATOMIC_MATH_64 0 +++#define OPAL_HAVE_ATOMIC_ADD_64 0 +++#define OPAL_HAVE_ATOMIC_SUB_64 0 +++ +++/********************************************************************** +++ * +++ * Memory Barriers +++ * +++ *********************************************************************/ +++ +++static inline void opal_atomic_mb(void) +++{ +++ MB(); +++} +++ +++ +++static inline void opal_atomic_rmb(void) +++{ +++ RMB(); +++} +++ +++ +++static inline void opal_atomic_wmb(void) +++{ +++ WMB(); +++} +++ +++ +++/********************************************************************** +++ * +++ * Atomic math operations +++ * +++ *********************************************************************/ +++ +++static inline int opal_atomic_cmpset_32( volatile int32_t *addr, +++ int32_t oldval, int32_t newval) +++{ +++ return __sync_bool_compare_and_swap(addr, oldval, newval); +++} +++ +++static inline int opal_atomic_cmpset_acq_32(volatile int32_t *addr, +++ int32_t oldval, +++ int32_t newval) +++{ +++ int rc; +++ +++ rc = opal_atomic_cmpset_32(addr, oldval, newval); +++ opal_atomic_rmb(); +++ +++ return rc; +++} +++ +++ +++static inline int opal_atomic_cmpset_rel_32(volatile int32_t *addr, +++ int32_t oldval, +++ int32_t newval) +++{ +++ opal_atomic_wmb(); +++ return opal_atomic_cmpset_32(addr, oldval, newval); +++} +++ +++ +++static inline int opal_atomic_cmpset_64( volatile int64_t *addr, +++ int64_t oldval, int64_t newval) +++{ +++ return __sync_bool_compare_and_swap(addr, oldval, newval); +++} +++ +++ +++static inline int opal_atomic_cmpset_acq_64(volatile int64_t *addr, +++ int64_t oldval, +++ int64_t newval) +++{ +++ int rc; +++ +++ rc = opal_atomic_cmpset_64(addr, oldval, newval); +++ opal_atomic_rmb(); +++ +++ return rc; +++} +++ +++ +++static inline int opal_atomic_cmpset_rel_64(volatile int64_t *addr, +++ int64_t oldval, +++ int64_t newval) +++{ +++ opal_atomic_wmb(); +++ return opal_atomic_cmpset_64(addr, oldval, newval); +++} +++ +++static inline int32_t opal_atomic_add_32(volatile int32_t* v, int inc) +++{ +++ return __sync_add_and_fetch(v, inc); +++} +++ +++static inline int64_t opal_atomic_sub_64(volatile int64_t* v, int64_t dec) +++{ +++ return __sync_sub_and_fetch(v, dec); +++} +++ +++static inline int64_t opal_atomic_add_64(volatile int64_t* v, int64_t inc) +++{ +++ return __sync_add_and_fetch(v, inc); +++} +++ +++ +++static inline int32_t opal_atomic_sub_32(volatile int32_t* v, int dec) +++{ +++ return __sync_sub_and_fetch(v, dec); +++} +++#endif /* ! OMPI_SYS_ARCH_ATOMIC_H */ ++Index: openmpi-1.4.3/opal/include/opal/sys/atomic.h ++=================================================================== ++--- openmpi-1.4.3.orig/opal/include/opal/sys/atomic.h 2011-01-06 14:07:27.000000000 +0200 +++++ openmpi-1.4.3/opal/include/opal/sys/atomic.h 2011-01-06 14:49:30.000000000 +0200 ++@@ -148,6 +148,8 @@ ++ #include "opal/sys/alpha/atomic.h" ++ #elif OMPI_ASSEMBLY_ARCH == OMPI_AMD64 ++ #include "opal/sys/amd64/atomic.h" +++#elif OMPI_ASSEMBLY_ARCH == OMPI_ARM +++#include "opal/sys/arm/atomic.h" ++ #elif OMPI_ASSEMBLY_ARCH == OMPI_IA32 ++ #include "opal/sys/ia32/atomic.h" ++ #elif OMPI_ASSEMBLY_ARCH == OMPI_IA64 ++Index: openmpi-1.4.3/opal/include/opal/sys/arm/timer.h ++=================================================================== ++--- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++++ openmpi-1.4.3/opal/include/opal/sys/arm/timer.h 2011-01-06 14:49:50.000000000 +0200 ++@@ -0,0 +1,32 @@ +++/* +++ * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana +++ * University Research and Technology +++ * Corporation. All rights reserved. +++ * Copyright (c) 2004-2005 The University of Tennessee and The University +++ * of Tennessee Research Foundation. All rights +++ * reserved. +++ * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, +++ * University of Stuttgart. All rights reserved. +++ * Copyright (c) 2004-2005 The Regents of the University of California. +++ * All rights reserved. +++ * $COPYRIGHT$ +++ * +++ * Additional copyrights may follow +++ * +++ * $HEADER$ +++ */ +++ +++#ifndef OMPI_SYS_ARCH_TIMER_H +++#define OMPI_SYS_ARCH_TIMER_H 1 +++ +++#define OPAL_HAVE_SYS_TIMER_GET_CYCLES 1 +++ +++typedef uint64_t opal_timer_t; +++ +++static inline opal_timer_t +++opal_sys_timer_get_cycles(void) +++{ +++ return 0; +++} +++ +++#endif /* ! OMPI_SYS_ARCH_TIMER_H */ ++Index: openmpi-1.4.3/opal/include/opal/sys/timer.h ++=================================================================== ++--- openmpi-1.4.3.orig/opal/include/opal/sys/timer.h 2011-01-06 14:07:27.000000000 +0200 +++++ openmpi-1.4.3/opal/include/opal/sys/timer.h 2011-01-06 14:49:30.000000000 +0200 ++@@ -81,6 +81,8 @@ ++ /* don't include system-level gorp when generating doxygen files */ ++ #elif OMPI_ASSEMBLY_ARCH == OMPI_AMD64 ++ #include "opal/sys/amd64/timer.h" +++#elif OMPI_ASSEMBLY_ARCH == OMPI_ARM +++#include "opal/sys/arm/timer.h" ++ #elif OMPI_ASSEMBLY_ARCH == OMPI_IA32 ++ #include "opal/sys/ia32/timer.h" ++ #elif OMPI_ASSEMBLY_ARCH == OMPI_IA64 ++Index: openmpi-1.4.3/opal/mca/timer/linux/configure.m4 ++=================================================================== ++--- openmpi-1.4.3.orig/opal/mca/timer/linux/configure.m4 2011-01-06 14:07:26.000000000 +0200 +++++ openmpi-1.4.3/opal/mca/timer/linux/configure.m4 2011-01-06 14:49:30.000000000 +0200 ++@@ -42,7 +42,7 @@ ++ [timer_linux_happy="no"])]) ++ ++ case "${host}" in ++- i?86-*linux*|x86_64*linux*|ia64-*linux*|powerpc-*linux*|powerpc64-*linux*|sparc*-*linux*) +++ i?86-*linux*|x86_64*linux*|ia64-*linux*|powerpc-*linux*|powerpc64-*linux*|sparc*-*linux*|arm*-*linux*) ++ AS_IF([test "$timer_linux_happy" = "yes"], ++ [AS_IF([test -r "/proc/cpuinfo"], ++ [timer_linux_happy="yes"], diff --cc debian/patches/basic-arm64-support.diff index 00000000,00000000..b282c497 new file mode 100644 --- /dev/null +++ b/debian/patches/basic-arm64-support.diff @@@ -1,0 -1,0 +1,313 @@@ ++From 2070e8d9dd894da7d5f188c752212d2b2ac6c3c4 Mon Sep 17 00:00:00 2001 ++From: Leif Lindholm ++Date: Wed, 16 Oct 2013 14:16:00 +0100 ++Subject: [PATCH] Basic arm64 support. ++ ++--- ++ opal/config/opal_config_asm.m4 | 6 ++ ++ opal/include/opal/sys/Makefile.am | 1 + ++ opal/include/opal/sys/arm64/Makefile.am | 24 +++++ ++ opal/include/opal/sys/arm64/atomic.h | 169 +++++++++++++++++++++++++++++++ ++ opal/include/opal/sys/arm64/timer.h | 33 ++++++ ++ opal/include/opal/sys/atomic.h | 2 + ++ 6 files changed, 235 insertions(+) ++ create mode 100644 opal/include/opal/sys/arm64/Makefile.am ++ create mode 100644 opal/include/opal/sys/arm64/atomic.h ++ create mode 100644 opal/include/opal/sys/arm64/timer.h ++ ++Index: b/opal/config/opal_config_asm.m4 ++=================================================================== ++--- a/opal/config/opal_config_asm.m4 +++++ b/opal/config/opal_config_asm.m4 ++@@ -900,6 +900,12 @@ ++ OMPI_GCC_INLINE_ASSIGN='"bis [$]31,[$]31,%0" : "=&r"(ret)' ++ ;; ++ +++ aarch64*) +++ ompi_cv_asm_arch="ARM64" +++ OPAL_ASM_SUPPORT_64BIT=1 +++ OMPI_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)' +++ ;; +++ ++ armv7*|arm-*-linux-gnueabihf) ++ ompi_cv_asm_arch="ARM" ++ OPAL_ASM_SUPPORT_64BIT=1 ++Index: b/opal/include/opal/sys/Makefile.am ++=================================================================== ++--- a/opal/include/opal/sys/Makefile.am +++++ b/opal/include/opal/sys/Makefile.am ++@@ -28,6 +28,7 @@ ++ include opal/sys/alpha/Makefile.am ++ include opal/sys/amd64/Makefile.am ++ include opal/sys/arm/Makefile.am +++include opal/sys/arm64/Makefile.am ++ include opal/sys/ia32/Makefile.am ++ include opal/sys/ia64/Makefile.am ++ include opal/sys/mips/Makefile.am ++Index: b/opal/include/opal/sys/arm64/Makefile.am ++=================================================================== ++--- /dev/null +++++ b/opal/include/opal/sys/arm64/Makefile.am ++@@ -0,0 +1,24 @@ +++# +++# Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana +++# University Research and Technology +++# Corporation. All rights reserved. +++# Copyright (c) 2004-2008 The University of Tennessee and The University +++# of Tennessee Research Foundation. All rights +++# reserved. +++# Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, +++# University of Stuttgart. All rights reserved. +++# Copyright (c) 2004-2005 The Regents of the University of California. +++# All rights reserved. +++# $COPYRIGHT$ +++# +++# Additional copyrights may follow +++# +++# $HEADER$ +++# +++ +++# This makefile.am does not stand on its own - it is included from opal/include/Makefile.am +++ +++headers += \ +++ opal/sys/arm64/atomic.h \ +++ opal/sys/arm64/timer.h +++ ++Index: b/opal/include/opal/sys/arm64/atomic.h ++=================================================================== ++--- /dev/null +++++ b/opal/include/opal/sys/arm64/atomic.h ++@@ -0,0 +1,169 @@ +++/* +++ * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana +++ * University Research and Technology +++ * Corporation. All rights reserved. +++ * Copyright (c) 2004-2005 The University of Tennessee and The University +++ * of Tennessee Research Foundation. All rights +++ * reserved. +++ * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, +++ * University of Stuttgart. All rights reserved. +++ * Copyright (c) 2004-2005 The Regents of the University of California. +++ * All rights reserved. +++ * Copyright (c) 2010 IBM Corporation. All rights reserved. +++ * Copyright (c) 2010 ARM ltd. All rights reserved. +++ * Copyright (c) 2013 Linaro ltd. All rights reserved. +++ * $COPYRIGHT$ +++ * +++ * Additional copyrights may follow +++ * +++ * $HEADER$ +++ */ +++ +++#ifndef OMPI_SYS_ARCH_ATOMIC_H +++#define OMPI_SYS_ARCH_ATOMIC_H 1 +++ +++#if OPAL_WANT_SMP_LOCKS +++ +++#define OPAL_HAVE_ATOMIC_MEM_BARRIER 1 +++ +++#define MB() __asm__ __volatile__ ("dmb ish" : : : "memory") +++#define RMB() __asm__ __volatile__ ("dmb ish" : : : "memory") +++#define WMB() __asm__ __volatile__ ("dmb ish" : : : "memory") +++ +++#else +++ +++#define MB() +++#define RMB() +++#define WMB() +++ +++#endif /* OPAL_WANT_SMP_LOCKS */ +++ +++ +++ +++/********************************************************************** +++ * +++ * Memory Barriers +++ * +++ *********************************************************************/ +++ +++#if (OPAL_HAVE_ATOMIC_MEM_BARRIER == 1) +++ +++static inline +++void opal_atomic_mb(void) +++{ +++ MB(); +++} +++ +++ +++static inline +++void opal_atomic_rmb(void) +++{ +++ RMB(); +++} +++ +++ +++static inline +++void opal_atomic_wmb(void) +++{ +++ WMB(); +++} +++ +++#endif +++ +++ +++/********************************************************************** +++ * +++ * Atomic math operations +++ * +++ *********************************************************************/ +++ +++#define OPAL_HAVE_ATOMIC_CMPSET_32 1 +++static inline int opal_atomic_cmpset_32(volatile int32_t *addr, +++ int32_t oldval, int32_t newval) +++{ +++ int32_t ret; +++ int32_t tmp; +++ +++ __asm__ __volatile__ ( +++ "1: ldxr %w0, [%2] \n" +++ " cmp %w0, %w3 \n" +++ " bne 2f \n" +++ " stxr %w1, %w4, [%2] \n" +++ " cmp %w1, #0 \n" +++ " bne 1b \n" +++ "2: \n" +++ +++ : "=&r" (ret), "=&r" (tmp) +++ : "r" (addr), "r" (oldval), "r" (newval) +++ : "cc", "memory"); +++ +++ return (ret == oldval); +++} +++ +++static inline int opal_atomic_cmpset_acq_32(volatile int32_t *addr, +++ int32_t oldval, int32_t newval) +++{ +++ int rc; +++ +++ rc = opal_atomic_cmpset_32(addr, oldval, newval); +++ opal_atomic_rmb(); +++ +++ return rc; +++} +++ +++ +++static inline int opal_atomic_cmpset_rel_32(volatile int32_t *addr, +++ int32_t oldval, int32_t newval) +++{ +++ opal_atomic_wmb(); +++ return opal_atomic_cmpset_32(addr, oldval, newval); +++} +++ +++#define OPAL_HAVE_ATOMIC_CMPSET_64 1 +++static inline int opal_atomic_cmpset_64(volatile int64_t *addr, +++ int64_t oldval, int64_t newval) +++{ +++ int64_t ret; +++ int32_t tmp; +++ +++ __asm__ __volatile__ ( +++ "1: ldxr %0, [%2] \n" +++ " cmp %0, %3 \n" +++ " bne 2f \n" +++ " stxr %w1, %4, [%2] \n" +++ " cmp %w1, #0 \n" +++ " bne 1b \n" +++ "2: \n" +++ +++ : "=&r" (ret), "=&r" (tmp) +++ : "r" (addr), "r" (oldval), "r" (newval) +++ : "cc", "memory"); +++ +++ return (ret == oldval); +++} +++ +++/* these two functions aren't inlined in the non-gcc case because then +++ there would be two function calls (since neither cmpset_64 nor +++ atomic_?mb can be inlined). Instead, we "inline" them by hand in +++ the assembly, meaning there is one function call overhead instead +++ of two */ +++static inline int opal_atomic_cmpset_acq_64(volatile int64_t *addr, +++ int64_t oldval, int64_t newval) +++{ +++ int rc; +++ +++ rc = opal_atomic_cmpset_64(addr, oldval, newval); +++ opal_atomic_rmb(); +++ +++ return rc; +++} +++ +++ +++static inline int opal_atomic_cmpset_rel_64(volatile int64_t *addr, +++ int64_t oldval, int64_t newval) +++{ +++ opal_atomic_wmb(); +++ return opal_atomic_cmpset_64(addr, oldval, newval); +++} +++ +++#endif /* ! OMPI_SYS_ARCH_ATOMIC_H */ ++Index: b/opal/include/opal/sys/arm64/timer.h ++=================================================================== ++--- /dev/null +++++ b/opal/include/opal/sys/arm64/timer.h ++@@ -0,0 +1,33 @@ +++/* +++ * Copyright (c) 2008 The University of Tennessee and The University +++ * of Tennessee Research Foundation. All rights +++ * reserved. +++ * $COPYRIGHT$ +++ * +++ * Additional copyrights may follow +++ * +++ * $HEADER$ +++ */ +++ +++#ifndef OMPI_SYS_ARCH_TIMER_H +++#define OMPI_SYS_ARCH_TIMER_H 1 +++ +++#include +++ +++typedef uint64_t opal_timer_t; +++ +++static inline opal_timer_t +++opal_sys_timer_get_cycles(void) +++{ +++ opal_timer_t ret; +++ struct tms accurate_clock; +++ +++ times(&accurate_clock); +++ ret = accurate_clock.tms_utime + accurate_clock.tms_stime; +++ +++ return ret; +++} +++ +++#define OPAL_HAVE_SYS_TIMER_GET_CYCLES 1 +++ +++#endif /* ! OMPI_SYS_ARCH_TIMER_H */ ++Index: b/opal/include/opal/sys/atomic.h ++=================================================================== ++--- a/opal/include/opal/sys/atomic.h +++++ b/opal/include/opal/sys/atomic.h ++@@ -148,6 +148,8 @@ ++ #include "opal/sys/amd64/atomic.h" ++ #elif OPAL_ASSEMBLY_ARCH == OMPI_ARM ++ #include "opal/sys/arm/atomic.h" +++#elif OPAL_ASSEMBLY_ARCH == OMPI_ARM64 +++#include "opal/sys/arm64/atomic.h" ++ #elif OPAL_ASSEMBLY_ARCH == OMPI_IA32 ++ #include "opal/sys/ia32/atomic.h" ++ #elif OPAL_ASSEMBLY_ARCH == OMPI_IA64 ++Index: b/opal/include/opal/sys/timer.h ++=================================================================== ++--- a/opal/include/opal/sys/timer.h +++++ b/opal/include/opal/sys/timer.h ++@@ -81,6 +81,8 @@ ++ #include "opal/sys/amd64/timer.h" ++ #elif OPAL_ASSEMBLY_ARCH == OMPI_ARM ++ #include "opal/sys/arm/timer.h" +++#elif OPAL_ASSEMBLY_ARCH == OMPI_ARM64 +++#include "opal/sys/arm64/timer.h" ++ #elif OPAL_ASSEMBLY_ARCH == OMPI_IA32 ++ #include "opal/sys/ia32/timer.h" ++ #elif OPAL_ASSEMBLY_ARCH == OMPI_IA64 diff --cc debian/patches/build_hurd index 00000000,00000000..757a4674 new file mode 100644 --- /dev/null +++ b/debian/patches/build_hurd @@@ -1,0 -1,0 +1,292 @@@ ++Description: Fix build problems on hurd-i386 ++ This patch allows Open MPI to build on Debian GNU/HURD. ++ . ++ Also, the memory:linux MCA component is disabled, since its use of POSIX API ++ in malloc hooks called very early at startup causes troubles. ++Author: Pino Toscano ++Forwarded: partially ++Last-Update: 2013-08-21 ++ ++--- a/ompi/runtime/ompi_mpi_abort.c +++++ b/ompi/runtime/ompi_mpi_abort.c ++@@ -53,10 +53,11 @@ ++ bool kill_remote_of_intercomm) ++ { ++ int count = 0, i; ++- char *msg, *host, hostname[MAXHOSTNAMELEN]; +++ char *msg, *host = NULL; ++ pid_t pid = 0; ++ orte_process_name_t *abort_procs; ++ orte_std_cntr_t nabort_procs; +++ bool free_host = false; ++ ++ /* Protection for recursive invocation */ ++ if (have_been_invoked) { ++@@ -70,8 +71,12 @@ ++ if (orte_initialized) { ++ host = orte_process_info.nodename; ++ } else { ++- gethostname(hostname, sizeof(hostname)); ++- host = hostname; +++ size_t host_length = 128; +++ do { +++ host_length *= 2; +++ host = realloc(host, host_length); +++ } while ((gethostname(host, host_length) == -1) && (errno == ENAMETOOLONG)); +++ free_host = true; ++ } ++ pid = getpid(); ++ ++--- a/ompi/runtime/ompi_mpi_finalize.c +++++ b/ompi/runtime/ompi_mpi_finalize.c ++@@ -101,13 +101,18 @@ ++ /* Note that if we're already finalized, we cannot raise an ++ MPI exception. The best that we can do is write something ++ to stderr. */ ++- char hostname[MAXHOSTNAMELEN]; +++ char *hostname = NULL; +++ size_t hostname_length = 128; ++ pid_t pid = getpid(); ++- gethostname(hostname, sizeof(hostname)); +++ do { +++ hostname_length *= 2; +++ hostname = realloc(hostname, hostname_length); +++ } while ((gethostname(hostname, hostname_length) == -1) && (errno == ENAMETOOLONG)); ++ ++ orte_show_help("help-mpi-runtime.txt", ++ "mpi_finalize:invoked_multiple_times", ++ true, hostname, pid); +++ free(hostname); ++ return MPI_ERR_OTHER; ++ } ++ ++--- a/opal/mca/base/mca_base_component_find.c +++++ b/opal/mca/base/mca_base_component_find.c ++@@ -208,11 +208,16 @@ ++ } ++ ++ if (opal_list_get_end(found_components) == item) { ++- char h[MAXHOSTNAMELEN]; ++- gethostname(h, sizeof(h)); +++ char *h = NULL; +++ size_t h_length = 128; +++ do { +++ h_length *= 2; +++ h = realloc(h, h_length); +++ } while ((gethostname(h, h_length) == -1) && (errno == ENAMETOOLONG)); ++ opal_show_help("help-mca-base.txt", ++ "find-available:not-valid", true, ++ h, type, requested_component_names[i]); +++ free(h); ++ return OPAL_ERR_NOT_FOUND; ++ } ++ } ++--- a/opal/mca/base/mca_base_param.c +++++ b/opal/mca/base/mca_base_param.c ++@@ -186,8 +186,14 @@ ++ home = (char*)opal_home_directory(); ++ ++ if(NULL == cwd) { +++#if !defined(MAXPATHLEN) && defined(__GLIBC__) +++ cwd = get_current_dir_name(); +++ if( NULL == cwd) +++#else ++ cwd = (char *) malloc(sizeof(char) * MAXPATHLEN); ++- if( NULL == (cwd = getcwd(cwd, MAXPATHLEN) )) { +++ if( NULL == (cwd = getcwd(cwd, MAXPATHLEN) )) +++#endif +++ { ++ opal_output(0, "Error: Unable to get the current working directory\n"); ++ cwd = strdup("."); ++ } ++--- a/opal/util/stacktrace.c +++++ b/opal/util/stacktrace.c ++@@ -437,8 +437,12 @@ ++ mca_base_param_lookup_string (param, &string_value); ++ ++ memset(&act, 0, sizeof(act)); +++#ifdef SA_SIGINFO ++ act.sa_sigaction = show_stackframe; ++ act.sa_flags = SA_SIGINFO; +++#else +++ act.sa_handler = show_stackframe_handler; +++#endif ++ #ifdef SA_ONESHOT ++ act.sa_flags |= SA_ONESHOT; ++ #else ++--- a/orte/mca/odls/base/odls_base_default_fns.c +++++ b/orte/mca/odls/base/odls_base_default_fns.c ++@@ -1370,8 +1370,13 @@ ++ orte_local_rank_t local_rank; ++ orte_node_rank_t node_rank; ++ char *pathenv = NULL, *mpiexec_pathenv = NULL; +++#if !defined(MAXPATHLEN) && defined(__GLIBC__) +++ char *basedir=NULL; +++ char *dir=NULL; +++#else ++ char basedir[MAXPATHLEN]; ++ char dir[MAXPATHLEN]; +++#endif ++ char **argvptr; ++ char *full_search; ++ char **argvsav=NULL; ++@@ -1388,7 +1393,11 @@ ++ * bouncing around as we execute various apps, but we will always return ++ * to this place as our default directory ++ */ +++#if !defined(MAXPATHLEN) && defined(__GLIBC__) +++ basedir = get_current_dir_name(); +++#else ++ getcwd(basedir, sizeof(basedir)); +++#endif ++ ++ /* find the jobdat for this job */ ++ jobdat = NULL; ++@@ -1621,7 +1630,11 @@ ++ * again not match getcwd! This is beyond our control - we are only ++ * ensuring they start out matching. ++ */ +++#if !defined(MAXPATHLEN) && defined(__GLIBC__) +++ dir = get_current_dir_name(); +++#else ++ getcwd(dir, sizeof(dir)); +++#endif ++ opal_setenv("PWD", dir, true, &app->env); ++ ++ /* Search for the OMPI_exec_path and PATH settings in the environment. */ ++@@ -2118,6 +2131,10 @@ ++ GETOUT: ++ opal_condition_signal(&orte_odls_globals.cond); ++ OPAL_THREAD_UNLOCK(&orte_odls_globals.mutex); +++#if !defined(MAXPATHLEN) && defined(__GLIBC__) +++ free(basedir); +++ free(dir); +++#endif ++ return rc; ++ } ++ ++--- a/orte/orted/orted_main.c +++++ b/orte/orted/orted_main.c ++@@ -228,7 +228,8 @@ ++ int ret = 0; ++ int fd; ++ opal_cmd_line_t *cmd_line = NULL; ++- char log_file[PATH_MAX]; +++ char *log_file = NULL; +++ size_t log_file_len; ++ char *jobidstring; ++ char *rml_uri; ++ int i; ++@@ -482,13 +483,16 @@ ++ } ++ ++ /* define a log file name in the session directory */ ++- snprintf(log_file, PATH_MAX, "output-orted-%s-%s.log", +++ log_file_len = 13 + strlen(jobidstring) + 1 + strlen(orte_process_info.nodename) + 4 + 1; +++ log_file = malloc(log_file_len); +++ snprintf(log_file, log_file_len, "output-orted-%s-%s.log", ++ jobidstring, orte_process_info.nodename); ++ log_path = opal_os_path(false, ++ orte_process_info.tmpdir_base, ++ orte_process_info.top_session_dir, ++ log_file, ++ NULL); +++ free(log_file); ++ ++ fd = open(log_path, O_RDWR|O_CREAT|O_TRUNC, 0640); ++ if (fd < 0) { ++--- a/orte/util/context_fns.c +++++ b/orte/util/context_fns.c ++@@ -55,10 +55,12 @@ ++ { ++ bool good = true; ++ const char *tmp; +++#if 0 /* 'hostname' looks unused... */ ++ char hostname[MAXHOSTNAMELEN]; ++ ++ /* Use hostname in a few messages below */ ++ gethostname(hostname, sizeof(hostname)); +++#endif ++ ++ /* If we want to chdir and the chdir fails (for any reason -- such ++ as if the dir doesn't exist, it isn't a dir, we don't have ++--- a/opal/mca/pstat/darwin/configure.m4 +++++ b/opal/mca/pstat/darwin/configure.m4 ++@@ -23,9 +23,9 @@ ++ # ----------------------------------------------------------- ++ AC_DEFUN([MCA_pstat_darwin_CONFIG],[ ++ OMPI_VAR_SCOPE_PUSH([paff_darwin_happy]) ++- # check to see if we have +++ # check to see if we have ++ # as this is a Darwin-specific thing ++- AC_CHECK_HEADER([mach/mach_host.h], [paff_darwin_happy=yes], [paff_darwin_happy=no]) +++ AC_CHECK_HEADER([mach/clock.h], [paff_darwin_happy=yes], [paff_darwin_happy=no]) ++ ++ AS_IF([test "$paff_darwin_happy" = "yes"], [$1], [$2]) ++ OMPI_VAR_SCOPE_POP ++--- a/opal/mca/sysinfo/darwin/configure.m4 +++++ b/opal/mca/sysinfo/darwin/configure.m4 ++@@ -12,9 +12,9 @@ ++ # ----------------------------------------------------------- ++ AC_DEFUN([MCA_sysinfo_darwin_CONFIG],[ ++ OMPI_VAR_SCOPE_PUSH([sysinfo_darwin_happy]) ++- # check to see if we have +++ # check to see if we have ++ # as this is a Darwin-specific thing ++- AC_CHECK_HEADER([mach/mach_host.h], [sysinfo_darwin_happy=yes], [sysinfo_darwin_happy=no]) +++ AC_CHECK_HEADER([mach/clock.h], [sysinfo_darwin_happy=yes], [sysinfo_darwin_happy=no]) ++ ++ AS_IF([test "$sysinfo_darwin_happy" = "yes"], [$1], [$2]) ++ OMPI_VAR_SCOPE_POP ++--- a/opal/mca/shmem/mmap/shmem_mmap_module.c +++++ b/opal/mca/shmem/mmap/shmem_mmap_module.c ++@@ -61,6 +61,10 @@ ++ ++ /* for tons of debug output: -mca shmem_base_verbose 70 */ ++ +++#ifndef MAXHOSTNAMELEN +++# define MAXHOSTNAMELEN 256 +++#endif +++ ++ /* ////////////////////////////////////////////////////////////////////////// */ ++ /*local functions */ ++ /* local functions */ ++--- a/opal/mca/shmem/posix/shmem_posix_common_utils.h +++++ b/opal/mca/shmem/posix/shmem_posix_common_utils.h ++@@ -45,6 +45,10 @@ ++ OPAL_DECLSPEC extern int shmem_posix_shm_open(char *posix_file_name_buff, ++ size_t size); ++ +++#ifndef MAXHOSTNAMELEN +++# define MAXHOSTNAMELEN 256 +++#endif +++ ++ END_C_DECLS ++ ++ #endif /* OPAL_SHMEM_POSIX_COMMON_UTILS_H */ ++--- a/opal/mca/shmem/sysv/shmem_sysv_module.c +++++ b/opal/mca/shmem/sysv/shmem_sysv_module.c ++@@ -65,6 +65,10 @@ ++ ++ /* for tons of debug output: -mca shmem_base_verbose 70 */ ++ +++#ifndef MAXHOSTNAMELEN +++# define MAXHOSTNAMELEN 256 +++#endif +++ ++ /* ////////////////////////////////////////////////////////////////////////// */ ++ /* local functions */ ++ static int ++--- a/opal/mca/memory/linux/configure.m4 +++++ b/opal/mca/memory/linux/configure.m4 ++@@ -58,6 +58,10 @@ ++ [memory_linux_ptmalloc2_happy=yes ++ memory_linux_ummu_happy=no])]) ++ +++ AS_IF([echo "$host_os" | grep '^gnu' >/dev/null 2>/dev/null], +++ [memory_linux_ptmalloc2_happy=no +++ memory_linux_ummu_happy=no]) +++ ++ ###################################################################### ++ # ptmalloc2 ++ ###################################################################### diff --cc debian/patches/configure_arm_fix.patch index 00000000,00000000..c6c67f35 new file mode 100644 --- /dev/null +++ b/debian/patches/configure_arm_fix.patch @@@ -1,0 -1,0 +1,16 @@@ ++## Description: add some description ++## Origin/Author: add some origin or author ++## Bug: bug URL ++Index: openmpi-1.5.4/configure ++=================================================================== ++--- openmpi-1.5.4.orig/configure 2011-08-18 16:49:03.000000000 +0300 +++++ openmpi-1.5.4/configure 2012-01-20 18:12:48.959184193 +0200 ++@@ -26943,7 +26943,7 @@ ++ OMPI_GCC_INLINE_ASSIGN='"bis $31,$31,%0" : "=&r"(ret)' ++ ;; ++ ++- armv7*) +++ arm*) ++ ompi_cv_asm_arch="ARM" ++ OPAL_ASM_SUPPORT_64BIT=1 ++ OMPI_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)' diff --cc debian/patches/fix-bashims.diff index 00000000,00000000..06dac4bc new file mode 100644 --- /dev/null +++ b/debian/patches/fix-bashims.diff @@@ -1,0 -1,0 +1,33 @@@ ++Index: openmpi1.6-1.6.3/orte/tools/orte-bootproxy/orte-bootproxy.sh ++=================================================================== ++--- openmpi1.6-1.6.3.orig/orte/tools/orte-bootproxy/orte-bootproxy.sh 2012-04-03 16:30:31.000000000 +0200 +++++ openmpi1.6-1.6.3/orte/tools/orte-bootproxy/orte-bootproxy.sh 2012-11-07 15:44:16.847838743 +0100 ++@@ -4,7 +4,7 @@ ++ # Copyright (c) 2009 Cisco Systems, Inc. All rights reserved. ++ # ++ ++-if (( $# < 1 )) ; then +++if test $# -lt 1; then ++ echo "orte-bootproxy.sh: for OMPI internal use only" ++ exit 1 ++ fi ++@@ -69,12 +69,13 @@ ++ fi ++ ++ # push all MCA params to the environment ++-while [ "${var:0:5}" = "OMPI_" ]; do ++- if [ "${var:5:6}" = "PREFIX" ]; then ++- export LD_LIBRARY_PATH="${var:12}"/lib:$LD_LIBRARY_PATH ++- export PATH="${var:12}"/bin:$PATH ++- elif [ "${var:5:4}" = "WDIR" ]; then ++- cd "${var:10}" +++while [ "$(echo $var | awk '{ string=substr($0, 1, 5); print string; }' )" = "OMPI_" ]; do +++ if [ "$(echo $var | awk '{ string=substr($0, 6, 6); print string; }' )" = "PREFIX" ]; then +++ TMP_PATH=$(echo $var | awk '{ string=substr($0, 1, 12); print string; }' ) +++ export LD_LIBRARY_PATH="$TMP_PATH"/lib:$LD_LIBRARY_PATH +++ export PATH="$TMP_PATH"/bin:$PATH +++ elif [ "$(echo $var | awk '{ string=substr($0, 5, 4); print string; }' )" = "WDIR" ]; then +++ cd "$(echo $var | awk '{ string=substr($0, 1, 10); print string; }' )" ++ else ++ export $var ++ fi diff --cc debian/patches/fix-fakeroot-execution.patch index 00000000,00000000..dc9dcfea new file mode 100644 --- /dev/null +++ b/debian/patches/fix-fakeroot-execution.patch @@@ -1,0 -1,0 +1,43 @@@ ++Description: If running under Debian fakeroot then its important ++ that this hook is disabled; a new stat check was introduced in ++ 1.5.x which preceeds the FAKEROOT check resulting in a SEGFAULT. ++Author: James Page ++Origin: https://svn.open-mpi.org/trac/ompi/changeset/21489 ++ ++Index: openmpi-1.5.4/opal/mca/memory/linux/hooks.c ++=================================================================== ++--- openmpi-1.5.4.orig/opal/mca/memory/linux/hooks.c 2012-02-15 12:59:39.986314651 +0000 +++++ openmpi-1.5.4/opal/mca/memory/linux/hooks.c 2012-02-15 13:14:57.744722517 +0000 ++@@ -738,15 +738,6 @@ ++ check_result_t r1, r2, lp, lpp; ++ bool want_rcache = false, found_driver = false; ++ ++- /* First, check if ummunotify is present on the system. If it is, ++- then we don't need to do the following ptmalloc2 hacks. ++- open/mmap on the device may fail during init, but if /dev/ummunotify ++- exists, we assume that the user/administrator *wants* to use ++- ummunotify. */ ++- if (stat("/dev/ummunotify", &st) == 0) { ++- return; ++- } ++- ++ /* Yes, checking for an MPI MCA parameter here is an abstraction ++ violation. Cope. Yes, even checking for *any* MCA parameter ++ here (without going through the MCA param API) is an ++@@ -769,6 +760,15 @@ ++ return; ++ } ++ +++ /* Next, check if ummunotify is present on the system. If it is, +++ then we don't need to do the following ptmalloc2 hacks. +++ open/mmap on the device may fail during init, but if /dev/ummunotify +++ exists, we assume that the user/administrator *wants* to use +++ ummunotify. */ +++ if (stat("/dev/ummunotify", &st) == 0) { +++ return; +++ } +++ ++ /* Look for sentinel files (directories) to see if various network ++ drivers are loaded (yes, I know, further abstraction ++ violations...). ++ diff --cc debian/patches/fix-testsuite-compile index 00000000,00000000..c12fca4b new file mode 100644 --- /dev/null +++ b/debian/patches/fix-testsuite-compile @@@ -1,0 -1,0 +1,12 @@@ ++--- ./ompi/debuggers/Makefile.am.orig 2013-08-17 14:22:15.400508429 +0200 +++++ ./ompi/debuggers/Makefile.am 2013-08-17 14:22:23.472550111 +0200 ++@@ -21,9 +21,6 @@ ++ pkglib_LTLIBRARIES = libompi_dbg_msgq.la ++ ++ check_PROGRAMS = predefined_gap_test ++-if OPAL_HAVE_DLOPEN ++-check_PROGRAMS += dlopen_test ++-endif ++ ++ TESTS = $(check_PROGRAMS) ++ diff --cc debian/patches/manpage_macros index 00000000,00000000..2a01c288 new file mode 100644 --- /dev/null +++ b/debian/patches/manpage_macros @@@ -1,0 -1,0 +1,16 @@@ ++Description: Fix problems in manpages ++ In some man page headers, a macro (-*-) is used which makes lintian ++ choke and probably should not be there anyway. ++Author: Manuel Prinz ++Forwarded: yes ++Last-Update: 2011-09-13 ++ ++Index: openmpi-1.6.5/orte/tools/orterun/orterun.1in ++=================================================================== ++--- openmpi-1.6.5.orig/orte/tools/orterun/orterun.1in 2013-07-01 09:46:41.000000000 +0200 +++++ openmpi-1.6.5/orte/tools/orterun/orterun.1in 2013-07-01 09:47:02.000000000 +0200 ++@@ -1,4 +1,3 @@ ++-.\" -*- nroff -*- ++ .\" Copyright (c) 2009 Cisco Systems, Inc. All rights reserved. ++ .\" Copyright (c) 2008-2009 Sun Microsystems, Inc. All rights reserved. ++ .\" Copyright (c) 2010 Cisco Systems, Inc. All rights reserved. diff --cc debian/patches/mips-detection.diff index 00000000,00000000..0c065be4 new file mode 100644 --- /dev/null +++ b/debian/patches/mips-detection.diff @@@ -1,0 -1,0 +1,39 @@@ ++Description: Support detection of mips, mipsel, mips64, mips64el architectures ++Author: Jurica Stanojkovic ++ ++--- openmpi-1.6.5.orig/configure +++++ openmpi-1.6.5/configure ++@@ -27231,8 +27231,13 @@ _ACEOF ++ OMPI_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)' ++ ;; ++ ++- mips-*|mips64*) ++- # Should really find some way to make sure that we are on +++ mips-*|mipsel-*) +++ ompi_cv_asm_arch="MIPS" +++ OPAL_ASM_SUPPORT_64BIT=0 +++ OMPI_GCC_INLINE_ASSIGN='"or %0,$0,$0" : "=&r"(ret)' +++ ;; +++ +++ mips64-*|mips64el-*) ++ # a MIPS III machine (r4000 and later) ++ ompi_cv_asm_arch="MIPS" ++ OPAL_ASM_SUPPORT_64BIT=1 ++--- openmpi-1.6.5.orig/opal/config/opal_config_asm.m4 +++++ openmpi-1.6.5/opal/config/opal_config_asm.m4 ++@@ -930,8 +930,13 @@ AC_DEFUN([OMPI_CONFIG_ASM],[ ++ OMPI_GCC_INLINE_ASSIGN='"mov %0, #0" : "=&r"(ret)' ++ ;; ++ ++- mips-*|mips64*) ++- # Should really find some way to make sure that we are on +++ mips-*|mipsel-*) +++ ompi_cv_asm_arch="MIPS" +++ OPAL_ASM_SUPPORT_64BIT=0 +++ OMPI_GCC_INLINE_ASSIGN='"or %0,[$]0,[$]0" : "=&r"(ret)' +++ ;; +++ +++ mips64-*|mips64el-*) ++ # a MIPS III machine (r4000 and later) ++ ompi_cv_asm_arch="MIPS" ++ OPAL_ASM_SUPPORT_64BIT=1 diff --cc debian/patches/mips-support index 00000000,00000000..84a1d380 new file mode 100644 --- /dev/null +++ b/debian/patches/mips-support @@@ -1,0 -1,0 +1,274 @@@ ++Description: Fix build issues on MIPS ++ This patch should add build support for MIPS. Unfortunately, ++ there where build issues related to libtool. With libtool 2.2 ++ being available, those issues should be gone. The patch needs ++ to be updated and tested, so it's currently not applied. ++Forwarded: https://svn.open-mpi.org/trac/ompi/ticket/2494 ++Debian-Bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=489173 ++Author: George Bosilca ++Last-Update: 2011-03-10 ++ ++--- a/opal/asm/asm-data.txt +++++ b/opal/asm/asm-data.txt ++@@ -127,3 +127,7 @@ ++ ++ MIPS default-.text-.globl-:--L--1-1-1-1-0 mips-irix ++ MIPS default-.text-.globl-:--L--1-1-1-1-0 mips64el +++MIPS default-.text-.globl-:--L-@-1-1-1-1-1 mips64-linux +++ +++# However, this doesn't hold true for 32-bit MIPS as used on Linux. +++MIPS default-.text-.globl-:--L-@-1-1-1-0-1 mips-linux ++--- a/opal/asm/base/MIPS.asm +++++ b/opal/asm/base/MIPS.asm ++@@ -1,26 +1,48 @@ ++ START_FILE ++ +++#ifdef __linux__ ++ #include +++#else +++#include +++#endif ++ #include ++ ++ TEXT ++ ++ ALIGN(8) ++ LEAF(opal_atomic_mb) ++- sync +++#ifdef __linux__ +++ .set mips2 +++#endif +++ sync +++#ifdef __linux__ +++ .set mips0 +++#endif ++ j ra ++ END(opal_atomic_mb) ++ ++ ++ ALIGN(8) ++ LEAF(opal_atomic_rmb) ++- sync +++#ifdef __linux__ +++ .set mips2 +++#endif +++ sync +++#ifdef __linux__ +++ .set mips0 +++#endif ++ j ra ++ END(opal_atomic_rmb) ++ ++ ++ LEAF(opal_atomic_wmb) ++- sync +++#ifdef __linux__ +++ .set mips2 +++#endif +++ sync +++#ifdef __linux__ +++ .set mips0 +++#endif ++ j ra ++ END(opal_atomic_wmb) ++ ++@@ -28,11 +50,23 @@ ++ LEAF(opal_atomic_cmpset_32) ++ .set noreorder ++ retry1: +++#ifdef __linux__ +++ .set mips2 +++#endif ++ ll $3, 0($4) +++#ifdef __linux__ +++ .set mips0 +++#endif ++ bne $3, $5, done1 ++ or $2, $6, 0 +++#ifdef __linux__ +++ .set mips2 +++#endif ++ sc $2, 0($4) ++- bne $2, 1, retry1 +++#ifdef __linux__ +++ .set mips0 +++#endif +++ beqz $2, retry1 ++ done1: ++ .set reorder ++ ++@@ -45,13 +79,31 @@ ++ LEAF(opal_atomic_cmpset_acq_32) ++ .set noreorder ++ retry2: +++#ifdef __linux__ +++ .set mips2 +++#endif ++ ll $3, 0($4) +++#ifdef __linux__ +++ .set mips0 +++#endif ++ bne $3, $5, done2 ++ or $2, $6, 0 +++#ifdef __linux__ +++ .set mips2 +++#endif ++ sc $2, 0($4) ++- bne $2, 1, retry2 +++#ifdef __linux__ +++ .set mips0 +++#endif +++ beqz $2, retry2 ++ done2: ++- sync +++#ifdef __linux__ +++ .set mips2 +++#endif +++ sync +++#ifdef __linux__ +++ .set mips0 +++#endif ++ .set reorder ++ ++ xor $3,$3,$5 ++@@ -62,13 +114,31 @@ ++ ++ LEAF(opal_atomic_cmpset_rel_32) ++ .set noreorder ++- sync +++#ifdef __linux__ +++ .set mips2 +++#endif +++ sync +++#ifdef __linux__ +++ .set mips0 +++#endif ++ retry3: +++#ifdef __linux__ +++ .set mips2 +++#endif ++ ll $3, 0($4) +++#ifdef __linux__ +++ .set mips0 +++#endif ++ bne $3, $5, done3 ++ or $2, $6, 0 +++#ifdef __linux__ +++ .set mips2 +++#endif ++ sc $2, 0($4) ++- bne $2, 1, retry3 +++#ifdef __linux__ +++ .set mips0 +++#endif +++ beqz $2, retry3 ++ done3: ++ .set reorder ++ ++@@ -77,7 +147,7 @@ ++ sltu $2,$3,1 ++ END(opal_atomic_cmpset_rel_32) ++ ++- +++#ifdef __mips64 ++ LEAF(opal_atomic_cmpset_64) ++ .set noreorder ++ retry4: ++@@ -85,7 +155,7 @@ ++ bne $3, $5, done4 ++ or $2, $6, 0 ++ scd $2, 0($4) ++- bne $2, 1, retry4 +++ beqz $2, retry4 ++ done4: ++ .set reorder ++ ++@@ -102,7 +172,7 @@ ++ bne $3, $5, done5 ++ or $2, $6, 0 ++ scd $2, 0($4) ++- bne $2, 1, retry5 +++ beqz $2, retry5 ++ done5: ++ .set reorder ++ sync ++@@ -120,7 +190,7 @@ ++ bne $3, $5, done6 ++ or $2, $6, 0 ++ scd $2, 0($4) ++- bne $2, 1, retry6 +++ beqz $2, retry6 ++ done6: ++ .set reorder ++ ++@@ -128,3 +198,4 @@ ++ j ra ++ sltu $3,$4,1 ++ END(opal_atomic_cmpset_rel_64) +++#endif /* __mips64 */ ++--- a/opal/include/opal/sys/mips/atomic.h +++++ b/opal/include/opal/sys/mips/atomic.h ++@@ -23,10 +23,17 @@ ++ #if OMPI_WANT_SMP_LOCKS ++ ++ /* BWB - FIX ME! */ +++#ifdef __linux__ +++#define MB() __asm__ __volatile__(".set mips2; sync; .set mips0": : :"memory") +++#define RMB() __asm__ __volatile__(".set mips2; sync; .set mips0": : :"memory") +++#define WMB() __asm__ __volatile__(".set mips2; sync; .set mips0": : :"memory") +++#define SMP_SYNC ".set mips2; sync; .set mips0" +++#else ++ #define MB() __asm__ __volatile__("sync": : :"memory") ++ #define RMB() __asm__ __volatile__("sync": : :"memory") ++ #define WMB() __asm__ __volatile__("sync": : :"memory") ++ #define SMP_SYNC "sync" +++#endif ++ ++ #else ++ ++@@ -46,8 +53,10 @@ ++ #define OPAL_HAVE_ATOMIC_MEM_BARRIER 1 ++ ++ #define OPAL_HAVE_ATOMIC_CMPSET_32 1 ++-#define OPAL_HAVE_ATOMIC_CMPSET_64 1 ++ +++#ifdef __mips64 +++#define OPAL_HAVE_ATOMIC_CMPSET_64 1 +++#endif ++ ++ /********************************************************************** ++ * ++@@ -94,10 +103,16 @@ ++ __asm__ __volatile__ ("\t" ++ ".set noreorder \n" ++ "1: \n\t" +++#ifdef __linux__ +++ ".set mips2 \n\t" +++#endif ++ "ll %0, %2 \n\t" /* load *addr into ret */ ++ "bne %0, %3, 2f \n\t" /* done if oldval != ret */ ++ "or %5, %4, 0 \n\t" /* ret = newval */ ++ "sc %5, %2 \n\t" /* store ret in *addr */ +++#ifdef __linux__ +++ ".set mips0 \n\t" +++#endif ++ /* note: ret will be 0 if failed, 1 if succeeded */ ++ "bne %5, 1, 1b \n\t" ++ "2: \n\t" ++@@ -133,7 +148,7 @@ ++ return opal_atomic_cmpset_32(addr, oldval, newval); ++ } ++ ++- +++#ifdef OPAL_HAVE_ATOMIC_CMPSET_64 ++ static inline int opal_atomic_cmpset_64(volatile int64_t *addr, ++ int64_t oldval, int64_t newval) ++ { ++@@ -183,6 +198,7 @@ ++ opal_atomic_wmb(); ++ return opal_atomic_cmpset_64(addr, oldval, newval); ++ } +++#endif /* OPAL_HAVE_ATOMIC_CMPSET_64 */ ++ ++ #endif /* OMPI_GCC_INLINE_ASSEMBLY */ ++ diff --cc debian/patches/mips-support-fix.diff index 00000000,00000000..b45ed434 new file mode 100644 --- /dev/null +++ b/debian/patches/mips-support-fix.diff @@@ -1,0 -1,0 +1,95 @@@ ++Description: Patch resolve issue of misinterpretation of assembler code from MIPS.asm ++ and fix mips64(el) assembler code. ++Author: Jurica Stanojkovic ++ ++--- openmpi-1.6.5.orig/opal/asm/base/MIPS.asm +++++ openmpi-1.6.5/opal/asm/base/MIPS.asm ++@@ -68,11 +68,11 @@ retry1: ++ #endif ++ beqz $2, retry1 ++ done1: ++- .set reorder ++ ++ xor $3,$3,$5 ++ j ra ++ sltu $2,$3,1 +++ .set reorder ++ END(opal_atomic_cmpset_32) ++ ++ ++@@ -104,11 +104,11 @@ done2: ++ #ifdef __linux__ ++ .set mips0 ++ #endif ++- .set reorder ++ ++ xor $3,$3,$5 ++ j ra ++ sltu $2,$3,1 +++ .set reorder ++ END(opal_atomic_cmpset_acq_32) ++ ++ ++@@ -140,16 +140,16 @@ retry3: ++ #endif ++ beqz $2, retry3 ++ done3: ++- .set reorder ++ ++ xor $3,$3,$5 ++ j ra ++ sltu $2,$3,1 +++ .set reorder ++ END(opal_atomic_cmpset_rel_32) ++ ++ #ifdef __mips64 ++ LEAF(opal_atomic_cmpset_64) ++- .set noreorder +++ .set noreorder ++ retry4: ++ lld $3, 0($4) ++ bne $3, $5, done4 ++@@ -157,11 +157,11 @@ retry4: ++ scd $2, 0($4) ++ beqz $2, retry4 ++ done4: ++- .set reorder ++ ++- xor $4,$3,$5 +++ xor $3,$3,$5 ++ j ra ++- sltu $3,$4,1 +++ sltu $2,$3,1 +++ .set reorder ++ END(opal_atomic_cmpset_64) ++ ++ ++@@ -174,11 +174,11 @@ retry5: ++ scd $2, 0($4) ++ beqz $2, retry5 ++ done5: ++- .set reorder ++ sync ++- xor $4,$3,$5 +++ xor $3,$3,$5 ++ j ra ++- sltu $3,$4,1 +++ sltu $2,$3,1 +++ .set reorder ++ END(opal_atomic_cmpset_acq_64) ++ ++ ++@@ -192,10 +192,10 @@ retry6: ++ scd $2, 0($4) ++ beqz $2, retry6 ++ done6: ++- .set reorder ++ ++- xor $4,$3,$5 +++ xor $3,$3,$5 ++ j ra ++- sltu $3,$4,1 +++ sltu $2,$3,1 +++ .set reorder ++ END(opal_atomic_cmpset_rel_64) ++ #endif /* __mips64 */ diff --cc debian/patches/mips-support-upstream-1.7.3.diff index 00000000,00000000..82ae03af new file mode 100644 --- /dev/null +++ b/debian/patches/mips-support-upstream-1.7.3.diff @@@ -1,0 -1,0 +1,225 @@@ ++Description: Patches MIPS.asm and mips/atomic.h files to a 1.7.3 version of source ++Author: Jurica Stanojkovic ++ ++--- openmpi-1.6.5.orig/opal/asm/base/MIPS.asm +++++ openmpi-1.6.5/opal/asm/base/MIPS.asm ++@@ -1,26 +1,48 @@ ++ START_FILE ++ +++#ifdef __linux__ ++ #include +++#else +++#include +++#endif ++ #include ++ ++ TEXT ++ ++ ALIGN(8) ++ LEAF(opal_atomic_mb) ++- sync +++#ifdef __linux__ +++ .set mips2 +++#endif +++ sync +++#ifdef __linux__ +++ .set mips0 +++#endif ++ j ra ++ END(opal_atomic_mb) ++ ++ ++ ALIGN(8) ++ LEAF(opal_atomic_rmb) ++- sync +++#ifdef __linux__ +++ .set mips2 +++#endif +++ sync +++#ifdef __linux__ +++ .set mips0 +++#endif ++ j ra ++ END(opal_atomic_rmb) ++ ++ ++ LEAF(opal_atomic_wmb) ++- sync +++#ifdef __linux__ +++ .set mips2 +++#endif +++ sync +++#ifdef __linux__ +++ .set mips0 +++#endif ++ j ra ++ END(opal_atomic_wmb) ++ ++@@ -28,10 +50,22 @@ END(opal_atomic_wmb) ++ LEAF(opal_atomic_cmpset_32) ++ .set noreorder ++ retry1: +++#ifdef __linux__ +++ .set mips2 +++#endif ++ ll $3, 0($4) +++#ifdef __linux__ +++ .set mips0 +++#endif ++ bne $3, $5, done1 ++ or $2, $6, 0 +++#ifdef __linux__ +++ .set mips2 +++#endif ++ sc $2, 0($4) +++#ifdef __linux__ +++ .set mips0 +++#endif ++ beqz $2, retry1 ++ done1: ++ .set reorder ++@@ -45,13 +79,31 @@ END(opal_atomic_cmpset_32) ++ LEAF(opal_atomic_cmpset_acq_32) ++ .set noreorder ++ retry2: +++#ifdef __linux__ +++ .set mips2 +++#endif ++ ll $3, 0($4) +++#ifdef __linux__ +++ .set mips0 +++#endif ++ bne $3, $5, done2 ++ or $2, $6, 0 +++#ifdef __linux__ +++ .set mips2 +++#endif ++ sc $2, 0($4) +++#ifdef __linux__ +++ .set mips0 +++#endif ++ beqz $2, retry2 ++ done2: ++- sync +++#ifdef __linux__ +++ .set mips2 +++#endif +++ sync +++#ifdef __linux__ +++ .set mips0 +++#endif ++ .set reorder ++ ++ xor $3,$3,$5 ++@@ -62,12 +114,30 @@ END(opal_atomic_cmpset_acq_32) ++ ++ LEAF(opal_atomic_cmpset_rel_32) ++ .set noreorder ++- sync +++#ifdef __linux__ +++ .set mips2 +++#endif +++ sync +++#ifdef __linux__ +++ .set mips0 +++#endif ++ retry3: +++#ifdef __linux__ +++ .set mips2 +++#endif ++ ll $3, 0($4) +++#ifdef __linux__ +++ .set mips0 +++#endif ++ bne $3, $5, done3 ++ or $2, $6, 0 +++#ifdef __linux__ +++ .set mips2 +++#endif ++ sc $2, 0($4) +++#ifdef __linux__ +++ .set mips0 +++#endif ++ beqz $2, retry3 ++ done3: ++ .set reorder ++@@ -77,7 +147,7 @@ done3: ++ sltu $2,$3,1 ++ END(opal_atomic_cmpset_rel_32) ++ ++- +++#ifdef __mips64 ++ LEAF(opal_atomic_cmpset_64) ++ .set noreorder ++ retry4: ++@@ -128,3 +198,4 @@ done6: ++ j ra ++ sltu $3,$4,1 ++ END(opal_atomic_cmpset_rel_64) +++#endif /* __mips64 */ ++--- openmpi-1.6.5.orig/opal/include/opal/sys/mips/atomic.h +++++ openmpi-1.6.5/opal/include/opal/sys/mips/atomic.h ++@@ -23,10 +23,17 @@ ++ #if OPAL_WANT_SMP_LOCKS ++ ++ /* BWB - FIX ME! */ +++#ifdef __linux__ +++#define MB() __asm__ __volatile__(".set mips2; sync; .set mips0": : :"memory") +++#define RMB() __asm__ __volatile__(".set mips2; sync; .set mips0": : :"memory") +++#define WMB() __asm__ __volatile__(".set mips2; sync; .set mips0": : :"memory") +++#define SMP_SYNC ".set mips2; sync; .set mips0" +++#else ++ #define MB() __asm__ __volatile__("sync": : :"memory") ++ #define RMB() __asm__ __volatile__("sync": : :"memory") ++ #define WMB() __asm__ __volatile__("sync": : :"memory") ++ #define SMP_SYNC "sync" +++#endif ++ ++ #else ++ ++@@ -46,8 +53,10 @@ ++ #define OPAL_HAVE_ATOMIC_MEM_BARRIER 1 ++ ++ #define OPAL_HAVE_ATOMIC_CMPSET_32 1 ++-#define OPAL_HAVE_ATOMIC_CMPSET_64 1 ++ +++#ifdef __mips64 +++#define OPAL_HAVE_ATOMIC_CMPSET_64 1 +++#endif ++ ++ /********************************************************************** ++ * ++@@ -93,10 +102,16 @@ static inline int opal_atomic_cmpset_32( ++ __asm__ __volatile__ (".set noreorder \n" ++ ".set noat \n" ++ "1: \n" +++#ifdef __linux__ +++ ".set mips2 \n\t" +++#endif ++ "ll %0, %2 \n" /* load *addr into ret */ ++ "bne %0, %z3, 2f \n" /* done if oldval != ret */ ++ "or $1, %z4, 0 \n" /* tmp = newval (delay slot) */ ++ "sc $1, %2 \n" /* store tmp in *addr */ +++#ifdef __linux__ +++ ".set mips0 \n\t" +++#endif ++ /* note: ret will be 0 if failed, 1 if succeeded */ ++ "beqz $1, 1b \n" /* if 0 jump back to 1b */ ++ "nop \n" /* fill delay slots */ ++@@ -133,7 +148,7 @@ static inline int opal_atomic_cmpset_rel ++ return opal_atomic_cmpset_32(addr, oldval, newval); ++ } ++ ++- +++#ifdef OPAL_HAVE_ATOMIC_CMPSET_64 ++ static inline int opal_atomic_cmpset_64(volatile int64_t *addr, ++ int64_t oldval, int64_t newval) ++ { ++@@ -182,6 +197,7 @@ static inline int opal_atomic_cmpset_rel ++ opal_atomic_wmb(); ++ return opal_atomic_cmpset_64(addr, oldval, newval); ++ } +++#endif /* OPAL_HAVE_ATOMIC_CMPSET_64 */ ++ ++ #endif /* OMPI_GCC_INLINE_ASSEMBLY */ ++ diff --cc debian/patches/ompi_autogen_sh.patch index 00000000,00000000..0429388f new file mode 100644 --- /dev/null +++ b/debian/patches/ompi_autogen_sh.patch @@@ -1,0 -1,0 +1,12 @@@ ++--- a/autogen.sh +++++ b/autogen.sh ++@@ -664,6 +664,9 @@ ++ touch -r aclocal.m4 config/libtool.m4 ++ fi ++ +++ # Ensure libtool.m4 is very old so that make does not rebuild aclocal.m4 +++ touch -t 197001010000.00 config/libtool.m4 +++ ++ run_and_check $ompi_autoconf ++ ++ run_and_check $ompi_automake --foreign -a --copy --include-deps diff --cc debian/patches/openmpi-link-fix index 00000000,00000000..065239de new file mode 100644 --- /dev/null +++ b/debian/patches/openmpi-link-fix @@@ -1,0 -1,0 +1,88 @@@ ++--- openmpi-1.4.3.old/ompi/tools/ompi-server/Makefile.am 2009-12-08 20:36:19.000000000 +0000 +++++ openmpi-1.4.3/ompi/tools/ompi-server/Makefile.am 2011-04-10 16:14:45.000000000 +0000 ++@@ -41,7 +41,7 @@ ++ endif # OMPI_INSTALL_BINARIES ++ ++ ompi_server_SOURCES = ompi-server.c ++-ompi_server_LDADD = $(top_builddir)/ompi/libmpi.la +++ompi_server_LDADD = $(top_builddir)/ompi/libmpi.la $(top_builddir)/orte/libopen-rte.la $(top_builddir)/opal/libopen-pal.la ++ ++ distclean-local: ++ rm -f $(man_pages) ++--- openmpi-1.4.3.old/ompi/tools/ompi_info/Makefile.am 2009-12-08 20:36:19.000000000 +0000 +++++ openmpi-1.4.3/ompi/tools/ompi_info/Makefile.am 2011-04-10 16:13:22.000000000 +0000 ++@@ -66,7 +66,7 @@ ++ output.cc \ ++ param.cc \ ++ version.cc ++-ompi_info_LDADD = $(top_builddir)/ompi/libmpi.la +++ompi_info_LDADD = $(top_builddir)/ompi/libmpi.la $(top_builddir)/orte/libopen-rte.la $(top_builddir)/opal/libopen-pal.la ++ ++ clean-local: ++ test -z "$(OMPI_CXX_TEMPLATE_REPOSITORY)" || $(RM) -rf $(OMPI_CXX_TEMPLATE_REPOSITORY) ++--- openmpi-1.4.3.old/orte/tools/orte-ps/Makefile.am 2009-12-08 20:36:41.000000000 +0000 +++++ openmpi-1.4.3/orte/tools/orte-ps/Makefile.am 2011-04-10 15:59:01.000000000 +0000 ++@@ -40,7 +40,7 @@ ++ endif # OMPI_INSTALL_BINARIES ++ ++ orte_ps_SOURCES = orte-ps.c ++-orte_ps_LDADD = $(top_builddir)/orte/libopen-rte.la +++orte_ps_LDADD = $(top_builddir)/orte/libopen-rte.la $(top_builddir)/opal/libopen-pal.la ++ ++ endif # !ORTE_DISABLE_FULL_SUPPORT ++ ++--- openmpi-1.4.3.old/orte/tools/orte-clean/Makefile.am 2009-12-08 20:36:41.000000000 +0000 +++++ openmpi-1.4.3/orte/tools/orte-clean/Makefile.am 2011-04-10 15:57:09.000000000 +0000 ++@@ -40,7 +40,7 @@ ++ endif # OMPI_INSTALL_BINARIES ++ ++ orte_clean_SOURCES = orte-clean.c ++-orte_clean_LDADD = $(top_builddir)/orte/libopen-rte.la +++orte_clean_LDADD = $(top_builddir)/orte/libopen-rte.la $(top_builddir)/opal/libopen-pal.la ++ ++ endif # !ORTE_DISABLE_FULL_SUPPORT ++ ++--- openmpi-1.4.3.old/orte/tools/orte-iof/Makefile.am 2009-12-08 20:36:41.000000000 +0000 +++++ openmpi-1.4.3/orte/tools/orte-iof/Makefile.am 2011-04-10 15:57:54.000000000 +0000 ++@@ -40,7 +40,7 @@ ++ endif # OMPI_INSTALL_BINARIES ++ ++ orte_iof_SOURCES = orte-iof.c ++-orte_iof_LDADD = $(top_builddir)/orte/libopen-rte.la +++orte_iof_LDADD = $(top_builddir)/orte/libopen-rte.la $(top_builddir)/opal/libopen-pal.la ++ ++ endif # !ORTE_DISABLE_FULL_SUPPORT ++ ++--- openmpi-1.4.3.old/orte/tools/orte-checkpoint/Makefile.am 2009-12-08 20:36:41.000000000 +0000 +++++ openmpi-1.4.3/orte/tools/orte-checkpoint/Makefile.am 2011-04-10 15:51:13.000000000 +0000 ++@@ -47,7 +47,7 @@ ++ endif # OMPI_INSTALL_BINARIES ++ ++ orte_checkpoint_SOURCES = orte-checkpoint.c ++-orte_checkpoint_LDADD = $(top_builddir)/orte/libopen-rte.la +++orte_checkpoint_LDADD = $(top_builddir)/orte/libopen-rte.la $(top_builddir)/opal/libopen-pal.la ++ ++ endif # WANT_FT ++ endif # !ORTE_DISABLE_FULL_SUPPORT ++--- openmpi-1.4.3.old/orte/tools/orte-restart/Makefile.am 2009-12-08 20:36:41.000000000 +0000 +++++ openmpi-1.4.3/orte/tools/orte-restart/Makefile.am 2011-04-10 15:59:43.000000000 +0000 ++@@ -47,7 +47,7 @@ ++ endif # OMPI_INSTALL_BINARIES ++ ++ orte_restart_SOURCES = orte-restart.c ++-orte_restart_LDADD = $(top_builddir)/orte/libopen-rte.la +++orte_restart_LDADD = $(top_builddir)/orte/libopen-rte.la $(top_builddir)/opal/libopen-pal.la ++ ++ endif # WANT_FT ++ endif # ORTE_DISABLE_FULL_SUPPORT ++--- openmpi-1.4.3.old/orte/tools/orterun/Makefile.am 2009-12-08 20:36:44.000000000 +0000 +++++ openmpi-1.4.3/orte/tools/orterun/Makefile.am 2011-04-10 16:00:25.000000000 +0000 ++@@ -55,7 +55,7 @@ ++ debuggers.h \ ++ debuggers.c ++ ++-orterun_LDADD = $(top_builddir)/orte/libopen-rte.la +++orterun_LDADD = $(top_builddir)/orte/libopen-rte.la $(top_builddir)/opal/libopen-pal.la ++ ++ endif # !ORTE_DISABLE_FULL_SUPPORT ++ diff --cc debian/patches/pkgconfig-vars.patch index 00000000,00000000..54117830 new file mode 100644 --- /dev/null +++ b/debian/patches/pkgconfig-vars.patch @@@ -1,0 -1,0 +1,28 @@@ ++Author: Alastair McKinstry ++Origin-Bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=752785 ++Description: Add variables needed to make mpi.pc an alias for ompi.pc ++Last-Updated: 2014-10-07 ++Forwarded: no ++ ++Index: openmpi-1.6.5/ompi/tools/wrappers/ompi.pc.in ++=================================================================== ++--- openmpi-1.6.5.orig/ompi/tools/wrappers/ompi.pc.in +++++ openmpi-1.6.5/ompi/tools/wrappers/ompi.pc.in ++@@ -15,7 +15,7 @@ libdir=@libdir@ ++ # dependencies), so only list these in Libs.private. ++ # ++ Libs: -L${libdir} @OMPI_WRAPPER_EXTRA_LDFLAGS@ -lmpi ++-Libs.private: @OMPI_WRAPPER_EXTRA_LIBS@ +++Libs.private: @OMPI_WRAPPER_EXTRA_LIBS@ -lmpi_f90 -lmpi_f77 -lmpi ++ # ++ # It is safe to hard-wire the -I before the EXTRA_INCLUDES because it ++ # will either contain "openmpi" or be blank. Hence, it'll either ++@@ -23,3 +23,8 @@ Libs.private: @OMPI_WRAPPER_EXTRA_LIBS@ ++ # redundant (ick), but safe. ++ # ++ Cflags: -I${includedir} -I${includedir}/@OMPI_WRAPPER_EXTRA_INCLUDES@ @OMPI_WRAPPER_EXTRA_CPPFLAGS@ @OMPI_WRAPPER_EXTRA_CFLAGS@ +++# +++# Add variables to be queried in specific cases. Match variables in mpich.pc +++cxxflags= -I -I/@OMPI_WRAPPER_EXTRA_INCLUDES@ @OMPI_WRAPPER_EXTRA_CPPFLAGS@ @OMPI_WRAPPER_EXTRA_CXXFLAGS@ +++fcflags= -I -I/@OMPI_WRAPPER_EXTRA_INCLUDES@ @OMPI_WRAPPER_EXTRA_CPPFLAGS@ @OMPI_WRAPPER_EXTRA_FCFLAGS@ +++fflags= -I -I/@OMPI_WRAPPER_EXTRA_INCLUDES@ @OMPI_WRAPPER_EXTRA_CPPFLAGS@ @OMPI_WRAPPER_EXTRA_FFLAGS@ diff --cc debian/patches/ppc64el-support.patch index 00000000,00000000..1f170c6b new file mode 100644 --- /dev/null +++ b/debian/patches/ppc64el-support.patch @@@ -1,0 -1,0 +1,14 @@@ ++Description: Attempt ppc64el build. ++Author: Dimitri John Ledkov ++ ++--- openmpi-1.6.5.orig/opal/config/opal_config_asm.m4 +++++ openmpi-1.6.5/opal/config/opal_config_asm.m4 ++@@ -949,7 +949,7 @@ AC_DEFUN([OMPI_CONFIG_ASM],[ ++ OMPI_GCC_INLINE_ASSIGN='"or %0,[$]0,[$]0" : "=&r"(ret)' ++ ;; ++ ++- powerpc-*|powerpc64-*) +++ powerpc-*|powerpc64-*|powerpc64le-*) ++ OMPI_CHECK_POWERPC_REG ++ if test "$ac_cv_sizeof_long" = "4" ; then ++ ompi_cv_asm_arch="POWERPC32" diff --cc debian/patches/series index 00000000,00000000..846e8b85 new file mode 100644 --- /dev/null +++ b/debian/patches/series @@@ -1,0 -1,0 +1,20 @@@ ++ompi_autogen_sh.patch ++build_hurd ++manpage_macros ++# ARM support is incorporated upstream ++#arm_support ++# Link fix is obsolete, since we do not ship .la files anymore ++#openmpi-link-fix ++#configure_arm_fix.patch ++# 658600: Regression of bug 531522 ++#fix-fakeroot-execution.patch ++arm_detection.diff ++fix-bashims.diff ++fix-testsuite-compile ++mips-detection.diff ++mips-support-upstream-1.7.3.diff ++mips-support-fix.diff ++basic-arm64-support.diff ++ppc64el-support.patch ++alpha_badatomic.patch ++pkgconfig-vars.patch diff --cc debian/rules index 00000000,00000000..bcb8e608 new file mode 100755 --- /dev/null +++ b/debian/rules @@@ -1,0 -1,0 +1,100 @@@ ++#!/usr/bin/make -f ++ ++# export DH_VERBOSE=1 ++ ++DPKG_EXPORT_BUILDFLAGS = 1 ++include /usr/share/dpkg/buildflags.mk ++ ++ifeq (sparc,$(DEB_HOST_GNU_CPU)) ++ CFLAGS += -mcpu=v9 ++endif ++ ++# BLCR checkpointing support ++BLCR_ARCH := "amd64 armel armhf i386 powerpc" ++ifneq (,$(findstring $(DEB_HOST_ARCH),$(BLCR_ARCH))) ++ CHKPT = --enable-ft-thread --with-ft=cr --with-blcr=/usr --with-blcr-libdir=/usr/lib ++endif ++ ++# Memory affinity support ++NUMA_ARCH := "amd64 i386 ia64 mips mipsel powerpc" ++ifneq (,$(findstring $(DEB_HOST_ARCH),$(NUMA_ARCH))) ++ NUMA = --with-libnuma=/usr --with-libnuma-libdir=/usr/lib ++endif ++ ++TORQUE = --without-tm ++ ++# Flags for the static build: see bug #502232 ++#STATIC_CONFIG_PARAMS = --enable-static ++ ++# Enable MPI thread support (user request, see #602132). Progress threads are known ++# to not work, so we do not enable them until they are supported. ++MPI_THREADS := --with-threads=posix --enable-opal-multi-threads ++ ++%: ++ dh $@ --parallel #--with autotools_dev ++ ++override_dh_auto_configure: ++ ./autogen.sh ++ dh_auto_configure -- \ ++ $(CHKPT) $(NUMA) $(TORQUE) \ ++ $(MPI_THREADS) \ ++ --disable-silent-rules \ ++ --with-hwloc=/usr/ \ ++ --with-libltdl=external \ ++ --with-devel-headers \ ++ --with-slurm \ ++ --with-sge \ ++ --enable-heterogeneous \ ++ --disable-vt \ ++ --sysconfdir=/etc/openmpi \ ++ --libdir=\$${prefix}/lib/openmpi/lib \ ++ --includedir=\$${prefix}/lib/openmpi/include ++ ++override_dh_install: ++# Strip rpath info from all executables and libraries. ++ find debian/tmp/ -type f -perm -+x -a ! -name '*.la' -a ! -name '*.mod' -exec chrpath -d '{}' \; ++# Rename the compiler and startup wrappers. ++## for f in mpic++ mpicc mpiCC mpicxx mpiexec mpif77 mpif90 mpirun opalc++ opalcc ortec++ ortecc orteCC ; do \ ## ++ for f in mpic++ mpicc mpiCC mpicxx mpiexec mpif77 mpif90 mpirun ; do \ ++ if test -f debian/tmp/usr/bin/$${f}; then \ ++ mv debian/tmp/usr/bin/$${f} debian/tmp/usr/bin/$${f}.openmpi ; \ ++ fi; \ ++ done ++# Rename the compiler wrapper man pages. ++ for f in mpic++ mpicc mpicxx mpiexec mpif77 mpif90 mpirun ; do \ ++ if test -f debian/tmp/usr/share/man/man1/$${f}.1; then \ ++ mv debian/tmp/usr/share/man/man1/$${f}.1 debian/tmp/usr/share/man/man1/$${f}.openmpi.1 ; \ ++ fi; \ ++ if test -f debian/tmp/usr/share/man/man1/$${f}.3; then \ ++ mv debian/tmp/usr/share/man/man3/$${f}.3 debian/tmp/usr/share/man/man1/$${f}.openmpi.3 ; \ ++ fi; \ ++ done ++ cd debian/tmp/usr/share/man/man3; \ ++ for f in *.3; do \ ++ mv $$f $$(echo $$f|sed -e "s|\.3|.openmpi.3|g"); \ ++ done; \ ++ ++# Rename orte-bootproxy.sh to orte-bootproxy ++ if test -f debian/tmp/usr/bin/orte-bootproxy.sh; then \ ++ mv debian/tmp/usr/bin/orte-bootproxy.sh debian/tmp/usr/bin/orte-bootproxy; \ ++ fi ++# Remove dangling symlink(s) ++ rm -f debian/tmp/usr/share/man/man1/mpiCC.1 ++ rm -f debian/tmp/usr/share/man/man1/orteCC.1 ++# Remove COPYRIGHT file of ptmalloc2. It's reproduced in debian/copyright. ++ rm -f -r debian/tmp/usr/share/openmpi/doc/ ++# Continue as usual ++ dh_install ++ ++override_dh_fixperms: ++ chmod 0644 debian/tmp/usr/lib/openmpi/lib/mpi.mod ++ dh_fixperms ++ ++override_dh_installdocs: ++ dh_installdocs --all AUTHORS NEWS README ++ ++override_dh_shlibdeps: ++ dh_shlibdeps -l$(CURDIR)/debian/tmp/usr/lib/openmpi/lib -- --ignore-missing-info ++ ++override_dh_strip: ++ dh_strip --dbg-package=libopenmpi1.6-dbg diff --cc debian/source/format index 00000000,00000000..163aaf8d new file mode 100644 --- /dev/null +++ b/debian/source/format @@@ -1,0 -1,0 +1,1 @@@ ++3.0 (quilt) diff --cc debian/watch index 00000000,00000000..39a173a8 new file mode 100644 --- /dev/null +++ b/debian/watch @@@ -1,0 -1,0 +1,2 @@@ ++version=3 ++http://www.open-mpi.org/software/ompi/v1.6/ .*/openmpi-([\d+\.]+)\.tar\.gz