From: David Daney <david.daney@cavium.com>
To: Matthias Klose <doko@ubuntu.com>
Cc: GCJ-patches <java-patches@gcc.gnu.org>,
GCC Patches <gcc-patches@gcc.gnu.org>,
Andrew Haley <aph@redhat.com>, David Daney <ddaney@avtrex.com>
Subject: Re: [patch] Disable static build for libjava
Date: Thu, 07 Jul 2011 16:51:00 -0000 [thread overview]
Message-ID: <4E15E3F6.3050502@cavium.com> (raw)
In-Reply-To: <4E15DE84.5030809@ubuntu.com>
On 07/07/2011 09:27 AM, Matthias Klose wrote:
> 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.
>
My autoconf fu is not what it used to be. It is fine if static
libraries are disabled by default, but it should be possible to enable
them from the configure command line. It is unclear to me if this patch
does that.
Also I would like to go on record as disagreeing with the statement that
'static libjava build isn't useful out of the box'
David Daney
> 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
>
>
next prev parent reply other threads:[~2011-07-07 16:51 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-07 16:28 Matthias Klose
2011-07-07 16:51 ` David Daney [this message]
2011-07-07 16:58 ` Matthias Klose
2011-07-07 17:02 ` David Daney
2011-07-07 17:56 ` Andrew Haley
2011-07-07 20:22 ` Matthias Klose
2011-07-07 20:27 ` Jakub Jelinek
2011-07-07 20:36 ` Ralf Wildenhues
2011-07-09 15:38 ` Matthias Klose
2011-07-11 12:47 ` Andrew Haley
2011-07-16 6:07 ` Ralf Wildenhues
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E15E3F6.3050502@cavium.com \
--to=david.daney@cavium.com \
--cc=aph@redhat.com \
--cc=ddaney@avtrex.com \
--cc=doko@ubuntu.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=java-patches@gcc.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).