diff mbox

PR ld/18355: --enable-shared doesn't work

Message ID 20150429161220.GA28295@intel.com
State New
Headers show

Commit Message

H.J. Lu April 29, 2015, 4:12 p.m. UTC
When bfd is configured as a shared library, we need to configure zlib
with --enable-host-shared since zlib is used by bfd.  Any comments,
feedbacks, objections?


H.J.
--
	PR ld/18355
	* Makefile.def: Add extra_configure_flags to host zlib.
	* configure.ac (extra_host_zlib_configure_flags): New.  Set
	to --enable-host-shared When bfd is to be built as shared
	library.  AC_SUBST.
	* Makefile.in: Regenerated.
	* configure: Likewise.
---
 Makefile.def |  4 +++-
 Makefile.in  | 20 +++++++++++++-------
 configure    | 10 ++++++++++
 configure.ac |  9 +++++++++
 4 files changed, 35 insertions(+), 8 deletions(-)

Comments

H.J. Lu May 1, 2015, 3:32 p.m. UTC | #1
On Wed, Apr 29, 2015 at 9:12 AM, H.J. Lu <hongjiu.lu@intel.com> wrote:
> When bfd is configured as a shared library, we need to configure zlib
> with --enable-host-shared since zlib is used by bfd.  Any comments,
> feedbacks, objections?
>
>
> H.J.
> --
>         PR ld/18355
>         * Makefile.def: Add extra_configure_flags to host zlib.
>         * configure.ac (extra_host_zlib_configure_flags): New.  Set
>         to --enable-host-shared When bfd is to be built as shared
>         library.  AC_SUBST.
>         * Makefile.in: Regenerated.
>         * configure: Likewise.

I am checking it in.
H.J. Lu July 14, 2015, 3 p.m. UTC | #2
On Fri, May 1, 2015 at 8:32 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Wed, Apr 29, 2015 at 9:12 AM, H.J. Lu <hongjiu.lu@intel.com> wrote:
>> When bfd is configured as a shared library, we need to configure zlib
>> with --enable-host-shared since zlib is used by bfd.  Any comments,
>> feedbacks, objections?
>>
>>
>> H.J.
>> --
>>         PR ld/18355
>>         * Makefile.def: Add extra_configure_flags to host zlib.
>>         * configure.ac (extra_host_zlib_configure_flags): New.  Set
>>         to --enable-host-shared When bfd is to be built as shared
>>         library.  AC_SUBST.
>>         * Makefile.in: Regenerated.
>>         * configure: Likewise.
>
> I am checking it in.
>

I am checking it into GCC.
diff mbox

Patch

diff --git a/Makefile.def b/Makefile.def
index 4e76450..4394188 100644
--- a/Makefile.def
+++ b/Makefile.def
@@ -104,7 +104,9 @@  host_modules= { module= readline; };
 host_modules= { module= sid; };
 host_modules= { module= sim; };
 host_modules= { module= texinfo; no_install= true; };
-host_modules= { module= zlib; no_install=true; no_check=true; bootstrap=true; };
+host_modules= { module= zlib; no_install=true; no_check=true;
+		bootstrap=true;
+	        extra_configure_flags='@extra_host_zlib_configure_flags@';};
 host_modules= { module= gdb; };
 host_modules= { module= expect; };
 host_modules= { module= guile; };
diff --git a/Makefile.in b/Makefile.in
index cc05f7b..8ae261f 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -26714,7 +26714,7 @@  configure-zlib:
 	  $$s/$$module_srcdir/configure \
 	  --srcdir=$${topdir}/$$module_srcdir \
 	  $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
-	  --target=${target_alias}  \
+	  --target=${target_alias} @extra_host_zlib_configure_flags@ \
 	  || exit 1
 @endif zlib
 
@@ -26749,7 +26749,8 @@  configure-stage1-zlib:
 	  $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
 	  --target=${target_alias} \
 	   \
-	  $(STAGE1_CONFIGURE_FLAGS)
+	  $(STAGE1_CONFIGURE_FLAGS) \
+	  @extra_host_zlib_configure_flags@
 @endif zlib-bootstrap
 
 .PHONY: configure-stage2-zlib maybe-configure-stage2-zlib
@@ -26782,7 +26783,8 @@  configure-stage2-zlib:
 	  $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
 	  --target=${target_alias} \
 	   --with-build-libsubdir=$(HOST_SUBDIR)  \
-	  $(STAGE2_CONFIGURE_FLAGS)
+	  $(STAGE2_CONFIGURE_FLAGS) \
+	  @extra_host_zlib_configure_flags@
 @endif zlib-bootstrap
 
 .PHONY: configure-stage3-zlib maybe-configure-stage3-zlib
