The MPI and environment modules guidelines have been approved by FESCo some weeks ago; please make openmpi conform to them. http://www.fedoraproject.org/wiki/PackagingDrafts/MPI http://meetbot.fedoraproject.org/fedora-meeting/2009-08-14/fedora-meeting.2009-08-14-17.01.html
Can you try the 1.3.3-4 rpms and see if they do an adequate job of fixing this? I think they do, but I'm new at this openmpi stuff and may have missed something.
What comes to mind with a quick look at the spec: - You need to own a complete man page directory tree, as exists in /usr/share/man, that means {,bg,ca, and so on}/man{0p,1,1p, and so on} as these will be needed by packages that are built against OpenMPI. (This needs to be in the main package.) - Do you really need to separate the OpenMPI libraries from the libraries compiled against OpenMPI? I.e. what is the purpose of having %dir %{_libdir}/%{name}/lib/openmpi isn't %dir %{_libdir}/%{name}/lib/ enough? - The module file in %{_datadir}/Modules/modulefiles/%{namearch} is in the wrong place, it should be in %{_sysconfdir}/modulefiles. See http://www.fedoraproject.org/wiki/PackagingDrafts/EnvironmentModules (This was approved at the same time as the MPI guidelines.) - You're missing a blank line before %clean :) ** I'll try to check the new version with a few of my own packages to see if it works as it should.
*** Bug 504357 has been marked as a duplicate of this bug. ***
1: I think it is appropriate for packages that are built under OpenMPI to create and own any subdirectories they need under .../man/. I don't think it's appropriate or needed for OpenMPI to create empty directories Just In Case some other project might need them someday. Directories that are owned by multiple packages are handled just fine by rpm. Hmm, according to my reasoning, the -devel package should own man1 and man7 in addition to man3. Fixed. 2: %dir %{_libdir}/%{name}/lib/openmpi appears to be used by shared objects that are dlopened by the OpenMPI libraries, so they should not be in the system LD_LIBRARY_PATH. %dir %{_libdir}/%{name}/lib/ is for shared objects that must be loaded by ld.so at program startup time, so they need to be in LD_LIBRARY_PATH. 2a: The subdirectory that bothers me is /usr/lib64/openmpi/share/openmpi/, but I don't see anything specific about it in the packaging guidelines, so I'm just leaving it alone. 3: Fixed. 4: Fixed. I should have a new OpenMPI for rawhide (1.3.3-5) built shortly. Please check it out and let me know if it works.
(In reply to comment #4) > 1: I think it is appropriate for packages that are built under OpenMPI to > create and own any subdirectories they need under .../man/. I don't think it's > appropriate or needed for OpenMPI to create empty directories Just In Case some > other project might need them someday. Directories that are owned by multiple > packages are handled just fine by rpm. > > Hmm, according to my reasoning, the -devel package should own man1 and man7 in > addition to man3. Fixed. Ugh, that's exactly what I'm trying to avoid. Putting the directories in the MPI runtime package that the other packages will have to require anyway is the simplest solution there is. %{_fmoddir} already contains the architecture, so you don't need namearch. The Fortran module (mpi.mod) should be installed in %{_fmoddir}/%{name}. The %files section looks quite complicated.. I wouldn't use %dir, I'd use %exclude instead for the files and directories that go into -devel..
Can you do the builds for F-11 as well?
Are you involved with LAM? I just opened bug #523998 about the same thing.
I tried to compile openmpi with fedora 11 because i need "--with-sge" option but i can't install openmpi 1.3.1 because of otfdump and i can't compile 1.3.3 because of %{_fmoddir}. Can you add --with-sge ?
ping?
ping again?
After some discussion dledford and I agreed that openmpi would create and own the man[1245689n] directories but not the hoopy translation ones. I updated the Rawhide packages and built 1.3.3-6 in F-11 Updates Testing. I don't have anything to do with lam, alas. Adding --with-sge should have its own bug. Can you try the F-11 packages from -testing and see if they work?
The definition MPI_PYTHON_SITEARCH /openmpi is wrong, and you are missing the PYTHONPATH prepend from the module.
You just need to add BuildRequires: python-devel to make the python_sitearch definition to work..
This bug appears to have been reported against 'rawhide' during the Fedora 12 development cycle. Changing version to '12'. More information and reason for this action is here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping
I've opened bug #541660 to report the need for the --with-sge option, introduced with openmpi-1.3.
ping? please fix the python issue asap..
*** Bug 560622 has been marked as a duplicate of this bug. ***
This bug appears to have been reported against 'rawhide' during the Fedora 13 development cycle. Changing version to '13'. More information and reason for this action is here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping
The PYTHONPATH variable still needs to be prepended.
OK, this seems to be fixed in openmpi-1.4.1-4. Closing.