summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Espie <espie@cvs.openbsd.org>2012-08-27 11:02:47 +0000
committerMarc Espie <espie@cvs.openbsd.org>2012-08-27 11:02:47 +0000
commit3b5988b0844ec0e8b18be162eccfc071152f3720 (patch)
tree899f0dea2edd7d7bbefe3cee96bbbc7a5fab94c8
parent4f626d2911c82eeab72e48f11002951131b1bcca (diff)
a few libtool users are bogus, they confuse --export-symbols with the
real option -export-symbols. Instead of blindly passing that one to the linker, error out beforehand, so that people know the problem IS libtool usage and not our program. (as exemplified by Todd Fries on ldns).
-rw-r--r--usr.bin/libtool/LT/Mode/Link/Program.pm14
1 files changed, 8 insertions, 6 deletions
diff --git a/usr.bin/libtool/LT/Mode/Link/Program.pm b/usr.bin/libtool/LT/Mode/Link/Program.pm
index 22987868b68..30c8aa95d38 100644
--- a/usr.bin/libtool/LT/Mode/Link/Program.pm
+++ b/usr.bin/libtool/LT/Mode/Link/Program.pm
@@ -1,4 +1,4 @@
-# $OpenBSD: Program.pm,v 1.1 2012/07/13 11:56:13 espie Exp $
+# $OpenBSD: Program.pm,v 1.2 2012/08/27 11:02:46 espie Exp $
# Copyright (c) 2007-2010 Steven Mestdagh <steven@openbsd.org>
# Copyright (c) 2012 Marc Espie <espie@openbsd.org>
@@ -110,11 +110,13 @@ sub link
}
my @linkeropts = ();
- for my $d (@$RPdirs) {
- push(@linkeropts, '-rpath', $d);
- }
- for my $d (keys %$rpath_link) {
- push(@linkeropts, '-rpath-link', $d);
+ if (!$ltconfig->noshared) {
+ for my $d (@$RPdirs) {
+ push(@linkeropts, '-rpath', $d);
+ }
+ for my $d (keys %$rpath_link) {
+ push(@linkeropts, '-rpath-link', $d);
+ }
}
if ($symbolsfile) {
push(@linkeropts, '-retain-symbols-file', $symbolsfile);