This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[patch] Disable static build for libjava
- From: Matthias Klose <doko at ubuntu dot com>
- To: GCJ-patches <java-patches at gcc dot gnu dot org>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>, Andrew Haley <aph at redhat dot com>, David Daney <ddaney at avtrex dot com>
- Date: Thu, 07 Jul 2011 18:27:48 +0200
- Subject: [patch] Disable static build for libjava
As discussed at the Google GCC gathering, disable the build of static libraries
in libjava, which should cut the build time of libjava by 50%. The static
libjava build isn't useful out of the box, and I don't see it packaged by Linux
distributions either.
The AC_PROG_LIBTOOL check is needed to get access to the enable_shared macro.
I'm unsure about the check in the switch construct. Taken from libtool.m4, and
determining the value of enable_shared_with_static_runtimes.
Ok for the trunk?
2011-07-07 Matthias Klose <doko@ubuntu.com>
* Makefile.def (target_modules/libjava): Pass
$(libjava_disable_static).
* configure.ac: Check for libtool, pass --disable-static
in libjava_disable_static.
* Makefile.in: Regenerate.
* configure: Likewise.
Index: Makefile.def
===================================================================
--- Makefile.def (revision 175963)
+++ Makefile.def (working copy)
@@ -132,7 +132,8 @@
target_modules = { module= winsup; };
target_modules = { module= libgloss; no_check=true; };
target_modules = { module= libffi; };
-target_modules = { module= libjava; raw_cxx=true; };
+target_modules = { module= libjava; raw_cxx=true;
+ extra_configure_flags="$(libjava_disable_static)"; };
target_modules = { module= zlib; };
target_modules = { module= boehm-gc; };
target_modules = { module= rda; };
Index: configure.ac
===================================================================
--- configure.ac (revision 175963)
+++ configure.ac (working copy)
@@ -443,6 +443,16 @@
;;
esac
+AC_PROG_LIBTOOL
+if test x$enable_shared = xyes ; then
+ case $host_cpu in
+ cygwin* | mingw* | pw32* | cegcc*)
+ ;;
+ *)
+ libjava_disable_static=--disable-static
+ esac
+fi
+AC_SUBST(libjava_disable_static)
# Disable libmudflap on some systems.
if test x$enable_libmudflap = x ; then