diff options
author | Mohammad Akhlaghi <mohammad@akhlaghi.org> | 2019-06-13 15:09:23 +0100 |
---|---|---|
committer | Mohammad Akhlaghi <mohammad@akhlaghi.org> | 2019-06-13 15:15:20 +0100 |
commit | 3a68aa3b9830bb9dfbf079807c9ee18a7aaa85f1 (patch) | |
tree | 6976feb25d6ef61b781c8f23bfddf8f82061ab43 | |
parent | d657bbd65e3945d4100afb4715345846fc7430a6 (diff) |
Metastore now has rpath
Until now we hadn't noticed that Metastore's build doesn't include an
`rpath'. As a result I got a crash during a Git commit.
With this commit, on GNU/Linux systems, we now add rpath to the installed
Metastore executable. During the build, I also cleaned up the Metastore
build recipe to be more clear and readable (in particular we only check the
user name and group name when metastore is actually built).
-rw-r--r-- | .file-metadata | bin | 6079 -> 6079 bytes | |||
-rw-r--r-- | reproduce/software/make/basic.mk | 26 |
2 files changed, 16 insertions, 10 deletions
diff --git a/.file-metadata b/.file-metadata Binary files differindex abe932a..08c9203 100644 --- a/.file-metadata +++ b/.file-metadata diff --git a/reproduce/software/make/basic.mk b/reproduce/software/make/basic.mk index 468563b..4620e6e 100644 --- a/reproduce/software/make/basic.mk +++ b/reproduce/software/make/basic.mk @@ -914,21 +914,27 @@ $(ibidir)/metastore: $(tdir)/metastore-$(metastore-version).tar.gz \ # Note that the metastore -O and -G options used in this template # are currently only available in a fork of `metastore' hosted at: # https://github.com/mohammad-akhlaghi/metastore + # + # We want to inform the user if Metastore isn't built, so we don't + # continue the call to `gbuild' with an `&&'. current_dir=$$(pwd); \ $(call gbuild, $<, metastore-$(metastore-version), static,, \ NO_XATTR=1 V=1,,pwd,PREFIX=$(idir)); \ - user=$$(whoami); \ - group=$$(groups | awk '{print $$1}'); \ - cd $$current_dir; \ if [ -f $(ibdir)/metastore ]; then \ + if [ "x$(needpatchelf)" != x ]; then \ + $(ibdir)/patchelf --set-rpath $(ildir) $(ibdir)/metastore; \ + fi; \ + user=$$(whoami); \ + group=$$(groups | awk '{print $$1}'); \ + cd $$current_dir; \ for f in pre-commit post-checkout; do \ - sed -e's|@USER[@]|'$$user'|g' \ - -e's|@GROUP[@]|'$$group'|g' \ - -e's|@BINDIR[@]|$(ibdir)|g' \ - -e's|@TOP_PROJECT_DIR[@]|'$$current_dir'|g' \ - reproduce/software/bash/git-$$f > .git/hooks/$$f \ - && chmod +x .git/hooks/$$f \ - && echo "Metastore (forked) $(metastore-version)" > $@; \ + sed -e's|@USER[@]|'$$user'|g' \ + -e's|@GROUP[@]|'$$group'|g' \ + -e's|@BINDIR[@]|$(ibdir)|g' \ + -e's|@TOP_PROJECT_DIR[@]|'$$current_dir'|g' \ + reproduce/software/bash/git-$$f > .git/hooks/$$f \ + && chmod +x .git/hooks/$$f \ + && echo "Metastore (forked) $(metastore-version)" > $@; \ done; \ else \ echo; echo; echo; \ |