aboutsummaryrefslogtreecommitdiff
path: root/include/rpath.h
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@gmail.com>2020-03-07 01:45:07 -0500
committerJoseph Hunkeler <jhunkeler@gmail.com>2020-03-07 01:45:07 -0500
commit2a9eaa0aa4a046bb2dfd4c2aeb1ebbdcff0770b9 (patch)
tree374904f82f827222746c8a4ca40664eba6641d7f /include/rpath.h
parente6d43d723b75ffc489f436238459175eab49d895 (diff)
downloadspmc-2a9eaa0aa4a046bb2dfd4c2aeb1ebbdcff0770b9.tar.gz
Refactor RPATH creation:
* Decreased complexity * Most rpath_* functions accept a FSTree structure now * Fewer calls to chdir() overall * Deeply nested libraries are detected * Libraries are no longer confined to lib/ and /lib64
Diffstat (limited to 'include/rpath.h')
-rw-r--r--include/rpath.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/include/rpath.h b/include/rpath.h
index 742d969..2411b84 100644
--- a/include/rpath.h
+++ b/include/rpath.h
@@ -2,11 +2,12 @@
#define SPM_RPATH_H
Process *patchelf(const char *_filename, const char *_args);
-char *rpath_autodetect(const char *filename);
+FSTree *rpath_libraries_available(const char *root);
+char *rpath_autodetect(const char *filename, FSTree *tree);
int has_rpath(const char *_filename);
char *rpath_get(const char *_filename);
-char *rpath_generate(const char *_filename);
-int rpath_autoset(const char *filename);
+char *rpath_generate(const char *_filename, FSTree *tree);
+int rpath_autoset(const char *filename, FSTree *tree);
int rpath_set(const char *filename, const char *rpath);
#endif //SPM_RPATH_H