8027566: Remove the old build system
Reviewed-by: erikj, tbell
This commit is contained in:
parent
6cc468e251
commit
1a8ec8e251
635
Makefile
635
Makefile
@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (c) 1995, 2012, Oracle and/or its affiliates. All rights reserved.
|
||||
# Copyright (c) 2012, 2013, 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
|
||||
@ -23,549 +23,112 @@
|
||||
# questions.
|
||||
#
|
||||
|
||||
# If NEWBUILD is defined, use the new build-infra Makefiles and configure.
|
||||
# See NewMakefile.gmk for more information.
|
||||
# This must be the first rule
|
||||
default:
|
||||
|
||||
# If not specified, select what the default build is
|
||||
ifndef NEWBUILD
|
||||
NEWBUILD=true
|
||||
# Inclusion of this pseudo-target will cause make to execute this file
|
||||
# serially, regardless of -j. Recursively called makefiles will not be
|
||||
# affected, however. This is required for correct dependency management.
|
||||
.NOTPARALLEL:
|
||||
|
||||
# The shell code below will be executed on /usr/ccs/bin/make on Solaris, but not in GNU make.
|
||||
# /usr/ccs/bin/make lacks basically every other flow control mechanism.
|
||||
TEST_FOR_NON_GNUMAKE:sh=echo You are not using GNU make/gmake, this is a requirement. Check your path. 1>&2 && exit 1
|
||||
|
||||
# Assume we have GNU make, but check version.
|
||||
ifeq ($(strip $(foreach v, 3.81% 3.82% 4.%, $(filter $v, $(MAKE_VERSION)))), )
|
||||
$(error This version of GNU Make is too low ($(MAKE_VERSION)). Check your path, or upgrade to 3.81 or newer.)
|
||||
endif
|
||||
|
||||
ifeq ($(NEWBUILD),true)
|
||||
|
||||
# The new top level Makefile
|
||||
include NewMakefile.gmk
|
||||
|
||||
else # Original Makefile logic
|
||||
|
||||
BUILD_PARENT_DIRECTORY=.
|
||||
|
||||
# Basename of any originally supplied ALT_OUTPUTDIR directory
|
||||
ifndef ORIG_OUTPUTDIR_BASENAME
|
||||
ifdef ALT_OUTPUTDIR
|
||||
ORIG_OUTPUTDIR_BASENAME := $(shell basename $(ALT_OUTPUTDIR))
|
||||
else
|
||||
ORIG_OUTPUTDIR_BASENAME = $(PLATFORM)-$(ARCH)
|
||||
endif
|
||||
endif
|
||||
export ORIG_OUTPUTDIR_BASENAME
|
||||
|
||||
# The three possible directories created for output (3 build flavors)
|
||||
OUTPUTDIR_BASENAME- = $(ORIG_OUTPUTDIR_BASENAME)
|
||||
OUTPUTDIR_BASENAME-debug = $(ORIG_OUTPUTDIR_BASENAME)-debug
|
||||
OUTPUTDIR_BASENAME-fastdebug = $(ORIG_OUTPUTDIR_BASENAME)-fastdebug
|
||||
|
||||
# Relative path to a debug output area
|
||||
REL_JDK_OUTPUTDIR = ../$(OUTPUTDIR_BASENAME-$(DEBUG_NAME))
|
||||
|
||||
# The created jdk image directory
|
||||
JDK_IMAGE_DIRNAME = j2sdk-image
|
||||
JDK_IMAGE_DIR = $(OUTPUTDIR)/$(JDK_IMAGE_DIRNAME)
|
||||
ABS_JDK_IMAGE_DIR = $(ABS_OUTPUTDIR)/$(JDK_IMAGE_DIRNAME)
|
||||
|
||||
# Relative path from an output directory to the image directory
|
||||
REL_JDK_IMAGE_DIR = ../$(OUTPUTDIR_BASENAME-$(DEBUG_NAME))/$(JDK_IMAGE_DIRNAME)
|
||||
REL_JDK_DEBUG_IMAGE_DIR = ../$(OUTPUTDIR_BASENAME-debug)/$(JDK_IMAGE_DIRNAME)
|
||||
REL_JDK_FASTDEBUG_IMAGE_DIR = ../$(OUTPUTDIR_BASENAME-fastdebug)/$(JDK_IMAGE_DIRNAME)
|
||||
|
||||
ifndef TOPDIR
|
||||
TOPDIR:=.
|
||||
endif
|
||||
|
||||
ifndef JDK_TOPDIR
|
||||
JDK_TOPDIR=$(TOPDIR)/jdk
|
||||
endif
|
||||
ifndef JDK_MAKE_SHARED_DIR
|
||||
JDK_MAKE_SHARED_DIR=$(JDK_TOPDIR)/make/common/shared
|
||||
endif
|
||||
|
||||
default: all
|
||||
|
||||
include $(JDK_MAKE_SHARED_DIR)/Defs-control.gmk
|
||||
include ./make/Defs-internal.gmk
|
||||
include ./make/sanity-rules.gmk
|
||||
include ./make/hotspot-rules.gmk
|
||||
include ./make/langtools-rules.gmk
|
||||
include ./make/corba-rules.gmk
|
||||
include ./make/jaxp-rules.gmk
|
||||
include ./make/jaxws-rules.gmk
|
||||
include ./make/jdk-rules.gmk
|
||||
include ./make/nashorn-rules.gmk
|
||||
include ./make/install-rules.gmk
|
||||
include ./make/sponsors-rules.gmk
|
||||
include ./make/deploy-rules.gmk
|
||||
|
||||
all:: sanity
|
||||
|
||||
ifeq ($(SKIP_FASTDEBUG_BUILD), false)
|
||||
all:: fastdebug_build
|
||||
endif
|
||||
|
||||
ifeq ($(SKIP_DEBUG_BUILD), false)
|
||||
all:: debug_build
|
||||
endif
|
||||
|
||||
all:: all_product_build
|
||||
|
||||
all_product_build::
|
||||
|
||||
# Everything for a full product build
|
||||
ifeq ($(SKIP_PRODUCT_BUILD), false)
|
||||
|
||||
all_product_build:: product_build
|
||||
|
||||
ifeq ($(BUILD_INSTALL), true)
|
||||
all_product_build:: $(INSTALL)
|
||||
clobber:: install-clobber
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_SPONSORS), true)
|
||||
all_product_build:: $(SPONSORS)
|
||||
clobber:: sponsors-clobber
|
||||
endif
|
||||
|
||||
ifneq ($(SKIP_COMPARE_IMAGES), true)
|
||||
all_product_build:: compare-image
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
define StartTimer
|
||||
$(MKDIR) -p $(BUILDTIMESDIR)
|
||||
$(RM) $(BUILDTIMESDIR)/build_time_*
|
||||
$(call RecordStartTime,TOTAL)
|
||||
endef
|
||||
|
||||
define StopTimer
|
||||
$(if $(REPORT_BUILD_TIMES),$(call RecordEndTime,TOTAL) && $(call ReportBuildTimes,$1),)
|
||||
endef
|
||||
|
||||
# Generic build of basic repo series
|
||||
generic_build_repo_series:: $(SOURCE_TIPS)
|
||||
$(MKDIR) -p $(JDK_IMAGE_DIR)
|
||||
@$(call StartTimer)
|
||||
|
||||
ifeq ($(BUILD_LANGTOOLS), true)
|
||||
generic_build_repo_series:: langtools
|
||||
clobber:: langtools-clobber
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_CORBA), true)
|
||||
generic_build_repo_series:: corba
|
||||
clobber:: corba-clobber
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_JAXP), true)
|
||||
generic_build_repo_series:: jaxp
|
||||
clobber:: jaxp-clobber
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_JAXWS), true)
|
||||
generic_build_repo_series:: jaxws
|
||||
clobber:: jaxws-clobber
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_HOTSPOT), true)
|
||||
generic_build_repo_series:: $(HOTSPOT)
|
||||
clobber:: hotspot-clobber
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_JDK), true)
|
||||
generic_build_repo_series:: $(JDK_JAVA_EXE)
|
||||
clobber:: jdk-clobber
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_NASHORN), true)
|
||||
generic_build_repo_series:: $(NASHORN)
|
||||
clobber:: nashorn-clobber
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_DEPLOY), true)
|
||||
generic_build_repo_series:: $(DEPLOY)
|
||||
clobber:: deploy-clobber
|
||||
endif
|
||||
|
||||
generic_build_repo_series::
|
||||
@$(call StopTimer,$(if $(DEBUG_NAME),$(DEBUG_NAME)_build,all_product_build))
|
||||
|
||||
# The debug build, fastdebug or debug. Needs special handling.
|
||||
# Note that debug builds do NOT do INSTALL steps, but must be done
|
||||
# after the product build and before the INSTALL step of the product build.
|
||||
#
|
||||
# DEBUG_NAME is fastdebug or debug
|
||||
# ALT_OUTPUTDIR is changed to have -debug or -fastdebug suffix
|
||||
# The resulting image directory (j2sdk-image) is used by the install makefiles
|
||||
# to create a debug install bundle jdk-*-debug-** bundle (tar or zip)
|
||||
# which will install in the debug or fastdebug subdirectory of the
|
||||
# normal product install area.
|
||||
# The install process needs to know what the DEBUG_NAME is, so
|
||||
# look for INSTALL_DEBUG_NAME in the install rules.
|
||||
#
|
||||
# NOTE: On windows, do not use $(ABS_BOOTDIR_OUTPUTDIR)-$(DEBUG_NAME).
|
||||
# Due to the use of short paths in $(ABS_OUTPUTDIR), this may
|
||||
# not be the same location.
|
||||
#
|
||||
|
||||
# Location of fresh bootdir output
|
||||
ABS_BOOTDIR_OUTPUTDIR=$(ABS_OUTPUTDIR)/bootjdk
|
||||
FRESH_BOOTDIR=$(ABS_BOOTDIR_OUTPUTDIR)/$(JDK_IMAGE_DIRNAME)
|
||||
FRESH_DEBUG_BOOTDIR=$(ABS_BOOTDIR_OUTPUTDIR)/$(REL_JDK_IMAGE_DIR)
|
||||
|
||||
create_fresh_product_bootdir: FRC
|
||||
$(MAKE) ALT_OUTPUTDIR=$(ABS_BOOTDIR_OUTPUTDIR) \
|
||||
GENERATE_DOCS=false \
|
||||
BOOT_CYCLE_SETTINGS= \
|
||||
build_product_image
|
||||
|
||||
create_fresh_debug_bootdir: FRC
|
||||
$(MAKE) ALT_OUTPUTDIR=$(ABS_BOOTDIR_OUTPUTDIR) \
|
||||
GENERATE_DOCS=false \
|
||||
BOOT_CYCLE_DEBUG_SETTINGS= \
|
||||
build_debug_image
|
||||
|
||||
create_fresh_fastdebug_bootdir: FRC
|
||||
$(MAKE) ALT_OUTPUTDIR=$(ABS_BOOTDIR_OUTPUTDIR) \
|
||||
GENERATE_DOCS=false \
|
||||
BOOT_CYCLE_DEBUG_SETTINGS= \
|
||||
build_fastdebug_image
|
||||
|
||||
# Create boot image?
|
||||
ifeq ($(SKIP_BOOT_CYCLE),false)
|
||||
ifneq ($(PLATFORM)$(ARCH_DATA_MODEL),solaris64)
|
||||
DO_BOOT_CYCLE=true
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
|
||||
ifeq ($(DO_BOOT_CYCLE),true)
|
||||
|
||||
# Create the bootdir to use in the build
|
||||
product_build:: create_fresh_product_bootdir
|
||||
debug_build:: create_fresh_debug_bootdir
|
||||
fastdebug_build:: create_fresh_fastdebug_bootdir
|
||||
|
||||
# Define variables to be used now for the boot jdk
|
||||
BOOT_CYCLE_SETTINGS= \
|
||||
ALT_BOOTDIR=$(FRESH_BOOTDIR) \
|
||||
ALT_JDK_IMPORT_PATH=$(FRESH_BOOTDIR)
|
||||
BOOT_CYCLE_DEBUG_SETTINGS= \
|
||||
ALT_BOOTDIR=$(FRESH_DEBUG_BOOTDIR) \
|
||||
ALT_JDK_IMPORT_PATH=$(FRESH_DEBUG_BOOTDIR)
|
||||
|
||||
# Locate this Makefile
|
||||
ifeq ($(filter /%,$(lastword $(MAKEFILE_LIST))),)
|
||||
makefile_path:=$(CURDIR)/$(lastword $(MAKEFILE_LIST))
|
||||
else
|
||||
makefile_path:=$(lastword $(MAKEFILE_LIST))
|
||||
endif
|
||||
root_dir:=$(dir $(makefile_path))
|
||||
|
||||
# Use the supplied ALT_BOOTDIR as the boot
|
||||
BOOT_CYCLE_SETTINGS=
|
||||
BOOT_CYCLE_DEBUG_SETTINGS=
|
||||
# ... and then we can include our helper functions
|
||||
include $(root_dir)/make/MakeHelpers.gmk
|
||||
|
||||
$(eval $(call ParseLogLevel))
|
||||
$(eval $(call ParseConfAndSpec))
|
||||
|
||||
# Now determine if we have zero, one or several configurations to build.
|
||||
ifeq ($(SPEC),)
|
||||
# Since we got past ParseConfAndSpec, we must be building a global target. Do nothing.
|
||||
else
|
||||
ifeq ($(words $(SPEC)),1)
|
||||
# We are building a single configuration. This is the normal case. Execute the Main.gmk file.
|
||||
include $(root_dir)/make/Main.gmk
|
||||
else
|
||||
# We are building multiple configurations.
|
||||
# First, find out the valid targets
|
||||
# Run the makefile with an arbitrary SPEC using -p -q (quiet dry-run and dump rules) to find
|
||||
# available PHONY targets. Use this list as valid targets to pass on to the repeated calls.
|
||||
all_phony_targets=$(filter-out $(global_targets) bundles-only, $(strip $(shell \
|
||||
$(MAKE) -p -q -f make/Main.gmk FRC SPEC=$(firstword $(SPEC)) | \
|
||||
grep ^.PHONY: | head -n 1 | cut -d " " -f 2-)))
|
||||
|
||||
$(all_phony_targets):
|
||||
@$(foreach spec,$(SPEC),($(MAKE) -f NewMakefile.gmk SPEC=$(spec) \
|
||||
$(VERBOSE) VERBOSE=$(VERBOSE) LOG_LEVEL=$(LOG_LEVEL) $@) &&) true
|
||||
|
||||
.PHONY: $(all_phony_targets)
|
||||
|
||||
endif
|
||||
endif
|
||||
|
||||
build_product_image:
|
||||
$(MAKE) \
|
||||
SKIP_FASTDEBUG_BUILD=true \
|
||||
SKIP_DEBUG_BUILD=true \
|
||||
$(BOOT_CYCLE_SETTINGS) \
|
||||
generic_build_repo_series
|
||||
# Include this after a potential spec file has been included so that the bundles target
|
||||
# has access to the spec variables.
|
||||
include $(root_dir)/make/Jprt.gmk
|
||||
|
||||
# NOTE: On windows, do not use $(ABS_OUTPUTDIR)-$(DEBUG_NAME).
|
||||
# Due to the use of short paths in $(ABS_OUTPUTDIR), this may
|
||||
# not be the same location.
|
||||
# Here are "global" targets, i.e. targets that can be executed without specifying a single configuration.
|
||||
# If you addd more global targets, please update the variable global_targets in MakeHelpers.
|
||||
|
||||
generic_debug_build:
|
||||
$(MAKE) \
|
||||
ALT_OUTPUTDIR=$(ABS_OUTPUTDIR)/$(REL_JDK_OUTPUTDIR) \
|
||||
DEBUG_NAME=$(DEBUG_NAME) \
|
||||
GENERATE_DOCS=false \
|
||||
$(BOOT_CYCLE_DEBUG_SETTINGS) \
|
||||
generic_build_repo_series
|
||||
|
||||
build_debug_image:
|
||||
$(MAKE) DEBUG_NAME=debug generic_debug_build
|
||||
|
||||
build_fastdebug_image:
|
||||
$(MAKE) DEBUG_NAME=fastdebug generic_debug_build
|
||||
|
||||
# Build final image
|
||||
product_build:: build_product_image
|
||||
debug_build:: build_debug_image
|
||||
fastdebug_build:: build_fastdebug_image
|
||||
|
||||
# The source tips are stored with the relative path to the repo.
|
||||
# This file will be used when constructing the jdk image.
|
||||
source_tips: $(SOURCE_TIPS)
|
||||
$(CAT) $<
|
||||
$(SOURCE_TIPS): FRC
|
||||
@$(prep-target)
|
||||
@$(call GetSourceTips)
|
||||
|
||||
clobber:: REPORT_BUILD_TIMES=
|
||||
clobber::
|
||||
$(RM) -r $(OUTPUTDIR)/*
|
||||
-($(RMDIR) -p $(OUTPUTDIR) > $(DEV_NULL) 2>&1; $(TRUE))
|
||||
|
||||
clean: clobber
|
||||
|
||||
#
|
||||
# Dev builds
|
||||
#
|
||||
|
||||
dev : dev-build
|
||||
|
||||
dev-build:
|
||||
$(MAKE) DEV_ONLY=true all
|
||||
dev-sanity:
|
||||
$(MAKE) DEV_ONLY=true sanity
|
||||
dev-clobber:
|
||||
$(MAKE) DEV_ONLY=true clobber
|
||||
|
||||
#
|
||||
# Quick jdk verification build
|
||||
#
|
||||
jdk_only:
|
||||
$(MAKE) SKIP_FASTDEBUG_BUILD=true BUILD_HOTSPOT=false all
|
||||
|
||||
|
||||
#
|
||||
# Quick jdk verification fastdebug build
|
||||
#
|
||||
jdk_fastdebug_only:
|
||||
$(MAKE) DEBUG_NAME=fastdebug BUILD_HOTSPOT=false BUILD_DEPLOY=false \
|
||||
BUILD_INSTALL=false BUILD_SPONSORS=false generic_debug_build
|
||||
|
||||
#
|
||||
# Quick deploy verification fastdebug build
|
||||
#
|
||||
deploy_fastdebug_only:
|
||||
$(MAKE) \
|
||||
DEBUG_NAME=fastdebug \
|
||||
BUILD_HOTSPOT=false \
|
||||
BUILD_JDK=false \
|
||||
BUILD_LANGTOOLS=false \
|
||||
BUILD_NASHORN=false \
|
||||
BUILD_CORBA=false \
|
||||
BUILD_JAXP=false \
|
||||
BUILD_JAXWS=false \
|
||||
BUILD_INSTALL=false \
|
||||
BUILD_SPONSORS=false \
|
||||
generic_debug_build
|
||||
|
||||
#
|
||||
# Product build (skip debug builds)
|
||||
#
|
||||
product_only:
|
||||
$(MAKE) SKIP_FASTDEBUG_BUILD=true all
|
||||
|
||||
#
|
||||
# Check target
|
||||
#
|
||||
|
||||
check: variable_check
|
||||
|
||||
#
|
||||
# Help target
|
||||
#
|
||||
help: intro_help target_help variable_help notes_help examples_help
|
||||
|
||||
# Intro help message
|
||||
intro_help:
|
||||
@$(ECHO) "\
|
||||
Makefile for the JDK builds (all the JDK). \n\
|
||||
"
|
||||
|
||||
# Target help
|
||||
target_help:
|
||||
@$(ECHO) "\
|
||||
--- Common Targets --- \n\
|
||||
all -- build the core JDK (default target) \n\
|
||||
help -- Print out help information \n\
|
||||
check -- Check make variable values for correctness \n\
|
||||
sanity -- Perform detailed sanity checks on system and settings \n\
|
||||
fastdebug_build -- build the core JDK in 'fastdebug' mode (-g -O) \n\
|
||||
debug_build -- build the core JDK in 'debug' mode (-g) \n\
|
||||
clean -- remove all built and imported files \n\
|
||||
clobber -- same as clean \n\
|
||||
"
|
||||
|
||||
# Variable help (only common ones used by this Makefile)
|
||||
variable_help: variable_help_intro variable_list variable_help_end
|
||||
variable_help_intro:
|
||||
@$(ECHO) "--- Common Variables ---"
|
||||
variable_help_end:
|
||||
@$(ECHO) " "
|
||||
|
||||
# One line descriptions for the variables
|
||||
OUTPUTDIR.desc = Output directory
|
||||
PARALLEL_COMPILE_JOBS.desc = Solaris/Linux parallel compile run count
|
||||
SLASH_JAVA.desc = Root of all build tools, e.g. /java or J:
|
||||
BOOTDIR.desc = JDK used to boot the build
|
||||
JDK_IMPORT_PATH.desc = JDK used to import components of the build
|
||||
COMPILER_PATH.desc = Compiler install directory
|
||||
CACERTS_FILE.desc = Location of certificates file
|
||||
DEVTOOLS_PATH.desc = Directory containing zip and gnumake
|
||||
CUPS_HEADERS_PATH.desc = Include directory location for CUPS header files
|
||||
|
||||
# Make variables to print out (description and value)
|
||||
VARIABLE_PRINTVAL_LIST += \
|
||||
OUTPUTDIR \
|
||||
PARALLEL_COMPILE_JOBS \
|
||||
SLASH_JAVA \
|
||||
BOOTDIR \
|
||||
JDK_IMPORT_PATH \
|
||||
COMPILER_PATH \
|
||||
CACERTS_FILE \
|
||||
DEVTOOLS_PATH
|
||||
|
||||
# Make variables that should refer to directories that exist
|
||||
VARIABLE_CHECKDIR_LIST += \
|
||||
SLASH_JAVA \
|
||||
BOOTDIR \
|
||||
JDK_IMPORT_PATH \
|
||||
COMPILER_PATH \
|
||||
DEVTOOLS_PATH
|
||||
|
||||
# Make variables that should refer to files that exist
|
||||
VARIABLE_CHECKFIL_LIST += \
|
||||
CACERTS_FILE
|
||||
|
||||
# For pattern rules below, so all are treated the same
|
||||
DO_PRINTVAL_LIST=$(VARIABLE_PRINTVAL_LIST:%=%.printval)
|
||||
DO_CHECKDIR_LIST=$(VARIABLE_CHECKDIR_LIST:%=%.checkdir)
|
||||
DO_CHECKFIL_LIST=$(VARIABLE_CHECKFIL_LIST:%=%.checkfil)
|
||||
|
||||
# Complete variable check
|
||||
variable_check: $(DO_CHECKDIR_LIST) $(DO_CHECKFIL_LIST)
|
||||
variable_list: $(DO_PRINTVAL_LIST) variable_check
|
||||
|
||||
# Pattern rule for printing out a variable
|
||||
%.printval:
|
||||
@$(ECHO) " ALT_$* - $($*.desc)"
|
||||
@$(ECHO) " \t $*=$($*)"
|
||||
|
||||
# Pattern rule for checking to see if a variable with a directory exists
|
||||
%.checkdir:
|
||||
@if [ ! -d $($*) ] ; then \
|
||||
$(ECHO) "WARNING: $* does not exist, try $(MAKE) sanity"; \
|
||||
fi
|
||||
|
||||
# Pattern rule for checking to see if a variable with a file exists
|
||||
%.checkfil:
|
||||
@if [ ! -f $($*) ] ; then \
|
||||
$(ECHO) "WARNING: $* does not exist, try $(MAKE) sanity"; \
|
||||
fi
|
||||
|
||||
# Misc notes on help
|
||||
notes_help:
|
||||
@$(ECHO) "\
|
||||
--- Notes --- \n\
|
||||
- All builds use same output directory unless overridden with \n\
|
||||
\t ALT_OUTPUTDIR=<dir>, changing from product to fastdebug you may want \n\
|
||||
\t to use the clean target first. \n\
|
||||
- JDK_IMPORT_PATH must refer to a compatible build, not all past promoted \n\
|
||||
\t builds or previous release JDK builds will work. \n\
|
||||
- The fastest builds have been when the sources and the BOOTDIR are on \n\
|
||||
\t local disk. \n\
|
||||
"
|
||||
|
||||
examples_help:
|
||||
@$(ECHO) "\
|
||||
--- Examples --- \n\
|
||||
$(MAKE) fastdebug_build \n\
|
||||
$(MAKE) ALT_OUTPUTDIR=/tmp/foobar all \n\
|
||||
$(MAKE) ALT_OUTPUTDIR=/tmp/foobar fastdebug_build \n\
|
||||
$(MAKE) ALT_OUTPUTDIR=/tmp/foobar all \n\
|
||||
$(MAKE) ALT_BOOTDIR=/opt/java/jdk1.5.0 \n\
|
||||
$(MAKE) ALT_JDK_IMPORT_PATH=/opt/java/jdk1.6.0 \n\
|
||||
"
|
||||
|
||||
################################################################
|
||||
# Source bundling
|
||||
################################################################
|
||||
ifeq ($(BUNDLE_RULES_AVAILABLE), true)
|
||||
include $(BUNDLE_RULES)
|
||||
endif
|
||||
|
||||
################################################################
|
||||
# rule to test
|
||||
################################################################
|
||||
|
||||
.NOTPARALLEL: test_run
|
||||
|
||||
test:
|
||||
$(MAKE) test_run
|
||||
|
||||
test_run: test_clean test_start test_summary
|
||||
|
||||
test_start:
|
||||
@$(ECHO) "Tests started at `$(DATE)`"
|
||||
|
||||
test_clean:
|
||||
$(RM) $(OUTPUTDIR)/test_failures.txt $(OUTPUTDIR)/test_log.txt
|
||||
|
||||
test_summary: $(OUTPUTDIR)/test_failures.txt
|
||||
@$(ECHO) "#################################################"
|
||||
@$(ECHO) "Tests completed at `$(DATE)`"
|
||||
@( $(EGREP) '^TEST STATS:' $(OUTPUTDIR)/test_log.txt \
|
||||
|| $(ECHO) "No TEST STATS seen in log" )
|
||||
@$(ECHO) "For complete details see: $(OUTPUTDIR)/test_log.txt"
|
||||
@$(ECHO) "#################################################"
|
||||
@if [ -s $< ] ; then \
|
||||
$(ECHO) "ERROR: Test failure count: `$(CAT) $< | $(WC) -l`"; \
|
||||
$(CAT) $<; \
|
||||
exit 1; \
|
||||
else \
|
||||
$(ECHO) "Success! No failures detected"; \
|
||||
fi
|
||||
|
||||
# Get failure list from log
|
||||
$(OUTPUTDIR)/test_failures.txt: $(OUTPUTDIR)/test_log.txt
|
||||
@$(RM) $@
|
||||
@( $(EGREP) '^FAILED:' $< || $(ECHO) "" ) | $(NAWK) 'length>0' > $@
|
||||
|
||||
# Get log file of all tests run
|
||||
JDK_TO_TEST := $(shell \
|
||||
if [ -d "$(ABS_JDK_IMAGE_DIR)" ] ; then \
|
||||
$(ECHO) "$(ABS_JDK_IMAGE_DIR)"; \
|
||||
elif [ -d "$(ABS_OUTPUTDIR)/bin" ] ; then \
|
||||
$(ECHO) "$(ABS_OUTPUTDIR)"; \
|
||||
elif [ "$(PRODUCT_HOME)" != "" -a -d "$(PRODUCT_HOME)/bin" ] ; then \
|
||||
$(ECHO) "$(PRODUCT_HOME)"; \
|
||||
fi \
|
||||
)
|
||||
TEST_TARGETS=all
|
||||
$(OUTPUTDIR)/test_log.txt:
|
||||
$(RM) $@
|
||||
( $(CD) test && \
|
||||
$(MAKE) NO_STOPPING=- PRODUCT_HOME=$(JDK_TO_TEST) $(TEST_TARGETS) \
|
||||
) | tee $@
|
||||
|
||||
################################################################
|
||||
# JPRT rule to build
|
||||
################################################################
|
||||
|
||||
include ./make/jprt.gmk
|
||||
|
||||
################################################################
|
||||
# PHONY
|
||||
################################################################
|
||||
|
||||
.PHONY: all test test_run test_start test_summary test_clean \
|
||||
generic_build_repo_series \
|
||||
what clobber insane \
|
||||
dev dev-build dev-sanity dev-clobber \
|
||||
product_build \
|
||||
fastdebug_build \
|
||||
debug_build \
|
||||
build_product_image \
|
||||
build_debug_image \
|
||||
build_fastdebug_image \
|
||||
create_fresh_product_bootdir \
|
||||
create_fresh_debug_bootdir \
|
||||
create_fresh_fastdebug_bootdir \
|
||||
generic_debug_build
|
||||
|
||||
# Force target
|
||||
FRC:
|
||||
|
||||
endif # Original Makefile logic
|
||||
help:
|
||||
$(info )
|
||||
$(info OpenJDK Makefile help)
|
||||
$(info =====================)
|
||||
$(info )
|
||||
$(info Common make targets)
|
||||
$(info . make [default] # Compile all product in langtools, hotspot, jaxp, jaxws,)
|
||||
$(info . # corba and jdk)
|
||||
$(info . make all # Compile everything, all repos and images)
|
||||
$(info . make images # Create complete j2sdk and j2re images)
|
||||
$(info . make docs # Create javadocs)
|
||||
$(info . make overlay-images # Create limited images for sparc 64 bit platforms)
|
||||
$(info . make profiles # Create complete j2re compact profile images)
|
||||
$(info . make bootcycle-images # Build images twice, second time with newly build JDK)
|
||||
$(info . make install # Install the generated images locally)
|
||||
$(info . make clean # Remove all files generated by make, but not those)
|
||||
$(info . # generated by configure)
|
||||
$(info . make dist-clean # Remove all files, including configuration)
|
||||
$(info . make help # Give some help on using make)
|
||||
$(info . make test # Run tests, default is all tests (see TEST below))
|
||||
$(info )
|
||||
$(info Targets for specific components)
|
||||
$(info (Component is any of langtools, corba, jaxp, jaxws, hotspot, jdk, nashorn, images, overlay-images, docs or test))
|
||||
$(info . make <component> # Build <component> and everything it depends on. )
|
||||
$(info . make <component>-only # Build <component> only, without dependencies. This)
|
||||
$(info . # is faster but can result in incorrect build results!)
|
||||
$(info . make clean-<component> # Remove files generated by make for <component>)
|
||||
$(info )
|
||||
$(info Useful make variables)
|
||||
$(info . make CONF= # Build all configurations (note, assignment is empty))
|
||||
$(info . make CONF=<substring> # Build the configuration(s) with a name matching)
|
||||
$(info . # <substring>)
|
||||
$(info )
|
||||
$(info . make LOG=<loglevel> # Change the log level from warn to <loglevel>)
|
||||
$(info . # Available log levels are:)
|
||||
$(info . # 'warn' (default), 'info', 'debug' and 'trace')
|
||||
$(info . # To see executed command lines, use LOG=debug)
|
||||
$(info )
|
||||
$(info . make JOBS=<n> # Run <n> parallel make jobs)
|
||||
$(info . # Note that -jN does not work as expected!)
|
||||
$(info )
|
||||
$(info . make test TEST=<test> # Only run the given test or tests, e.g.)
|
||||
$(info . # make test TEST="jdk_lang jdk_net")
|
||||
$(info )
|
||||
|
||||
.PHONY: help
|
||||
|
134
NewMakefile.gmk
134
NewMakefile.gmk
@ -1,134 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2012, 2013, 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
|
||||
# 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 must be the first rule
|
||||
default:
|
||||
|
||||
# Inclusion of this pseudo-target will cause make to execute this file
|
||||
# serially, regardless of -j. Recursively called makefiles will not be
|
||||
# affected, however. This is required for correct dependency management.
|
||||
.NOTPARALLEL:
|
||||
|
||||
# The shell code below will be executed on /usr/ccs/bin/make on Solaris, but not in GNU make.
|
||||
# /usr/ccs/bin/make lacks basically every other flow control mechanism.
|
||||
TEST_FOR_NON_GNUMAKE:sh=echo You are not using GNU make/gmake, this is a requirement. Check your path. 1>&2 && exit 1
|
||||
|
||||
# Assume we have GNU make, but check version.
|
||||
ifeq ($(strip $(foreach v, 3.81% 3.82% 4.%, $(filter $v, $(MAKE_VERSION)))), )
|
||||
$(error This version of GNU Make is too low ($(MAKE_VERSION)). Check your path, or upgrade to 3.81 or newer.)
|
||||
endif
|
||||
|
||||
# Locate this Makefile
|
||||
ifeq ($(filter /%,$(lastword $(MAKEFILE_LIST))),)
|
||||
makefile_path:=$(CURDIR)/$(lastword $(MAKEFILE_LIST))
|
||||
else
|
||||
makefile_path:=$(lastword $(MAKEFILE_LIST))
|
||||
endif
|
||||
root_dir:=$(dir $(makefile_path))
|
||||
|
||||
# ... and then we can include our helper functions
|
||||
include $(root_dir)/common/makefiles/MakeHelpers.gmk
|
||||
|
||||
$(eval $(call ParseLogLevel))
|
||||
$(eval $(call ParseConfAndSpec))
|
||||
|
||||
# Now determine if we have zero, one or several configurations to build.
|
||||
ifeq ($(SPEC),)
|
||||
# Since we got past ParseConfAndSpec, we must be building a global target. Do nothing.
|
||||
else
|
||||
ifeq ($(words $(SPEC)),1)
|
||||
# We are building a single configuration. This is the normal case. Execute the Main.gmk file.
|
||||
include $(root_dir)/common/makefiles/Main.gmk
|
||||
else
|
||||
# We are building multiple configurations.
|
||||
# First, find out the valid targets
|
||||
# Run the makefile with an arbitrary SPEC using -p -q (quiet dry-run and dump rules) to find
|
||||
# available PHONY targets. Use this list as valid targets to pass on to the repeated calls.
|
||||
all_phony_targets=$(filter-out $(global_targets) bundles-only, $(strip $(shell \
|
||||
$(MAKE) -p -q -f common/makefiles/Main.gmk FRC SPEC=$(firstword $(SPEC)) | \
|
||||
grep ^.PHONY: | head -n 1 | cut -d " " -f 2-)))
|
||||
|
||||
$(all_phony_targets):
|
||||
@$(foreach spec,$(SPEC),($(MAKE) -f NewMakefile.gmk SPEC=$(spec) \
|
||||
$(VERBOSE) VERBOSE=$(VERBOSE) LOG_LEVEL=$(LOG_LEVEL) $@) &&) true
|
||||
|
||||
.PHONY: $(all_phony_targets)
|
||||
|
||||
endif
|
||||
endif
|
||||
|
||||
# Include this after a potential spec file has been included so that the bundles target
|
||||
# has access to the spec variables.
|
||||
include $(root_dir)/common/makefiles/Jprt.gmk
|
||||
|
||||
# Here are "global" targets, i.e. targets that can be executed without specifying a single configuration.
|
||||
# If you addd more global targets, please update the variable global_targets in MakeHelpers.
|
||||
|
||||
help:
|
||||
$(info )
|
||||
$(info OpenJDK Makefile help)
|
||||
$(info =====================)
|
||||
$(info )
|
||||
$(info Common make targets)
|
||||
$(info . make [default] # Compile all product in langtools, hotspot, jaxp, jaxws,)
|
||||
$(info . # corba and jdk)
|
||||
$(info . make all # Compile everything, all repos and images)
|
||||
$(info . make images # Create complete j2sdk and j2re images)
|
||||
$(info . make docs # Create javadocs)
|
||||
$(info . make overlay-images # Create limited images for sparc 64 bit platforms)
|
||||
$(info . make profiles # Create complete j2re compact profile images)
|
||||
$(info . make bootcycle-images # Build images twice, second time with newly build JDK)
|
||||
$(info . make install # Install the generated images locally)
|
||||
$(info . make clean # Remove all files generated by make, but not those)
|
||||
$(info . # generated by configure)
|
||||
$(info . make dist-clean # Remove all files, including configuration)
|
||||
$(info . make help # Give some help on using make)
|
||||
$(info . make test # Run tests, default is all tests (see TEST below))
|
||||
$(info )
|
||||
$(info Targets for specific components)
|
||||
$(info (Component is any of langtools, corba, jaxp, jaxws, hotspot, jdk, nashorn, images, overlay-images, docs or test))
|
||||
$(info . make <component> # Build <component> and everything it depends on. )
|
||||
$(info . make <component>-only # Build <component> only, without dependencies. This)
|
||||
$(info . # is faster but can result in incorrect build results!)
|
||||
$(info . make clean-<component> # Remove files generated by make for <component>)
|
||||
$(info )
|
||||
$(info Useful make variables)
|
||||
$(info . make CONF= # Build all configurations (note, assignment is empty))
|
||||
$(info . make CONF=<substring> # Build the configuration(s) with a name matching)
|
||||
$(info . # <substring>)
|
||||
$(info )
|
||||
$(info . make LOG=<loglevel> # Change the log level from warn to <loglevel>)
|
||||
$(info . # Available log levels are:)
|
||||
$(info . # 'warn' (default), 'info', 'debug' and 'trace')
|
||||
$(info . # To see executed command lines, use LOG=debug)
|
||||
$(info )
|
||||
$(info . make JOBS=<n> # Run <n> parallel make jobs)
|
||||
$(info . # Note that -jN does not work as expected!)
|
||||
$(info )
|
||||
$(info . make test TEST=<test> # Only run the given test or tests, e.g.)
|
||||
$(info . # make test TEST="jdk_lang jdk_net")
|
||||
$(info )
|
||||
|
||||
.PHONY: help
|
@ -24,4 +24,4 @@
|
||||
# This Makefile was generated by configure @DATE_WHEN_CONFIGURED@
|
||||
# GENERATED FILE, DO NOT EDIT
|
||||
SPEC:=@OUTPUT_ROOT@/spec.gmk
|
||||
include @SRC_ROOT@/NewMakefile.gmk
|
||||
include @SRC_ROOT@/Makefile
|
||||
|
@ -412,7 +412,7 @@ AC_DEFUN_ONCE([BASIC_SETUP_OUTPUT_DIR],
|
||||
# Test from where we are running configure, in or outside of src root.
|
||||
if test "x$CURDIR" = "x$SRC_ROOT" || test "x$CURDIR" = "x$SRC_ROOT/common" \
|
||||
|| test "x$CURDIR" = "x$SRC_ROOT/common/autoconf" \
|
||||
|| test "x$CURDIR" = "x$SRC_ROOT/common/makefiles" ; then
|
||||
|| test "x$CURDIR" = "x$SRC_ROOT/make" ; then
|
||||
# We are running configure from the src root.
|
||||
# Create a default ./build/target-variant-debuglevel output root.
|
||||
if test "x${CONF_NAME}" = x; then
|
||||
|
@ -3865,7 +3865,7 @@ fi
|
||||
#CUSTOM_AUTOCONF_INCLUDE
|
||||
|
||||
# Do not change or remove the following line, it is needed for consistency checks:
|
||||
DATE_WHEN_GENERATED=1383151988
|
||||
DATE_WHEN_GENERATED=1384422786
|
||||
|
||||
###############################################################################
|
||||
#
|
||||
@ -8042,7 +8042,7 @@ fi
|
||||
# Test from where we are running configure, in or outside of src root.
|
||||
if test "x$CURDIR" = "x$SRC_ROOT" || test "x$CURDIR" = "x$SRC_ROOT/common" \
|
||||
|| test "x$CURDIR" = "x$SRC_ROOT/common/autoconf" \
|
||||
|| test "x$CURDIR" = "x$SRC_ROOT/common/makefiles" ; then
|
||||
|| test "x$CURDIR" = "x$SRC_ROOT/make" ; then
|
||||
# We are running configure from the src root.
|
||||
# Create a default ./build/target-variant-debuglevel output root.
|
||||
if test "x${CONF_NAME}" = x; then
|
||||
@ -16201,32 +16201,25 @@ fi
|
||||
cd "$CURDIR"
|
||||
# Verify that the addon source root does not have any root makefiles.
|
||||
# If it does, then it is usually an error, prevent this.
|
||||
if test -f $with_add_source_root/langtools/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/langtools/make/Makefile; then
|
||||
if test -f $with_add_source_root/langtools/make/Makefile; then
|
||||
as_fn_error $? "Your add source root seems to contain a full langtools repo! An add source root should only contain additional sources." "$LINENO" 5
|
||||
fi
|
||||
if test -f $with_add_source_root/corba/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/corba/make/Makefile; then
|
||||
if test -f $with_add_source_root/corba/make/Makefile; then
|
||||
as_fn_error $? "Your add source root seems to contain a full corba repo! An add source root should only contain additional sources." "$LINENO" 5
|
||||
fi
|
||||
if test -f $with_add_source_root/jaxp/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/jaxp/make/Makefile; then
|
||||
if test -f $with_add_source_root/jaxp/make/Makefile; then
|
||||
as_fn_error $? "Your add source root seems to contain a full jaxp repo! An add source root should only contain additional sources." "$LINENO" 5
|
||||
fi
|
||||
if test -f $with_add_source_root/jaxws/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/jaxws/make/Makefile; then
|
||||
if test -f $with_add_source_root/jaxws/make/Makefile; then
|
||||
as_fn_error $? "Your add source root seems to contain a full jaxws repo! An add source root should only contain additional sources." "$LINENO" 5
|
||||
fi
|
||||
if test -f $with_add_source_root/hotspot/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/hotspot/make/Makefile; then
|
||||
if test -f $with_add_source_root/hotspot/make/Makefile; then
|
||||
as_fn_error $? "Your add source root seems to contain a full hotspot repo! An add source root should only contain additional sources." "$LINENO" 5
|
||||
fi
|
||||
if test -f $with_add_source_root/nashorn/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/nashorn/make/Makefile; then
|
||||
if test -f $with_add_source_root/nashorn/make/Makefile; then
|
||||
as_fn_error $? "Your add source root seems to contain a full nashorn repo! An add source root should only contain additional sources." "$LINENO" 5
|
||||
fi
|
||||
if test -f $with_add_source_root/jdk/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/jdk/make/Makefile; then
|
||||
if test -f $with_add_source_root/jdk/make/Makefile; then
|
||||
as_fn_error $? "Your add source root seems to contain a full JDK repo! An add source root should only contain additional sources." "$LINENO" 5
|
||||
fi
|
||||
fi
|
||||
@ -16240,32 +16233,25 @@ fi
|
||||
cd "$with_override_source_root"
|
||||
OVERRIDE_SRC_ROOT="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if test -f $with_override_source_root/langtools/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/langtools/make/Makefile; then
|
||||
if test -f $with_override_source_root/langtools/make/Makefile; then
|
||||
as_fn_error $? "Your override source root seems to contain a full langtools repo! An override source root should only contain sources that override." "$LINENO" 5
|
||||
fi
|
||||
if test -f $with_override_source_root/corba/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/corba/make/Makefile; then
|
||||
if test -f $with_override_source_root/corba/make/Makefile; then
|
||||
as_fn_error $? "Your override source root seems to contain a full corba repo! An override source root should only contain sources that override." "$LINENO" 5
|
||||
fi
|
||||
if test -f $with_override_source_root/jaxp/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/jaxp/make/Makefile; then
|
||||
if test -f $with_override_source_root/jaxp/make/Makefile; then
|
||||
as_fn_error $? "Your override source root seems to contain a full jaxp repo! An override source root should only contain sources that override." "$LINENO" 5
|
||||
fi
|
||||
if test -f $with_override_source_root/jaxws/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/jaxws/make/Makefile; then
|
||||
if test -f $with_override_source_root/jaxws/make/Makefile; then
|
||||
as_fn_error $? "Your override source root seems to contain a full jaxws repo! An override source root should only contain sources that override." "$LINENO" 5
|
||||
fi
|
||||
if test -f $with_override_source_root/hotspot/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/hotspot/make/Makefile; then
|
||||
if test -f $with_override_source_root/hotspot/make/Makefile; then
|
||||
as_fn_error $? "Your override source root seems to contain a full hotspot repo! An override source root should only contain sources that override." "$LINENO" 5
|
||||
fi
|
||||
if test -f $with_override_source_root/nashorn/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/nashorn/make/Makefile; then
|
||||
if test -f $with_override_source_root/nashorn/make/Makefile; then
|
||||
as_fn_error $? "Your override source root seems to contain a full nashorn repo! An override source root should only contain sources that override." "$LINENO" 5
|
||||
fi
|
||||
if test -f $with_override_source_root/jdk/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/jdk/make/Makefile; then
|
||||
if test -f $with_override_source_root/jdk/make/Makefile; then
|
||||
as_fn_error $? "Your override source root seems to contain a full JDK repo! An override source root should only contain sources that override." "$LINENO" 5
|
||||
fi
|
||||
fi
|
||||
@ -16344,7 +16330,7 @@ fi
|
||||
cd "$with_override_langtools"
|
||||
LANGTOOLS_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $LANGTOOLS_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $LANGTOOLS_TOPDIR/make/Makefile; then
|
||||
as_fn_error $? "You have to override langtools with a full langtools repo!" "$LINENO" 5
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if langtools should be overridden" >&5
|
||||
@ -16357,7 +16343,7 @@ $as_echo "yes with $LANGTOOLS_TOPDIR" >&6; }
|
||||
cd "$with_override_corba"
|
||||
CORBA_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $CORBA_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $CORBA_TOPDIR/make/Makefile; then
|
||||
as_fn_error $? "You have to override corba with a full corba repo!" "$LINENO" 5
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if corba should be overridden" >&5
|
||||
@ -16370,7 +16356,7 @@ $as_echo "yes with $CORBA_TOPDIR" >&6; }
|
||||
cd "$with_override_jaxp"
|
||||
JAXP_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $JAXP_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $JAXP_TOPDIR/make/Makefile; then
|
||||
as_fn_error $? "You have to override jaxp with a full jaxp repo!" "$LINENO" 5
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if jaxp should be overridden" >&5
|
||||
@ -16383,7 +16369,7 @@ $as_echo "yes with $JAXP_TOPDIR" >&6; }
|
||||
cd "$with_override_jaxws"
|
||||
JAXWS_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $JAXWS_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $JAXWS_TOPDIR/make/Makefile; then
|
||||
as_fn_error $? "You have to override jaxws with a full jaxws repo!" "$LINENO" 5
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if jaxws should be overridden" >&5
|
||||
@ -16396,8 +16382,7 @@ $as_echo "yes with $JAXWS_TOPDIR" >&6; }
|
||||
cd "$with_override_hotspot"
|
||||
HOTSPOT_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $HOTSPOT_TOPDIR/make/Makefile && \
|
||||
! test -f $HOTSPOT_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $HOTSPOT_TOPDIR/make/Makefile; then
|
||||
as_fn_error $? "You have to override hotspot with a full hotspot repo!" "$LINENO" 5
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if hotspot should be overridden" >&5
|
||||
@ -16410,7 +16395,7 @@ $as_echo "yes with $HOTSPOT_TOPDIR" >&6; }
|
||||
cd "$with_override_nashorn"
|
||||
NASHORN_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $NASHORN_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $NASHORN_TOPDIR/make/Makefile; then
|
||||
as_fn_error $? "You have to override nashorn with a full nashorn repo!" "$LINENO" 5
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if nashorn should be overridden" >&5
|
||||
@ -16423,7 +16408,7 @@ $as_echo "yes with $NASHORN_TOPDIR" >&6; }
|
||||
cd "$with_override_jdk"
|
||||
JDK_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $JDK_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $JDK_TOPDIR/make/Makefile; then
|
||||
as_fn_error $? "You have to override JDK with a full JDK repo!" "$LINENO" 5
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if JDK should be overridden" >&5
|
||||
|
@ -129,4 +129,4 @@ endif
|
||||
|
||||
# Sneak this in via the spec.gmk file, since we don't want to mess around too much with the Hotspot make files.
|
||||
# This is needed to get the LOG setting to work properly.
|
||||
include $(SRC_ROOT)/common/makefiles/MakeBase.gmk
|
||||
include $(SRC_ROOT)/make/common/MakeBase.gmk
|
||||
|
@ -80,32 +80,25 @@ AC_DEFUN_ONCE([SRCDIRS_SETUP_ALTERNATIVE_TOPDIRS],
|
||||
cd "$CURDIR"
|
||||
# Verify that the addon source root does not have any root makefiles.
|
||||
# If it does, then it is usually an error, prevent this.
|
||||
if test -f $with_add_source_root/langtools/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/langtools/make/Makefile; then
|
||||
if test -f $with_add_source_root/langtools/make/Makefile; then
|
||||
AC_MSG_ERROR([Your add source root seems to contain a full langtools repo! An add source root should only contain additional sources.])
|
||||
fi
|
||||
if test -f $with_add_source_root/corba/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/corba/make/Makefile; then
|
||||
if test -f $with_add_source_root/corba/make/Makefile; then
|
||||
AC_MSG_ERROR([Your add source root seems to contain a full corba repo! An add source root should only contain additional sources.])
|
||||
fi
|
||||
if test -f $with_add_source_root/jaxp/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/jaxp/make/Makefile; then
|
||||
if test -f $with_add_source_root/jaxp/make/Makefile; then
|
||||
AC_MSG_ERROR([Your add source root seems to contain a full jaxp repo! An add source root should only contain additional sources.])
|
||||
fi
|
||||
if test -f $with_add_source_root/jaxws/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/jaxws/make/Makefile; then
|
||||
if test -f $with_add_source_root/jaxws/make/Makefile; then
|
||||
AC_MSG_ERROR([Your add source root seems to contain a full jaxws repo! An add source root should only contain additional sources.])
|
||||
fi
|
||||
if test -f $with_add_source_root/hotspot/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/hotspot/make/Makefile; then
|
||||
if test -f $with_add_source_root/hotspot/make/Makefile; then
|
||||
AC_MSG_ERROR([Your add source root seems to contain a full hotspot repo! An add source root should only contain additional sources.])
|
||||
fi
|
||||
if test -f $with_add_source_root/nashorn/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/nashorn/make/Makefile; then
|
||||
if test -f $with_add_source_root/nashorn/make/Makefile; then
|
||||
AC_MSG_ERROR([Your add source root seems to contain a full nashorn repo! An add source root should only contain additional sources.])
|
||||
fi
|
||||
if test -f $with_add_source_root/jdk/makefiles/Makefile || \
|
||||
test -f $with_add_source_root/jdk/make/Makefile; then
|
||||
if test -f $with_add_source_root/jdk/make/Makefile; then
|
||||
AC_MSG_ERROR([Your add source root seems to contain a full JDK repo! An add source root should only contain additional sources.])
|
||||
fi
|
||||
fi
|
||||
@ -119,32 +112,25 @@ AC_DEFUN_ONCE([SRCDIRS_SETUP_ALTERNATIVE_TOPDIRS],
|
||||
cd "$with_override_source_root"
|
||||
OVERRIDE_SRC_ROOT="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if test -f $with_override_source_root/langtools/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/langtools/make/Makefile; then
|
||||
if test -f $with_override_source_root/langtools/make/Makefile; then
|
||||
AC_MSG_ERROR([Your override source root seems to contain a full langtools repo! An override source root should only contain sources that override.])
|
||||
fi
|
||||
if test -f $with_override_source_root/corba/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/corba/make/Makefile; then
|
||||
if test -f $with_override_source_root/corba/make/Makefile; then
|
||||
AC_MSG_ERROR([Your override source root seems to contain a full corba repo! An override source root should only contain sources that override.])
|
||||
fi
|
||||
if test -f $with_override_source_root/jaxp/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/jaxp/make/Makefile; then
|
||||
if test -f $with_override_source_root/jaxp/make/Makefile; then
|
||||
AC_MSG_ERROR([Your override source root seems to contain a full jaxp repo! An override source root should only contain sources that override.])
|
||||
fi
|
||||
if test -f $with_override_source_root/jaxws/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/jaxws/make/Makefile; then
|
||||
if test -f $with_override_source_root/jaxws/make/Makefile; then
|
||||
AC_MSG_ERROR([Your override source root seems to contain a full jaxws repo! An override source root should only contain sources that override.])
|
||||
fi
|
||||
if test -f $with_override_source_root/hotspot/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/hotspot/make/Makefile; then
|
||||
if test -f $with_override_source_root/hotspot/make/Makefile; then
|
||||
AC_MSG_ERROR([Your override source root seems to contain a full hotspot repo! An override source root should only contain sources that override.])
|
||||
fi
|
||||
if test -f $with_override_source_root/nashorn/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/nashorn/make/Makefile; then
|
||||
if test -f $with_override_source_root/nashorn/make/Makefile; then
|
||||
AC_MSG_ERROR([Your override source root seems to contain a full nashorn repo! An override source root should only contain sources that override.])
|
||||
fi
|
||||
if test -f $with_override_source_root/jdk/makefiles/Makefile || \
|
||||
test -f $with_override_source_root/jdk/make/Makefile; then
|
||||
if test -f $with_override_source_root/jdk/make/Makefile; then
|
||||
AC_MSG_ERROR([Your override source root seems to contain a full JDK repo! An override source root should only contain sources that override.])
|
||||
fi
|
||||
fi
|
||||
@ -195,7 +181,7 @@ AC_DEFUN_ONCE([SRCDIRS_SETUP_ALTERNATIVE_TOPDIRS],
|
||||
cd "$with_override_langtools"
|
||||
LANGTOOLS_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $LANGTOOLS_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $LANGTOOLS_TOPDIR/make/Makefile; then
|
||||
AC_MSG_ERROR([You have to override langtools with a full langtools repo!])
|
||||
fi
|
||||
AC_MSG_CHECKING([if langtools should be overridden])
|
||||
@ -206,7 +192,7 @@ AC_DEFUN_ONCE([SRCDIRS_SETUP_ALTERNATIVE_TOPDIRS],
|
||||
cd "$with_override_corba"
|
||||
CORBA_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $CORBA_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $CORBA_TOPDIR/make/Makefile; then
|
||||
AC_MSG_ERROR([You have to override corba with a full corba repo!])
|
||||
fi
|
||||
AC_MSG_CHECKING([if corba should be overridden])
|
||||
@ -217,7 +203,7 @@ AC_DEFUN_ONCE([SRCDIRS_SETUP_ALTERNATIVE_TOPDIRS],
|
||||
cd "$with_override_jaxp"
|
||||
JAXP_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $JAXP_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $JAXP_TOPDIR/make/Makefile; then
|
||||
AC_MSG_ERROR([You have to override jaxp with a full jaxp repo!])
|
||||
fi
|
||||
AC_MSG_CHECKING([if jaxp should be overridden])
|
||||
@ -228,7 +214,7 @@ AC_DEFUN_ONCE([SRCDIRS_SETUP_ALTERNATIVE_TOPDIRS],
|
||||
cd "$with_override_jaxws"
|
||||
JAXWS_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $JAXWS_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $JAXWS_TOPDIR/make/Makefile; then
|
||||
AC_MSG_ERROR([You have to override jaxws with a full jaxws repo!])
|
||||
fi
|
||||
AC_MSG_CHECKING([if jaxws should be overridden])
|
||||
@ -239,8 +225,7 @@ AC_DEFUN_ONCE([SRCDIRS_SETUP_ALTERNATIVE_TOPDIRS],
|
||||
cd "$with_override_hotspot"
|
||||
HOTSPOT_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $HOTSPOT_TOPDIR/make/Makefile && \
|
||||
! test -f $HOTSPOT_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $HOTSPOT_TOPDIR/make/Makefile; then
|
||||
AC_MSG_ERROR([You have to override hotspot with a full hotspot repo!])
|
||||
fi
|
||||
AC_MSG_CHECKING([if hotspot should be overridden])
|
||||
@ -251,7 +236,7 @@ AC_DEFUN_ONCE([SRCDIRS_SETUP_ALTERNATIVE_TOPDIRS],
|
||||
cd "$with_override_nashorn"
|
||||
NASHORN_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $NASHORN_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $NASHORN_TOPDIR/make/Makefile; then
|
||||
AC_MSG_ERROR([You have to override nashorn with a full nashorn repo!])
|
||||
fi
|
||||
AC_MSG_CHECKING([if nashorn should be overridden])
|
||||
@ -262,7 +247,7 @@ AC_DEFUN_ONCE([SRCDIRS_SETUP_ALTERNATIVE_TOPDIRS],
|
||||
cd "$with_override_jdk"
|
||||
JDK_TOPDIR="`pwd`"
|
||||
cd "$CURDIR"
|
||||
if ! test -f $JDK_TOPDIR/makefiles/Makefile; then
|
||||
if ! test -f $JDK_TOPDIR/make/Makefile; then
|
||||
AC_MSG_ERROR([You have to override JDK with a full JDK repo!])
|
||||
fi
|
||||
AC_MSG_CHECKING([if JDK should be overridden])
|
||||
|
@ -65,8 +65,8 @@ ifeq (,$(findstring -R,$(MAKE)))
|
||||
endif
|
||||
|
||||
# Specify where the common include directory for makefiles is.
|
||||
ifeq (,$(findstring -I @SRC_ROOT@/common/makefiles,$(MAKE)))
|
||||
MAKE:=$(MAKE) -I @SRC_ROOT@/common/makefiles
|
||||
ifeq (,$(findstring -I @SRC_ROOT@/make/common,$(MAKE)))
|
||||
MAKE:=$(MAKE) -I @SRC_ROOT@/make/common
|
||||
endif
|
||||
|
||||
# The "human readable" name of this configuration
|
||||
|
@ -1113,14 +1113,15 @@ fi
|
||||
if [ -d "$THIS/install/j2sdk-image" ]; then
|
||||
THIS_J2SDK="$THIS/install/j2sdk-image"
|
||||
THIS_J2RE="$THIS/install/j2re-image"
|
||||
echo "Comparing install images"
|
||||
echo "Selecting install images in this build"
|
||||
elif [ -d "$THIS/deploy/j2sdk-image" ]; then
|
||||
THIS_J2SDK="$THIS/deploy/j2sdk-image"
|
||||
THIS_J2RE="$THIS/deploy/j2re-image"
|
||||
echo "Comparing deploy images"
|
||||
echo "Selecting deploy images in this build"
|
||||
elif [ -d "$THIS/images/j2sdk-image" ]; then
|
||||
THIS_J2SDK="$THIS/images/j2sdk-image"
|
||||
THIS_J2RE="$THIS/images/j2re-image"
|
||||
echo "Selecting jdk images in this build"
|
||||
fi
|
||||
|
||||
if [ -d "$THIS/images/j2sdk-overlay-image" ]; then
|
||||
@ -1128,15 +1129,18 @@ if [ -d "$THIS/images/j2sdk-overlay-image" ]; then
|
||||
# If there is an install image, prefer that, it's also overlay
|
||||
THIS_J2SDK_OVERLAY="$THIS/install/j2sdk-image"
|
||||
THIS_J2RE_OVERLAY="$THIS/install/j2re-image"
|
||||
echo "Selecting install overlay images in this build"
|
||||
else
|
||||
THIS_J2SDK_OVERLAY="$THIS/images/j2sdk-overlay-image"
|
||||
THIS_J2RE_OVERLAY="$THIS/images/j2re-overlay-image"
|
||||
echo "Selecting jdk overlay images in this build"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -d "$THIS/images/j2sdk-bundle" ]; then
|
||||
THIS_J2SDK_BUNDLE="$THIS/images/j2sdk-bundle"
|
||||
THIS_J2RE_BUNDLE="$THIS/images/j2re-bundle"
|
||||
echo "Selecting bundles in this build"
|
||||
fi
|
||||
|
||||
# Figure out the layout of the other build (old or new, normal or overlay image)
|
||||
@ -1144,21 +1148,34 @@ if [ -d "$OTHER/j2sdk-image" ]; then
|
||||
if [ -f "$OTHER/j2sdk-image/LICENSE" ]; then
|
||||
OTHER_J2SDK="$OTHER/j2sdk-image"
|
||||
OTHER_J2RE="$OTHER/j2re-image"
|
||||
echo "Selecting old-style images in other build"
|
||||
else
|
||||
OTHER_J2SDK_OVERLAY="$OTHER/j2sdk-image"
|
||||
OTHER_J2RE_OVERLAY="$OTHER/j2re-image"
|
||||
echo "Selecting overlay images in other build"
|
||||
fi
|
||||
elif [ -d "$OTHER/install/j2sdk-image" ]; then
|
||||
OTHER_J2SDK="$OTHER/install/j2sdk-image"
|
||||
OTHER_J2RE="$OTHER/install/j2re-image"
|
||||
echo "Selecting install images in other build"
|
||||
elif [ -d "$OTHER/deploy/j2sdk-image" ]; then
|
||||
OTHER_J2SDK="$OTHER/deploy/j2sdk-image"
|
||||
OTHER_J2RE="$OTHER/deploy/j2re-image"
|
||||
echo "Selecting deploy images in other build"
|
||||
elif [ -d "$OTHER/images/j2sdk-image" ]; then
|
||||
OTHER_J2SDK="$OTHER/images/j2sdk-image"
|
||||
OTHER_J2RE="$OTHER/images/j2re-image"
|
||||
echo "Selecting jdk images in other build"
|
||||
fi
|
||||
|
||||
if [ -d "$OTHER/j2sdk-bundle" ]; then
|
||||
OTHER_J2SDK_BUNDLE="$OTHER/j2sdk-bundle"
|
||||
OTHER_J2RE_BUNDLE="$OTHER/j2re-bundle"
|
||||
echo "Selecting bundles in other build"
|
||||
elif [ -d "$OTHER/images/j2sdk-bundle" ]; then
|
||||
OTHER_J2SDK_BUNDLE="$OTHER/images/j2sdk-bundle"
|
||||
OTHER_J2RE_BUNDLE="$OTHER/images/j2re-bundle"
|
||||
echo "Selecting jdk bundles in other build"
|
||||
fi
|
||||
|
||||
if [ -z "$THIS_J2SDK" ] || [ -z "$THIS_J2RE" ]; then
|
||||
|
@ -1,26 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2011, 2012, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
include ../../NewMakefile.gmk
|
@ -1,49 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Doc Process Notes</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<h3><a name="REGEXP"></a><br>
|
||||
REGEXP</h3>
|
||||
<p> REGEXP is a list of wildcard patterns that determines which packages listed
|
||||
in CORE_PKGS.gmk go into which summary-table on the main API index page. It
|
||||
was motivated by the need to divide the world into "core packages"
|
||||
(java.*) and "extension packages" (javax.*). In time, the distinction
|
||||
went away. The whole table is now called "Platform Packages"--which
|
||||
eliminated the need for this list of regular expressions. But it lingered on,
|
||||
accreting all of the packages in the JVM, one by one. I pruned it back to "*",
|
||||
so it now covers every package in the Java platform API docs. If some separation
|
||||
is needed in the future, it can grow back into a colon-separated list, starting
|
||||
with this, which is in all respects equivalent to "*" at this point
|
||||
in time:</p>
|
||||
<blockquote>
|
||||
<pre>REGEXP = "java.*:javax.*:org.ietf*:org.omg.</pre>
|
||||
</blockquote>
|
||||
<h3><a name="releaseTargets"></a><br>
|
||||
Release Targets</h3>
|
||||
<p> (Thanks to Kelly O'Hair for this info.)</p>
|
||||
<p> The <tt>rel-coredocs</tt> and <tt>rel-docs</tt> targets were added by Eric
|
||||
Armstrong. <tt>rel-coredocs</tt> assumes the kind of large, 32-bit machine used
|
||||
in the javapubs group's docs-release process. It specifies memory settings accordingly
|
||||
to maximize performance.</p>
|
||||
<p> The performance settings, like the sanity check, are most important for the
|
||||
core docs--the platform APIs. Running javadoc on those APIs takes a significant
|
||||
amount of time and memory. Setting the initial heap size as large as possible
|
||||
is important to prevent thrashing as the heap grows. Setting the maximum as
|
||||
large as necessary is also important to keep the job from failing.</p>
|
||||
<blockquote>
|
||||
<p> <tt>-J-Xmx512</tt> sets a maximum of 512, which became necessary in 6.0<br>
|
||||
<tt>-J-Xms256</tt> sets starting size to 256 (default is 8)</p>
|
||||
</blockquote>
|
||||
<p> <tt>rel-coredocs</tt> also includes a sanity check to help ensure that <tt>BUILD_NUMBER</tt>
|
||||
and <tt>MILESTONE</tt> are specified properly when docs are built outside of
|
||||
the normal release engineering process, with the intention of releasing them
|
||||
on the web or in a downloaded docs bundle. (When invoked in release engineering's
|
||||
control build, the values are always set properly. But when the targets are
|
||||
run by themselves, they default to b00 and "internal"--which silently
|
||||
sabotage the result of a build that can take many hours to complete.</p>
|
||||
</body>
|
||||
</html>
|
File diff suppressed because it is too large
Load Diff
@ -1,383 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 1995, 2012, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
#
|
||||
# Common variables used by all the Java makefiles. This file should
|
||||
# not contain rules.
|
||||
#
|
||||
|
||||
# The build times report is turned off by setting REPORT_BUILD_TIMES to nothing.
|
||||
# This is necessary for the target clobber/clean which will erase the
|
||||
# directories where the buildtimes are stored.
|
||||
REPORT_BUILD_TIMES=1
|
||||
# Store the build times in this directory.
|
||||
BUILDTIMESDIR=$(ABS_OUTPUTDIR)/tmp/buildtimes
|
||||
|
||||
# Record starting time for build of a sub repository.
|
||||
define RecordStartTime
|
||||
$(MKDIR) -p $(BUILDTIMESDIR)
|
||||
$(DATE) '+%Y %m %d %H %M %S' | $(NAWK) '{ print $$1,$$2,$$3,$$4,$$5,$$6,($$4*3600+$$5*60+$$6) }' > $(BUILDTIMESDIR)/build_time_start_$1
|
||||
$(DATE) '+%Y-%m-%d %H:%M:%S' > $(BUILDTIMESDIR)/build_time_start_$1_human_readable
|
||||
endef
|
||||
|
||||
# Indicate that we started to build a sub repository and record starting time.
|
||||
define MakeStart
|
||||
$(call RecordStartTime,$1)
|
||||
$(PRINTF) "\n\n%s\n%s\n##### %-60.60s #####\n%s\n\n" \
|
||||
"########################################################################" \
|
||||
"########################################################################" \
|
||||
"Entering $1 for target(s) $2" \
|
||||
"########################################################################"
|
||||
endef
|
||||
|
||||
# Record ending time and calculate the difference and store it in a
|
||||
# easy to read format. Handles builds that cross midnight. Expects
|
||||
# that a build will never take 24 hours or more.
|
||||
define RecordEndTime
|
||||
$(DATE) '+%Y %m %d %H %M %S' | $(NAWK) '{ print $$1,$$2,$$3,$$4,$$5,$$6,($$4*3600+$$5*60+$$6) }' > $(BUILDTIMESDIR)/build_time_end_$1
|
||||
$(DATE) '+%Y-%m-%d %H:%M:%S' > $(BUILDTIMESDIR)/build_time_end_$1_human_readable
|
||||
$(ECHO) `$(CAT) $(BUILDTIMESDIR)/build_time_start_$1` `$(CAT) $(BUILDTIMESDIR)/build_time_end_$1` $1 | \
|
||||
$(NAWK) '{ F=$$7; T=$$14; if (F > T) { T+=3600*24 }; D=T-F; H=int(D/3600); \
|
||||
M=int((D-H*3600)/60); S=D-H*3600-M*60; printf("%02d:%02d:%02d %s\n",H,M,S,$$15); }' \
|
||||
> $(BUILDTIMESDIR)/build_time_diff_$1
|
||||
endef
|
||||
|
||||
# Indicate that we are done.
|
||||
# Record ending time and print out the total time it took to build.
|
||||
define MakeFinish
|
||||
$(if $(REPORT_BUILD_TIMES),$(call RecordEndTime,$1),)
|
||||
$(PRINTF) "%s\n##### %-60.60s #####\n%s\n##### %-60.60s #####\n%s\n\n" \
|
||||
"########################################################################" \
|
||||
"Leaving $1 for target(s) $2" \
|
||||
"########################################################################" \
|
||||
$(if $(REPORT_BUILD_TIMES),"Build time `$(CAT) $(BUILDTIMESDIR)/build_time_diff_$1` for target(s) $2","") \
|
||||
"########################################################################"
|
||||
endef
|
||||
|
||||
# Find all build_time_* files and print their contents in a list sorted
|
||||
# on the name of the sub repository.
|
||||
define ReportBuildTimes
|
||||
$(PRINTF) -- "-- Build times ----------\nTarget %s\nStart %s\nEnd %s\n%s\n%s\n-------------------------\n" \
|
||||
$1 \
|
||||
"`$(CAT) $(BUILDTIMESDIR)/build_time_start_TOTAL_human_readable`" \
|
||||
"`$(CAT) $(BUILDTIMESDIR)/build_time_end_TOTAL_human_readable`" \
|
||||
"`$(LS) $(BUILDTIMESDIR)/build_time_diff_* | $(GREP) -v _TOTAL | $(XARGS) $(CAT) | $(SORT) -k 2`" \
|
||||
"`$(CAT) $(BUILDTIMESDIR)/build_time_diff_TOTAL`"
|
||||
endef
|
||||
|
||||
ifdef OPENJDK
|
||||
ifneq ($(OPENJDK),true)
|
||||
x:=$(error "OPENJDK (if defined) can only be set to true")
|
||||
endif
|
||||
endif
|
||||
|
||||
# Define absolute paths to TOPDIRs
|
||||
ABS_LANGTOOLS_TOPDIR:=$(call OptFullPath,"$(LANGTOOLS_TOPDIR)")
|
||||
ABS_CORBA_TOPDIR:=$(call OptFullPath,"$(CORBA_TOPDIR)")
|
||||
ABS_JAXP_TOPDIR:=$(call OptFullPath,"$(JAXP_TOPDIR)")
|
||||
ABS_JAXWS_TOPDIR:=$(call OptFullPath,"$(JAXWS_TOPDIR)")
|
||||
ABS_JDK_TOPDIR:=$(call OptFullPath,"$(JDK_TOPDIR)")
|
||||
ABS_HOTSPOT_TOPDIR:=$(call OptFullPath,"$(HOTSPOT_TOPDIR)")
|
||||
ABS_NASHORN_TOPDIR:=$(call OptFullPath,"$(NASHORN_TOPDIR)")
|
||||
ABS_INSTALL_TOPDIR:=$(call OptFullPath,"$(INSTALL_TOPDIR)")
|
||||
ABS_SPONSORS_TOPDIR:=$(call OptFullPath,"$(SPONSORS_TOPDIR)")
|
||||
ABS_DEPLOY_TOPDIR:=$(call OptFullPath,"$(DEPLOY_TOPDIR)")
|
||||
|
||||
# Macro to return true or false if a file exists and is readable
|
||||
define MkExists
|
||||
$(shell if [ -r $1 ]; then $(ECHO) true; else $(ECHO) false; fi)
|
||||
endef
|
||||
|
||||
HOTSPOT_SRC_AVAILABLE := $(call MkExists,$(HOTSPOT_TOPDIR)/make/Makefile)
|
||||
ifndef BUILD_HOTSPOT
|
||||
ifdef ALT_HOTSPOT_IMPORT_PATH
|
||||
BUILD_HOTSPOT := false
|
||||
else
|
||||
BUILD_HOTSPOT := $(HOTSPOT_SRC_AVAILABLE)
|
||||
endif
|
||||
endif
|
||||
|
||||
LANGTOOLS_SRC_AVAILABLE := $(call MkExists,$(LANGTOOLS_TOPDIR)/make/Makefile)
|
||||
ifndef BUILD_LANGTOOLS
|
||||
ifdef ALT_LANGTOOLS_DIST
|
||||
BUILD_LANGTOOLS := false
|
||||
else
|
||||
BUILD_LANGTOOLS := $(LANGTOOLS_SRC_AVAILABLE)
|
||||
endif
|
||||
endif
|
||||
|
||||
CORBA_SRC_AVAILABLE := $(call MkExists,$(CORBA_TOPDIR)/make/Makefile)
|
||||
ifndef BUILD_CORBA
|
||||
ifdef ALT_CORBA_DIST
|
||||
BUILD_CORBA := false
|
||||
else
|
||||
BUILD_CORBA := $(CORBA_SRC_AVAILABLE)
|
||||
endif
|
||||
endif
|
||||
|
||||
JAXP_SRC_AVAILABLE := $(call MkExists,$(JAXP_TOPDIR)/make/Makefile)
|
||||
ifndef BUILD_JAXP
|
||||
ifdef ALT_JAXP_DIST
|
||||
BUILD_JAXP := false
|
||||
else
|
||||
BUILD_JAXP := $(JAXP_SRC_AVAILABLE)
|
||||
endif
|
||||
endif
|
||||
|
||||
JAXWS_SRC_AVAILABLE := $(call MkExists,$(JAXWS_TOPDIR)/make/Makefile)
|
||||
ifndef BUILD_JAXWS
|
||||
ifdef ALT_JAXWS_DIST
|
||||
BUILD_JAXWS := false
|
||||
else
|
||||
BUILD_JAXWS := $(JAXWS_SRC_AVAILABLE)
|
||||
endif
|
||||
endif
|
||||
|
||||
JDK_SRC_AVAILABLE := $(call MkExists,$(JDK_TOPDIR)/make/Makefile)
|
||||
ifndef BUILD_JDK
|
||||
BUILD_JDK := $(JDK_SRC_AVAILABLE)
|
||||
endif
|
||||
ifeq ($(JDK_SRC_AVAILABLE),true)
|
||||
JDK_CLOSED_SRC_AVAILABLE := $(call MkExists,$(JDK_TOPDIR)/src/closed)
|
||||
ifeq ($(JDK_CLOSED_SRC_AVAILABLE),false)
|
||||
OPENJDK = true
|
||||
endif
|
||||
endif
|
||||
|
||||
NASHORN_SRC_AVAILABLE := $(call MkExists,$(NASHORN_TOPDIR)/make/Makefile)
|
||||
ifndef BUILD_NASHORN
|
||||
ifdef ALT_NASHORN_DIST
|
||||
BUILD_NASHORN := false
|
||||
else
|
||||
BUILD_NASHORN := $(NASHORN_SRC_AVAILABLE)
|
||||
endif
|
||||
endif
|
||||
|
||||
DEPLOY_SRC_AVAILABLE := $(call MkExists,$(DEPLOY_TOPDIR)/make/Makefile)
|
||||
ifndef BUILD_DEPLOY
|
||||
BUILD_DEPLOY := $(DEPLOY_SRC_AVAILABLE)
|
||||
endif
|
||||
|
||||
INSTALL_SRC_AVAILABLE := $(call MkExists,$(INSTALL_TOPDIR)/make/Makefile)
|
||||
ifndef BUILD_INSTALL
|
||||
ifdef DEV_ONLY
|
||||
BUILD_INSTALL := false
|
||||
else
|
||||
BUILD_INSTALL := $(INSTALL_SRC_AVAILABLE)
|
||||
endif
|
||||
endif
|
||||
|
||||
SPONSORS_SRC_AVAILABLE := $(call MkExists,$(SPONSORS_TOPDIR)/make/Makefile)
|
||||
ifndef BUILD_SPONSORS
|
||||
ifdef DEV_ONLY
|
||||
BUILD_SPONSORS := false
|
||||
else
|
||||
BUILD_SPONSORS := $(SPONSORS_SRC_AVAILABLE)
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
# Do we build the source bundles?
|
||||
BUNDLE_RULES = $(JDK_TOPDIR)/make/closed/bundles.gmk
|
||||
ifeq ($(SKIP_BUNDLES_BUILD), true)
|
||||
BUNDLE_RULES_AVAILABLE := false
|
||||
else
|
||||
BUNDLE_RULES_AVAILABLE := $(call MkExists,$(BUNDLE_RULES))
|
||||
endif
|
||||
|
||||
# Current things we do NOT build for OPENJDK
|
||||
ifdef OPENJDK
|
||||
BUILD_DEPLOY = false
|
||||
BUILD_INSTALL = false
|
||||
BUILD_SPONSORS = false
|
||||
BUNDLE_RULES_AVAILABLE := false
|
||||
# These could be over-ridden on the command line or in environment
|
||||
ifndef SKIP_FASTDEBUG_BUILD
|
||||
SKIP_FASTDEBUG_BUILD = true
|
||||
endif
|
||||
ifndef SKIP_DEBUG_BUILD
|
||||
SKIP_DEBUG_BUILD = true
|
||||
endif
|
||||
ifndef SKIP_COMPARE_IMAGES
|
||||
SKIP_COMPARE_IMAGES = true
|
||||
endif
|
||||
else
|
||||
|
||||
# Various non-OPENJDK reasons to NOT build the deploy repository
|
||||
ifeq ($(ARCH), ia64)
|
||||
BUILD_DEPLOY=false
|
||||
endif
|
||||
ifeq ($(ARCH), sparcv9)
|
||||
BUILD_DEPLOY=false
|
||||
endif
|
||||
ifeq ($(ARCH), amd64)
|
||||
ifeq ($(PLATFORM), solaris)
|
||||
BUILD_DEPLOY=false
|
||||
endif
|
||||
endif
|
||||
|
||||
endif
|
||||
ifndef SKIP_PRODUCT_BUILD
|
||||
SKIP_PRODUCT_BUILD = false
|
||||
endif
|
||||
|
||||
# Many reasons why we would want to skip the comparison to previous jdk
|
||||
ifndef SKIP_COMPARE_IMAGES
|
||||
ifeq ($(BUILD_JDK), false)
|
||||
SKIP_COMPARE_IMAGES = true
|
||||
endif
|
||||
ifeq ($(BUILD_DEPLOY), false)
|
||||
SKIP_COMPARE_IMAGES = true
|
||||
endif
|
||||
ifeq ($(BUILD_INSTALL), false)
|
||||
SKIP_COMPARE_IMAGES = true
|
||||
endif
|
||||
ifdef DEV_ONLY
|
||||
SKIP_COMPARE_IMAGES = true
|
||||
endif
|
||||
endif
|
||||
|
||||
# Select defaults if these are not set to true or false
|
||||
ifndef SKIP_DEBUG_BUILD
|
||||
SKIP_DEBUG_BUILD=true
|
||||
endif
|
||||
ifndef SKIP_FASTDEBUG_BUILD
|
||||
SKIP_FASTDEBUG_BUILD=true
|
||||
endif
|
||||
|
||||
# Select javadoc setting GENERATE_DOCS
|
||||
ifndef NO_DOCS
|
||||
# Default value (we want javadoc run)
|
||||
GENERATE_DOCS=true
|
||||
# No DOCS build when JDK_UPDATE_VERSION set on non-OPENJDK builds
|
||||
ifndef OPENJDK
|
||||
ifdef JDK_UPDATE_VERSION
|
||||
GENERATE_DOCS=false
|
||||
endif
|
||||
endif
|
||||
# If langtools, corba, jaxp, and jaxws are not being built,
|
||||
# a full jdk javadoc is not possible
|
||||
ifneq ($(BUILD_LANGTOOLS), true)
|
||||
GENERATE_DOCS=false
|
||||
endif
|
||||
ifneq ($(BUILD_CORBA), true)
|
||||
GENERATE_DOCS=false
|
||||
endif
|
||||
ifneq ($(BUILD_JAXP), true)
|
||||
GENERATE_DOCS=false
|
||||
endif
|
||||
ifneq ($(BUILD_JAXWS), true)
|
||||
GENERATE_DOCS=false
|
||||
endif
|
||||
ifeq ($(GENERATE_DOCS),false)
|
||||
NO_DOCS=true
|
||||
endif
|
||||
else
|
||||
GENERATE_DOCS=false
|
||||
endif
|
||||
|
||||
# Output directory for hotspot build
|
||||
HOTSPOT_DIR = $(ABS_OUTPUTDIR)/hotspot
|
||||
|
||||
# If we are building components
|
||||
ifndef ALT_LANGTOOLS_DIST
|
||||
LANGTOOLS_OUTPUTDIR = $(ABS_OUTPUTDIR)/langtools
|
||||
ABS_LANGTOOLS_DIST = $(LANGTOOLS_OUTPUTDIR)/dist
|
||||
endif
|
||||
ifndef ALT_CORBA_DIST
|
||||
CORBA_OUTPUTDIR = $(ABS_OUTPUTDIR)/corba
|
||||
ABS_CORBA_DIST = $(CORBA_OUTPUTDIR)/dist
|
||||
endif
|
||||
ifndef ALT_JAXP_DIST
|
||||
JAXP_OUTPUTDIR = $(ABS_OUTPUTDIR)/jaxp
|
||||
ABS_JAXP_DIST = $(JAXP_OUTPUTDIR)/dist
|
||||
endif
|
||||
ifndef ALT_JAXWS_DIST
|
||||
JAXWS_OUTPUTDIR = $(ABS_OUTPUTDIR)/jaxws
|
||||
ABS_JAXWS_DIST = $(JAXWS_OUTPUTDIR)/dist
|
||||
endif
|
||||
ifndef ALT_NASHORN_DIST
|
||||
NASHORN_OUTPUTDIR = $(ABS_OUTPUTDIR)/nashorn
|
||||
ABS_NASHORN_DIST = $(NASHORN_OUTPUTDIR)/dist
|
||||
endif
|
||||
|
||||
# Common make arguments (supplied to all component builds)
|
||||
COMMON_BUILD_ARGUMENTS = \
|
||||
JDK_TOPDIR=$(ABS_JDK_TOPDIR) \
|
||||
JDK_MAKE_SHARED_DIR=$(ABS_JDK_TOPDIR)/make/common/shared \
|
||||
EXTERNALSANITYCONTROL=true \
|
||||
SOURCE_LANGUAGE_VERSION=$(SOURCE_LANGUAGE_VERSION) \
|
||||
TARGET_CLASS_VERSION=$(TARGET_CLASS_VERSION) \
|
||||
MILESTONE=$(MILESTONE) \
|
||||
BUILD_NUMBER=$(BUILD_NUMBER) \
|
||||
JDK_BUILD_NUMBER=$(JDK_BUILD_NUMBER) \
|
||||
FULL_VERSION=$(FULL_VERSION) \
|
||||
PREVIOUS_JDK_VERSION=$(PREVIOUS_JDK_VERSION) \
|
||||
JDK_VERSION=$(JDK_VERSION) \
|
||||
JDK_MKTG_VERSION=$(JDK_MKTG_VERSION) \
|
||||
JDK_MAJOR_VERSION=$(JDK_MAJOR_VERSION) \
|
||||
JDK_MINOR_VERSION=$(JDK_MINOR_VERSION) \
|
||||
JDK_MICRO_VERSION=$(JDK_MICRO_VERSION) \
|
||||
PREVIOUS_MAJOR_VERSION=$(PREVIOUS_MAJOR_VERSION) \
|
||||
PREVIOUS_MINOR_VERSION=$(PREVIOUS_MINOR_VERSION) \
|
||||
PREVIOUS_MICRO_VERSION=$(PREVIOUS_MICRO_VERSION)
|
||||
|
||||
ifdef OPENJDK
|
||||
COMMON_BUILD_ARGUMENTS += OPENJDK=$(OPENJDK)
|
||||
endif
|
||||
|
||||
ifdef ARCH_DATA_MODEL
|
||||
COMMON_BUILD_ARGUMENTS += ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)
|
||||
endif
|
||||
|
||||
ifeq ($(DEBUG_NAME), debug)
|
||||
COMMON_BUILD_ARGUMENTS += VARIANT=DBG DEBUG_CLASSFILES=true
|
||||
endif
|
||||
|
||||
ifeq ($(DEBUG_NAME), fastdebug)
|
||||
COMMON_BUILD_ARGUMENTS += VARIANT=DBG FASTDEBUG=true DEBUG_CLASSFILES=true
|
||||
endif
|
||||
|
||||
ifdef COOKED_JDK_UPDATE_VERSION
|
||||
COMMON_BUILD_ARGUMENTS += COOKED_JDK_UPDATE_VERSION=$(COOKED_JDK_UPDATE_VERSION)
|
||||
endif
|
||||
|
||||
ifdef COOKED_BUILD_NUMBER
|
||||
COMMON_BUILD_ARGUMENTS += COOKED_BUILD_NUMBER=$(COOKED_BUILD_NUMBER)
|
||||
endif
|
||||
|
||||
ifdef ANT_HOME
|
||||
COMMON_BUILD_ARGUMENTS += ANT_HOME="$(ANT_HOME)"
|
||||
endif
|
||||
|
||||
# When all repos support FULL_DEBUG_SYMBOLS and ZIP_DEBUGINFO_FILES,
|
||||
# then these can be set here:
|
||||
#ifdef FULL_DEBUG_SYMBOLS
|
||||
# COMMON_BUILD_ARGUMENTS += FULL_DEBUG_SYMBOLS=$(FULL_DEBUG_SYMBOLS)
|
||||
#endif
|
||||
#
|
||||
#ifdef ZIP_DEBUGINFO_FILES
|
||||
# COMMON_BUILD_ARGUMENTS += ZIP_DEBUGINFO_FILES="$(ZIP_DEBUGINFO_FILES)"
|
||||
#endif
|
@ -266,7 +266,7 @@ COMMON_JAVADOCFLAGS = \
|
||||
-use \
|
||||
-keywords \
|
||||
-Xdoclint:none \
|
||||
-Xprofilespath $(JDK_TOPDIR)/makefiles/profile-rtjar-includes.txt \
|
||||
-Xprofilespath $(JDK_TOPDIR)/make/profile-rtjar-includes.txt \
|
||||
$(ADDITIONAL_JAVADOCFLAGS)
|
||||
|
||||
ifdef OPENJDK
|
||||
@ -1158,6 +1158,28 @@ $(DIRECTORY_CACHE): $(ALL_EXISTING_SOURCE_DIRS)
|
||||
|
||||
#############################################################
|
||||
#release version of core packages ########
|
||||
|
||||
# The rel-coredocs and rel-docs targets were added by Eric Armstrong. rel-coredocs
|
||||
# assumes the kind of large, 32-bit machine used in the javapubs group's docs-release
|
||||
# process. It specifies memory settings accordingly to maximize performance.
|
||||
#
|
||||
# The performance settings, like the sanity check, are most important for the core
|
||||
# docs--the platform APIs. Running javadoc on those APIs takes a significant amount
|
||||
# of time and memory. Setting the initial heap size as large as possible is important
|
||||
# to prevent thrashing as the heap grows. Setting the maximum as large as necessary
|
||||
# is also important to keep the job from failing.
|
||||
#
|
||||
# -J-Xmx512 sets a maximum of 512, which became necessary in 6.0
|
||||
# -J-Xms256 sets starting size to 256 (default is 8)
|
||||
#
|
||||
# rel-coredocs also includes a sanity check to help ensure that BUILD_NUMBER and
|
||||
# MILESTONE are specified properly when docs are built outside of the normal release
|
||||
# engineering process, with the intention of releasing them on the web or in a downloaded
|
||||
# docs bundle. (When invoked in release engineering's control build, the values are always
|
||||
# set properly. But when the targets are run by themselves, they default to b00 and
|
||||
# "internal"--which silently sabotage the result of a build that can take many hours
|
||||
# to complete.
|
||||
|
||||
# Maximize performance and ensure that build number & milestone are set.
|
||||
|
||||
rel-coredocs: sanitycheckcoredocs
|
@ -69,7 +69,7 @@ ifeq ($(SKIP_BOOT_CYCLE),false)
|
||||
BRIDGE_TARGETS += bootcycle-images
|
||||
endif
|
||||
bridgeBuild: bridge2configure
|
||||
@cd $(root_dir) && $(MAKE) -f NewMakefile.gmk $(BRIDGE_TARGETS)
|
||||
@cd $(root_dir) && $(MAKE) -f Makefile $(BRIDGE_TARGETS)
|
||||
|
||||
# Bridge from old Makefile ALT settings to configure options
|
||||
bridge2configure: $(BUILD_DIR_ROOT)/.bridge2configureOpts
|
@ -29,7 +29,7 @@
|
||||
include $(SPEC)
|
||||
|
||||
# Load the vital tools for all the makefiles.
|
||||
include $(SRC_ROOT)/common/makefiles/MakeBase.gmk
|
||||
include $(SRC_ROOT)/make/common/MakeBase.gmk
|
||||
|
||||
# Include the corresponding custom file, if present.
|
||||
-include $(CUSTOM_MAKE_DIR)/Main.gmk
|
||||
@ -81,51 +81,51 @@ start-make: $(SPEC)
|
||||
langtools: langtools-only
|
||||
langtools-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(LANGTOOLS_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildLangtools.gmk)
|
||||
@($(CD) $(LANGTOOLS_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildLangtools.gmk)
|
||||
@$(call TargetExit)
|
||||
|
||||
corba: langtools corba-only
|
||||
corba-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(CORBA_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildCorba.gmk)
|
||||
@($(CD) $(CORBA_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildCorba.gmk)
|
||||
@$(call TargetExit)
|
||||
|
||||
jaxp: langtools jaxp-only
|
||||
jaxp-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(JAXP_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJaxp.gmk)
|
||||
@($(CD) $(JAXP_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJaxp.gmk)
|
||||
@$(call TargetExit)
|
||||
|
||||
jaxws: langtools jaxp jaxws-only
|
||||
jaxws-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(JAXWS_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJaxws.gmk)
|
||||
@($(CD) $(JAXWS_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJaxws.gmk)
|
||||
@$(call TargetExit)
|
||||
|
||||
ifeq ($(BUILD_HOTSPOT),true)
|
||||
hotspot: hotspot-only
|
||||
hotspot-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(SRC_ROOT)/common/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f HotspotWrapper.gmk)
|
||||
@($(CD) $(SRC_ROOT)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f HotspotWrapper.gmk)
|
||||
@$(call TargetExit)
|
||||
endif
|
||||
|
||||
jdk: langtools hotspot corba jaxp jaxws jdk-only
|
||||
jdk-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk $(JDK_TARGET))
|
||||
@($(CD) $(JDK_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk $(JDK_TARGET))
|
||||
@$(call TargetExit)
|
||||
|
||||
nashorn: jdk nashorn-only
|
||||
nashorn-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(NASHORN_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildNashorn.gmk)
|
||||
@($(CD) $(NASHORN_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildNashorn.gmk)
|
||||
@$(call TargetExit)
|
||||
|
||||
demos: jdk demos-only
|
||||
demos-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk demos)
|
||||
@($(CD) $(JDK_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk demos)
|
||||
@$(call TargetExit)
|
||||
|
||||
# Note: This double-colon rule is intentional, to support
|
||||
@ -133,19 +133,19 @@ demos-only: start-make
|
||||
images:: source-tips demos nashorn images-only
|
||||
images-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk images)
|
||||
@($(CD) $(JDK_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk images)
|
||||
@$(call TargetExit)
|
||||
|
||||
overlay-images: source-tips demos overlay-images-only
|
||||
overlay-images-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk overlay-images)
|
||||
@($(CD) $(JDK_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk overlay-images)
|
||||
@$(call TargetExit)
|
||||
|
||||
profiles: profiles-oscheck source-tips jdk hotspot profiles-only
|
||||
profiles-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk profiles)
|
||||
@($(CD) $(JDK_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk profiles)
|
||||
@$(call TargetExit)
|
||||
|
||||
profiles-oscheck:
|
||||
@ -156,25 +156,25 @@ profiles-oscheck:
|
||||
install: images install-only
|
||||
install-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk install)
|
||||
@($(CD) $(JDK_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk install)
|
||||
@$(call TargetExit)
|
||||
|
||||
docs: jdk docs-only
|
||||
docs-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(SRC_ROOT)/common/makefiles/javadoc && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f Javadoc.gmk docs)
|
||||
@($(CD) $(SRC_ROOT)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f Javadoc.gmk docs)
|
||||
@$(call TargetExit)
|
||||
|
||||
sign-jars: jdk sign-jars-only
|
||||
sign-jars-only: start-make
|
||||
@$(call TargetEnter)
|
||||
@($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk sign-jars)
|
||||
@($(CD) $(JDK_TOPDIR)/make && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk sign-jars)
|
||||
@$(call TargetExit)
|
||||
|
||||
bootcycle-images: images bootcycle-images-only
|
||||
bootcycle-images-only: start-make
|
||||
@$(ECHO) Boot cycle build step 2: Building a new JDK image using previously built image
|
||||
@($(CD) $(SRC_ROOT)/common/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) SPEC=$(dir $(SPEC))bootcycle-spec.gmk images)
|
||||
@($(CD) $(SRC_ROOT) && $(BUILD_LOG_WRAPPER) $(MAKE) SPEC=$(dir $(SPEC))bootcycle-spec.gmk images)
|
||||
|
||||
test: images test-only
|
||||
test-only: start-make
|
@ -1,41 +0,0 @@
|
||||
README-pre-components:
|
||||
---------------------
|
||||
Current pre-components are langtools, jaxws, jaxp, and corba.
|
||||
|
||||
Pre-components can use ant to build but must have a make/Makefile for
|
||||
building (a GNU make Makefile).
|
||||
All ant knowledge is being isolated in the workspaces that use it.
|
||||
|
||||
Also for various reasons it is nice to have a Makefile wrapper over the
|
||||
running of ant, but in general having to do
|
||||
anything with shell commands is much easier to do in a Makefile
|
||||
than in an ant script.
|
||||
|
||||
The make/makefile rules are:
|
||||
|
||||
Variables:
|
||||
ALT_BOOTDIR The jdk home to use to build, if provided
|
||||
ALT_LANGTOOLS_DIST The dist area from a langtools build to use, if provided
|
||||
ALT_OUTPUTDIR Parent dir of build and dist directories, if provided
|
||||
VARIANT If DBG, debug build, if OPT, optimized build
|
||||
TARGET_CLASS_VERSION The classfile version number (currently 7)
|
||||
ANT_HOME Home of ant to use, if provided
|
||||
QUIET If defined, be quiet
|
||||
VERBOSE If defined, be verbose
|
||||
JDK_VERSION Version being built
|
||||
FULL_VERSION Full version string for this jdk build
|
||||
MILESTONE fcs, beta, internal or empty
|
||||
BUILD_NUMBER Number of the jdk build
|
||||
JPRT_ARCHIVE_BUNDLE Path to zip bundle to create for JPRT
|
||||
|
||||
Targets:
|
||||
all Build everything, including dist
|
||||
build Build build area
|
||||
clean Clean up
|
||||
clobber Same as clean (don't ask)
|
||||
sanity Perform any sanity checks, exit non-zero if errors
|
||||
jprt_build_product JPRT product build, zip results into JPRT_ARCHIVE_BUNDLE
|
||||
jprt_build_debug JPRT debug build, zip results into JPRT_ARCHIVE_BUNDLE
|
||||
jprt_build_fastdebug JPRT fastdebug build, zip results into JPRT_ARCHIVE_BUNDLE
|
||||
|
||||
Then of course we expect a dist/lib/classes.jar, dist/lib/src.zip and dist/lib/bin.zip.
|
@ -339,7 +339,7 @@ define add_file_to_copy_and_clean
|
||||
$$($1_BIN)$$($2_TARGET) : $2
|
||||
$(MKDIR) -p $$(@D)
|
||||
$(CAT) $$< | $(SED) -e 's/\([^\\]\):/\1\\:/g' -e 's/\([^\\]\)=/\1\\=/g' -e 's/#.*/#/g' \
|
||||
| $(SED) -f "$(SRC_ROOT)/common/makefiles/support/unicode2x.sed" \
|
||||
| $(SED) -f "$(SRC_ROOT)/make/common/support/unicode2x.sed" \
|
||||
| $(SED) -e '/^#/d' -e '/^$$$$/d' \
|
||||
-e :a -e '/\\$$$$/N; s/\\\n//; ta' \
|
||||
-e 's/^[ \t]*//;s/[ \t]*$$$$//' \
|
@ -38,8 +38,8 @@ _MAKEBASE_GMK := 1
|
||||
# Then you need to use ListPathsSafely, which optimistically splits the output into several shell
|
||||
# calls as well as use compression on recurrent file paths segments, to get around the potential
|
||||
# command line length problem that exists in cygwin and other shells.
|
||||
compress_pre:=$(strip $(shell $(CAT) $(SRC_ROOT)/common/makefiles/support/ListPathsSafely-pre-compress.incl))
|
||||
compress_post:=$(strip $(shell $(CAT) $(SRC_ROOT)/common/makefiles/support/ListPathsSafely-post-compress.incl))
|
||||
compress_pre:=$(strip $(shell $(CAT) $(SRC_ROOT)/make/common/support/ListPathsSafely-pre-compress.incl))
|
||||
compress_post:=$(strip $(shell $(CAT) $(SRC_ROOT)/make/common/support/ListPathsSafely-post-compress.incl))
|
||||
compress_paths=$(compress_pre)\
|
||||
$(subst $(SRC_ROOT),X97,\
|
||||
$(subst $(OUTPUT_ROOT),X98,\
|
||||
@ -47,7 +47,7 @@ $(subst X,X00,\
|
||||
$(subst $(SPACE),\n,$(strip $1)))))\
|
||||
$(compress_post)
|
||||
|
||||
decompress_paths=$(SED) -f $(SRC_ROOT)/common/makefiles/support/ListPathsSafely-uncompress.sed -e 's|X99|\\n|g' \
|
||||
decompress_paths=$(SED) -f $(SRC_ROOT)/make/common/support/ListPathsSafely-uncompress.sed -e 's|X99|\\n|g' \
|
||||
-e 's|X98|$(OUTPUT_ROOT)|g' -e 's|X97|$(SRC_ROOT)|g' \
|
||||
-e 's|X00|X|g' | tr '\n' '$2'
|
||||
|
@ -1,56 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2001, 2011, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
################################################################
|
||||
# CORBA TARGETS
|
||||
################################################################
|
||||
|
||||
CORBA_BUILD_ARGUMENTS = \
|
||||
$(COMMON_BUILD_ARGUMENTS) \
|
||||
ALT_OUTPUTDIR=$(CORBA_OUTPUTDIR) \
|
||||
ALT_BOOTDIR=$(BOOTDIR) \
|
||||
ALT_JDK_IMPORT_PATH=$(JDK_IMPORT_PATH)
|
||||
|
||||
ifeq ($(BUILD_LANGTOOLS), true)
|
||||
CORBA_BUILD_ARGUMENTS += ALT_LANGTOOLS_DIST=$(ABS_LANGTOOLS_DIST)
|
||||
endif
|
||||
|
||||
corba: corba-build
|
||||
corba-build:
|
||||
$(MKDIR) -p $(CORBA_OUTPUTDIR)
|
||||
@$(call MakeStart,corba,all)
|
||||
($(CD) $(CORBA_TOPDIR)/make && \
|
||||
$(MAKE) $(CORBA_BUILD_ARGUMENTS) all)
|
||||
@$(call MakeFinish,corba,all)
|
||||
|
||||
corba-clobber::
|
||||
$(MKDIR) -p $(CORBA_OUTPUTDIR)
|
||||
@$(call MakeStart,corba,clobber)
|
||||
($(CD) $(CORBA_TOPDIR)/make && \
|
||||
$(MAKE) $(CORBA_BUILD_ARGUMENTS) clobber)
|
||||
@$(call MakeFinish,corba,clobber)
|
||||
|
||||
.PHONY: corba corba-build corba-clobber
|
||||
|
@ -1,110 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2002, 2013, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
################################################################
|
||||
# DEPLOY TARGETS
|
||||
################################################################
|
||||
|
||||
deploy: deploy-build
|
||||
|
||||
DEPLOY = deploy
|
||||
|
||||
# put the generated bundles in their own place in OUTPUTDIR
|
||||
DEPLOY_OUTPUTDIR = $(ABS_OUTPUTDIR)
|
||||
|
||||
# NO_IMAGES may be set in conjunction with DEV_ONLY
|
||||
ifdef NO_IMAGES
|
||||
IMAGES_TARGET =
|
||||
else
|
||||
IMAGES_TARGET = images
|
||||
endif
|
||||
|
||||
DEPLOY_BUILD_TARGETS = sanity deploy
|
||||
|
||||
ifneq ($(JQS), off)
|
||||
ifeq ($(ARCH_DATA_MODEL), 32)
|
||||
ifeq ($(PLATFORM), windows)
|
||||
DEPLOY_BUILD_TARGETS += jqs-all
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
ifndef DEV_ONLY
|
||||
DEPLOY_BUILD_TARGETS += images
|
||||
else
|
||||
DEPLOY_BUILD_TARGETS += $(IMAGES_TARGET)
|
||||
endif
|
||||
|
||||
DEPLOY_BUILD_ARGUMENTS = $(COMMON_BUILD_ARGUMENTS) \
|
||||
ALT_OUTPUTDIR=$(DEPLOY_OUTPUTDIR)
|
||||
|
||||
ifeq ($(BUILD_LANGTOOLS), true)
|
||||
DEPLOY_BUILD_ARGUMENTS += ALT_LANGTOOLS_DIST=$(ABS_LANGTOOLS_DIST)
|
||||
endif
|
||||
|
||||
ifdef ALT_IMAGE_DIR
|
||||
DEPLOY_BUILD_ARGUMENTS += ALT_IMAGE_DIR=$(ALT_IMAGE_DIR)
|
||||
endif
|
||||
|
||||
ifdef ALT_BUNDLE_DATE
|
||||
DEPLOY_BUILD_ARGUMENTS += ALT_BUNDLE_DATE=$(ALT_BUNDLE_DATE)
|
||||
endif
|
||||
|
||||
ifdef ALT_JAVAWS_BOOTDIR
|
||||
DEPLOY_BUILD_ARGUMENTS += ALT_JAVAWS_BOOTDIR=$(ALT_JAVAWS_BOOTDIR)
|
||||
endif
|
||||
|
||||
ifdef CERT
|
||||
DEPLOY_BUILD_ARGUMENTS += CERT=$(CERT)
|
||||
endif
|
||||
|
||||
ifdef PKEY
|
||||
DEPLOY_BUILD_ARGUMENTS += PKEY=$(PKEY)
|
||||
endif
|
||||
|
||||
deploy-build:
|
||||
ifeq ($(BUILD_DEPLOY), true)
|
||||
@$(call MakeStart,deploy,$(DEPLOY_BUILD_TARGETS))
|
||||
($(CD) $(DEPLOY_TOPDIR)/make && \
|
||||
$(MAKE) $(DEPLOY_BUILD_TARGETS) $(DEPLOY_BUILD_ARGUMENTS))
|
||||
@$(call MakeFinish,deploy,$(DEPLOY_BUILD_TARGETS))
|
||||
endif
|
||||
|
||||
deploy-clobber::
|
||||
ifeq ($(BUILD_DEPLOY), true)
|
||||
@$(call MakeStart,deploy,clobber)
|
||||
($(CD) $(DEPLOY_TOPDIR)/make && \
|
||||
$(MAKE) clobber $(DEPLOY_BUILD_ARGUMENTS))
|
||||
@$(call MakeFinish,deploy,clobber)
|
||||
endif
|
||||
|
||||
deploy-sanity::
|
||||
ifeq ($(BUILD_DEPLOY), true)
|
||||
($(CD) $(DEPLOY_TOPDIR)/make && \
|
||||
$(MAKE) sanity $(DEPLOY_BUILD_ARGUMENTS))
|
||||
endif
|
||||
|
||||
.PHONY: deploy deploy-build deploy-clobber deploy-sanity
|
||||
|
@ -1,120 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2001, 2012, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
################################################################
|
||||
# HOTSPOT TARGETS
|
||||
################################################################
|
||||
|
||||
# All the output from a hotspot build should be re-located to the
|
||||
# build output area.
|
||||
#
|
||||
HOTSPOT_OUTPUTDIR = $(HOTSPOT_DIR)/outputdir
|
||||
|
||||
# HOTSPOT_EXPORT_PATH points to a dir that contains files
|
||||
# that are needed in an SDK build, in the same relative positions as
|
||||
# these files are in an SDK image.
|
||||
# The SDK java/redist/Makefile will copy files from HOTSPOT_EXPORT_PATH
|
||||
# into the SDK being built.
|
||||
# This is the export path supplied to the hotspot makefiles.
|
||||
#
|
||||
HOTSPOT_EXPORT_PATH = $(HOTSPOT_DIR)/import
|
||||
|
||||
# Default targets
|
||||
HOTSPOT = hotspot-sanity hotspot-build
|
||||
|
||||
hotspot:: $(HOTSPOT)
|
||||
|
||||
# Hotspot clobber removes the output directory and exported files
|
||||
hotspot-clobber::
|
||||
$(RM) -r $(HOTSPOT_OUTPUTDIR)
|
||||
$(RM) -r $(HOTSPOT_EXPORT_PATH)
|
||||
|
||||
hotspot-sanity::
|
||||
@$(MKDIR) -p $(HOTSPOT_OUTPUTDIR)
|
||||
@$(MKDIR) -p $(HOTSPOT_EXPORT_PATH)
|
||||
@$(ECHO) "Hotspot Settings: \n" \
|
||||
" HOTSPOT_BUILD_JOBS = $(HOTSPOT_BUILD_JOBS) \n" \
|
||||
" HOTSPOT_OUTPUTDIR = $(HOTSPOT_OUTPUTDIR) \n" \
|
||||
" HOTSPOT_EXPORT_PATH = $(HOTSPOT_EXPORT_PATH) \n" \
|
||||
"\n" >> $(MESSAGE_FILE)
|
||||
|
||||
#
|
||||
# Basic hotspot build and export of it's files
|
||||
#
|
||||
|
||||
HOTSPOT_TARGET = all_product
|
||||
ifeq ($(DEBUG_NAME), debug)
|
||||
HOTSPOT_TARGET = all_debug
|
||||
endif
|
||||
ifeq ($(DEBUG_NAME), fastdebug)
|
||||
HOTSPOT_TARGET = all_fastdebug
|
||||
endif
|
||||
BUILD_FLAVOR=$(HOTSPOT_TARGET:all_%=%)
|
||||
|
||||
ifeq ($(ZERO_BUILD), true)
|
||||
ifeq ($(SHARK_BUILD), true)
|
||||
HOTSPOT_TARGET := $(HOTSPOT_TARGET)shark
|
||||
else
|
||||
HOTSPOT_TARGET := $(HOTSPOT_TARGET)zero
|
||||
endif
|
||||
endif
|
||||
|
||||
HOTSPOT_BUILD_ARGUMENTS += $(COMMON_BUILD_ARGUMENTS)
|
||||
HOTSPOT_BUILD_ARGUMENTS += ALT_OUTPUTDIR=$(HOTSPOT_OUTPUTDIR)
|
||||
HOTSPOT_BUILD_ARGUMENTS += ALT_EXPORT_PATH=$(HOTSPOT_EXPORT_PATH)
|
||||
HOTSPOT_BUILD_ARGUMENTS += BUILD_FLAVOR=$(BUILD_FLAVOR)
|
||||
|
||||
# Why do these need to be passed in? Because of windows nmake? and MAKEFLAGS=?
|
||||
# Or is there something wrong with hotspot/make/Makefile?
|
||||
HOTSPOT_BUILD_ARGUMENTS += ALT_SLASH_JAVA=$(SLASH_JAVA)
|
||||
HOTSPOT_BUILD_ARGUMENTS += ALT_BOOTDIR=$(BOOTDIR)
|
||||
|
||||
ifeq ($(BUILD_LANGTOOLS), true)
|
||||
HOTSPOT_BUILD_ARGUMENTS += ALT_LANGTOOLS_DIST=$(ABS_LANGTOOLS_DIST)
|
||||
endif
|
||||
|
||||
# Move to COMMON_BUILD_ARGUMENTS when all repos support
|
||||
# FULL_DEBUG_SYMBOLS and ZIP_DEBUGINFO_FILES:
|
||||
ifdef FULL_DEBUG_SYMBOLS
|
||||
HOTSPOT_BUILD_ARGUMENTS += FULL_DEBUG_SYMBOLS=$(FULL_DEBUG_SYMBOLS)
|
||||
endif
|
||||
|
||||
ifdef ZIP_DEBUGINFO_FILES
|
||||
HOTSPOT_BUILD_ARGUMENTS += ZIP_DEBUGINFO_FILES="$(ZIP_DEBUGINFO_FILES)"
|
||||
endif
|
||||
|
||||
hotspot-build::
|
||||
$(MKDIR) -p $(HOTSPOT_OUTPUTDIR)
|
||||
$(MKDIR) -p $(HOTSPOT_EXPORT_PATH)
|
||||
@$(call MakeStart,hotspot,$(HOTSPOT_TARGET))
|
||||
$(CD) $(HOTSPOT_TOPDIR)/make && \
|
||||
$(MAKE) $(HOTSPOT_BUILD_ARGUMENTS) $(HOTSPOT_TARGET)
|
||||
@$(call MakeFinish,hotspot,$(HOTSPOT_TARGET))
|
||||
|
||||
#####################
|
||||
# .PHONY
|
||||
#####################
|
||||
.PHONY: hotspot-build hotspot-clobber hotspot-sanity
|
||||
|
@ -1,121 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2002, 2011, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
################################################################
|
||||
# INSTALL TARGETS
|
||||
################################################################
|
||||
|
||||
install: install-build
|
||||
|
||||
# The generated java files are generated as a set, so instead of
|
||||
# setting the INSTALL variable to that list of files, set it to
|
||||
# the .PHONY target that generates the set of files.
|
||||
INSTALL = install
|
||||
|
||||
# put the generated patch in their own place in OUTPUTDIR
|
||||
INSTALL_OUTPUTDIR = $(ABS_OUTPUTDIR)
|
||||
|
||||
INSTALL_DEBUG_NAME=fastdebug
|
||||
|
||||
INSTALL_BUILD_TARGETS = sanity all
|
||||
INSTALL_BUILD_ARGUMENTS = $(COMMON_BUILD_ARGUMENTS) \
|
||||
ALT_OUTPUTDIR=$(INSTALL_OUTPUTDIR) \
|
||||
ALT_RTPATCH_DIR=$(ALT_RTPATCH_DIR) \
|
||||
ALT_BASE_IMAGE_ZIP=$(ALT_BASE_IMAGE_ZIP) \
|
||||
ALT_BASE_IMAGE_DIR=$(ALT_BASE_IMAGE_DIR) \
|
||||
ALT_NEW_IMAGE_DIR=$(ALT_NEW_IMAGE_DIR) \
|
||||
ALT_BUNDLE_DATE=$(BUNDLE_DATE) \
|
||||
INSTALL_DEBUG_NAME=$(INSTALL_DEBUG_NAME)
|
||||
|
||||
ifeq ($(BUILD_LANGTOOLS), true)
|
||||
INSTALL_BUILD_ARGUMENTS += ALT_LANGTOOLS_DIST=$(ABS_LANGTOOLS_DIST)
|
||||
endif
|
||||
|
||||
install: install-build
|
||||
|
||||
install-build:
|
||||
ifeq ($(BUILD_INSTALL), true)
|
||||
@$(call MakeStart,install,$(INSTALL_BUILD_TARGETS))
|
||||
($(CD) $(INSTALL_TOPDIR)/make && \
|
||||
$(MAKE) $(INSTALL_BUILD_TARGETS) $(INSTALL_BUILD_ARGUMENTS))
|
||||
@$(call MakeFinish,install,$(INSTALL_BUILD_TARGETS))
|
||||
endif
|
||||
|
||||
update-patcher:
|
||||
ifeq ($(BUILD_INSTALL), true)
|
||||
if [ -r $(INSTALL_TOPDIR)/make/update/Makefile ]; then \
|
||||
$(call MakeStart,install_update,all); \
|
||||
( $(CD) $(INSTALL_TOPDIR)/make/update && \
|
||||
$(MAKE) all $(INSTALL_BUILD_ARGUMENTS) ); \
|
||||
$(call MakeFinish,install_update,all); \
|
||||
fi
|
||||
endif
|
||||
|
||||
update-patchgen:
|
||||
ifeq ($(BUILD_INSTALL), true)
|
||||
if [ -r $(INSTALL_TOPDIR)/make/update/Makefile ]; then \
|
||||
$(call MakeStart,install_update,patchgen); \
|
||||
( $(CD) $(INSTALL_TOPDIR)/make/update && \
|
||||
$(MAKE) patchgen $(INSTALL_BUILD_ARGUMENTS) ); \
|
||||
$(call MakeFinish,install_update,patchgen); \
|
||||
fi
|
||||
endif
|
||||
|
||||
installer:
|
||||
ifeq ($(BUILD_INSTALL), true)
|
||||
if [ -r $(INSTALL_TOPDIR)/make/installer/Makefile ]; then \
|
||||
$(call MakeStart,install_installer,all); \
|
||||
( $(CD) $(INSTALL_TOPDIR)/make/installer && \
|
||||
$(MAKE) all $(INSTALL_BUILD_ARGUMENTS) ); \
|
||||
$(call MakeFinish,install_installer,all); \
|
||||
fi
|
||||
endif
|
||||
|
||||
combo_build:
|
||||
@$(ECHO) $@ installer combo build started: `$(DATE) '+%y-%m-%d %H:%M'`
|
||||
$(CD) $(INSTALL_TOPDIR)/make/installer/bundles/windows/ishield/wrapper/wrapper.jreboth ; $(MAKE) all
|
||||
$(CD) $(INSTALL_TOPDIR)/make/installer/bundles/windows/ishield/jre ; $(MAKE) au_combo
|
||||
$(CD) $(INSTALL_TOPDIR)/make/installer/bundles/windows/xmlinffile ; $(MAKE) all
|
||||
|
||||
install-clobber:
|
||||
ifeq ($(BUILD_INSTALL), true)
|
||||
@$(call MakeStart,install,clobber)
|
||||
($(CD) $(INSTALL_TOPDIR)/make && \
|
||||
$(MAKE) clobber $(INSTALL_BUILD_ARGUMENTS))
|
||||
@$(call MakeFinish,install,clobber)
|
||||
endif
|
||||
|
||||
install-sanity::
|
||||
ifeq ($(BUILD_INSTALL), true)
|
||||
($(CD) $(INSTALL_TOPDIR)/make && \
|
||||
$(MAKE) sanity $(INSTALL_BUILD_ARGUMENTS))
|
||||
endif
|
||||
|
||||
######################################
|
||||
# Rules for making the install
|
||||
######################################
|
||||
|
||||
.PHONY: install install-build install-clobber install-sanity \
|
||||
update-installer update-patchgen installer
|
@ -1,56 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2001, 2011, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
################################################################
|
||||
# JAXP TARGETS
|
||||
################################################################
|
||||
|
||||
JAXP_BUILD_ARGUMENTS = \
|
||||
$(COMMON_BUILD_ARGUMENTS) \
|
||||
ALT_OUTPUTDIR=$(JAXP_OUTPUTDIR) \
|
||||
ALT_BOOTDIR=$(BOOTDIR) \
|
||||
ALT_JDK_IMPORT_PATH=$(JDK_IMPORT_PATH)
|
||||
|
||||
ifeq ($(BUILD_LANGTOOLS), true)
|
||||
JAXP_BUILD_ARGUMENTS += ALT_LANGTOOLS_DIST=$(ABS_LANGTOOLS_DIST)
|
||||
endif
|
||||
|
||||
jaxp: jaxp-build
|
||||
jaxp-build:
|
||||
$(MKDIR) -p $(JAXP_OUTPUTDIR)
|
||||
@$(call MakeStart,jaxp,all)
|
||||
($(CD) $(JAXP_TOPDIR)/make && \
|
||||
$(MAKE) $(JAXP_BUILD_ARGUMENTS) all)
|
||||
@$(call MakeFinish,jaxp,all)
|
||||
|
||||
jaxp-clobber::
|
||||
$(MKDIR) -p $(JAXP_OUTPUTDIR)
|
||||
@$(call MakeStart,jaxp,clobber)
|
||||
($(CD) $(JAXP_TOPDIR)/make && \
|
||||
$(MAKE) $(JAXP_BUILD_ARGUMENTS) clobber)
|
||||
@$(call MakeFinish,jaxp,clobber)
|
||||
|
||||
.PHONY: jaxp jaxp-build jaxp-clobber
|
||||
|
@ -1,56 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2001, 2011, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
################################################################
|
||||
# JAXWS TARGETS
|
||||
################################################################
|
||||
|
||||
JAXWS_BUILD_ARGUMENTS = \
|
||||
$(COMMON_BUILD_ARGUMENTS) \
|
||||
ALT_OUTPUTDIR=$(JAXWS_OUTPUTDIR) \
|
||||
ALT_BOOTDIR=$(BOOTDIR) \
|
||||
ALT_JDK_IMPORT_PATH=$(JDK_IMPORT_PATH)
|
||||
|
||||
ifeq ($(BUILD_LANGTOOLS), true)
|
||||
JAXWS_BUILD_ARGUMENTS += ALT_LANGTOOLS_DIST=$(ABS_LANGTOOLS_DIST)
|
||||
endif
|
||||
|
||||
jaxws: jaxws-build
|
||||
jaxws-build:
|
||||
$(MKDIR) -p $(JAXWS_OUTPUTDIR)
|
||||
@$(call MakeStart,jaxws,all)
|
||||
($(CD) $(JAXWS_TOPDIR)/make && \
|
||||
$(MAKE) $(JAXWS_BUILD_ARGUMENTS) all)
|
||||
@$(call MakeFinish,jaxws,all)
|
||||
|
||||
jaxws-clobber::
|
||||
$(MKDIR) -p $(JAXWS_OUTPUTDIR)
|
||||
@$(call MakeStart,jaxws,clobber)
|
||||
($(CD) $(JAXWS_TOPDIR)/make && \
|
||||
$(MAKE) $(JAXWS_BUILD_ARGUMENTS) clobber)
|
||||
@$(call MakeFinish,jaxws,clobber)
|
||||
|
||||
.PHONY: jaxws jaxws-build jaxws-clobber
|
||||
|
@ -1,121 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2001, 2012, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
################################################################
|
||||
# JDK TARGETS
|
||||
################################################################
|
||||
|
||||
JDK_JAVA_EXE = $(OUTPUTDIR)/bin/java$(EXE_SUFFIX)
|
||||
|
||||
# NO_IMAGES may be set in conjunction with DEV_ONLY
|
||||
IMAGES_TARGET = images
|
||||
ifdef DEV_ONLY
|
||||
ifdef NO_IMAGES
|
||||
IMAGES_TARGET =
|
||||
endif
|
||||
endif
|
||||
|
||||
# GENERATE_DOCS determines if we ask for the docs target
|
||||
DOCS_TARGET = docs
|
||||
ifeq ($(GENERATE_DOCS),false)
|
||||
DOCS_TARGET =
|
||||
endif
|
||||
|
||||
JDK_BUILD_TARGETS = sanity all $(DOCS_TARGET) $(IMAGES_TARGET)
|
||||
|
||||
JDK_CLOBBER_TARGETS = clobber
|
||||
|
||||
JDK_BUILD_ARGUMENTS = $(COMMON_BUILD_ARGUMENTS) \
|
||||
ALT_OUTPUTDIR=$(ABS_OUTPUTDIR)
|
||||
|
||||
ifeq ($(BUILD_LANGTOOLS), true)
|
||||
JDK_BUILD_ARGUMENTS += ALT_LANGTOOLS_DIST=$(ABS_LANGTOOLS_DIST)
|
||||
endif
|
||||
ifeq ($(BUILD_CORBA), true)
|
||||
JDK_BUILD_ARGUMENTS += ALT_CORBA_DIST=$(ABS_CORBA_DIST)
|
||||
endif
|
||||
ifeq ($(BUILD_JAXP), true)
|
||||
JDK_BUILD_ARGUMENTS += ALT_JAXP_DIST=$(ABS_JAXP_DIST)
|
||||
endif
|
||||
ifeq ($(BUILD_JAXWS), true)
|
||||
JDK_BUILD_ARGUMENTS += ALT_JAXWS_DIST=$(ABS_JAXWS_DIST)
|
||||
endif
|
||||
ifeq ($(BUILD_NASHORN), true)
|
||||
JDK_BUILD_ARGUMENTS += ALT_NASHORN_DIST=$(ABS_NASHORN_DIST)
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_HOTSPOT), true)
|
||||
JDK_BUILD_ARGUMENTS += ALT_HOTSPOT_IMPORT_PATH=$(HOTSPOT_DIR)/import
|
||||
endif
|
||||
|
||||
JDK_BUILD_ARGUMENTS += \
|
||||
BUILD_HOTSPOT=$(BUILD_HOTSPOT)
|
||||
|
||||
# Move to COMMON_BUILD_ARGUMENTS when all repos support
|
||||
# FULL_DEBUG_SYMBOLS and ZIP_DEBUGINFO_FILES:
|
||||
ifdef FULL_DEBUG_SYMBOLS
|
||||
JDK_BUILD_ARGUMENTS += FULL_DEBUG_SYMBOLS=$(FULL_DEBUG_SYMBOLS)
|
||||
endif
|
||||
|
||||
ifdef ZIP_DEBUGINFO_FILES
|
||||
JDK_BUILD_ARGUMENTS += ZIP_DEBUGINFO_FILES="$(ZIP_DEBUGINFO_FILES)"
|
||||
endif
|
||||
|
||||
|
||||
$(JDK_JAVA_EXE):: jdk-build
|
||||
|
||||
jdk: jdk-build
|
||||
jdk-build:
|
||||
@$(call MakeStart,jdk,$(JDK_BUILD_TARGETS))
|
||||
( $(CD) $(JDK_TOPDIR)/make && \
|
||||
$(MAKE) $(JDK_BUILD_TARGETS) $(JDK_BUILD_ARGUMENTS) ; )
|
||||
@$(call MakeFinish,jdk,$(JDK_BUILD_TARGETS))
|
||||
|
||||
jdk-clobber::
|
||||
@$(call MakeStart,jdk,$(JDK_CLOBBER_TARGETS))
|
||||
( $(CD) $(JDK_TOPDIR)/make && \
|
||||
$(MAKE) $(JDK_CLOBBER_TARGETS) $(JDK_BUILD_ARGUMENTS) ; )
|
||||
@$(call MakeFinish,jdk,$(JDK_CLOBBER_TARGETS))
|
||||
|
||||
jdk-sanity::
|
||||
( $(CD) $(JDK_TOPDIR)/make && \
|
||||
$(MAKE) sanity HOTSPOT_IMPORT_CHECK=false $(JDK_BUILD_ARGUMENTS) ; )
|
||||
|
||||
compare-images: compare-image
|
||||
compare-image:
|
||||
@$(call MakeStart,jdk,compare-image)
|
||||
( $(CD) $(JDK_TOPDIR)/make && \
|
||||
$(MAKE) ALT_OUTPUTDIR=$(ABS_OUTPUTDIR) compare-image )
|
||||
@$(call MakeFinish,jdk,compare-image)
|
||||
|
||||
compare-images-clobber: compare-image-clobber
|
||||
compare-image-clobber:
|
||||
@$(call MakeStart,jdk,compare-image-clobber)
|
||||
( $(CD) $(JDK_TOPDIR)/make && \
|
||||
$(MAKE) ALT_OUTPUTDIR=$(ABS_OUTPUTDIR) compare-image-clobber )
|
||||
@$(call MakeFinish,jdk,compare-image-clobber)
|
||||
|
||||
.PHONY: jdk jdk-build jdk-clobber jdk-sanity
|
||||
|
@ -1,67 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2006, 2012, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
################################################################
|
||||
# JPRT rule to build
|
||||
################################################################
|
||||
|
||||
# To get all the bundles from JPRT, use:
|
||||
# jprt submit -buildenv HAVE_JPRT_SAVE_BUNDLES=true -control "..." ...
|
||||
|
||||
DEFAULT_BUILD_FLAVOR=product
|
||||
|
||||
# JPRT will define these when it builds
|
||||
JPRT_ARCHIVE_BUNDLE=$(ABS_OUTPUTDIR)/$(DEFAULT_BUILD_FLAVOR)-bundle.zip
|
||||
JPRT_ARCHIVE_INSTALL_BUNDLE=$(ABS_OUTPUTDIR)/$(DEFAULT_BUILD_FLAVOR)-install-bundle.zip
|
||||
|
||||
ifeq ($(PLATFORM),windows)
|
||||
ZIPFLAGS=-q
|
||||
else
|
||||
# store symbolic links as the link
|
||||
ZIPFLAGS=-q -y
|
||||
endif
|
||||
|
||||
jprt_build_product: sanity all_product_build
|
||||
( $(CD) $(OUTPUTDIR)/$(JDK_IMAGE_DIRNAME) && \
|
||||
$(ZIPEXE) $(ZIPFLAGS) -r $(JPRT_ARCHIVE_BUNDLE) . )
|
||||
ifdef HAVE_JPRT_SAVE_BUNDLES
|
||||
( $(CD) $(OUTPUTDIR)/bundles && \
|
||||
$(ZIPEXE) $(ZIPFLAGS) -r $(JPRT_ARCHIVE_INSTALL_BUNDLE) . )
|
||||
endif
|
||||
|
||||
jprt_build_fastdebug: fastdebug_build
|
||||
( $(CD) $(OUTPUTDIR)/$(REL_JDK_FASTDEBUG_IMAGE_DIR) && \
|
||||
$(ZIPEXE) $(ZIPFLAGS) -r $(JPRT_ARCHIVE_BUNDLE) . )
|
||||
|
||||
jprt_build_debug: debug_build
|
||||
( $(CD) $(OUTPUTDIR)/$(REL_JDK_DEBUG_IMAGE_DIR) && \
|
||||
$(ZIPEXE) $(ZIPFLAGS) -r $(JPRT_ARCHIVE_BUNDLE) . )
|
||||
|
||||
################################################################
|
||||
# PHONY
|
||||
################################################################
|
||||
|
||||
.PHONY: jprt_build_product jprt_build_fastdebug jprt_build_debug
|
||||
|
@ -1,51 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2001, 2011, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
################################################################
|
||||
# LANGTOOLS TARGETS
|
||||
################################################################
|
||||
|
||||
LANGTOOLS_BUILD_ARGUMENTS = \
|
||||
$(COMMON_BUILD_ARGUMENTS) \
|
||||
ALT_OUTPUTDIR=$(LANGTOOLS_OUTPUTDIR) \
|
||||
ALT_BOOTDIR=$(BOOTDIR)
|
||||
|
||||
langtools: langtools-build
|
||||
langtools-build:
|
||||
$(MKDIR) -p $(LANGTOOLS_OUTPUTDIR)
|
||||
@$(call MakeStart,langtools,all)
|
||||
($(CD) $(LANGTOOLS_TOPDIR)/make && \
|
||||
$(MAKE) $(LANGTOOLS_BUILD_ARGUMENTS) all)
|
||||
@$(call MakeFinish,langtools,all)
|
||||
|
||||
langtools-clobber::
|
||||
$(MKDIR) -p $(LANGTOOLS_OUTPUTDIR)
|
||||
@$(call MakeStart,langtools,clobber)
|
||||
($(CD) $(LANGTOOLS_TOPDIR)/make && \
|
||||
$(MAKE) $(LANGTOOLS_BUILD_ARGUMENTS) clobber)
|
||||
@$(call MakeFinish,langtools,clobber)
|
||||
|
||||
.PHONY: langtools langtools-build langtools-clobber
|
||||
|
@ -1,59 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2001, 2011, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
################################################################
|
||||
# NASHORN TARGETS
|
||||
################################################################
|
||||
|
||||
NASHORN_BUILD_ARGUMENTS = \
|
||||
$(COMMON_BUILD_ARGUMENTS) \
|
||||
ALT_OUTPUTDIR=$(NASHORN_OUTPUTDIR) \
|
||||
ALT_BOOTDIR=$(BOOTDIR) \
|
||||
ALT_JDK_IMPORT_PATH=$(JDK_IMPORT_PATH)
|
||||
|
||||
ifeq ($(BUILD_LANGTOOLS), true)
|
||||
NASHORN_BUILD_ARGUMENTS += ALT_LANGTOOLS_DIST=$(ABS_LANGTOOLS_DIST)
|
||||
endif
|
||||
|
||||
# Default targets
|
||||
NASHORN = nashorn-build
|
||||
|
||||
nashorn: nashorn-build
|
||||
nashorn-build:
|
||||
$(MKDIR) -p $(NASHORN_OUTPUTDIR)
|
||||
@$(call MakeStart,nashorn,all)
|
||||
($(CD) $(NASHORN_TOPDIR)/make && \
|
||||
$(MAKE) $(NASHORN_BUILD_ARGUMENTS) all)
|
||||
@$(call MakeFinish,nashorn,all)
|
||||
|
||||
nashorn-clobber::
|
||||
$(MKDIR) -p $(NASHORN_OUTPUTDIR)
|
||||
@$(call MakeStart,nashorn,clobber)
|
||||
($(CD) $(NASHORN_TOPDIR)/make && \
|
||||
$(MAKE) $(NASHORN_BUILD_ARGUMENTS) clobber)
|
||||
@$(call MakeFinish,nashorn,clobber)
|
||||
|
||||
.PHONY: nashorn nashorn-build nashorn-clobber
|
||||
|
@ -1,336 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2001, 2011, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
################################################################
|
||||
# SANITY
|
||||
################################################################
|
||||
|
||||
sanity:: pre-sanity settings insane environment
|
||||
|
||||
ifeq ($(BUILD_HOTSPOT), true)
|
||||
sanity:: hotspot-sanity
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_DEPLOY), true)
|
||||
sanity:: deploy-sanity
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_JDK), true)
|
||||
sanity:: jdk-sanity
|
||||
endif
|
||||
|
||||
# Only need these sanity rules when not doing a debug build
|
||||
ifeq ($(DEBUG_NAME),)
|
||||
|
||||
ifeq ($(BUILD_INSTALL), true)
|
||||
sanity:: install-sanity
|
||||
endif
|
||||
|
||||
ifeq ($(BUILD_SPONSORS), true)
|
||||
sanity:: sponsors-sanity
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
sanity:: post-sanity
|
||||
|
||||
source-sanity : pre-sanity post-sanity
|
||||
|
||||
$(ERROR_FILE) $(WARNING_FILE) $(MESSAGE_FILE):
|
||||
@$(prep-target)
|
||||
|
||||
purge-sanity: $(ERROR_FILE) $(WARNING_FILE) $(MESSAGE_FILE)
|
||||
-@$(RM) $(ERROR_FILE) $(WARNING_FILE) $(MESSAGE_FILE)
|
||||
|
||||
pre-sanity: purge-sanity
|
||||
|
||||
# this should be the last rule in any target's sanity rule.
|
||||
post-sanity post-sanity-hotspot post-sanity-jdk post-sanity-install post-sanity-deploy:
|
||||
@if [ -r $(MESSAGE_FILE) ]; then \
|
||||
$(ECHO) "" ; \
|
||||
$(CAT) $(MESSAGE_FILE) ; \
|
||||
fi
|
||||
@if [ -r $(WARNING_FILE) ]; then \
|
||||
$(CAT) $(WARNING_FILE) ; \
|
||||
fi
|
||||
@if [ "x$(INSANE)" != x ]; then \
|
||||
$(ECHO) "INSANE mode requested. \n" \
|
||||
"Sanity will not force a build termination, even with errors.\n" \
|
||||
"" >> $(ERROR_FILE); \
|
||||
fi
|
||||
@if [ -r $(ERROR_FILE) ]; then \
|
||||
if [ "x$(INSANE)" = x ]; then \
|
||||
$(ECHO) "Exiting because of the above error(s). \n" \
|
||||
"">> $(ERROR_FILE); \
|
||||
fi ; \
|
||||
$(CAT) $(ERROR_FILE) ; \
|
||||
if [ "x$(INSANE)" = x ]; then \
|
||||
exit 1 ; \
|
||||
fi ; \
|
||||
fi
|
||||
ifdef PEDANTIC
|
||||
@if [ -r $(WARNING_FILE) ]; then \
|
||||
$(ECHO) "PEDANTIC mode requested. \n" \
|
||||
"Exiting because of the above warning(s). \n" \
|
||||
"" >> $(ERROR_FILE); \
|
||||
$(CAT) $(ERROR_FILE) ; \
|
||||
exit 1 ; \
|
||||
fi
|
||||
endif
|
||||
@if [ ! -r $(ERROR_FILE) ]; then \
|
||||
$(ECHO) "Sanity check passed." ; \
|
||||
fi
|
||||
|
||||
insane:
|
||||
ifdef INSANE
|
||||
@$(ECHO) "WARNING: You are building in 'INSANE' mode. You \n" \
|
||||
" should not use this mode, and in fact, \n" \
|
||||
" it may be removed at any time. If you \n" \
|
||||
" have build problems as a result of using \n" \
|
||||
" INSANE mode, then you should not expect \n" \
|
||||
" assistance from anyone with the problems \n" \
|
||||
" or consequences you experience. \n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
|
||||
# Get list of environment variables set that we do not want set
|
||||
ifdef ALT_HOTSPOT_SERVER_PATH
|
||||
DO_NOT_SET_LIST += ALT_HOTSPOT_SERVER_PATH
|
||||
endif
|
||||
ifdef ALT_HOTSPOT_CLIENT_PATH
|
||||
DO_NOT_SET_LIST += ALT_HOTSPOT_CLIENT_PATH
|
||||
endif
|
||||
ifdef ALT_HOTSPOT_LIB_PATH
|
||||
DO_NOT_SET_LIST += ALT_HOTSPOT_LIB_PATH
|
||||
endif
|
||||
|
||||
# Error message for environment variable set that should not be
|
||||
%.do_not_set:
|
||||
@$(ECHO) "ERROR: Your build environment has the variable\n" \
|
||||
" $* defined. Please unset it and restart your build. \n" \
|
||||
"" >> $(ERROR_FILE)
|
||||
|
||||
# Check the environment variables
|
||||
environment: $(DO_NOT_SET_LIST:%=%.do_not_set)
|
||||
ifeq ($(LANGTOOLS_SRC_AVAILABLE), true)
|
||||
ifneq ($(BUILD_LANGTOOLS), true)
|
||||
@$(ECHO) "WARNING: You are not building the LANGTOOLS sources.\n" \
|
||||
" Lang tools (javac) will be obtained from \n" \
|
||||
" the location set in ALT_JDK_IMPORT_PATH. \n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
endif
|
||||
ifeq ($(JAXP_SRC_AVAILABLE), true)
|
||||
ifneq ($(BUILD_JAXP), true)
|
||||
@$(ECHO) "WARNING: You are not building the JAXP sources.\n" \
|
||||
" The jaxp files will be obtained from \n" \
|
||||
" the location set in ALT_JDK_IMPORT_PATH. \n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
endif
|
||||
ifeq ($(JAXWS_SRC_AVAILABLE), true)
|
||||
ifneq ($(BUILD_JAXWS), true)
|
||||
@$(ECHO) "WARNING: You are not building the JAXWS sources.\n" \
|
||||
" The jaxws files will be obtained from \n" \
|
||||
" the location set in ALT_JDK_IMPORT_PATH. \n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
endif
|
||||
ifeq ($(CORBA_SRC_AVAILABLE), true)
|
||||
ifneq ($(BUILD_CORBA), true)
|
||||
@$(ECHO) "WARNING: You are not building the CORBA sources.\n" \
|
||||
" The corba files will be obtained from \n" \
|
||||
" the location set in ALT_JDK_IMPORT_PATH. \n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
endif
|
||||
ifeq ($(HOTSPOT_SRC_AVAILABLE), true)
|
||||
ifneq ($(BUILD_HOTSPOT), true)
|
||||
@$(ECHO) "WARNING: You are not building the HOTSPOT sources.\n" \
|
||||
" Hotspot libs will be obtained from \n" \
|
||||
" the location set in ALT_HOTSPOT_IMPORT_PATH. \n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
endif
|
||||
ifeq ($(JDK_SRC_AVAILABLE), true)
|
||||
ifneq ($(BUILD_JDK), true)
|
||||
@$(ECHO) "WARNING: You are not building the JDK sources.\n" \
|
||||
" This will result in a development-only\n" \
|
||||
" build of the JDK , lacking the jdk binaries.\n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
endif
|
||||
ifeq ($(NASHORN_SRC_AVAILABLE), true)
|
||||
ifneq ($(BUILD_NASHORN), true)
|
||||
@$(ECHO) "WARNING: You are not building the NASHORN sources.\n" \
|
||||
" The nashorn files will be obtained from \n" \
|
||||
" the location set in ALT_JDK_IMPORT_PATH. \n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
endif
|
||||
ifeq ($(DEPLOY_SRC_AVAILABLE), true)
|
||||
ifneq ($(BUILD_DEPLOY), true)
|
||||
@$(ECHO) "WARNING: You are not building the DEPLOY sources.\n" \
|
||||
" This will result in a development-only\n" \
|
||||
" build of the JDK, lacking the plugin and javaws binaries.\n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
endif
|
||||
ifeq ($(INSTALL_SRC_AVAILABLE), true)
|
||||
ifneq ($(BUILD_INSTALL), true)
|
||||
@$(ECHO) "WARNING: You are not building the INSTALL sources.\n" \
|
||||
" This will result in a development-only\n" \
|
||||
" build of the JDK, lacking the installation bundles\n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
endif
|
||||
ifeq ($(SPONSORS_SRC_AVAILABLE), true)
|
||||
ifneq ($(BUILD_SPONSORS), true)
|
||||
@$(ECHO) "WARNING: You are not building the SPONSORS sources.\n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
endif
|
||||
ifeq ($(GENERATE_DOCS),false)
|
||||
@$(ECHO) "WARNING: This build does not include generating javadoc.\n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
ifdef NO_DEMOS
|
||||
@$(ECHO) "WARNING: This build and any install images will not include demos.\n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
ifdef NO_SAMPLES
|
||||
@$(ECHO) "WARNING: This build and any install images will not include samples.\n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
ifdef NO_IMAGES
|
||||
@$(ECHO) "WARNING: Your build environment has the variable NO_IMAGES\n" \
|
||||
" defined. This will result in a development-only\n" \
|
||||
" build of the JDK, lacking the install images\n" \
|
||||
" and bundles.\n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
ifdef DEV_ONLY
|
||||
@$(ECHO) "WARNING: Your build environment has the variable DEV_ONLY\n" \
|
||||
" defined. This will result in a development-only\n" \
|
||||
" build of the JDK, lacking the documentation\n" \
|
||||
" build and installation bundles.\n" \
|
||||
"" >> $(WARNING_FILE)
|
||||
endif
|
||||
|
||||
######################################################
|
||||
# dump out the variable settings...
|
||||
######################################################
|
||||
ifneq ($(PLATFORM), windows)
|
||||
ifndef HOSTNAME
|
||||
HOSTNAME := $(shell hostname)
|
||||
endif
|
||||
endif
|
||||
settings::
|
||||
@$(ECHO) "Build Machine Information:" >> $(MESSAGE_FILE)
|
||||
ifeq ($(PLATFORM), windows)
|
||||
@$(ECHO) " build machine = $(COMPUTERNAME)" >> $(MESSAGE_FILE)
|
||||
else
|
||||
@$(ECHO) " build machine = $(HOSTNAME)" >> $(MESSAGE_FILE)
|
||||
endif
|
||||
@$(ECHO) "" >> $(MESSAGE_FILE)
|
||||
@$(ECHO) "Build Directory Structure:" >> $(MESSAGE_FILE)
|
||||
@$(ECHO) " CWD = `$(PWD)`" >> $(MESSAGE_FILE)
|
||||
@$(ECHO) " TOPDIR = $(TOPDIR)" >> $(MESSAGE_FILE)
|
||||
ifeq ($(LANGTOOLS_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " LANGTOOLS_TOPDIR = $(LANGTOOLS_TOPDIR)" >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(JAXP_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " JAXP_TOPDIR = $(JAXP_TOPDIR)" >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(JAXWS_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " JAXWS_TOPDIR = $(JAXWS_TOPDIR)" >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(CORBA_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " CORBA_TOPDIR = $(CORBA_TOPDIR)" >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(HOTSPOT_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " HOTSPOT_TOPDIR = $(HOTSPOT_TOPDIR)" >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(JDK_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " JDK_TOPDIR = $(JDK_TOPDIR)" >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(NASHORN_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " NASHORN_TOPDIR = $(NASHORN_TOPDIR)" >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(DEPLOY_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " DEPLOY_TOPDIR = $(DEPLOY_TOPDIR)" >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(INSTALL_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " INSTALL_TOPDIR = $(INSTALL_TOPDIR)" >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(SPONSORS_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " SPONSORS_TOPDIR = $(SPONSORS_TOPDIR)" >> $(MESSAGE_FILE)
|
||||
endif
|
||||
@$(ECHO) "" >> $(MESSAGE_FILE)
|
||||
ifneq ($(SKIP_COMPARE_IMAGES), true)
|
||||
@$(ECHO) "External File/Binary Locations:" >> $(MESSAGE_FILE)
|
||||
@$(ECHO) " PREVIOUS_JRE_BUNDLE = $(PREVIOUS_JRE_BUNDLE) " >> $(MESSAGE_FILE)
|
||||
@$(ECHO) " PREVIOUS_JDK_BUNDLE = $(PREVIOUS_JDK_BUNDLE) " >> $(MESSAGE_FILE)
|
||||
@$(ECHO) "" >> $(MESSAGE_FILE)
|
||||
endif
|
||||
@$(ECHO) "Build Directives:" >> $(MESSAGE_FILE)
|
||||
ifeq ($(LANGTOOLS_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " BUILD_LANGTOOLS = $(BUILD_LANGTOOLS) " >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(JAXP_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " BUILD_JAXP = $(BUILD_JAXP) " >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(JAXWS_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " BUILD_JAXWS = $(BUILD_JAXWS) " >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(CORBA_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " BUILD_CORBA = $(BUILD_CORBA) " >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(HOTSPOT_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " BUILD_HOTSPOT = $(BUILD_HOTSPOT) " >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(JDK_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " BUILD_JDK = $(BUILD_JDK) " >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(NASHORN_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " BUILD_NASHORN = $(BUILD_NASHORN) " >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(DEPLOY_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " BUILD_DEPLOY = $(BUILD_DEPLOY) " >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(INSTALL_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " BUILD_INSTALL = $(BUILD_INSTALL) " >> $(MESSAGE_FILE)
|
||||
endif
|
||||
ifeq ($(SPONSORS_SRC_AVAILABLE), true)
|
||||
@$(ECHO) " BUILD_SPONSORS = $(BUILD_SPONSORS) " >> $(MESSAGE_FILE)
|
||||
endif
|
||||
@$(ECHO) " DEBUG_CLASSFILES = $(DEBUG_CLASSFILES) " >> $(MESSAGE_FILE)
|
||||
@$(ECHO) " DEBUG_BINARIES = $(DEBUG_BINARIES) " >> $(MESSAGE_FILE)
|
||||
@$(ECHO) "" >> $(MESSAGE_FILE)
|
||||
|
||||
.PHONY: sanity settings pre-sanity insane \
|
||||
post-sanity post-sanity-hotspot post-sanity-jdk \
|
||||
post-sanity-install post-sanity-deploy \
|
||||
environment
|
@ -1,169 +0,0 @@
|
||||
#!/bin/perl
|
||||
|
||||
#
|
||||
# Copyright (c) 2012, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
# Crunch down the input(s) to Windows short (mangled) form.
|
||||
# Any elements not actually found in the filesystem will be dropped.
|
||||
#
|
||||
# This script needs three modes:
|
||||
# 1) DOS mode with drive letter followed by : and ; path separator
|
||||
# 2) Cygwin mode with /cygdrive/<drive letter>/ and : path separator
|
||||
# 3) MinGW/MSYS mode with /<drive letter>/ and : path separator
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
use Getopt::Std;
|
||||
|
||||
sub Usage() {
|
||||
print ("Usage:\n $0 -d | -c | -m \<PATH\>\n");
|
||||
print (" -d DOS style (drive letter, :, and ; path separator)\n");
|
||||
print (" -c Cywgin style (/cygdrive/drive/ and : path separator)\n");
|
||||
print (" -m MinGW style (/drive/ and : path separator)\n");
|
||||
exit 1;
|
||||
}
|
||||
# Process command line options:
|
||||
my %opts;
|
||||
getopts('dcm', \%opts) || Usage();
|
||||
|
||||
if (scalar(@ARGV) != 1) {Usage()};
|
||||
|
||||
# Translate drive letters such as C:/
|
||||
# if MSDOS, Win32::GetShortPathName() does the work (see below).
|
||||
# if Cygwin, use the /cygdrive/c/ form.
|
||||
# if MinGW, use the /c/ form.
|
||||
my $path0;
|
||||
my $sep2;
|
||||
if (defined ($opts{'d'})) {
|
||||
#MSDOS
|
||||
$path0 = '';
|
||||
$sep2 = ';';
|
||||
} elsif (defined ($opts{'c'})) {
|
||||
#Cygwin
|
||||
$path0 = '/cygdrive';
|
||||
$sep2 = ':';
|
||||
} elsif (defined ($opts{'m'})) {
|
||||
#MinGW/MSYS
|
||||
$path0 = '';
|
||||
$sep2 = ':';
|
||||
} else {
|
||||
Usage();
|
||||
}
|
||||
|
||||
my $input = $ARGV[0];
|
||||
my $sep1;
|
||||
|
||||
# Is the input ';' separated, or ':' separated, or a simple string?
|
||||
if (($input =~ tr/;/;/) > 0) {
|
||||
# One or more ';' implies Windows style path.
|
||||
$sep1 = ';';
|
||||
} elsif (($input =~ tr/:/:/) > 1) {
|
||||
# Two or more ':' implies Cygwin or MinGW/MSYS style path.
|
||||
$sep1 = ':';
|
||||
} else {
|
||||
# Otherwise, this is not a path - take up to the end of string in
|
||||
# one piece.
|
||||
$sep1 = '/$/';
|
||||
}
|
||||
|
||||
# Split the input on $sep1 PATH separator and process the pieces.
|
||||
my @pieces;
|
||||
for (split($sep1, $input)) {
|
||||
my $try = $_;
|
||||
|
||||
if (($try =~ /^\/cygdrive\/(.)\/(.*)$/) || ($try =~ /^\/(.)\/(.*)$/)) {
|
||||
# Special case #1: This is a Cygwin /cygrive/<drive letter/ path.
|
||||
# Special case #2: This is a MinGW/MSYS /<drive letter/ path.
|
||||
$try = $1.':/'.$2;
|
||||
} elsif ($try =~ /^\/(.*)$/) {
|
||||
# Special case #3: check for a Cygwin or MinGW/MSYS form with a
|
||||
# leading '/' for example '/usr/bin/bash'.
|
||||
# Look up where this is mounted and rebuild the
|
||||
# $try string with that information
|
||||
my $cmd = "df --portability --all --human-readable $try";
|
||||
my $line = qx ($cmd);
|
||||
my $status = $?;
|
||||
if ($status == 0) {
|
||||
my @lines = split ('\n', $line);
|
||||
my ($device, $junk, $mountpoint);
|
||||
# $lines[0] is the df header.
|
||||
# Example string for split - we want the first and last elements:
|
||||
# C:\jprt\products\P1\MinGW\msys\1.0 200G 78G 123G 39% /usr
|
||||
($device, $junk, $junk, $junk, $junk, $mountpoint) = split (/\s+/, $lines[1]);
|
||||
# Replace $mountpoint with $device/ in the original string
|
||||
$try =~ s|$mountpoint|$device/|;
|
||||
} else {
|
||||
printf ("Error %d from command %s\n%s\n", $status, $cmd, $line);
|
||||
}
|
||||
}
|
||||
|
||||
my $str = Win32::GetShortPathName($try);
|
||||
if (!defined($str)){
|
||||
# Special case #4: If the lookup did not work, loop through
|
||||
# adding extensions listed in PATHEXT, looking for the first
|
||||
# match.
|
||||
for (split(';', $ENV{'PATHEXT'})) {
|
||||
$str = Win32::GetShortPathName($try.$_);
|
||||
if (defined($str)) {
|
||||
last;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (defined($str)){
|
||||
if (!defined($opts{'d'})) {
|
||||
# If not MSDOS, change C: to [/cygdrive]/c/
|
||||
if ($str =~ /^(\S):(.*)$/) {
|
||||
my $path1 = $1;
|
||||
my $path2 = $2;
|
||||
$str = $path0 . '/' . $path1 . '/' . $path2;
|
||||
}
|
||||
}
|
||||
push (@pieces, $str);
|
||||
}
|
||||
}
|
||||
|
||||
# If input was a PATH, join the pieces back together with $sep2 path
|
||||
# separator.
|
||||
my $result;
|
||||
if (scalar(@pieces > 1)) {
|
||||
$result = join ($sep2, @pieces);
|
||||
} else {
|
||||
$result = $pieces[0];
|
||||
}
|
||||
|
||||
if (defined ($result)) {
|
||||
|
||||
# Change all '\' to '/'
|
||||
$result =~ s/\\/\//g;
|
||||
|
||||
# Remove duplicate '/'
|
||||
$result =~ s/\/\//\//g;
|
||||
|
||||
# Map to lower case
|
||||
$result =~ tr/A-Z/a-z/;
|
||||
|
||||
print ("$result\n");
|
||||
}
|
@ -1,619 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
#
|
||||
# Copyright (c) 2009, 2012, 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
|
||||
# under the terms of the GNU General Public License version 2 only, as
|
||||
# published by the Free Software Foundation.
|
||||
#
|
||||
# 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 file should be used to set the Visual Studio environment
|
||||
# variables normally set by the vcvars32.bat or vcvars64.bat file or
|
||||
# SetEnv.cmd for older SDKs.
|
||||
|
||||
########################################################################
|
||||
# Error functions
|
||||
msg() # message
|
||||
{
|
||||
echo "$1" 1>&2
|
||||
}
|
||||
error() # message
|
||||
{
|
||||
msg "ERROR: $1"
|
||||
exit 1
|
||||
}
|
||||
warning() # message
|
||||
{
|
||||
msg "WARNING: $1"
|
||||
}
|
||||
envpath() # path
|
||||
{
|
||||
if [ "${fixpath}" != "" -a -d "$1" ] ; then
|
||||
${fixpath} "$1"
|
||||
else
|
||||
echo "$1"
|
||||
fi
|
||||
}
|
||||
########################################################################
|
||||
|
||||
|
||||
# Defaults settings
|
||||
debug="false"
|
||||
verbose="false"
|
||||
|
||||
set -e
|
||||
|
||||
CYGWIN="nodosfilewarning ntsec"
|
||||
export CYGWIN
|
||||
|
||||
# pathsepIn is always ; because the input strings are coming from
|
||||
# vcvarsxx.bat. This is true under all of MKS, Cygwin, MINGW/msys
|
||||
pathsepIn=';'
|
||||
|
||||
OS="`uname -s`"
|
||||
case "${OS}" in
|
||||
CYGWIN*)
|
||||
pathflag='-c'
|
||||
devnull=/dev/null
|
||||
pathsepOut=':'
|
||||
;;
|
||||
|
||||
MINGW*)
|
||||
pathflag='-m'
|
||||
devnull=/dev/null
|
||||
pathsepOut=':'
|
||||
;;
|
||||
|
||||
*)
|
||||
# MKS?
|
||||
# Continue using dosname -s
|
||||
pathflag='-s'
|
||||
fixpath="dosname ${pathflag}"
|
||||
fixpath_windows="${fixpath}"
|
||||
fixpath_path="echo"
|
||||
devnull=NUL
|
||||
pathsepOut=';'
|
||||
;;
|
||||
esac
|
||||
|
||||
case "${OS}" in
|
||||
CYGWIN*|MINGW*)
|
||||
t=`dirname ${0}`
|
||||
wd=`cd ${t} 2> ${devnull} && pwd`
|
||||
fixpath_script="${wd}/fixpath.pl"
|
||||
if [ ! -f "${fixpath_script}" ] ; then
|
||||
error "Does not exist: ${fixpath_script}"
|
||||
fi
|
||||
fixpath="perl ${fixpath_script} ${pathflag}"
|
||||
fixpath_windows="perl ${fixpath_script} -d"
|
||||
fixpath_path="${fixpath_windows}"
|
||||
;;
|
||||
esac
|
||||
|
||||
shellStyle="sh"
|
||||
## As far as I can tell from hg history, this has not worked
|
||||
## for a long time because PPID is unset. When run under Cygwin
|
||||
## the script quits due to the 1 return from grep.
|
||||
##parentCsh="` ps -p ${PPID} 2> ${devnull} | grep csh `"
|
||||
##if [ "${parentCsh}" != "" ] ; then
|
||||
## shellStyle="csh"
|
||||
##fi
|
||||
|
||||
# Check environment first
|
||||
if [ "${PROGRAMFILES}" != "" ] ; then
|
||||
progfiles=`envpath "${PROGRAMFILES}"`
|
||||
elif [ "${ProgramFiles}" != "" ] ; then
|
||||
progfiles=`envpath "${ProgramFiles}"`
|
||||
elif [ "${SYSTEMDRIVE}" != "" ] ; then
|
||||
progfiles=`envpath "${SYSTEMDRIVE}/Program Files"`
|
||||
elif [ "${SystemDrive}" != "" ] ; then
|
||||
progfiles=`envpath "${SystemDrive}/Program Files"`
|
||||
else
|
||||
error "No PROGRAMFILES or SYSTEMDRIVE defined in environment"
|
||||
fi
|
||||
|
||||
# Arch data model
|
||||
if [ "${PROCESSOR_IDENTIFIER}" != "" ] ; then
|
||||
arch=`echo "${PROCESSOR_IDENTIFIER}" | cut -d' ' -f1`
|
||||
else
|
||||
if [ "${MACHTYPE}" != "" ] ; then
|
||||
if [ "`echo ${MACHTYPE} | grep 64`" != "" ] ; then
|
||||
# Assume this is X64, not IA64
|
||||
arch="x64"
|
||||
else
|
||||
arch="x86"
|
||||
fi
|
||||
else
|
||||
arch="`uname -m`"
|
||||
fi
|
||||
PROCESSOR_IDENTIFIER="${arch}"
|
||||
export PROCESSOR_IDENTIFIER
|
||||
fi
|
||||
if [ "${arch}" = "X86" -o \
|
||||
"${arch}" = "386" -o "${arch}" = "i386" -o \
|
||||
"${arch}" = "486" -o "${arch}" = "i486" -o \
|
||||
"${arch}" = "586" -o "${arch}" = "i586" -o \
|
||||
"${arch}" = "686" -o "${arch}" = "i686" -o \
|
||||
"${arch}" = "86" ] ; then
|
||||
arch="x86"
|
||||
fi
|
||||
if [ "${arch}" = "X64" -o \
|
||||
"${arch}" = "8664" -o "${arch}" = "i8664" -o \
|
||||
"${arch}" = "amd64" -o "${arch}" = "AMD64" -o \
|
||||
"${arch}" = "EM64T" -o "${arch}" = "emt64t" -o \
|
||||
"${arch}" = "intel64" -o "${arch}" = "Intel64" -o \
|
||||
"${arch}" = "64" ] ; then
|
||||
arch="x64"
|
||||
binarch64="\\amd64"
|
||||
fi
|
||||
if [ "${arch}" = "IA64" ] ; then
|
||||
arch="ia64"
|
||||
binarch64="\\ia64"
|
||||
fi
|
||||
if [ "${arch}" != "x86" -a "${arch}" != "x64" -a "${arch}" != "ia64" ] ; then
|
||||
error "No PROCESSOR_IDENTIFIER or MACHTYPE environment variables and uname -m is not helping"
|
||||
fi
|
||||
if [ "${arch}" = "x86" ] ; then
|
||||
arch_data_model=32
|
||||
progfiles32="${progfiles}"
|
||||
progfiles64="${progfiles}"
|
||||
else
|
||||
arch_data_model=64
|
||||
progfiles32="${progfiles}"
|
||||
if [ "${PROGRAMW6432}" != "" ] ; then
|
||||
progfiles64=`envpath "${PROGRAMW6432}"`
|
||||
else
|
||||
progfiles64=`envpath "C:/Program Files"`
|
||||
fi
|
||||
fi
|
||||
|
||||
# VS2012 (VC11)
|
||||
if [ "${VS110COMNTOOLS}" = "" ] ; then
|
||||
VS110COMNTOOLS="${progfiles32}/Microsoft Visual Studio 11.0/Common7/Tools/"
|
||||
export VS110COMNTOOLS
|
||||
fi
|
||||
vc11Bin32Dir=`envpath "${VS110COMNTOOLS}"`/../../VC/Bin
|
||||
vc11Bin64Dir="${vc11Bin32Dir}"
|
||||
vc11vars32Bat="vcvars32.bat"
|
||||
vc11vars64Bat="vcvars64.bat"
|
||||
|
||||
# VS2010 (VC10)
|
||||
if [ "${VS100COMNTOOLS}" = "" ] ; then
|
||||
VS100COMNTOOLS="${progfiles32}/Microsoft Visual Studio 10.0/Common7/Tools/"
|
||||
export VS100COMNTOOLS
|
||||
fi
|
||||
vc10Bin32Dir=`envpath "${VS100COMNTOOLS}"`/../../VC/Bin
|
||||
vc10Bin64Dir="${vc10Bin32Dir}${binarch64}"
|
||||
vc10vars32Bat="vcvars32.bat"
|
||||
vc10vars64Bat="vcvars64.bat"
|
||||
|
||||
# VS2008 (VC9)
|
||||
if [ "${VS90COMNTOOLS}" = "" ] ; then
|
||||
VS90COMNTOOLS="${progfiles32}/Microsoft Visual Studio 9.0/Common7/Tools/"
|
||||
export VS90COMNTOOLS
|
||||
fi
|
||||
vc9Bin32Dir=`envpath "${VS90COMNTOOLS}"`/../../VC/Bin
|
||||
vc9Bin64Dir="${vc9Bin32Dir}"
|
||||
vc9vars32Bat="vcvars32.bat"
|
||||
vc9vars64Bat="vcvars64.bat"
|
||||
|
||||
# VS2005 (VC8)
|
||||
if [ "${VS80COMNTOOLS}" = "" ] ; then
|
||||
VS80COMNTOOLS="${progfiles32}/Microsoft Visual Studio 8.0/Common7/Tools/"
|
||||
export VS80COMNTOOLS
|
||||
fi
|
||||
vc8Bin32Dir=`envpath "${VS80COMNTOOLS}"`/../../VC/Bin
|
||||
vc8Bin64Dir="${progfiles64}/Microsoft Platform SDK"
|
||||
vc8vars32Bat="vcvars32.bat"
|
||||
vc8vars64Bat="SetEnv.cmd /X64"
|
||||
|
||||
# VS2003 (VC7)
|
||||
if [ "${VS71COMNTOOLS}" = "" ] ; then
|
||||
VS71COMNTOOLS="${progfiles32}/Microsoft Visual Studio .NET 2003/Common7/Tools/"
|
||||
export VS71COMNTOOLS
|
||||
fi
|
||||
vc7Bin32Dir=`envpath "${VS71COMNTOOLS}"`/../../VC7/Bin
|
||||
vc7Bin64Dir="${progfiles64}/Microsoft Platform SDK"
|
||||
vc7vars32Bat="vcvars32.bat"
|
||||
vc7vars64Bat="SetEnv.cmd /X64"
|
||||
|
||||
# Force user to select
|
||||
vcSelection=""
|
||||
|
||||
# Parse options
|
||||
usage="Usage: $0 [-help] [-debug] [-v] [-c] [-s] [-p] [-v11] [-v10] [-v9] [-v8] [-v7] [-32] [-64]"
|
||||
while [ $# -gt 0 ] ; do
|
||||
if [ "$1" = "-help" ] ; then
|
||||
msg "${usage}"
|
||||
msg " -help Print out this help message"
|
||||
msg " -debug Print out extra env variables to help debug this script"
|
||||
msg " -v Verbose output warns about missing directories"
|
||||
msg " -c Print out csh style output"
|
||||
msg " -s Print out sh style output"
|
||||
msg " -p Print out properties style output"
|
||||
msg " -v11 Use Visual Studio 11 VS2012"
|
||||
msg " -v10 Use Visual Studio 10 VS2010"
|
||||
msg " -v9 Use Visual Studio 9 VS2008"
|
||||
msg " -v8 Use Visual Studio 8 VS2005"
|
||||
msg " -v7 Use Visual Studio 7 VS2003"
|
||||
msg " -32 Force 32bit"
|
||||
msg " -64 Force 64bit"
|
||||
exit 0
|
||||
elif [ "$1" = "-debug" ] ; then
|
||||
debug="true"
|
||||
shift
|
||||
elif [ "$1" = "-v" ] ; then
|
||||
verbose="true"
|
||||
shift
|
||||
elif [ "$1" = "-c" ] ; then
|
||||
shellStyle="csh"
|
||||
shift
|
||||
elif [ "$1" = "-s" ] ; then
|
||||
shellStyle="sh"
|
||||
shift
|
||||
elif [ "$1" = "-p" ] ; then
|
||||
shellStyle="props"
|
||||
shift
|
||||
elif [ "$1" = "-v11" ] ; then
|
||||
vcBin32Dir="${vc11Bin32Dir}"
|
||||
vcBin64Dir="${vc11Bin64Dir}"
|
||||
vcvars32Bat="${vc11vars32Bat}"
|
||||
vcvars64Bat="${vc11vars64Bat}"
|
||||
vcSelection="11"
|
||||
shift
|
||||
elif [ "$1" = "-v10" ] ; then
|
||||
vcBin32Dir="${vc10Bin32Dir}"
|
||||
vcBin64Dir="${vc10Bin64Dir}"
|
||||
vcvars32Bat="${vc10vars32Bat}"
|
||||
vcvars64Bat="${vc10vars64Bat}"
|
||||
vcSelection="10"
|
||||
shift
|
||||
elif [ "$1" = "-v9" ] ; then
|
||||
vcBin32Dir="${vc9Bin32Dir}"
|
||||
vcBin64Dir="${vc9Bin64Dir}"
|
||||
vcvars32Bat="${vc9vars32Bat}"
|
||||
vcvars64Bat="${vc9vars64Bat}"
|
||||
vcSelection="9"
|
||||
shift
|
||||
elif [ "$1" = "-v8" ] ; then
|
||||
vcBin32Dir="${vc8Bin32Dir}"
|
||||
vcBin64Dir="${vc8Bin64Dir}"
|
||||
vcvars32Bat="${vc8vars32Bat}"
|
||||
vcvars64Bat="${vc8vars64Bat}"
|
||||
vcSelection="8"
|
||||
shift
|
||||
elif [ "$1" = "-v7" ] ; then
|
||||
vcBin32Dir="${vc7Bin32Dir}"
|
||||
vcBin64Dir="${vc7Bin64Dir}"
|
||||
vcvars32Bat="${vc7vars32Bat}"
|
||||
vcvars64Bat="${vc7vars64Bat}"
|
||||
vcSelection="7"
|
||||
shift
|
||||
elif [ "$1" = "-32" ] ; then
|
||||
arch_data_model=32
|
||||
shift
|
||||
elif [ "$1" = "-64" ] ; then
|
||||
arch_data_model=64
|
||||
shift
|
||||
else
|
||||
msg "${usage}"
|
||||
error "Unknown option: $1"
|
||||
fi
|
||||
done
|
||||
|
||||
# Need to pick
|
||||
if [ "${vcSelection}" = "" ] ; then
|
||||
msg "${usage}"
|
||||
error "You must pick the version"
|
||||
fi
|
||||
|
||||
# Which vcvars bat file to run
|
||||
if [ "${arch_data_model}" = "32" ] ; then
|
||||
vcBinDir="${vcBin32Dir}"
|
||||
vcvarsBat="${vcvars32Bat}"
|
||||
fi
|
||||
if [ "${arch_data_model}" = "64" ] ; then
|
||||
vcBinDir="${vcBin64Dir}"
|
||||
vcvarsBat="${vcvars64Bat}"
|
||||
fi
|
||||
|
||||
# Do not allow any error returns
|
||||
set -e
|
||||
|
||||
# Different systems have different awk's
|
||||
if [ -f /usr/bin/nawk ] ; then
|
||||
awk="nawk"
|
||||
elif [ -f /usr/bin/gawk ] ; then
|
||||
awk="gawk"
|
||||
else
|
||||
awk="awk"
|
||||
fi
|
||||
|
||||
if [ "${verbose}" = "true" ] ; then
|
||||
echo "# Welcome to verbose mode"
|
||||
set -x
|
||||
fi
|
||||
|
||||
if [ "${debug}" = "true" ] ; then
|
||||
echo "# Welcome to debug mode"
|
||||
set -x
|
||||
fi
|
||||
|
||||
# Temp file area
|
||||
tmp="/tmp/vsvars.$$"
|
||||
rm -f -r ${tmp}
|
||||
mkdir -p ${tmp}
|
||||
|
||||
# Check paths
|
||||
checkPaths() # var path sep
|
||||
{
|
||||
set -e
|
||||
sep="$3"
|
||||
checklist="${tmp}/checklist"
|
||||
printf "%s\n" "$2" | \
|
||||
sed -e 's@\\@/@g' | \
|
||||
sed -e 's@//@/@g' | \
|
||||
${awk} -F"${sep}" '{for(i=1;i<=NF;i++){printf "%s\n",$i;}}' \
|
||||
> ${checklist}
|
||||
cat ${checklist} | while read orig; do
|
||||
if [ "${orig}" != "" ] ; then
|
||||
if [ ! -d "${orig}" ] ; then
|
||||
warning "Directory in $1 does not exist: ${orig}"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
# Remove all duplicate entries
|
||||
removeDeadDups() # string sepIn sepOut
|
||||
{
|
||||
set -e
|
||||
sepIn="$2"
|
||||
sepOut="$3"
|
||||
pathlist="${tmp}/pathlist"
|
||||
printf "%s\n" "$1" | \
|
||||
sed -e 's@\\@/@g' | \
|
||||
sed -e 's@//@/@g' | \
|
||||
${awk} -F"${sepIn}" '{for(i=1;i<=NF;i++){printf "%s\n",$i;}}' \
|
||||
> ${pathlist}
|
||||
upaths="${tmp}/upaths"
|
||||
cat ${pathlist} | while read orig; do
|
||||
p="${orig}"
|
||||
if [ "${fixpath}" != "" ] ; then
|
||||
if [ "${p}" != "" ] ; then
|
||||
if [ -d "${p}" ] ; then
|
||||
short=`${fixpath} "${p}"`
|
||||
if [ "${short}" != "" -a -d "${short}" ] ; then
|
||||
p="${short}"
|
||||
fi
|
||||
echo "${p}" >> ${upaths}
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
done
|
||||
newpaths=""
|
||||
for i in `cat ${upaths}` ; do
|
||||
# For some reason, \r characters can get into this
|
||||
i=`echo "${i}" | tr -d '\r' | sed -e 's@/$@@'`
|
||||
if [ "${newpaths}" = "" ] ; then
|
||||
newpaths="${i}"
|
||||
else
|
||||
newpaths="${newpaths}${sepOut}${i}"
|
||||
fi
|
||||
done
|
||||
printf "%s\n" "${newpaths}" | \
|
||||
${awk} -F"${sepOut}" \
|
||||
'{a[$1];printf "%s",$1;for(i=2;i<=NF;i++){if(!($i in a)){a[$i];printf "%s%s",FS,$i;}};printf "\n";}'
|
||||
}
|
||||
|
||||
# Create bat file to process Visual Studio vcvars*.bat files
|
||||
createBat() # batfile bindir command
|
||||
{
|
||||
bat="$1"
|
||||
bindir="$2"
|
||||
command="$3"
|
||||
stdout="${bat}.stdout"
|
||||
rm -f ${bat} ${stdout}
|
||||
echo "Output from: ${command}" > ${stdout}
|
||||
bdir=`envpath "${bindir}"`
|
||||
cat > ${bat} << EOF
|
||||
REM Pick the right vcvars bat file
|
||||
REM Empty these out so we only get the additions we want
|
||||
set INCLUDE=
|
||||
set LIB=
|
||||
set LIBPATH=
|
||||
set MSVCDIR=
|
||||
set MSSdk=
|
||||
set Mstools=
|
||||
set DevEnvDir=
|
||||
set VCINSTALLDIR=
|
||||
set VSINSTALLDIR=
|
||||
set WindowsSdkDir=
|
||||
REM Run the vcvars bat file, send all output to stderr
|
||||
call `${fixpath_windows} ${bdir}`\\${command} > `${fixpath_windows} "${stdout}"`
|
||||
REM Echo out env var settings
|
||||
echo VS_VS71COMNTOOLS="%VS71COMNTOOLS%"
|
||||
echo export VS_VS71COMNTOOLS
|
||||
echo VS_VS80COMNTOOLS="%VS80COMNTOOLS%"
|
||||
echo export VS_VS80COMNTOOLS
|
||||
echo VS_VS90COMNTOOLS="%VS90COMNTOOLS%"
|
||||
echo export VS_VS90COMNTOOLS
|
||||
echo VS_VS100COMNTOOLS="%VS100COMNTOOLS%"
|
||||
echo export VS_VS100COMNTOOLS
|
||||
echo VS_VS110COMNTOOLS="%VS110COMNTOOLS%"
|
||||
echo export VS_VS110COMNTOOLS
|
||||
echo VS_VCINSTALLDIR="%VCINSTALLDIR%"
|
||||
echo export VS_VCINSTALLDIR
|
||||
echo VS_VSINSTALLDIR="%VSINSTALLDIR%"
|
||||
echo export VS_VSINSTALLDIR
|
||||
echo VS_DEVENVDIR="%DevEnvDir%"
|
||||
echo export VS_DEVENVDIR
|
||||
echo VS_MSVCDIR="%MSVCDIR%"
|
||||
echo export VS_MSVCDIR
|
||||
echo VS_MSSDK="%MSSdk%"
|
||||
echo export VS_MSSDK
|
||||
echo VS_MSTOOLS="%Mstools%"
|
||||
echo export VS_MSTOOLS
|
||||
echo VS_WINDOWSSDKDIR="%WindowsSdkDir%"
|
||||
echo export VS_WINDOWSSDKDIR
|
||||
echo VS_INCLUDE="%INCLUDE%"
|
||||
echo export VS_INCLUDE
|
||||
echo VS_LIB="%LIB%"
|
||||
echo export VS_LIB
|
||||
echo VS_LIBPATH="%LIBPATH%"
|
||||
echo export VS_LIBPATH
|
||||
echo VS_WPATH="%PATH%"
|
||||
echo export VS_WPATH
|
||||
EOF
|
||||
chmod a+x ${bat}
|
||||
}
|
||||
|
||||
# Create env file
|
||||
createEnv() # batfile envfile
|
||||
{
|
||||
rm -f ${1}.stdout ${1}.temp1 ${1}.temp2
|
||||
batfile=`${fixpath} ${1}`
|
||||
cmd.exe -Q -C < "$batfile" 1> ${1}.temp1 2> ${1}.temp2
|
||||
cat ${1}.temp1 | \
|
||||
sed -e 's@^Microsoft.*@@' \
|
||||
-e 's@^.*Copyright.*@@' \
|
||||
-e 's@^.*>REM.*@@' \
|
||||
-e 's@^.*>set.*@@' \
|
||||
-e 's@^.*>echo.*@@' \
|
||||
-e 's@^.*>call.*@@' \
|
||||
-e 's@^.*>$@@' \
|
||||
-e 's@\\@/@g' | \
|
||||
sed -e 's@//@/@g' > $2
|
||||
if [ -f "${1}.stdout" ] ; then
|
||||
cat ${1}.stdout 1>&2
|
||||
fi
|
||||
chmod a+x $2
|
||||
}
|
||||
|
||||
printEnv() # name pname vsname val
|
||||
{
|
||||
name="$1"
|
||||
pname="$2"
|
||||
vsname="$3"
|
||||
val="$4"
|
||||
if [ "${val}" != "" ] ; then
|
||||
if [ "${shellStyle}" = "csh" ] ; then
|
||||
if [ "${debug}" = "true" ] ; then
|
||||
echo "setenv ${vsname} \"${val}\";"
|
||||
fi
|
||||
echo "setenv ${name} \"${val}\";"
|
||||
elif [ "${shellStyle}" = "sh" ] ; then
|
||||
if [ "${debug}" = "true" ] ; then
|
||||
echo "${vsname}=\"${val}\";"
|
||||
echo "export ${vsname};"
|
||||
fi
|
||||
echo "${name}=\"${val}\";"
|
||||
echo "export ${name};"
|
||||
elif [ "${shellStyle}" = "props" ] ; then
|
||||
echo "vs.${pname}=${val}"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
#############################################################################
|
||||
|
||||
# Get Visual Studio settings
|
||||
if [ "${fixpath}" != "" ] ; then
|
||||
|
||||
# Create bat file to run
|
||||
batfile="${tmp}/vs-to-env.bat"
|
||||
if [ ! -d "${vcBinDir}" ] ; then
|
||||
error "Does not exist: ${vcBinDir}"
|
||||
elif [ "${vcvarsBat}" = "" ] ; then
|
||||
error "No vcvars script: ${vcvarsBat}"
|
||||
else
|
||||
createBat "${batfile}" "${vcBinDir}" "${vcvarsBat}"
|
||||
fi
|
||||
|
||||
# Run bat file to create environment variable settings
|
||||
envfile="${tmp}/env.sh"
|
||||
createEnv "${batfile}" "${envfile}"
|
||||
|
||||
# Read in the VS_* settings
|
||||
. ${envfile}
|
||||
|
||||
# Derive unix style path, save old, and define new (remove dups)
|
||||
VS_UPATH=`${fixpath_path} "${VS_WPATH}"`
|
||||
export VS_UPATH
|
||||
VS_OPATH=`printf "%s" "${PATH}" | sed -e 's@\\\\@/@g'`
|
||||
export VS_OPATH
|
||||
VS_PATH=`removeDeadDups "${VS_UPATH}${pathsepIn}${VS_OPATH}" "${pathsepIn}" "${pathsepOut}"`
|
||||
export VS_PATH
|
||||
|
||||
fi
|
||||
|
||||
# Adjustments due to differences in vcvars*bat files
|
||||
if [ "${VS_MSVCDIR}" = "" ] ; then
|
||||
VS_MSVCDIR="${VS_VCINSTALLDIR}"
|
||||
fi
|
||||
if [ "${VS_DEVENVDIR}" = "" ] ; then
|
||||
VS_DEVENVDIR="${VS_VSINSTALLDIR}"
|
||||
fi
|
||||
|
||||
# Print env settings
|
||||
# env vs.prop vs env value
|
||||
# ------- ------- ---------- -----
|
||||
printEnv INCLUDE include VS_INCLUDE "${VS_INCLUDE}"
|
||||
printEnv LIB lib VS_LIB "${VS_LIB}"
|
||||
printEnv LIBPATH libpath VS_LIBPATH "${VS_LIBPATH}"
|
||||
if [ "${debug}" = "true" ] ; then
|
||||
printEnv UPATH upath VS_UPATH "${VS_UPATH}"
|
||||
printEnv WPATH wpath VS_WPATH "${VS_WPATH}"
|
||||
printEnv OPATH opath VS_OPATH "${VS_OPATH}"
|
||||
fi
|
||||
printEnv PATH path VS_PATH "${VS_PATH}"
|
||||
printEnv VCINSTALLDIR vcinstalldir VS_VCINSTALLDIR "${VS_VCINSTALLDIR}"
|
||||
printEnv VSINSTALLDIR vsinstalldir VS_VSINSTALLDIR "${VS_VSINSTALLDIR}"
|
||||
printEnv MSVCDIR msvcdir VS_MSVCDIR "${VS_MSVCDIR}"
|
||||
printEnv MSSDK mssdk VS_MSSDK "${VS_MSSDK}"
|
||||
printEnv MSTOOLS mstools VS_MSTOOLS "${VS_MSTOOLS}"
|
||||
printEnv DEVENVDIR devenvdir VS_DEVENVDIR "${VS_DEVENVDIR}"
|
||||
printEnv WINDOWSSDKDIR windowssdkdir VS_WINDOWSSDKDIR "${VS_WINDOWSSDKDIR}"
|
||||
if [ "${vcSelection}" = "11" ] ; then
|
||||
printEnv VS110COMNTOOLS vs110comntools VS_VS110COMNTOOLS "${VS_VS110COMNTOOLS}"
|
||||
elif [ "${vcSelection}" = "10" ] ; then
|
||||
printEnv VS100COMNTOOLS vs100comntools VS_VS100COMNTOOLS "${VS_VS100COMNTOOLS}"
|
||||
elif [ "${vcSelection}" = "9" ] ; then
|
||||
printEnv VS90COMNTOOLS vs90comntools VS_VS90COMNTOOLS "${VS_VS90COMNTOOLS}"
|
||||
elif [ "${vcSelection}" = "7" ] ; then
|
||||
printEnv VS71COMNTOOLS vs71comntools VS_VS71COMNTOOLS "${VS_VS71COMNTOOLS}"
|
||||
elif [ "${vcSelection}" = "8" ] ; then
|
||||
printEnv VS80COMNTOOLS vs80comntools VS_VS80COMNTOOLS "${VS_VS80COMNTOOLS}"
|
||||
fi
|
||||
|
||||
# Check final settings
|
||||
if [ "${verbose}" = "true" ] ; then
|
||||
checkPaths "Windows PATH" "${VS_WPATH}" ";"
|
||||
checkPaths LIB "${VS_LIB}" ";"
|
||||
checkPaths INCLUDE "${VS_INCLUDE}" ";"
|
||||
checkPaths PATH "${VS_PATH}" "${pathsepIn}"
|
||||
fi
|
||||
|
||||
# Remove all temp files
|
||||
if [ "${debug}" != "true" ] ; then
|
||||
rm -f -r ${tmp}
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
@ -1,74 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2006, 2011, 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
|
||||
# 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.
|
||||
#
|
||||
|
||||
################################################################
|
||||
# SPONSORS TARGETS
|
||||
################################################################
|
||||
|
||||
ifeq ($(PLATFORM)-$(ARCH), windows-i586)
|
||||
sponsors: sponsors-build
|
||||
else
|
||||
sponsors:
|
||||
endif
|
||||
|
||||
# The generated java files are generated as a set, so instead of
|
||||
# setting the SPONSORS variable to that list of files, set it to
|
||||
# the .PHONY target that generates the set of files.
|
||||
SPONSORS = sponsors
|
||||
|
||||
# put the generated patch in their own place in OUTPUTDIR
|
||||
SPONSORS_OUTPUTDIR = $(ABS_OUTPUTDIR)
|
||||
|
||||
SPONSORS_BUILD_TARGETS = dll installer
|
||||
SPONSORS_BUILD_ARGUMENTS = \
|
||||
MAKEFLAGS= \
|
||||
$(COMMON_BUILD_ARGUMENTS) \
|
||||
ALT_OUTPUTDIR=$(SPONSORS_OUTPUTDIR) \
|
||||
ALT_RTPATCH_DIR=$(ALT_RTPATCH_DIR) \
|
||||
ALT_BASE_IMAGE_ZIP=$(ALT_BASE_IMAGE_ZIP) \
|
||||
ALT_BASE_IMAGE_DIR=$(ALT_BASE_IMAGE_DIR) \
|
||||
ALT_NEW_IMAGE_DIR=$(ALT_NEW_IMAGE_DIR) \
|
||||
ALT_BUNDLE_DATE=$(BUNDLE_DATE)
|
||||
|
||||
ifeq ($(BUILD_LANGTOOLS), true)
|
||||
SPONSORS_BUILD_ARGUMENTS += ALT_LANGTOOLS_DIST=$(ABS_LANGTOOLS_DIST)
|
||||
endif
|
||||
|
||||
sponsors-build:
|
||||
ifeq ($(ARCH_DATA_MODEL), 32)
|
||||
ifeq ($(BUILD_SPONSORS), true)
|
||||
@$(call MakeStart,sponsors,$(SPONSORS_BUILD_TARGETS))
|
||||
($(CD) $(SPONSORS_TOPDIR)/make && \
|
||||
$(MAKE) $(SPONSORS_BUILD_TARGETS) $(SPONSORS_BUILD_ARGUMENTS))
|
||||
@$(call MakeFinish,sponsors,$(SPONSORS_BUILD_TARGETS))
|
||||
endif
|
||||
endif
|
||||
|
||||
sponsors-sanity:
|
||||
|
||||
sponsors-clobber::
|
||||
|
||||
.PHONY: sponsors sponsors-build sponsors-sanity sponsors-clobber
|
||||
|
Loading…
Reference in New Issue
Block a user