[vmkit-commits] [vmkit] r121258 - in /vmkit/branches/multi-vm: Makefile.config.in Makefile.rules autoconf/configure.ac configure tools/Makefile

Gael Thomas gael.thomas at lip6.fr
Wed Dec 8 06:24:31 PST 2010


Author: gthomas
Date: Wed Dec  8 08:24:31 2010
New Revision: 121258

URL: http://llvm.org/viewvc/llvm-project?rev=121258&view=rev
Log:
add a new option to build the toy vm. Modify the Makefile.rule to avoid the systematic rebuiding of FinalMMTk.bc

Modified:
    vmkit/branches/multi-vm/Makefile.config.in
    vmkit/branches/multi-vm/Makefile.rules
    vmkit/branches/multi-vm/autoconf/configure.ac
    vmkit/branches/multi-vm/configure
    vmkit/branches/multi-vm/tools/Makefile

Modified: vmkit/branches/multi-vm/Makefile.config.in
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/Makefile.config.in?rev=121258&r1=121257&r2=121258&view=diff
==============================================================================
--- vmkit/branches/multi-vm/Makefile.config.in (original)
+++ vmkit/branches/multi-vm/Makefile.config.in Wed Dec  8 08:24:31 2010
@@ -13,5 +13,6 @@
 MMTK_PLAN_HEADER = @MMTK_PLAN_HEADER@
 WITH_64 = @WITH_64@
 WITH_LLVM_GCC = @WITH_LLVM_GCC@
+WITH_TOY = @WITH_TOY@
 
 ANT = @ANT@

Modified: vmkit/branches/multi-vm/Makefile.rules
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/Makefile.rules?rev=121258&r1=121257&r2=121258&view=diff
==============================================================================
--- vmkit/branches/multi-vm/Makefile.rules (original)
+++ vmkit/branches/multi-vm/Makefile.rules Wed Dec  8 08:24:31 2010
@@ -131,15 +131,21 @@
 ifneq ($(DISABLE_MMTK_COMPILE), 1)
   ADDITIONAL_ARGS := -load-bc=$(LibDir)/MMTKRuntime.bc 
 
-  all::
-	$(Verb) $(ANT) -buildfile $(PROJ_OBJ_ROOT)/mmtk/java/build.xml
-	$(Echo) Building $(BuildMode) $(JARNAME).jar $(notdir $@)
+all:: $(LibDir)/FinalMMTk.bc
+
+$(LibDir)/FinalMMTk.bc: $(JARNAME).jar $(VMJC)
+	$(Echo) Building $(BuildMode) FinalMMTk $(notdir $@)
 	$(Verb) $(LOPT) -load=$(LibDir)/JITGCPass$(SHLIBEXT) -std-compile-opts -JITGCPass -f $(LibDir)/MMTKAlloc.bc -o $(LibDir)/MMTKAlloc.bc
 	$(Verb) $(VMJC) -std-compile-opts $(ADDITIONAL_ARGS) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -LowerMagic $(PROJ_OBJ_ROOT)/mmtk/java/$(JARNAME).jar -disable-exceptions -disable-cooperativegc -with-clinit=org/mmtk/vm/VM,org/mmtk/utility/*,org/mmtk/policy/*,org/j3/config/* -Dmmtk.hostjvm=org.j3.mmtk.Factory -o $(JARNAME).bc -Dmmtk.properties=$(PROJ_SRC_ROOT)/mmtk/java/vmkit.properties -disable-stubs -assume-compiled -llvm-lazy
 	$(Verb) $(LOPT) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -std-compile-opts -LowerJavaRT -f $(JARNAME).bc -o $(JARNAME)-optimized.bc
 	$(Verb) $(LLVMLD) -r -o $(LibDir)/FinalMMTk.bc $(LibDir)/MMTKAlloc.bc $(JARNAME)-optimized.bc $(LibDir)/MMTKRuntime.bc
 	$(Verb) $(LOPT) -std-compile-opts $(LibDir)/FinalMMTk.bc -o $(LibDir)/FinalMMTk.bc
 	$(Verb) $(LLC) -march=cpp -cppgen=function -cppfor=gcmalloc $(LibDir)/FinalMMTk.bc -o $(PROJ_SRC_ROOT)/mmtk/inline/MMTkInline.inc
+
+$(JARNAME).jar: $(shell find $(PROJ_SRC_ROOT)/mmtk/java/src -type f -name "*.java")
+	$(Echo) Building $(BuildMode) $(JARNAME).jar $(notdir $@)
+	$(Verb) $(ANT) -buildfile $(PROJ_OBJ_ROOT)/mmtk/java/build.xml
+
 endif
 
 endif

Modified: vmkit/branches/multi-vm/autoconf/configure.ac
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/autoconf/configure.ac?rev=121258&r1=121257&r2=121258&view=diff
==============================================================================
--- vmkit/branches/multi-vm/autoconf/configure.ac (original)
+++ vmkit/branches/multi-vm/autoconf/configure.ac Wed Dec  8 08:24:31 2010
@@ -422,6 +422,18 @@
 
 AC_SUBST([WITH_N3])
 
+dnl **************************************************************************
+dnl toy vm
+dnl **************************************************************************
+AC_ARG_WITH(toy,
+       [AS_HELP_STRING(--with-toy=yes|no,
+        [Build the toy virtual machine (default is yes)])],
+       [[WITH_TOY=$withval]],
+       [[WITH_TOY=yes]]
+)
+
+AC_SUBST([WITH_TOY])
+
 dnl===-----------------------------------------------------------------------===
 dnl===
 dnl=== SECTION 4: Check for programs we need and that they are the right version

Modified: vmkit/branches/multi-vm/configure
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/configure?rev=121258&r1=121257&r2=121258&view=diff
==============================================================================
--- vmkit/branches/multi-vm/configure (original)
+++ vmkit/branches/multi-vm/configure Wed Dec  8 08:24:31 2010
@@ -667,6 +667,7 @@
 ac_ct_CXX
 CXXFLAGS
 CXX
+WITH_TOY
 WITH_N3
 monopath
 WITH_N3_MONO
@@ -774,6 +775,7 @@
 with_pnet_local_prefix
 with_pnetlib
 with_mono
+with_toy
 '
       ac_precious_vars='build_alias
 host_alias
@@ -1438,6 +1440,7 @@
                           Pnetlib's mscorlib.dll location (default is
                           /usr/lib/cscc/lib/)
   --with-mono=something   Mono's mscorlib.dll location (no default)
+  --with-toy=yes|no       Build the toy virtual machine (default is yes)
 
 Some influential environment variables:
   CC          C compiler command
@@ -4314,6 +4317,18 @@
 
 
 
+# Check whether --with-toy was given.
+if test "${with_toy+set}" = set; then
+  withval=$with_toy; WITH_TOY=$withval
+else
+  WITH_TOY=yes
+
+fi
+
+
+
+
+
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'

Modified: vmkit/branches/multi-vm/tools/Makefile
URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/multi-vm/tools/Makefile?rev=121258&r1=121257&r2=121258&view=diff
==============================================================================
--- vmkit/branches/multi-vm/tools/Makefile (original)
+++ vmkit/branches/multi-vm/tools/Makefile Wed Dec  8 08:24:31 2010
@@ -26,6 +26,9 @@
   PARALLEL_DIRS += n3-pnetlib
 endif
 
+ifeq ($(WITH_J3), 1)
+  PARALLEL_DIRS += #toy-vm
+endif
 
 include $(LEVEL)/Makefile.common
 





More information about the vmkit-commits mailing list