OpenJDK / jdk / jdk
changeset 57656:786a4824dba3
8236921: Add build target to produce a JDK image suitable for a Graal/SVM build
Summary: make graal-builder-image will produce a suitable build JDK
Reviewed-by: erikj
author | sgehwolf |
---|---|
date | Mon, 16 Dec 2019 11:06:01 +0100 |
parents | 6d8a39322e51 |
children | ef3fe23cec5f |
files | make/GraalBuilderImage.gmk make/Main.gmk make/autoconf/spec.gmk.in |
diffstat | 3 files changed, 69 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/make/GraalBuilderImage.gmk Mon Dec 16 11:06:01 2019 +0100 @@ -0,0 +1,57 @@ +# +# Copyright (c) 2020, Red Hat Inc. +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# This code is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License version 2 only, as +# published by the Free Software Foundation. Oracle designates this +# particular file as subject to the "Classpath" exception as provided +# by Oracle in the LICENSE file that accompanied this code. +# +# This code is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# version 2 for more details (a copy is included in the LICENSE file that +# accompanied this code). +# +# You should have received a copy of the GNU General Public License version +# 2 along with this work; if not, write to the Free Software Foundation, +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. +# +# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA +# or visit www.oracle.com if you need additional information or have any +# questions. +# + +# This makefile creates a jdk image overlayed with statically linked core +# libraries. + +default: all + +include $(SPEC) +include MakeBase.gmk + +################################################################################ + +TARGETS := + +$(eval $(call SetupCopyFiles, COPY_JDK_IMG, \ + SRC := $(JDK_IMAGE_DIR)/, \ + DEST := $(GRAAL_BUILDER_IMAGE_DIR)/, \ + FILES := $(call FindFiles, $(JDK_IMAGE_DIR)/), \ +)) +TARGETS += $(COPY_JDK_IMG) + +$(eval $(call SetupCopyFiles, COPY_STATIC_LIBS, \ + SRC := $(STATIC_LIBS_IMAGE_DIR)/lib, \ + DEST := $(GRAAL_BUILDER_IMAGE_DIR)/lib, \ + FILES := $(filter %$(STATIC_LIBRARY_SUFFIX), \ + $(call FindFiles, $(STATIC_LIBS_IMAGE_DIR)/lib)), \ +)) +TARGETS += $(COPY_STATIC_LIBS) + +################################################################################ + +all: $(TARGETS) + +.PHONY: all
--- a/make/Main.gmk Wed Jan 15 10:45:03 2020 -0500 +++ b/make/Main.gmk Mon Dec 16 11:06:01 2019 +0100 @@ -1,5 +1,5 @@ # -# Copyright (c) 2011, 2019, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -407,6 +407,9 @@ exploded-image-optimize: +($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f ExplodedImageOptimize.gmk) +graal-builder-image: + +($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f GraalBuilderImage.gmk) + ifeq ($(JCOV_ENABLED), true) jcov-image: +($(CD) $(TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Coverage.gmk jcov-image) @@ -415,7 +418,7 @@ ALL_TARGETS += store-source-revision create-source-revision-tracker bootcycle-images zip-security \ zip-source jrtfs-jar jdk-image legacy-jre-image \ symbols-image static-libs-image mac-jdk-bundle mac-legacy-jre-bundle \ - release-file exploded-image-optimize jcov-image + release-file exploded-image-optimize graal-builder-image jcov-image ################################################################################ # Docs targets @@ -886,6 +889,8 @@ static-libs-image: $(STATIC_LIBS_TARGETS) + graal-builder-image: jdk-image static-libs-image + mac-jdk-bundle: jdk-image mac-legacy-jre-bundle: legacy-jre-image
--- a/make/autoconf/spec.gmk.in Wed Jan 15 10:45:03 2020 -0500 +++ b/make/autoconf/spec.gmk.in Mon Dec 16 11:06:01 2019 +0100 @@ -1,5 +1,5 @@ # -# Copyright (c) 2011, 2019, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2011, 2020, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -902,6 +902,10 @@ STATIC_LIBS_IMAGE_SUBDIR := static-libs STATIC_LIBS_IMAGE_DIR := $(IMAGES_OUTPUTDIR)/$(STATIC_LIBS_IMAGE_SUBDIR) +# Graal builder image +GRAAL_BUILDER_IMAGE_SUBDIR := graal-builder-jdk +GRAAL_BUILDER_IMAGE_DIR := $(IMAGES_OUTPUTDIR)/$(GRAAL_BUILDER_IMAGE_SUBDIR) + # Macosx bundles directory definitions JDK_MACOSX_BUNDLE_SUBDIR=jdk-bundle JRE_MACOSX_BUNDLE_SUBDIR=jre-bundle