https://bugzilla.redhat.com/show_bug.cgi?id=1273579
--- Comment #20 from Zbigniew Jędrzejewski-Szmek <zbyszek(a)in.waw.pl> ---
Python .so files have rpath set, you'll need to get rid of it
[
https://fedoraproject.org/wiki/Packaging:Guidelines#Beware_of_Rpath]. I
haven't look here, but sometimes -DCMAKE_SKIP_RPATH:BOOL=ON works with cmake.
I had to modify the spec file to triple the backslashes in dobuild macro for
all the cmake args (cmake \\\
-DCMAKE_C_FLAGS_RELEASE:STRING="-DNDEBUG" \\\
...)
With that change it builds and installs and crashes in debuginfo generation.
I think you should change all ";" to "&&" in %dobuild,
otherwise errors might
go unnoticed.
(In reply to Ankur Sinha (FranciscoD) from comment #18)
- build serial with python2
- build serial with python3
- build mpich without python
- build openmpi without python
Yeah, that would be the best option. I'm still not sure if that's possible.
./usr/lib64/python{2.7,3.4}/site-packages/nest/pynestkernel.so
links to ./usr/lib64/libnestkernel.so. If the MPI version is built,
it might be possible to link the same pynestkernel.so to
/usr/lib64/openmpi/lib/libnestkernel.so if it has the same symbols.
But I think the spec file looks 80-90% done...
The python subpackages should be called python2-nest and python3-nest
(they can have Provides: pynest). This seems more in line with modern
practice, and the guidelines
[
https://fedoraproject.org/wiki/Packaging:NamingGuidelines#Addon_Packages_...].
%python_provide should be used
[
https://fedoraproject.org/wiki/Packaging:Python#The_.25python_provide_macro,
https://fedoraproject.org/wiki/Packaging:Python#Example_common_spec_file has an
actual example].
Some more recommendations:
- I wouldn't bother with a seperate -connplotter subpackage. People
are more likely to install and use it with the pynest anyway, and it
would simplify packaging a bit.
- Do you really need openmpi-common and openmpi-doc? If they contain
the same stuff as common and doc, you should use them instead.
A symlink in the right place might be necessary.
- define a %global _description and reuse it in all %descriptions.
Though -common and -doc probably don't need a full description.
- python2 and python3 subpackages must Require an exact version of the
main package, because you don't want the user to mix pynestkernel.so
with some different version of libnestkernel.so.
- openmpi or mpich python subpackages should not have Provides: python2-nest,
because they are not interchangeable. (If some other package has a dependency
on python2-nest, it'll break if python2-nest-openmpi is installed instead.)
--
You are receiving this mail because:
You are on the CC list for the bug.
You are always notified about changes to this product and component