fix build failure on Solaris caused by usage of --export-dynamic
authorKarel Gardas <karel.gardas@centrum.cz>
Tue, 18 Oct 2016 19:47:35 +0000 (21:47 +0200)
committerKarel Gardas <karel.gardas@centrum.cz>
Tue, 18 Oct 2016 19:48:04 +0000 (21:48 +0200)
Summary:
This patch fixes build failure on Solaris which is caused
by usage --export-dynamic linker parameter. This parameter is not
supported by Solaris linker. The param itself was added by D2590

Reviewers: bgamari, simonmar, austin

Subscribers: thomie

Differential Revision: https://phabricator.haskell.org/D2606

iserv/ghc.mk

index cab432a..8497313 100644 (file)
@@ -29,10 +29,14 @@ iserv_stage2_dyn_MORE_HC_OPTS += -threaded
 # of overhead to startup and increases the binary sizes) but if you
 # need it there's no alternative.
 ifeq "$(TargetElf)" "YES"
+ifneq "$(TargetOS_CPP)" "solaris2"
+# The Solaris linker does not support --export-dynamic option. It also
+# does not need it since it exports all dynamic symbols by default
 iserv_stage2_MORE_HC_OPTS += -optl-Wl,--export-dynamic
 iserv_stage2_p_MORE_HC_OPTS += -optl-Wl,--export-dynamic
 iserv_stage2_dyn_MORE_HC_OPTS += -optl-Wl,--export-dynamic
 endif
+endif
 
 # Override the default way, because we want a specific version of this
 # program for each way.  Note that it's important to do this even for