RFC: JamVM - Taste the New Flavour! --with-jamvm-src-zip option - committed.
Xerxes Rånby
xerxes at zafena.se
Wed Feb 23 08:47:02 PST 2011
On 2011-02-23 17:35, Dr Andrew John Hughes wrote:
> On 10:27 Wed 23 Feb , Xerxes Rånby wrote:
>> On 2011-02-22 02:48, Xerxes Rånby wrote:
>>> On 2011-02-21 22:40, Robert Lougher wrote:
>>>> Hi,
>>>>
>>>> On 21 February 2011 21:22, Dr Andrew John Hughes<ahughes at redhat.com>
>>>> wrote:
>>>>> On 21:20 Sat 19 Feb , Xerxes Ranby wrote:
>>>>>> Greetings!
>>>>>>
>>>>>> "JamVM's got a shiny new Git repository, which contains the port to the
>>>>>> OpenJDK class-library."
>>>>>> http://draenog.blogspot.com/2011/02/openjdkjamvm-git-repository.html
>>>>>>
>>>>>> The attached patch adds Robert Lougher's new JamVM flavour to Icedtea6!
>>>>>> +stamps/download-jamvm.stamp:
>>>>>> +if BUILD_JAMVM
>>>>>> + if ! echo "$(JAMVM_SHA256SUM) $(JAMVM_SRC_ZIP)" \
>>>>>> + | $(SHA256SUM) --check ; \
>>>>>> + then \
>>>>>> + if [ $(JAMVM_SRC_ZIP) ] ; \
>>>>>> + then \
>>>>>> + mv $(JAMVM_SRC_ZIP) $(JAMVM_SRC_ZIP).old ; \
>>>>>> + fi ; \
>>>>>> + $(WGET) $(JAMVM_URL) -O $(JAMVM_SRC_ZIP); \
>>>>>> + if ! echo "$(JAMVM_SHA256SUM) $(JAMVM_SRC_ZIP)" \
>>>>>> + | $(SHA256SUM) --check ; \
>>>>>> + then echo "ERROR: Bad download of JamVM zip"; false; \
>>>>>> + fi; \
>>>>>> + fi
>>>>>> +endif
>>>>>> + mkdir -p stamps
>>>>>> + touch $@
>>>>> We need an option equivalent to --with-cacao-src-zip. I'd suggest
>>>>> adding this in a follow up patch. As with the drop tarballs, we
>>>>> should verify the checksum for pre-provided tarballs as well as
>>>>> download ones. It should be just a matter of symlinking the tarball
>>>>> here if an alternate one is specified.
>>>>>
>>> Noted, I will add --with-cacao-src-zip in another follow up patch.
>>>
>> Hi again!
>>
>> I have attached the follow up patch to implement the new
>> --with-jamvm-src-zip option.
>>
>> with-jamvm-src-zip.23feb.patch
>>
>> Ok to push?
> Comments inline.
>
>> Cheers
>> Xerxes
>> Index: icedtea6/Makefile.am
>> ===================================================================
>> --- icedtea6.orig/Makefile.am 2011-02-23 09:20:37.000000000 +0100
>> +++ icedtea6/Makefile.am 2011-02-23 09:34:26.000000000 +0100
>> @@ -768,6 +768,9 @@
>>
>> stamps/download-jamvm.stamp:
>> if BUILD_JAMVM
>> +if USE_ALT_JAMVM_SRC_ZIP
>> + ln -sf $(ALT_JAMVM_SRC_ZIP) $(JAMVM_SRC_ZIP)
>> +endif
>> if ! echo "$(JAMVM_SHA256SUM) $(JAMVM_SRC_ZIP)" \
>> | $(SHA256SUM) --check ; \
>> then \
>> Index: icedtea6/acinclude.m4
>> ===================================================================
>> --- icedtea6.orig/acinclude.m4 2011-02-23 09:23:56.000000000 +0100
>> +++ icedtea6/acinclude.m4 2011-02-23 09:30:05.000000000 +0100
>> @@ -875,6 +875,23 @@
>> AC_SUBST(ENABLE_JAMVM)
>> ])
>>
>> +AC_DEFUN([IT_CHECK_WITH_JAMVM_SRC_ZIP],
>> +[
>> + AC_MSG_CHECKING([for a JamVM source zip])
>> + AC_ARG_WITH([jamvm-src-zip],
>> + [AS_HELP_STRING(--with-jamvm-src-zip,specify the location of the JamVM source zip)],
>> + [
>> + ALT_JAMVM_SRC_ZIP=${withval}
>> + AM_CONDITIONAL(USE_ALT_JAMVM_SRC_ZIP, test x = x)
>> + ],
>> + [
>> + ALT_JAMVM_SRC_ZIP="not specified"
>> + AM_CONDITIONAL(USE_ALT_JAMVM_SRC_ZIP, test x != x)
>> + ])
>> + AC_MSG_RESULT(${ALT_JAMVM_SRC_ZIP})
>> + AC_SUBST(ALT_JAMVM_SRC_ZIP)
>> +])
>> +
> It might be cleaner to have one AM_CONDITIONAL:
>
> AM_CONDITIONAL(USE_ALT_JAMVM_SRC_ZIP, test x${ALT_JAMVM_SRC_ZIP} != "xnot specified")
>
> I think the likelihood of the zip being called 'not specified' is suitably low...
>
> Also it would be good to check it's actually a valid file, which should also handle the yes/no
> produced by --with-jamvm-src-zip and --without-jamvm-src-zip.
> Something like:
>
> if [ ! -f ${ALT_JAMVM_SRC_ZIP ] ; then
> AC_MSG_ERROR([Invalid JamVM source zip specified: ${ALT_JAMVM_SRC_ZIP}])
> fi
>
> in the first block.
>
> I realise I'm probably holding this to higher standards than some of the other macros.
> That's because those other macros probably weren't reviewed... ;-)
>
>> AC_DEFUN([IT_CHECK_ENABLE_CACAO],
>> [
>> AC_MSG_CHECKING(whether to use CACAO as VM)
>> Index: icedtea6/configure.ac
>> ===================================================================
>> --- icedtea6.orig/configure.ac 2011-02-23 09:30:52.000000000 +0100
>> +++ icedtea6/configure.ac 2011-02-23 09:31:34.000000000 +0100
>> @@ -177,6 +177,7 @@
>> IT_CHECK_WITH_CACAO_SRC_DIR
>>
>> IT_CHECK_ENABLE_JAMVM
>> +IT_CHECK_WITH_JAMVM_SRC_ZIP
>>
>> IT_DISABLE_OPTIMIZATIONS
>> IT_SET_SHARK_BUILD
>> Index: icedtea6/ChangeLog
>> ===================================================================
>> --- icedtea6.orig/ChangeLog 2011-02-23 09:43:06.000000000 +0100
>> +++ icedtea6/ChangeLog 2011-02-23 10:19:30.000000000 +0100
>> @@ -1,5 +1,16 @@
>> 2011-02-23 Xerxes Ranby <xerxes at zafena.se>
>>
>> + JamVM: configure --with-jamvm-src-zip
>> + * NEWS: Updated.
>> + * Makefile.am (stamps/download-jamvm.stamp):
>> + Link in jamvm source zip dependent on USE_ALT_JAMVM_SRC_ZIP
>> + * acinclude.m4 (IT_CHECK_WITH_JAMVM_SRC_ZIP): New macro.
>> + (USE_ALT_JAMVM_SRC_ZIP): New conditional.
>> + (ALT_JAMVM_SRC_ZIP): New variable.
>> + * configure.ac: Call IT_CHECK_WITH_JAMVM_SRC_ZIP.
>> +
>> +2011-02-23 Xerxes Ranby <xerxes at zafena.se>
>> +
>> JamVM: Try --with-additional-vms=jamvm topping!
>> * NEWS: Updated.
>> * Makefile.am (stamps/add-jamvm.stamp): New make target.
>> Index: icedtea6/NEWS
>> ===================================================================
>> --- icedtea6.orig/NEWS 2011-02-23 09:35:17.000000000 +0100
>> +++ icedtea6/NEWS 2011-02-23 09:39:53.000000000 +0100
>> @@ -18,6 +18,8 @@
>> * Added out-of-the-box JamVM support using --enable-jamvm
>> * Allow building of JamVM beside the default VM by using
>> --with-additional-vms=jamvm
>> +* Distributions can specify the location of the JamVM source zip by using
>> + --with-jamvm-src-zip
>> * Import of OpenJDK6 b21 including upgrade to HotSpot 19
>> - S6961870: More rebranding fixes for templates/gpl-*-header files
>> - S6976186: Shark build system changes
> There's nothing distro-specific about using --with-jamvm-src-zip. I use it
> on a daily basis (and haven't yet tried the JamVM build as it's missing).
> I would just say:
>
> 'Allow the location of the JamVM source zip to be specified using --with-jamvm-src-zip'.
NEWS entry fixed, I have committed initial version to:
http://icedtea.classpath.org/hg/icedtea6/rev/a4352c2385ef
> You should also document it in INSTALL. I just added a JamVM section for you ;-)
Thank you for writing the JamVM INSTALL section!
Cheers
Xerxes
More information about the distro-pkg-dev
mailing list