[vmkit-commits] [vmkit] r180411 - move specific rules in their makefile, add a distclean rule
Peter Senna Tschudin
peter.senna at gmail.com
Thu Apr 25 10:09:04 PDT 2013
Author: peter.senna
Date: Thu Apr 25 12:07:22 2013
New Revision: 180411
URL: http://llvm.org/viewvc/llvm-project?rev=180411&view=rev
Log:
move specific rules in their makefile, add a distclean rule
(cherry picked from commit 4c3d85044dfda116113a2a2ee2c55f687130083e)
Modified:
vmkit/trunk/.gitignore
vmkit/trunk/Makefile.common.in
vmkit/trunk/Makefile.rules
vmkit/trunk/autoconf/configure.ac
vmkit/trunk/configure
vmkit/trunk/lib/j3/ClassLib/OpenJDK/Makefile
vmkit/trunk/mmtk/java/Makefile
Modified: vmkit/trunk/.gitignore
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/.gitignore?rev=180411&r1=180410&r2=180411&view=diff
==============================================================================
--- vmkit/trunk/.gitignore (original)
+++ vmkit/trunk/.gitignore Thu Apr 25 12:07:22 2013
@@ -43,3 +43,6 @@ tests/logs.zip
tests/dacapo/*/j3
tests/dacapo/*/ijvm
tests/dacapo/logs
+aclocal.m4
+autom4te.cache/
+configure.bak
Modified: vmkit/trunk/Makefile.common.in
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/Makefile.common.in?rev=180411&r1=180410&r2=180411&view=diff
==============================================================================
--- vmkit/trunk/Makefile.common.in (original)
+++ vmkit/trunk/Makefile.common.in Thu Apr 25 12:07:22 2013
@@ -39,6 +39,12 @@ JAVAC_TARGET := 1.5
GLIBJ = @classpathglibj@
+# Using conditional compilation for now, until a proper interface/architecture
+# is figured out and implemented.
+ifeq (@classpathimpl@,openjdk)
+COMMON_CFLAGS+=-DUSE_OPENJDK
+endif
+
###############################################################################
# host dependent configurations
###############################################################################
@@ -77,12 +83,6 @@ GREP=@GREP@
ENABLE_OPTIMIZED=1
-# Using conditional compilation for now, until a proper interface/architecture
-# is figured out and implemented.
-ifeq (@classpathimpl@,openjdk)
-COMMON_CFLAGS+=-DUSE_OPENJDK
-endif
-
ifeq ($(ENABLE_OPTIMIZED),1)
LLC_CPP_FLAGS :=
LLC_ASM_FLAGS := -O=2 -disable-debug-info-print
Modified: vmkit/trunk/Makefile.rules
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/Makefile.rules?rev=180411&r1=180410&r2=180411&view=diff
==============================================================================
--- vmkit/trunk/Makefile.rules (original)
+++ vmkit/trunk/Makefile.rules Thu Apr 25 12:07:22 2013
@@ -1,34 +1,30 @@
-.PHONY: all tidy clean confclean
+.PHONY: all tidy clean distclean confclean
.SECONDARY:
.SUFFIXES: .c .cpp .cxx .cc .h .hpp .o .a .bc .ll $(SHLIBEXT) $(SUFFIXES)
-ifdef NO
ifeq ($(OPTIMIZED),1)
BUILD_NAME:=Release
ifeq ($(DEBUG),1)
BUILD_NAME:=$(BUILD_NAME)+Debug
endif
ifeq ($(ASSERT),1)
- BUILD_NAME:=$(BUILD_NAME)+Assert
+ BUILD_NAME:=$(BUILD_NAME)+Asserts
endif
else
ifeq ($(DEBUG),1)
BUILD_NAME:=Debug
ifeq ($(ASSERT),1)
- BUILD_NAME:=$(BUILD_NAME)+Assert
+ BUILD_NAME:=$(BUILD_NAME)+Asserts
endif
else
ifeq ($(ASSERT),1)
- BUILD_NAME:=Assert
+ BUILD_NAME:=Asserts
else
BUILD_NAME:=Unoptimized
endif
endif
endif
-else
-BUILD_NAME=Release+Asserts
-endif
ifeq ($(DEBUG),1)
COMMON_CFLAGS+=-g
@@ -54,7 +50,7 @@ endif
###############################################################################
# Recursive target managment
###############################################################################
-RECURSIVE_TARGETS=all clean
+RECURSIVE_TARGETS=all clean distclean
$(RECURSIVE_TARGETS)::
$(Verb) for f in $(DIRS); do \
@@ -70,7 +66,11 @@ clean::
$(Echo) "Cleaning compilation files"
$(Verb) rm -Rf $(BUILD_NAME)
-confclean: distclean
+distclean::
+ $(Echo) "Cleaning all compilation files"
+ $(Verb) rm -Rf Release* Debug* Asserts* Unoptimized
+
+confclean: clean
$(Echo) Cleaning configuration
$(Verb) rm -Rf $(PROJ_OBJ_ROOT)/Makefile.common
$(Verb) rm -Rf $(PROJ_OBJ_ROOT)/config.status $(PROJ_OBJ_ROOT)/config.log
@@ -84,7 +84,7 @@ confclean: distclean
###############################################################################
#SELF=$(PROJ_SRC_ROOT)/Makefile.rules $(PROJ_OBJ_ROOT)/Makefile.common Makefile
-$(LEVEL)/Makefile.common: $(PROJ_SRC_ROOT)/Makefile.common
+$(LEVEL)/Makefile.common: $(PROJ_OBJ_ROOT)/Makefile.common
define define_config_rule
$$(PROJ_OBJ_ROOT)/$1: $$(PROJ_SRC_ROOT)/$1.in $$(PROJ_SRC_ROOT)/configure
@@ -126,14 +126,14 @@ MODULE=$(LIBRARY)
all:: $(LIB_DIR)/$(LIBRARY)$(SHLIBEXT)
endif
-###############################################################################
-# Module
-###############################################################################
ifdef MODULE_WITH_GC
MODULE=$(MODULE_WITH_GC)
WITH_GC=-gc
endif
+###############################################################################
+# Module
+###############################################################################
ifdef MODULE
MODULE_A=$(LIB_DIR)/lib$(MODULE).a
@@ -208,82 +208,9 @@ $(BUILD_DIR)/$(VMKIT_RUNTIME_OUT): $(VMK
endif
-#
-#
-# OLD BUILD SYSTEM
-#
-#
-
-# Set the LLVM build file location
-LLVMBuildTool := $(LLVM_SRC_ROOT)/utils/llvm-build/llvm-build
-
###############################################################################
-# RUN_ANT: Provide rules to build MMTk into a .o file and inlining facilities.
+# object rules
###############################################################################
-
-ifdef RUN_ANT
-
-MMTkLib = $(LIB_DIR)/libFinalMMTk.a
-
-ifeq ($(shell [ ! -e $(MMTkLib) ] && echo "1"), 1)
- COMPILE_MMTK = 1
-endif
-
-ifeq ($(COMPILE_MMTK), 1)
-all::
- $(Verb) $(ANT) -buildfile $(PROJ_OBJ_ROOT)/mmtk/java/build.xml
- $(Echo) "**[12] Building $(BuildMode) $(JARNAME).jar $(notdir $@) $(OPT_MMTK_FLAGS)"
- $(Verb) $(LOPT) -load=$(LIB_DIR)/JITGCPass$(SHLIBEXT) $(OPT_MMTK_FLAGS) -JITGCPass -f $(LIB_DIR)/MMTKAlloc.bc -o $(LIB_DIR)/MMTKAlloc.bc
- $(Verb) $(VMJC) $(VMJC_MMTK_FLAGS) -load=$(LIB_DIR)/MMTKRuntime$(SHLIBEXT) -load=$(LIB_DIR)/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
- $(Verb) $(LOPT) -load=$(LIB_DIR)/MMTKMagic$(SHLIBEXT) $(OPT_MMTK_FLAGS) -LowerJavaRT -f $(JARNAME).bc -o $(JARNAME)-optimized.bc
- $(Verb) $(LLVMLINK) -o $(LIB_DIR)/FinalMMTk.bc $(LIB_DIR)/MMTKAlloc.bc $(JARNAME)-optimized.bc $(LIB_DIR)/MMTKRuntime.bc
- $(Verb) $(LOPT) $(LIB_DIR)/FinalMMTk.bc -load=$(PREPARE_CODE) $(OPT_MMTK_FLAGS) -StaticGCPass -o $(LIB_DIR)/FinalMMTk.bc
- $(Verb) $(MKDIR) $(BUILD_DIR)
- $(Verb) $(LLC) $(LLC_ASM_FLAGS) -disable-fp-elim -disable-cfi -load=$(PREPARE_CODE) $(LIB_DIR)/FinalMMTk.bc -o $(BUILD_DIR)/FinalMMTk.s
- $(Verb) $(GREP) -v '\.loc[^0-9]\+[0-9]\+ 0' $(BUILD_DIR)/FinalMMTk.s > $(BUILD_DIR)/FinalMMTk.s.remove_invalid_dot_loc
- $(Verb) $(MV) -f $(BUILD_DIR)/FinalMMTk.s.remove_invalid_dot_loc $(BUILD_DIR)/FinalMMTk.s
- $(Verb) $(CLANG) -c $(BUILD_DIR)/FinalMMTk.s -o $(BUILD_DIR)/FinalMMTk.o
- $(Verb) $(Archive) $(LIB_DIR)/libFinalMMTk.a $(BUILD_DIR)/FinalMMTk.o
- $(Verb) $(Ranlib) $(LIB_DIR)/libFinalMMTk.a
- $(Verb) $(LLC) $(LLC_CPP_FLAGS) -march=cpp -cppgen=function -cppfor=VTgcmalloc $(LIB_DIR)/FinalMMTk.bc -o $(PROJ_SRC_ROOT)/mmtk/inline/MMTkMallocInline.inc
- $(Verb) $(LLC) $(LLC_CPP_FLAGS) -march=cpp -cppgen=function -cppfor=fieldWriteBarrier $(LIB_DIR)/FinalMMTk.bc -o $(PROJ_SRC_ROOT)/mmtk/inline/MMTkFieldWriteInline.inc
- $(Verb) $(LLC) $(LLC_CPP_FLAGS) -march=cpp -cppgen=function -cppfor=arrayWriteBarrier $(LIB_DIR)/FinalMMTk.bc -o $(PROJ_SRC_ROOT)/mmtk/inline/MMTkArrayWriteInline.inc
- $(Verb) $(LLC) $(LLC_CPP_FLAGS) -march=cpp -cppgen=function -cppfor=nonHeapWriteBarrier $(LIB_DIR)/FinalMMTk.bc -o $(PROJ_SRC_ROOT)/mmtk/inline/MMTkNonHeapWriteInline.inc
-endif
-
-clean-local::
- $(Verb) $(RM) -rf classes $(JARNAME).jar $(JARNAME).bc $(JARNAME)-optimized.bc $(BUILD_DIR)
-endif
-
-###############################################################################
-# COMPILE_OPENJDK_ZIP: Build the specified java sources and zip them up
-###############################################################################
-ifeq ($(COMPILE_OPENJDK_ZIP), 1)
-
-$(error must verify the open jdk building process)
-
-# Some variables
-VMKIT_OPENJDK_ZIP=$(PROJ_OBJ_DIR)/vmkit-openjdk.zip
-CLASSES_DIR=$(PROJ_OBJ_DIR)/classes
-
-all-local:: $(VMKIT_OPENJDK_ZIP)
-clean-local::
- -$(Verb) $(RM) -f $(CLASSES_DIR) $(VMKIT_OPENJDK_ZIP)
-
-$(VMKIT_OPENJDK_ZIP): $(addprefix $(PROJ_SRC_DIR)/,$(OPENJDK_JAVA_SOURCES))
- $(Echo) "**[13] Building OpenJDK java sources into zip"
- -$(Verb) $(RM) -rf $@ $(CLASSES_DIR)
- $(Verb) $(MKDIR) $(CLASSES_DIR)
- $(Verb) $(JAVAC) $^ -d $(CLASSES_DIR)
- cd $(CLASSES_DIR) && $(ZIP) -qr $(VMKIT_OPENJDK_ZIP) .
-
-endif
-
-#
-#
-# NEW BUILD SYSTEM
-#
-#
INCLUDES+=-I$(PROJ_SRC_CWD) -I$(PROJ_SRC_ROOT)/include -I$(PROJ_SRC_ROOT)/lib/vmkit/MMTk -I$(BUILD_DIR)
# should remove no-unused-variable
@@ -298,11 +225,6 @@ MY_LIBS+=$(shell $(LLVM_CONFIG) --libs)
DEPEND_OPTIONS=-MMD -MP -MF "$(BUILD_DIR)/$$*.d.tmp" -MT "$(BUILD_DIR)/$$*.bc" -MT "$(BUILD_DIR)/$$*.d"
DOM=then mv -f "$(BUILD_DIR)/$$*.d.tmp" "$(BUILD_DIR)/$$*.d"; else rm -f "$(BUILD_DIR)/$$*.d.tmp"; exit 1; fi
-$(LibName.BCA): $(ObjectsBC) $(LIB_DIR)/.dir $(LLVMToolDir)/llvm-ar
- $(Echo) "**[22] Building $(BuildMode) Bytecode Archive $(notdir $@)"
- $(Verb) $(RM) -f $@
- $(Verb) $(LArchive) $@ $(ObjectsBC)
-
$(BUILD_DIR)/%-gc.o: $(BUILD_DIR)/%-gc.bc $(LLC) $(SELF)
$(Echo) "Assembling '$(notdir $<)'"
$(Verb) $(LLC) -relocation-model=pic -filetype=obj -disable-cfi -disable-fp-elim -load=$(PREPARE_CODE) $< -o $@
@@ -331,6 +253,8 @@ $(eval $(call define_compile_rule,.c,$(C
ifneq ($(MAKECMDGOALS),tidy)
ifneq ($(MAKECMDGOALS),clean)
+ifneq ($(MAKECMDGOALS),distclean)
-include $(addsuffix .d,$(BASE_FILES))
endif
endif
+endif
Modified: vmkit/trunk/autoconf/configure.ac
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/autoconf/configure.ac?rev=180411&r1=180410&r2=180411&view=diff
==============================================================================
--- vmkit/trunk/autoconf/configure.ac (original)
+++ vmkit/trunk/autoconf/configure.ac Thu Apr 25 12:07:22 2013
@@ -377,7 +377,7 @@ AC_CHECK_HEADER([zlib.h], [], \
AC_MSG_ERROR([You need to install the zlib devel package (zlib.h).])
)
-nl===-----------------------------------------------------------------------===
+dnl===-----------------------------------------------------------------------===
dnl===
dnl=== SECTION 7: Check for types and structures
dnl===
Modified: vmkit/trunk/configure
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/configure?rev=180411&r1=180410&r2=180411&view=diff
==============================================================================
--- vmkit/trunk/configure (original)
+++ vmkit/trunk/configure Thu Apr 25 12:07:22 2013
@@ -4888,7 +4888,6 @@ fi
-nl===-----------------------------------------------------------------------===
ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default"
if test "x$ac_cv_type_pid_t" = xyes; then :
Modified: vmkit/trunk/lib/j3/ClassLib/OpenJDK/Makefile
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/ClassLib/OpenJDK/Makefile?rev=180411&r1=180410&r2=180411&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/ClassLib/OpenJDK/Makefile (original)
+++ vmkit/trunk/lib/j3/ClassLib/OpenJDK/Makefile Thu Apr 25 12:07:22 2013
@@ -6,6 +6,8 @@
# License. See LICENSE.TXT for details.
#
##===----------------------------------------------------------------------===##
+$(error must adapt the open jdk building process)
+
LEVEL = ../../../..
EXTRA_DIST = OpenJDK.inc
@@ -24,3 +26,27 @@ CXX.Flags += -I$(PROJ_SRC_ROOT)/include/
CXX.Flags += -I$(PROJ_SRC_DIR)/.. -I$(PROJ_OBJ_DIR)/..
CXX.Flags += -I$(PROJ_SRC_ROOT)/include/j3/openjdk
CXX.Flags += -DVMKitOpenJDKZip=\"$(VMKIT_OPENJDK_ZIP)\"
+
+###############################################################################
+# COMPILE_OPENJDK_ZIP: Build the specified java sources and zip them up
+###############################################################################
+ifeq ($(COMPILE_OPENJDK_ZIP), 1)
+
+
+# Some variables
+VMKIT_OPENJDK_ZIP=$(PROJ_OBJ_DIR)/vmkit-openjdk.zip
+CLASSES_DIR=$(PROJ_OBJ_DIR)/classes
+
+all-local:: $(VMKIT_OPENJDK_ZIP)
+clean-local::
+ -$(Verb) $(RM) -f $(CLASSES_DIR) $(VMKIT_OPENJDK_ZIP)
+
+$(VMKIT_OPENJDK_ZIP): $(addprefix $(PROJ_SRC_DIR)/,$(OPENJDK_JAVA_SOURCES))
+ $(Echo) "**[13] Building OpenJDK java sources into zip"
+ -$(Verb) $(RM) -rf $@ $(CLASSES_DIR)
+ $(Verb) $(MKDIR) $(CLASSES_DIR)
+ $(Verb) $(JAVAC) $^ -d $(CLASSES_DIR)
+ cd $(CLASSES_DIR) && $(ZIP) -qr $(VMKIT_OPENJDK_ZIP) .
+
+endif
+
Modified: vmkit/trunk/mmtk/java/Makefile
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/java/Makefile?rev=180411&r1=180410&r2=180411&view=diff
==============================================================================
--- vmkit/trunk/mmtk/java/Makefile (original)
+++ vmkit/trunk/mmtk/java/Makefile Thu Apr 25 12:07:22 2013
@@ -8,7 +8,48 @@
##===----------------------------------------------------------------------===##
LEVEL = ../..
-RUN_ANT = 1
+#MODULE=mmtk-vmkit-inline
+#NEED_BC=1
JARNAME = mmtk-vmkit
include $(LEVEL)/Makefile.common
+
+#
+#
+# OLD BUILD SYSTEM
+#
+#
+
+# Set the LLVM build file location
+LLVMBuildTool := $(LLVM_SRC_ROOT)/utils/llvm-build/llvm-build
+
+MMTkLib = $(LIB_DIR)/libFinalMMTk.a
+
+ifeq ($(shell [ ! -e $(MMTkLib) ] && echo "1"), 1)
+ COMPILE_MMTK = 1
+endif
+
+ifeq ($(COMPILE_MMTK), 1)
+all::
+ $(Verb) $(ANT) -buildfile $(PROJ_OBJ_ROOT)/mmtk/java/build.xml
+ $(Echo) "**[12] Building $(BuildMode) $(JARNAME).jar $(notdir $@) $(OPT_MMTK_FLAGS)"
+ $(Verb) $(LOPT) -load=$(LIB_DIR)/JITGCPass$(SHLIBEXT) $(OPT_MMTK_FLAGS) -JITGCPass -f $(LIB_DIR)/MMTKAlloc.bc -o $(LIB_DIR)/MMTKAlloc.bc
+ $(Verb) $(VMJC) $(VMJC_MMTK_FLAGS) -load=$(LIB_DIR)/MMTKRuntime$(SHLIBEXT) -load=$(LIB_DIR)/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
+ $(Verb) $(LOPT) -load=$(LIB_DIR)/MMTKMagic$(SHLIBEXT) $(OPT_MMTK_FLAGS) -LowerJavaRT -f $(JARNAME).bc -o $(JARNAME)-optimized.bc
+ $(Verb) $(LLVMLINK) -o $(LIB_DIR)/FinalMMTk.bc $(LIB_DIR)/MMTKAlloc.bc $(JARNAME)-optimized.bc $(LIB_DIR)/MMTKRuntime.bc
+ $(Verb) $(LOPT) $(LIB_DIR)/FinalMMTk.bc -load=$(PREPARE_CODE) $(OPT_MMTK_FLAGS) -StaticGCPass -o $(LIB_DIR)/FinalMMTk.bc
+ $(Verb) $(MKDIR) $(BUILD_DIR)
+ $(Verb) $(LLC) $(LLC_ASM_FLAGS) -disable-fp-elim -disable-cfi -load=$(PREPARE_CODE) $(LIB_DIR)/FinalMMTk.bc -o $(BUILD_DIR)/FinalMMTk.s
+ $(Verb) $(GREP) -v '\.loc[^0-9]\+[0-9]\+ 0' $(BUILD_DIR)/FinalMMTk.s > $(BUILD_DIR)/FinalMMTk.s.remove_invalid_dot_loc
+ $(Verb) $(MV) -f $(BUILD_DIR)/FinalMMTk.s.remove_invalid_dot_loc $(BUILD_DIR)/FinalMMTk.s
+ $(Verb) $(CLANG) -c $(BUILD_DIR)/FinalMMTk.s -o $(BUILD_DIR)/FinalMMTk.o
+ $(Verb) $(Archive) $(LIB_DIR)/libFinalMMTk.a $(BUILD_DIR)/FinalMMTk.o
+ $(Verb) $(Ranlib) $(LIB_DIR)/libFinalMMTk.a
+ $(Verb) $(LLC) $(LLC_CPP_FLAGS) -march=cpp -cppgen=function -cppfor=VTgcmalloc $(LIB_DIR)/FinalMMTk.bc -o $(PROJ_SRC_ROOT)/mmtk/inline/MMTkMallocInline.inc
+ $(Verb) $(LLC) $(LLC_CPP_FLAGS) -march=cpp -cppgen=function -cppfor=fieldWriteBarrier $(LIB_DIR)/FinalMMTk.bc -o $(PROJ_SRC_ROOT)/mmtk/inline/MMTkFieldWriteInline.inc
+ $(Verb) $(LLC) $(LLC_CPP_FLAGS) -march=cpp -cppgen=function -cppfor=arrayWriteBarrier $(LIB_DIR)/FinalMMTk.bc -o $(PROJ_SRC_ROOT)/mmtk/inline/MMTkArrayWriteInline.inc
+ $(Verb) $(LLC) $(LLC_CPP_FLAGS) -march=cpp -cppgen=function -cppfor=nonHeapWriteBarrier $(LIB_DIR)/FinalMMTk.bc -o $(PROJ_SRC_ROOT)/mmtk/inline/MMTkNonHeapWriteInline.inc
+endif
+
+clean-local::
+ $(Verb) $(RM) -rf classes $(JARNAME).jar $(JARNAME).bc $(JARNAME)-optimized.bc $(BUILD_DIR)
More information about the vmkit-commits
mailing list