summaryrefslogtreecommitdiff
path: root/usr.bin/libtool
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 /usr.bin/libtool
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).
Diffstat (limited to 'usr.bin/libtool')
-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);