# HG changeset patch # User Stefan Anzinger # Date 1433766325 -7200 # Node ID cd36556e1b78ef498df2c2a5d71ae048376fd43a # Parent 6db6070d30b92c97de1983a3bde0620d40ee6abd Remove conditional makefile-based compilation of jvmci from mx_graal.py diff -r 6db6070d30b9 -r cd36556e1b78 make/Makefile --- a/make/Makefile Fri Jun 05 16:28:19 2015 +0200 +++ b/make/Makefile Mon Jun 08 14:25:25 2015 +0200 @@ -308,26 +308,8 @@ $(MAKE) -f $(ABS_OS_MAKEFILE) \ $(MAKE_ARGS) $(VM_TARGET) - -ifeq ($(JVMCI_USE_MAKE),) - ifeq (, $(shell python2.7 --version 2>/dev/null && echo ok)) - ifeq (, $(shell python2.6 --version 2>/dev/null && echo ok)) - PYTHON=python - else - PYTHON=python2.6 - endif - else - PYTHON=python2.7 - endif - - # Builds code that can be shared among different build flavors -buildshared: - $(PYTHON) -u $(GAMMADIR)/mxtool/mx.py build --no-native --export-dir $(SHARED_DIR) -else buildshared: cd .. && $(MAKE) -f make/jvmci.make TARGET=build/make MX_TARGET=. HS_COMMON_SRC=$(HS_COMMON_SRC) ABS_BOOTDIR=$(ABS_BOOTDIR) EXPORT_DIR=$(SHARED_DIR) export -endif - # Export file rule generic_export: $(EXPORT_LIST) diff -r 6db6070d30b9 -r cd36556e1b78 make/defs.make --- a/make/defs.make Fri Jun 05 16:28:19 2015 +0200 +++ b/make/defs.make Mon Jun 08 14:25:25 2015 +0200 @@ -376,6 +376,7 @@ EXPORT_LIST += $(EXPORT_JRE_LIB_JVMCI_OPTIONS_DIR)/com.oracle.jvmci.hotspot.CompileTheWorld EXPORT_LIST += $(EXPORT_JRE_LIB_JVMCI_OPTIONS_DIR)/com.oracle.jvmci.compiler.Compiler +<<<<<<< local ifeq ($(JVMCI_USE_MAKE),) EXPORT_LIST += $(EXPORT_JRE_LIB_DIR)/truffle.jar EXPORT_LIST += $(EXPORT_JRE_LIB_JVMCI_DIR)/graal.jar @@ -434,6 +435,8 @@ EXPORT_LIST += $(EXPORT_JRE_LIB_JVMCI_OPTIONS_DIR)/com.oracle.graal.lir.asm.CompilationResultBuilder EXPORT_LIST += $(EXPORT_JRE_LIB_JVMCI_OPTIONS_DIR)/com.oracle.graal.java.BytecodeParser endif +======= +>>>>>>> other .PHONY: $(HS_ALT_MAKE)/defs.make diff -r 6db6070d30b9 -r cd36556e1b78 make/solaris/makefiles/vm.make --- a/make/solaris/makefiles/vm.make Fri Jun 05 16:28:19 2015 +0200 +++ b/make/solaris/makefiles/vm.make Mon Jun 08 14:25:25 2015 +0200 @@ -334,7 +334,10 @@ DEST_JVM_DEBUGINFO = $(DEST_SUBDIR)/$(LIBJVM_DEBUGINFO) DEST_JVM_DIZ = $(DEST_SUBDIR)/$(LIBJVM_DIZ) -install_jvm: $(LIBJVM) +$(DEST_SUBDIR): + mkdir $(DEST_SUBDIR) + +install_jvm: $(LIBJVM) $(DEST_SUBDIR) @echo "Copying $(LIBJVM) to $(DEST_JVM)" $(QUIETLY) test ! -f $(LIBJVM_DEBUGINFO) || \ cp -f $(LIBJVM_DEBUGINFO) $(DEST_JVM_DEBUGINFO) diff -r 6db6070d30b9 -r cd36556e1b78 mx/mx_graal.py --- a/mx/mx_graal.py Fri Jun 05 16:28:19 2015 +0200 +++ b/mx/mx_graal.py Mon Jun 08 14:25:25 2015 +0200 @@ -838,12 +838,6 @@ The global '--vm' and '--vmbuild' options select which VM type and build target to build.""" - # Turn all jdk distributions into non HotSpot; this is only necessary as long we support building/exporting JVMCI with make and mx - if "--avoid-make" not in args: - for jdkDist in _jdkDeployedDists: - if jdkDist.partOfHotSpot: - jdkDist.partOfHotSpot = False - # Override to fail quickly if extra arguments are given # at the end of the command line. This allows for a more # helpful error message. @@ -860,52 +854,11 @@ # Call mx.build to compile the Java sources parser = AP() - parser.add_argument('--export-dir', help='directory to which JVMCI and Graal jars and jvmci.options will be copied', metavar='') parser.add_argument('-D', action='append', help='set a HotSpot build variable (run \'mx buildvars\' to list variables)', metavar='name=value') - parser.add_argument('--avoid-make', action='store_true', help='Do not use jvmci.make file to build and export JVMCI') + opts2 = mx.build(['--source', '1.7'] + args, parser=parser) assert len(opts2.remainder) == 0 - if opts2.export_dir is not None: - if not exists(opts2.export_dir): - os.makedirs(opts2.export_dir) - else: - assert os.path.isdir(opts2.export_dir), '{0} is not a directory'.format(opts2.export_dir) - - defsPath = join(_graal_home, 'make', 'defs.make') - with open(defsPath) as fp: - defs = fp.read() - jvmciJars = [] - jdkJars = [] - for jdkDist in _jdkDeployedDists: - dist = mx.distribution(jdkDist.name) - jdkJars.append(join(_graal_home, dist.path)) - defLine = 'EXPORT_LIST += $(EXPORT_JRE_LIB_DIR)/' + basename(dist.path) - if jdkDist.isExtension: - defLine = 'EXPORT_LIST += $(EXPORT_JRE_LIB_EXT_DIR)/' + basename(dist.path) - elif jdkDist.usesJVMCIClassLoader: - defLine = 'EXPORT_LIST += $(EXPORT_JRE_LIB_JVMCI_DIR)/' + basename(dist.path) - jvmciJars.append(dist.path) - else: - defLine = 'EXPORT_LIST += $(EXPORT_JRE_LIB_DIR)/' + basename(dist.path) - if defLine not in defs: - mx.abort('Missing following line in ' + defsPath + '\n' + defLine) - shutil.copy(dist.path, opts2.export_dir) - - services, optionsFiles = _extractJVMCIFiles(jdkJars, jvmciJars, join(opts2.export_dir, 'services'), join(opts2.export_dir, 'options')) - if opts2.avoid_make: - for service in services: - defLine = 'EXPORT_LIST += $(EXPORT_JRE_LIB_JVMCI_SERVICES_DIR)/' + service - if defLine not in defs: - mx.abort('Missing following line in ' + defsPath + ' for service from ' + dist.name + '\n' + defLine) - for optionsFile in optionsFiles: - defLine = 'EXPORT_LIST += $(EXPORT_JRE_LIB_JVMCI_OPTIONS_DIR)/' + optionsFile - if defLine not in defs: - mx.abort('Missing following line in ' + defsPath + ' for options from ' + dist.name + '\n' + defLine) - jvmciOptions = join(_graal_home, 'jvmci.options') - if exists(jvmciOptions): - shutil.copy(jvmciOptions, opts2.export_dir) - if not _vmSourcesAvailable or not opts2.native: return @@ -1054,8 +1007,12 @@ setMakeVar('STRIP_POLICY', 'no_strip') # This removes the need to unzip the *.diz files before debugging in gdb setMakeVar('ZIP_DEBUGINFO_FILES', '0', env=env) - if not opts2.avoid_make: - setMakeVar('JVMCI_USE_MAKE', '1') + + if buildSuffix == "1": + setMakeVar("JVM_VARIANTS", "client") + elif buildSuffix == "": + setMakeVar("JVM_VARIANTS", "server") + # Clear this variable as having it set can cause very confusing build problems env.pop('CLASSPATH', None) @@ -1066,8 +1023,10 @@ envPrefix = ' '.join([key + '=' + env[key] for key in env.iterkeys() if not os.environ.has_key(key) or env[key] != os.environ[key]]) if len(envPrefix): mx.log('env ' + envPrefix + ' \\') - makeTarget = "all_" + build + buildSuffix if not opts2.avoid_make else build + buildSuffix - runCmd.append(makeTarget) + + runCmd.append(build + buildSuffix) + runCmd.append("docs") + runCmd.append("export_" + build) if not mx._opts.verbose: mx.log(' '.join(runCmd))