mirror of
git://git.savannah.gnu.org/libtool.git
synced 2025-01-24 14:24:59 +08:00
* ltmain.in: properly create an export file for a program,
avoiding error messages about not finding it
This commit is contained in:
parent
3d7a703484
commit
5c59d096e1
@ -1,5 +1,8 @@
|
|||||||
1999-03-10 Alexandre Oliva <oliva@dcc.unicamp.br>
|
1999-03-10 Alexandre Oliva <oliva@dcc.unicamp.br>
|
||||||
|
|
||||||
|
* ltmain.in: properly create an export file for a program,
|
||||||
|
avoiding error messages about not finding it
|
||||||
|
|
||||||
* TODO: need to document AC_LIBLTDL_*; static self dlopening
|
* TODO: need to document AC_LIBLTDL_*; static self dlopening
|
||||||
problem fixed
|
problem fixed
|
||||||
|
|
||||||
|
35
ltmain.in
35
ltmain.in
@ -2324,8 +2324,6 @@ extern \"C\" {
|
|||||||
|
|
||||||
if test "$dlself" = yes; then
|
if test "$dlself" = yes; then
|
||||||
$show "generating symbol list for \`$output'"
|
$show "generating symbol list for \`$output'"
|
||||||
export_symbols="$objdir/$output.exp"
|
|
||||||
$run $rm $export_symbols
|
|
||||||
|
|
||||||
# Add our own program objects to the symbol list.
|
# Add our own program objects to the symbol list.
|
||||||
progfiles=`$echo "X$objs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
|
progfiles=`$echo "X$objs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
|
||||||
@ -2334,25 +2332,25 @@ extern \"C\" {
|
|||||||
$run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
|
$run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
|
||||||
done
|
done
|
||||||
|
|
||||||
|
if test -n "$exclude_expsyms"; then
|
||||||
|
$run eval 'egrep -v "^($exclude_expsyms)" "$nlist" > "$nlist"T'
|
||||||
|
$run eval '$mv "$nlist"T "$nlist"'
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -n "$export_symbols_regex"; then
|
||||||
|
$show "egrep -e \"$export_symbols_regex\" \"$nlist\" > \"$nlist\"T"
|
||||||
|
$run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T'
|
||||||
|
$show "$mv \"$nlist\"T \"$nlist\""
|
||||||
|
$run eval '$mv "$nlist"T "$nlist"'
|
||||||
|
fi
|
||||||
|
|
||||||
# Prepare the list of exported symbols
|
# Prepare the list of exported symbols
|
||||||
if test -z "$export_symbols"; then
|
if test -z "$export_symbols"; then
|
||||||
export_symbols="$objdir/$output.exp"
|
export_symbols="$objdir/$output.exp"
|
||||||
$run $rm $export_symbols
|
$run $rm $export_symbols
|
||||||
|
|
||||||
if test -n "$exclude_expsyms"; then
|
|
||||||
$run eval 'egrep -v "^($exclude_expsyms)" "$nlist" > "$nlist"T'
|
|
||||||
$run eval '$mv "$nlist"T "$nlist"'
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test -n "$export_symbols_regex"; then
|
|
||||||
$show "egrep -e \"$export_symbols_regex\" \"$nlist\" > \"$nlist\"T"
|
|
||||||
$run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T'
|
|
||||||
$show "$mv \"$nlist\"T \"$nlist\""
|
|
||||||
$run eval '$mv "$nlist"T "$nlist"'
|
|
||||||
fi
|
|
||||||
|
|
||||||
sed -e 's/^.* \(.*\)$/\1/' < "$nlist" > "$export_symbols"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
sed -e 's/^.* \(.*\)$/\1/' < "$nlist" > "$export_symbols"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for arg in $dlprefiles; do
|
for arg in $dlprefiles; do
|
||||||
@ -2364,6 +2362,11 @@ extern \"C\" {
|
|||||||
# Make sure we have at least an empty file.
|
# Make sure we have at least an empty file.
|
||||||
test -f "$nlist" || : > "$nlist"
|
test -f "$nlist" || : > "$nlist"
|
||||||
|
|
||||||
|
if test -n "$exclude_expsyms"; then
|
||||||
|
$run eval 'egrep -v "^($exclude_expsyms)" "$nlist" > "$nlist"T'
|
||||||
|
$run eval '$mv "$nlist"T "$nlist"'
|
||||||
|
fi
|
||||||
|
|
||||||
# Try sorting and uniquifying the output.
|
# Try sorting and uniquifying the output.
|
||||||
if sort "$nlist" | uniq > "$nlist"T; then
|
if sort "$nlist" | uniq > "$nlist"T; then
|
||||||
$mv "$nlist"T "$nlist"
|
$mv "$nlist"T "$nlist"
|
||||||
|
Loading…
Reference in New Issue
Block a user