diff options
author | jfclere <jfclere@13f79535-47bb-0310-9956-ffa450edef68> | 2005-01-11 07:57:42 +0000 |
---|---|---|
committer | jfclere <jfclere@13f79535-47bb-0310-9956-ffa450edef68> | 2005-01-11 07:57:42 +0000 |
commit | df34a3f788ef205c7a8d78b7ac2aa734f0dab744 (patch) | |
tree | f21be2507a9864d06ef8ebefeee5458125800e22 | |
parent | b3cc37e2e4a2ea8f6ad845d477e6da3268f14f1c (diff) | |
download | libapr-df34a3f788ef205c7a8d78b7ac2aa734f0dab744.tar.gz |
Arrange -l logic. (-l apr-1 should be -lapr-1)
git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@124899 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | build/jlibtool.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/build/jlibtool.c b/build/jlibtool.c index d24b8d44e..c2bb89163 100644 --- a/build/jlibtool.c +++ b/build/jlibtool.c @@ -969,6 +969,7 @@ void add_dylink_noinstall(count_chars *cc, const char *arg, int pathlen, /* use -L -llibname to allow to use installed libraries */ void add_minus_l(count_chars *cc, const char *arg) { + char *newarg; char *name = strrchr(arg, '/'); char *file = strrchr(arg, '.'); char *lib = strstr(name, "lib"); @@ -978,10 +979,13 @@ void add_minus_l(count_chars *cc, const char *arg) *file = '\0'; file = name; file = file+4; - push_count_chars(cc, "-L "); - push_count_chars(cc, arg); - push_count_chars(cc, "-l"); - push_count_chars(cc, file); + push_count_chars(cc, "-L"); + push_count_chars(cc, arg); + /* we need one argument like -lapr-1 */ + newarg = malloc(strlen(file) + 3); + strcpy(newarg, "-l"); + strcat(newarg, file); + push_count_chars(cc, newarg); } else { push_count_chars(cc, arg); } @@ -993,9 +997,9 @@ void add_linker_flag_prefix(count_chars *cc, const char *arg) push_count_chars(cc, arg); #else char *newarg; - newarg = (char*)malloc(strlen(arg) + sizeof(LINKER_FLAG_PREFIX)); + newarg = (char*)malloc(strlen(arg) + sizeof(LINKER_FLAG_PREFIX) + 1); strcpy(newarg, LINKER_FLAG_PREFIX); - strcpy(newarg, arg); + strcat(newarg, arg); push_count_chars(cc, newarg); #endif } |