New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for a custom built dynamic loader #866
Add support for a custom built dynamic loader #866
Conversation
- Add PatchELF utility for patching ELF binaries in post-install step. - Do ELF relocation for bin/$SCRAM_ARCH and test/$SCRAM_ARCH using CMS_INSTALL_PREFIX. - Relocation is only done for slc6_amd64_* (current production architecture for CMSSW_7_2_X). Signed-off-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
This will not work on mac. Can you please add the relevant checks? |
@davidlt , can you put all the new in %islinux? |
also please fix these:
|
Signed-off-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
Signed-off-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
Updated. That should do it. |
Looks much better now. Just a minor fix
By the way what will happen if changeDynLoader is not set for a project? gcc-toolfile will set LDFLAGS=-Wl,-dynamic-linker,@GLIBC_ROOT@/lib64/ld.so , so if changeDynLoader is not set this mean there will be no relocation at install time .... right? |
Signed-off-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
Must be blind. Cleaned You are correct |
- BuildFile must add LDFLAGS rule for a custom dynamic loader - We only relocate ELF binaries, which were built with a dynamic loader from CMSDIST Signed-off-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
- Drop hard dependency on glibc in gcc-toolfile.spec - Remove a switch allowing to control post-install relocation. Everything is now done based on .interp section content. If ELF binary has .interp with $SCRAM_ARCH/external/glibc in path we then do post-install relocation on it. Signed-off-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
Add support for a custom built dynamic loader.
step.
bin/$SCRAM_ARCH
andtest/$SCRAM_ARCH
usingCMS_INSTALL_PREFIX
.architecture for CMSSW_7_2_X).
This makes
IB/CMSSW_7_2_X/stable
andIB/CMSSW_7_2_X/next
identical.Signed-off-by: David Abdurachmanov David.Abdurachmanov@cern.ch