Skip to content

Rewrite binary/perllib paths in final executables#197

Merged
boegel merged 3 commits intoeasybuilders:developfrom
nyetsche:mummer
May 23, 2013
Merged

Rewrite binary/perllib paths in final executables#197
boegel merged 3 commits intoeasybuilders:developfrom
nyetsche:mummer

Conversation

@nyetsche
Copy link
Copy Markdown
Contributor

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.

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.
@boegel
Copy link
Copy Markdown
Member

boegel commented May 23, 2013

@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.
My cleanup patch on top of this provided in nyetsche#1 fixes this, please review it. If you merge it in to your repository, it will automagically be included here.
I'll then do what's necessary to fix #196 to also include this stuff.

patch files before copying, avoid explicitly listing patterns or files to patch
@nyetsche
Copy link
Copy Markdown
Contributor Author

Looks good, compiled/installed fine. Thanks for the more pythonic rewrite.

@nyetsche nyetsche closed this May 23, 2013
@nyetsche nyetsche reopened this May 23, 2013
@boegel
Copy link
Copy Markdown
Member

boegel commented May 23, 2013

OK, good to merge and revisit #196, thanks!

boegel added a commit that referenced this pull request May 23, 2013
Rewrite binary/perllib paths in final executables
@boegel boegel merged commit b592dd2 into easybuilders:develop May 23, 2013
@boegel
Copy link
Copy Markdown
Member

boegel commented May 23, 2013

@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 .

boegel added a commit to boegel/easybuild-easyblocks that referenced this pull request May 23, 2013
Merge branch 'develop' into MUMmer

Conflicts:
	easybuild/easyblocks/m/mummer.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants