diff mbox

Disable static build for libjava

Message ID 4E1875CA.9050309@ubuntu.com
State New
Headers show

Commit Message

Matthias Klose July 9, 2011, 3:37 p.m. UTC
On 07/07/2011 10:35 PM, Ralf Wildenhues wrote:
> Hi Matthias,
> 
> On Thu, Jul 07, 2011 at 10:26:59PM +0200, Jakub Jelinek wrote:
>> On Thu, Jul 07, 2011 at 10:22:37PM +0200, Matthias Klose wrote:
>>> +AC_PROG_LIBTOOL
> 
> This tests the wrong compiler and toolchain.  The compiler you want
> to test doesn't exist yet at the time this configure script is run.
> So you might as well deduce the switch you need from a fixed set or
> other GCC configure data.
> 
> Or you put AC_PROG_LIBTOOL in libjava/ but pass down the value of
> enable_static_libjava as --en/disable-static there.

here is the updated patch. AC_PROG_LIBTOOL is already called in libjava/

ok to install?

  Matthias
<toplevel>

2011-07-09  Matthias Klose  <doko@ubuntu.com>

	* Makefile.tpl (EXTRA_CONFIGARGS_LIBJAVA): Define.
	* Makefile.def (target_modules/libjava): Pass
	$(EXTRA_CONFIGARGS_LIBJAVA).
	* configure.ac: Pass --disable-static in EXTRA_CONFIGARGS_LIBJAVA,
	if not configured with --enable-static-libjava.
	* Makefile.in: Regenerate.
	* configure: Likewise.

 
gcc/

2011-07-09  Matthias Klose  <doko@ubuntu.com>

	* doc/install.texi: Document --enable-static-libjava.

Comments

Ralf Wildenhues July 16, 2011, 6:06 a.m. UTC | #1
* Matthias Klose wrote on Sat, Jul 09, 2011 at 05:37:46PM CEST:
> On 07/07/2011 10:35 PM, Ralf Wildenhues wrote:
> > On Thu, Jul 07, 2011 at 10:26:59PM +0200, Jakub Jelinek wrote:
> >> On Thu, Jul 07, 2011 at 10:22:37PM +0200, Matthias Klose wrote:
> >>> +AC_PROG_LIBTOOL
> > 
> > This tests the wrong compiler and toolchain.  The compiler you want
> > to test doesn't exist yet at the time this configure script is run.
> > So you might as well deduce the switch you need from a fixed set or
> > other GCC configure data.
> > 
> > Or you put AC_PROG_LIBTOOL in libjava/ but pass down the value of
> > enable_static_libjava as --en/disable-static there.
> 
> here is the updated patch. AC_PROG_LIBTOOL is already called in libjava/
> 
> ok to install?

OK, thanks.

Cheers,
Ralf

> <toplevel>
> 
> 2011-07-09  Matthias Klose  <doko@ubuntu.com>
> 
> 	* Makefile.tpl (EXTRA_CONFIGARGS_LIBJAVA): Define.
> 	* Makefile.def (target_modules/libjava): Pass
> 	$(EXTRA_CONFIGARGS_LIBJAVA).
> 	* configure.ac: Pass --disable-static in EXTRA_CONFIGARGS_LIBJAVA,
> 	if not configured with --enable-static-libjava.
> 	* Makefile.in: Regenerate.
> 	* configure: Likewise.
> 
>  
> gcc/
> 
> 2011-07-09  Matthias Klose  <doko@ubuntu.com>
> 
> 	* doc/install.texi: Document --enable-static-libjava.
diff mbox

Patch

Index: Makefile.tpl
===================================================================
--- Makefile.tpl	(revision 176072)
+++ Makefile.tpl	(working copy)
@@ -319,6 +319,8 @@ 
 HOST_LIBELFLIBS = @libelflibs@
 HOST_LIBELFINC = @libelfinc@
 
+EXTRA_CONFIGARGS_LIBJAVA = @EXTRA_CONFIGARGS_LIBJAVA@
+
 # ----------------------------------------------
 # Programs producing files for the BUILD machine
 # ----------------------------------------------
Index: Makefile.def
===================================================================
--- Makefile.def	(revision 176072)
+++ 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="$(EXTRA_CONFIGARGS_LIBJAVA)"; };
 target_modules = { module= zlib; };
 target_modules = { module= boehm-gc; };
 target_modules = { module= rda; };
Index: configure.ac
===================================================================
--- configure.ac	(revision 176072)
+++ configure.ac	(working copy)
@@ -443,7 +443,21 @@ 
   ;;
 esac
 
+AC_ARG_ENABLE(static-libjava,
+[AS_HELP_STRING([[--enable-static-libjava[=ARG]]],
+		[build static libjava @<:@default=no@:>@])],
+ENABLE_STATIC_LIBJAVA=$enableval,
+ENABLE_STATIC_LIBJAVA=no)
+enable_static_libjava=
+if test "${ENABLE_STATIC_LIBJAVA}" = "yes" ; then
+  enable_static_libjava=yes
+fi
 
+if test x$enable_static_libjava != xyes ; then
+  EXTRA_CONFIGARGS_LIBJAVA=--disable-static
+fi
+AC_SUBST(EXTRA_CONFIGARGS_LIBJAVA)
+
 # Disable libmudflap on some systems.
 if test x$enable_libmudflap = x ; then
     case "${target}" in
Index: gcc/doc/install.texi
===================================================================
--- gcc/doc/install.texi	(revision 176072)
+++ gcc/doc/install.texi	(working copy)
@@ -1968,6 +1968,10 @@ 
 @item --enable-browser-plugin
 Build the gcjwebplugin web browser plugin.
 
+@item --enable-static-libjava
+Build static libraries in libjava. The default is to only build shared
+libraries.
+
 @table @code
 @item ansi
 Use the single-byte @code{char} and the Win32 A functions natively,