@@ -26815,7 +26817,8 @@  configure-stage3-zlib:
 	  $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
 	  --target=${target_alias} \
 	   --with-build-libsubdir=$(HOST_SUBDIR)  \
-	  $(STAGE3_CONFIGURE_FLAGS)
+	  $(STAGE3_CONFIGURE_FLAGS) \
+	  @extra_host_zlib_configure_flags@
 @endif zlib-bootstrap
 
 .PHONY: configure-stage4-zlib maybe-configure-stage4-zlib
@@ -26848,7 +26851,8 @@  configure-stage4-zlib:
 	  $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
 	  --target=${target_alias} \
 	   --with-build-libsubdir=$(HOST_SUBDIR)  \
-	  $(STAGE4_CONFIGURE_FLAGS)
+	  $(STAGE4_CONFIGURE_FLAGS) \
+	  @extra_host_zlib_configure_flags@
 @endif zlib-bootstrap
 
 .PHONY: configure-stageprofile-zlib maybe-configure-stageprofile-zlib
@@ -26881,7 +26885,8 @@  configure-stageprofile-zlib:
 	  $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
 	  --target=${target_alias} \
 	   --with-build-libsubdir=$(HOST_SUBDIR)  \
-	  $(STAGEprofile_CONFIGURE_FLAGS)
+	  $(STAGEprofile_CONFIGURE_FLAGS) \
+	  @extra_host_zlib_configure_flags@
 @endif zlib-bootstrap
 
 .PHONY: configure-stagefeedback-zlib maybe-configure-stagefeedback-zlib
@@ -26914,7 +26919,8 @@  configure-stagefeedback-zlib:
 	  $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
 	  --target=${target_alias} \
 	   --with-build-libsubdir=$(HOST_SUBDIR)  \
-	  $(STAGEfeedback_CONFIGURE_FLAGS)
+	  $(STAGEfeedback_CONFIGURE_FLAGS) \
+	  @extra_host_zlib_configure_flags@
 @endif zlib-bootstrap
 
 
diff --git a/configure b/configure
index 97250fa..426eece 100755
--- a/configure
+++ b/configure
@@ -643,6 +643,7 @@  CXXFLAGS_FOR_TARGET
 CFLAGS_FOR_TARGET
 DEBUG_PREFIX_CFLAGS_FOR_TARGET
 SYSROOT_CFLAGS_FOR_TARGET
+extra_host_zlib_configure_flags
 extra_host_libiberty_configure_flags
 stage1_languages
 extra_linker_plugin_flags
@@ -6585,15 +6586,24 @@  fi
 
 # Sometimes we have special requirements for the host libiberty.
 extra_host_libiberty_configure_flags=
+extra_host_zlib_configure_flags=
 case " $configdirs " in
   *" lto-plugin "* | *" libcc1 "*)
     # When these are to be built as shared libraries, the same applies to
     # libiberty.
     extra_host_libiberty_configure_flags=--enable-shared
     ;;
+  *" bfd "*)
+    # When bfd is to be built as a shared library, the same applies to
+    # zlib.
+    if test "$enable_shared" = "yes"; then
+      extra_host_zlib_configure_flags=--enable-host-shared
+    fi
+    ;;
 esac
 
 
+
 # Produce a warning message for the subdirs we can't configure.
 # This isn't especially interesting in the Cygnus tree, but in the individual
 # FSF releases, it's important to let people know when their machine isn't
diff --git a/configure.ac b/configure.ac
index ef5f5b1..a81d781 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2276,14 +2276,23 @@  fi
 
 # Sometimes we have special requirements for the host libiberty.
 extra_host_libiberty_configure_flags=
+extra_host_zlib_configure_flags=
 case " $configdirs " in
   *" lto-plugin "* | *" libcc1 "*)
     # When these are to be built as shared libraries, the same applies to
     # libiberty.
     extra_host_libiberty_configure_flags=--enable-shared
     ;;
+  *" bfd "*)
+    # When bfd is to be built as a shared library, the same applies to
+    # zlib.
+    if test "$enable_shared" = "yes"; then
+      extra_host_zlib_configure_flags=--enable-host-shared
+    fi
+    ;;
 esac
 AC_SUBST(extra_host_libiberty_configure_flags)
+AC_SUBST(extra_host_zlib_configure_flags)
 
 # Produce a warning message for the subdirs we can't configure.
 # This isn't especially interesting in the Cygnus tree, but in the individual