Rewrite binary/perllib paths in final executables#197
Rewrite binary/perllib paths in final executables#197boegel merged 3 commits intoeasybuilders:developfrom
Conversation
The Makefile for MUMmer unhelpfully takes it's own build directory and inserts that path into some of the final perl scripts. That is, the final destination path has scripts that still try to load perl library from the build path. This fix identifies those files and lazily fixes the incorrect paths. The fixes are 'lazy' because they use regexes that only check the beginning part of the string, not the full string with an erroneous build directory path. Ergo, a future update to the code that has additional 'use lib [path]' directories might break. That being said, the original authors will be contacted to see if future releases can not assume that the build directory and the install directory are the same. Additionally, the Foundation.pm file needs to be copied out of the build directory and into the install directory. Previously it wasn't.
|
@nyetsche: The idea behind this patch is clear, but it didn't work as expected for me. Also, it relies listing the files to be patched, which is likely to break/be insufficient in future versions, and it also hardcodes the patterns to patch with. |
patch files before copying, avoid explicitly listing patterns or files to patch
|
Looks good, compiled/installed fine. Thanks for the more pythonic rewrite. |
|
OK, good to merge and revisit #196, thanks! |
Rewrite binary/perllib paths in final executables
|
@nyetsche I almost forgot: welcome to EasyBuild! Do make sure you're subscribed to our mailing list, and if you're into IRC, visit us at #easybuild (freenode.net), see https://github.com/hpcugent/easybuild/wiki/Contact . |
Merge branch 'develop' into MUMmer Conflicts: easybuild/easyblocks/m/mummer.py
The Makefile for MUMmer unhelpfully takes it's own build directory
and inserts that path into some of the final perl scripts. That is,
the final destination path has scripts that still try to load perl
library from the build path.
This fix identifies those files and lazily fixes the incorrect
paths. The fixes are 'lazy' because they use regexes that only
check the beginning part of the string, not the full string with
an erroneous build directory path. Ergo, a future update to the
code that has additional 'use lib [path]' directories might break.
That being said, the original authors will be contacted to see if
future releases can not assume that the build directory and the
install directory are the same.
Additionally, the Foundation.pm file needs to be copied out of the
build directory and into the install directory. Previously it wasn't.