[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Add lib prefix to library name in the ltdl preloaded symbol lookup
From: |
Peter Rosin |
Subject: |
Add lib prefix to library name in the ltdl preloaded symbol lookup |
Date: |
Mon, 26 Jan 2009 15:09:20 +0100 |
User-agent: |
Thunderbird 2.0.0.19 (Windows/20081209) |
Hi!
This is from need-lib-prefix.at: main.exeS.c when the test
is run on the tip of the pr-msvc-support branch.
lt__PROGRAM__LTX_preloaded_symbols[] =
{ { "@PROGRAM@", (void *) 0 },
{"foo1.lib", (void *) 0},
{"libfoo1_LTX_i", (void *) &foo1_LTX_i},
{"libfoo1_LTX_f", (void *) &foo1_LTX_f},
{"foo2.lib", (void *) 0},
{"libfoo2_LTX_i", (void *) &libfoo2_LTX_i},
{"libfoo2_LTX_f", (void *) &libfoo2_LTX_f},
{0, (void *) 0}
};
The below patch makes that into
lt__PROGRAM__LTX_preloaded_symbols[] =
{ { "@PROGRAM@", (void *) 0 },
{"libfoo1.lib", (void *) 0},
{"libfoo1_LTX_i", (void *) &foo1_LTX_i},
{"libfoo1_LTX_f", (void *) &foo1_LTX_f},
{"libfoo2.lib", (void *) 0},
{"libfoo2_LTX_i", (void *) &libfoo2_LTX_i},
{"libfoo2_LTX_f", (void *) &libfoo2_LTX_f},
{0, (void *) 0}
};
which works much better.
The need-lib-prefix.at test still works on Cygwin after this test.
Cheers,
Peter
2009-01-26 Peter Rosin <address@hidden>
Add lib prefix to archive name if needed in symbol list.
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): When lib
prefix is required, add it - if needed - to the module name as
well to match what is done to the symbol that is looked up.
diff --git a/libltdl/m4/libtool.m4 b/libltdl/m4/libtool.m4
index 35cdd12..212a973 100644
--- a/libltdl/m4/libtool.m4
+++ b/libltdl/m4/libtool.m4
@@ -3429,7 +3429,7 @@ lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .*
\(.*\)$/extern int \1();/p'
# Transform an extracted symbol line into symbol name and symbol address
lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/
{\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/
{\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^
]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^
]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/
{\"lib\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \(lib[[^
]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^: \([[^ ]]*\) $/ {\\\"lib\1\\\",
(void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void
*) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *)
\&\2},/p'"
# Handle CRLF in mingw tool chain
opt_cr=
- Add lib prefix to library name in the ltdl preloaded symbol lookup,
Peter Rosin <=