diff --git a/jdk/make/com/sun/net/httpserver/Makefile b/jdk/make/com/sun/net/httpserver/Makefile index 5c0e85c8188..2d2e6b89b01 100644 --- a/jdk/make/com/sun/net/httpserver/Makefile +++ b/jdk/make/com/sun/net/httpserver/Makefile @@ -1,5 +1,5 @@ # -# Copyright (c) 2005, 2007, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2005, 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 @@ -26,6 +26,8 @@ BUILDDIR = ../../../.. PACKAGE = com.sun.net.httpserver PRODUCT = sun +JAVAC_MAX_WARNINGS = true +JAVAC_WARNINGS_FATAL = true include $(BUILDDIR)/common/Defs.gmk # diff --git a/jdk/make/com/sun/net/ssl/Makefile b/jdk/make/com/sun/net/ssl/Makefile index 4ec297c2346..b5c291ec2e6 100644 --- a/jdk/make/com/sun/net/ssl/Makefile +++ b/jdk/make/com/sun/net/ssl/Makefile @@ -26,6 +26,9 @@ BUILDDIR = ../../../.. PACKAGE = com.sun.net.ssl PRODUCT = sun +JAVAC_LINT_OPTIONS=-Xlint:all,-deprecation +JAVAC_MAX_WARNINGS = true +JAVAC_WARNINGS_FATAL = true include $(BUILDDIR)/common/Defs.gmk # diff --git a/jdk/make/common/Defs-linux.gmk b/jdk/make/common/Defs-linux.gmk index 123d1b39be5..1630f0014b9 100644 --- a/jdk/make/common/Defs-linux.gmk +++ b/jdk/make/common/Defs-linux.gmk @@ -74,6 +74,57 @@ SCRIPT_SUFFIX = CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required! CC_PROGRAM_OUTPUT_FLAG = -o #trailing blank required! +# Default OBJCOPY comes from GNU Binutils on Linux: +DEF_OBJCOPY=/usr/bin/objcopy +ifdef CROSS_COMPILE_ARCH + # don't try to generate .debuginfo files when cross compiling + _JUNK_ := $(shell \ + echo >&2 "INFO: cross compiling for ARCH $(CROSS_COMPILE_ARCH)," \ + "skipping .debuginfo generation.") + OBJCOPY= +else + OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY)) + ifneq ($(ALT_OBJCOPY),) + _JUNK_ := $(shell echo >&2 "INFO: ALT_OBJCOPY=$(ALT_OBJCOPY)") + # disable .debuginfo support by setting ALT_OBJCOPY to a non-existent path + OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY)) + endif +endif + +ifdef LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS +# The setting of OBJCOPY above enables the JDK build to import +# .debuginfo files from the HotSpot build. However, adding FDS +# support to the JDK build will occur in phases so a different +# make variable is used to indicate that a particular library +# supports FDS. + +ifeq ($(OBJCOPY),) + _JUNK_ := $(shell \ + echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files.") +else + _JUNK_ := $(shell \ + echo >&2 "INFO: $(OBJCOPY) cmd found so will create .debuginfo files.") + + # Library stripping policies for .debuginfo configs: + # all_strip - strips everything from the library + # min_strip - strips most stuff from the library; leaves minimum symbols + # no_strip - does not strip the library at all + # + # Oracle security policy requires "all_strip". A waiver was granted on + # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE. + # + DEF_STRIP_POLICY="min_strip" + ifeq ($(ALT_STRIP_POLICY),) + STRIP_POLICY=$(DEF_STRIP_POLICY) + else + STRIP_POLICY=$(ALT_STRIP_POLICY) + endif + + _JUNK_ := $(shell \ + echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)") +endif +endif + # # Default optimization # @@ -359,6 +410,7 @@ JA_TARGET_ENCODINGS = UTF-8 # Settings for the JDI - Serviceability Agent binding. HOTSPOT_SALIB_PATH = $(HOTSPOT_IMPORT_PATH)/jre/lib/$(LIBARCH) SALIB_NAME = $(LIB_PREFIX)saproc.$(LIBRARY_SUFFIX) +SA_DEBUGINFO_NAME = $(LIB_PREFIX)saproc.debuginfo # The JDI - Serviceability Agent binding is not currently supported # on Linux-ia64. diff --git a/jdk/make/common/Defs-solaris.gmk b/jdk/make/common/Defs-solaris.gmk index c062f275c25..892cb36fa7b 100644 --- a/jdk/make/common/Defs-solaris.gmk +++ b/jdk/make/common/Defs-solaris.gmk @@ -74,6 +74,69 @@ SCRIPT_SUFFIX = CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required! CC_PROGRAM_OUTPUT_FLAG = -o #trailing blank required! +ifdef ENABLE_FULL_DEBUG_SYMBOLS +# Only check for Full Debug Symbols support on Solaris if it is +# specifically enabled. Hopefully, it can be enabled by default +# once the .debuginfo size issues are worked out. + +# Default OBJCOPY comes from the SUNWbinutils package: +DEF_OBJCOPY=/usr/sfw/bin/gobjcopy +ifeq ($(PLATFORM)-$(LIBARCH), solaris-amd64) + # On Solaris AMD64/X64, gobjcopy is not happy and fails: + # + # usr/sfw/bin/gobjcopy --add-gnu-debuglink=.debuginfo .so + # BFD: stKPaiop: Not enough room for program headers, try linking with -N + # /usr/sfw/bin/gobjcopy: stKPaiop: Bad value + # BFD: stKPaiop: Not enough room for program headers, try linking with -N + # /usr/sfw/bin/gobjcopy: libsaproc.debuginfo: Bad value + # BFD: stKPaiop: Not enough room for program headers, try linking with -N + # /usr/sfw/bin/gobjcopy: stKPaiop: Bad value + _JUNK_ := $(shell \ + echo >&2 "INFO: $(DEF_OBJCOPY) is not working on Solaris AMD64/X64") + OBJCOPY= +else + OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY)) + ifneq ($(ALT_OBJCOPY),) + _JUNK_ := $(shell echo >&2 "INFO: ALT_OBJCOPY=$(ALT_OBJCOPY)") + # disable .debuginfo support by setting ALT_OBJCOPY to a non-existent path + OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY)) + endif +endif + +ifdef LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS +# The setting of OBJCOPY above enables the JDK build to import +# .debuginfo files from the HotSpot build. However, adding FDS +# support to the JDK build will occur in phases so a different +# make variable is used to indicate that a particular library +# supports FDS. + +ifeq ($(OBJCOPY),) + _JUNK_ := $(shell \ + echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files.") +else + _JUNK_ := $(shell \ + echo >&2 "INFO: $(OBJCOPY) cmd found so will create .debuginfo files.") + + # Library stripping policies for .debuginfo configs: + # all_strip - strips everything from the library + # min_strip - strips most stuff from the library; leaves minimum symbols + # no_strip - does not strip the library at all + # + # Oracle security policy requires "all_strip". A waiver was granted on + # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE. + # + DEF_STRIP_POLICY="min_strip" + ifeq ($(ALT_STRIP_POLICY),) + STRIP_POLICY=$(DEF_STRIP_POLICY) + else + STRIP_POLICY=$(ALT_STRIP_POLICY) + endif + _JUNK_ := $(shell \ + echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)") +endif +endif +endif + # # Java default optimization (-x04/-O2) etc. Applies to the VM. # @@ -684,5 +747,6 @@ JA_TARGET_ENCODINGS = eucJP UTF-8 PCK # Settings for the JDI - Serviceability Agent binding. HOTSPOT_SALIB_PATH = $(HOTSPOT_IMPORT_PATH)/jre/lib/$(LIBARCH) SALIB_NAME = $(LIB_PREFIX)saproc.$(LIBRARY_SUFFIX) +SA_DEBUGINFO_NAME = $(LIB_PREFIX)saproc.debuginfo INCLUDE_SA=true diff --git a/jdk/make/java/java/FILES_java.gmk b/jdk/make/java/java/FILES_java.gmk index 58c763a3fe5..7aae0877000 100644 --- a/jdk/make/java/java/FILES_java.gmk +++ b/jdk/make/java/java/FILES_java.gmk @@ -208,7 +208,6 @@ JAVA_JAVA_java = \ java/util/Observable.java \ java/util/Observer.java \ java/util/Properties.java \ - java/util/XMLUtils.java \ java/util/InvalidPropertiesFormatException.java \ java/util/PropertyPermission.java \ java/util/PropertyResourceBundle.java \ diff --git a/jdk/make/java/net/Makefile b/jdk/make/java/net/Makefile index e6429c6c209..83c885b34d8 100644 --- a/jdk/make/java/net/Makefile +++ b/jdk/make/java/net/Makefile @@ -27,6 +27,9 @@ BUILDDIR = ../.. PACKAGE = java.net LIBRARY = net PRODUCT = sun +JAVAC_MAX_WARNINGS = true +JAVAC_WARNINGS_FATAL = true +JAVAC_LINT_OPTIONS = -Xlint:all,-deprecation include $(BUILDDIR)/common/Defs.gmk # diff --git a/jdk/make/java/nio/Makefile b/jdk/make/java/nio/Makefile index 7a802d03531..b72cfc1eb1a 100644 --- a/jdk/make/java/nio/Makefile +++ b/jdk/make/java/nio/Makefile @@ -206,7 +206,6 @@ FILES_java += \ sun/nio/fs/LinuxUserDefinedFileAttributeView.java \ sun/nio/fs/LinuxNativeDispatcher.java \ sun/nio/fs/LinuxWatchService.java \ - sun/nio/fs/PollingWatchService.java \ sun/nio/fs/UnixChannelFactory.java \ sun/nio/fs/UnixCopyFile.java \ sun/nio/fs/UnixDirectoryStream.java \ diff --git a/jdk/make/java/redist/Makefile b/jdk/make/java/redist/Makefile index 392cd2c1624..a0c4a677f00 100644 --- a/jdk/make/java/redist/Makefile +++ b/jdk/make/java/redist/Makefile @@ -58,6 +58,11 @@ LIBJSIG_NAME = $(LIB_PREFIX)jsig.$(LIBRARY_SUFFIX) JVMDB_NAME = $(LIB_PREFIX)jvm$(DB_SUFFIX).$(LIBRARY_SUFFIX) JVMDTRACE_NAME = $(LIB_PREFIX)jvm$(DTRACE_SUFFIX).$(LIBRARY_SUFFIX) +JVM_DEBUGINFO_NAME = $(LIB_PREFIX)jvm.debuginfo +LIBJSIG_DEBUGINFO_NAME = $(LIB_PREFIX)jsig.debuginfo +JVMDB_DEBUGINFO_NAME = $(LIB_PREFIX)jvm$(DB_SUFFIX).debuginfo +JVMDTRACE_DEBUGINFO_NAME = $(LIB_PREFIX)jvm$(DTRACE_SUFFIX).debuginfo + CLASSSHARINGDATA_DIR = $(BUILDDIR)/tools/sharing # Needed to do file copy @@ -79,6 +84,12 @@ INTERNAL_IMPORT_LIST = $(LIBDIR)/classlist ifndef BUILD_CLIENT_ONLY IMPORT_LIST = $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_NAME) \ $(LIB_LOCATION)/$(SERVER_LOCATION)/Xusage.txt + ifneq ($(OBJCOPY),) + # the import JDK may not contain .debuginfo files + ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVM_DEBUGINFO_NAME)),) + IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_DEBUGINFO_NAME) + endif + endif else IMPORT_LIST = endif @@ -88,6 +99,12 @@ ifneq ($(ZERO_BUILD), true) ifeq ($(ARCH_DATA_MODEL), 32) IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_NAME) \ $(LIB_LOCATION)/$(CLIENT_LOCATION)/Xusage.txt + ifneq ($(OBJCOPY),) + # the import JDK may not contain .debuginfo files + ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVM_DEBUGINFO_NAME)),) + IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_DEBUGINFO_NAME) + endif + endif endif endif @@ -157,16 +174,40 @@ else # PLATFORM # NOT Windows vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv NOT Windows IMPORT_LIST += $(LIB_LOCATION)/$(LIBJSIG_NAME) +ifneq ($(OBJCOPY),) + # the import JDK may not contain .debuginfo files + ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)),) + IMPORT_LIST += $(LIB_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME) + endif +endif ifndef BUILD_CLIENT_ONLY IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_NAME) + ifneq ($(OBJCOPY),) + # the import JDK may not contain the target of the symlink + ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)),) + IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME) + endif + endif endif ifeq ($(PLATFORM), solaris) ifndef BUILD_CLIENT_ONLY IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_NAME) + ifneq ($(OBJCOPY),) + # the import JDK may not contain .debuginfo files + ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDB_DEBUGINFO_NAME)),) + IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_DEBUGINFO_NAME) + endif + endif # The conditional can be removed when import JDKs contain these files. ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_NAME)),) IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_NAME) + ifneq ($(OBJCOPY),) + # the import JDK may not contain .debuginfo files + ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_DEBUGINFO_NAME)),) + IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME) + endif + endif else $(warning WARNING: $(HOTSPOT_SERVER_PATH)/$(JVMDB_NAME) not found!) endif @@ -177,17 +218,37 @@ ifneq ($(ZERO_BUILD), true) ifeq ($(ARCH_DATA_MODEL), 32) IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_NAME) +ifneq ($(OBJCOPY),) + # the import JDK may not contain the target of the symlink + ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME)),) + IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME) + endif +endif ifeq ($(PLATFORM), solaris) # solaris vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv solaris IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_NAME) +ifneq ($(OBJCOPY),) + # the import JDK may not contain .debuginfo files + ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVMDB_DEBUGINFO_NAME)),) + IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_DEBUGINFO_NAME) + endif +endif # The conditional can be removed when import JDKs contain these files. ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_NAME)),) IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_NAME) IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_NAME) IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_NAME) + ifneq ($(OBJCOPY),) + # the import JDK may not contain .debuginfo files + ifneq ($(wildcard $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_DEBUGINFO_NAME)),) + IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME) + IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME) + IMPORT_LIST += $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_DEBUGINFO_NAME) + endif + endif else $(warning WARNING: $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_NAME) not found!) endif @@ -196,6 +257,12 @@ ifndef BUILD_CLIENT_ONLY # The conditional can be removed when import JDKs contain these files. ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_NAME)),) IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_NAME) + ifneq ($(OBJCOPY),) + # the import JDK may not contain .debuginfo files + ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_DEBUGINFO_NAME)),) + IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME) + endif + endif else $(warning WARNING: $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_NAME) not found!) endif @@ -203,6 +270,12 @@ ifndef BUILD_CLIENT_ONLY # The conditional can be removed when import JDKs contain these files. ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_NAME)),) IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_NAME) + ifneq ($(OBJCOPY),) + # the import JDK may not contain .debuginfo files + ifneq ($(wildcard $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_DEBUGINFO_NAME)),) + IMPORT_LIST += $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_DEBUGINFO_NAME) + endif + endif else $(warning WARNING: $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_NAME) not found!) endif @@ -229,6 +302,11 @@ $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVM_NAM $(install-import-file) @$(call binary_file_verification,$@) +ifneq ($(OBJCOPY),) +$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVM_DEBUGINFO_NAME) + $(install-import-file) +endif + $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVM_NAME): $(HOTSPOT_KERNEL_PATH)/$(JVM_NAME) $(install-file) @$(call binary_file_verification,$@) @@ -237,15 +315,33 @@ $(LIB_LOCATION)/$(LIBJSIG_NAME): $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJ $(install-import-file) @$(call binary_file_verification,$@) +ifneq ($(OBJCOPY),) +$(LIB_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME): $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_DEBUGINFO_NAME) + $(install-import-file) +endif + ifndef BUILD_CLIENT_ONLY $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_NAME) \ $(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_NAME): @$(prep-target) $(call install-sym-link, ../$(LIBJSIG_NAME)) + +ifneq ($(OBJCOPY),) +$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME) \ +$(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME): + @$(prep-target) + $(call install-sym-link, ../$(LIBJSIG_DEBUGINFO_NAME)) +endif else $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_NAME): @$(prep-target) $(call install-sym-link, ../$(LIBJSIG_NAME)) + +ifneq ($(OBJCOPY),) +$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_DEBUGINFO_NAME): + @$(prep-target) + $(call install-sym-link, ../$(LIBJSIG_DEBUGINFO_NAME)) +endif endif $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDB_NAME) @@ -256,6 +352,14 @@ $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_NAME): $(HOTSPOT_CLIENT_PATH)/64/$ $(install-import-file) @$(call binary_file_verification,$@) +ifneq ($(OBJCOPY),) +$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDB_DEBUGINFO_NAME) + $(install-import-file) + +$(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDB_DEBUGINFO_NAME) + $(install-import-file) +endif + ifndef BUILD_CLIENT_ONLY $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDB_NAME) $(install-import-file) @@ -264,6 +368,14 @@ $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDB $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_NAME) $(install-import-file) @$(call binary_file_verification,$@) + +ifneq ($(OBJCOPY),) +$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDB_DEBUGINFO_NAME) + $(install-import-file) + +$(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_DEBUGINFO_NAME) + $(install-import-file) +endif endif $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_NAME) @@ -274,6 +386,14 @@ $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_NAME): $(HOTSPOT_CLIENT_PATH)/ $(install-import-file) @$(call binary_file_verification,$@) +ifneq ($(OBJCOPY),) +$(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_DEBUGINFO_NAME) + $(install-import-file) + +$(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_DEBUGINFO_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDTRACE_DEBUGINFO_NAME) + $(install-import-file) +endif + ifndef BUILD_CLIENT_ONLY $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_NAME) $(install-import-file) @@ -287,6 +407,17 @@ $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_NAME): $(HOTSPOT_SERVER_PATH)/$(JVM_NAM $(install-import-file) @$(call binary_file_verification,$@) +ifneq ($(OBJCOPY),) +$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_DEBUGINFO_NAME) + $(install-import-file) + +$(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_DEBUGINFO_NAME) + $(install-import-file) + +$(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_DEBUGINFO_NAME): $(HOTSPOT_SERVER_PATH)/$(JVM_DEBUGINFO_NAME) + $(install-import-file) +endif + $(LIB_LOCATION)/$(SERVER_LOCATION)/Xusage.txt : $(HOTSPOT_SERVER_PATH)/Xusage.txt $(install-import-file) endif diff --git a/jdk/make/java/redist/sajdi/Makefile b/jdk/make/java/redist/sajdi/Makefile index b624b81ccc9..1eaa9a080e7 100644 --- a/jdk/make/java/redist/sajdi/Makefile +++ b/jdk/make/java/redist/sajdi/Makefile @@ -56,6 +56,12 @@ ifeq ($(INCLUDE_SA), true) IMPORT_LIST += $(LIB_LOCATION)/$(SAMAP_NAME) \ $(LIB_LOCATION)/$(SAPDB_NAME) endif + ifneq ($(OBJCOPY),) + # the import JDK may not contain .debuginfo files + ifneq ($(wildcard $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(SA_DEBUGINFO_NAME)),) + IMPORT_LIST += $(LIB_LOCATION)/$(SA_DEBUGINFO_NAME) + endif + endif endif # INCLUDE_SA @@ -79,6 +85,11 @@ $(LIB_LOCATION)/$(SAPDB_NAME): $(HOTSPOT_SALIB_PATH)/$(SAPDB_NAME) $(LIB_LOCATION)/$(SAMAP_NAME): $(HOTSPOT_SALIB_PATH)/$(SAMAP_NAME) $(install-import-file) endif # windows + + ifneq ($(OBJCOPY),) +$(LIB_LOCATION)/$(SA_DEBUGINFO_NAME): $(HOTSPOT_SALIB_PATH)/$(SA_DEBUGINFO_NAME) + $(install-import-file) + endif endif # INCLUDE_SA all: $(IMPORT_LIST) diff --git a/jdk/make/javax/Makefile b/jdk/make/javax/Makefile index a58a1b1eb5a..251628c8381 100644 --- a/jdk/make/javax/Makefile +++ b/jdk/make/javax/Makefile @@ -1,5 +1,5 @@ # -# Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 1998, 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 diff --git a/jdk/make/javax/others/Makefile b/jdk/make/javax/others/Makefile index c98d63ded35..1283dcea892 100644 --- a/jdk/make/javax/others/Makefile +++ b/jdk/make/javax/others/Makefile @@ -28,7 +28,6 @@ # BUILDDIR = ../.. -JAVAC_MAX_WARNINGS = true include $(BUILDDIR)/common/Defs.gmk # diff --git a/jdk/make/netbeans/README b/jdk/make/netbeans/README index a375b8b55e3..ffae80f95ce 100644 --- a/jdk/make/netbeans/README +++ b/jdk/make/netbeans/README @@ -5,7 +5,7 @@ Working on OpenJDK using NetBeans Getting Started In addition to the source bundle for Open JDK, you'll need to download - and install copies of the JDK and of NetBeans 6. And if you want to run + and install copies of the JDK and of NetBeans. And if you want to run tests on the JDK (you do want to run tests, right?), you'll need to install the jtreg test harness. @@ -20,30 +20,28 @@ Getting Started Downloading the JDK You've probably done this a million times. Download and install it - from http://java.sun.com/javase + from http://www.oracle.com/technetwork/java/javase/overview/index.html Downloading the OpenJDK sources Since you're reading this, d you've already downloaded the OpenJDK source bundle. Later in this document we'll refer to the location where you installed the Open JDK sources as *install-dir*. - Downloading a pre-built, JDK 7 + Downloading a pre-built, JDK 8 This will be necessary to do builds of some of the projects. In general, you want to download and install a pre-built JDK that corresponds to the OpenJDK sources you download. Building the entire OpenJDK depends on a few parts of the pre-built JDK. Get this from - http://download.java.net/jdk7/binaries + http://download.java.net/jdk8/binaries - Note: For working on certain projects, like JMX and JConsole, you - may find convenient to use a pre-built version of JDK 7 (or + Note: For working on certain projects, like JMX and JConsole, you + may find convenient to use a pre-built version of JDK 8 (or OpenJDK) rather than building your own. This will allow you to build only that part of the OpenJDK sources which correspond - to that project. + to that project. - NetBeans 6 - Yep, NetBeans *6*. Nope, not FCS'd yet. We're on the edge here, - enjoy it! Get the latest working development build of NetBeans 6 - from http://netbeans.org + NetBeans 7.0 or later + Older versions may also work but are unsupported. jtreg "jtreg" is the test harness for running OpenJDK's regression tests. @@ -51,7 +49,7 @@ Getting Started Ant NetBeans comes with ant, but if you use a separately-installed copy - please make sure that it is at least version 1.7.0. + please make sure that it is at least version 1.8.1. Configuring Building OpenJDK is hard and complex. No, strike that. While it's not @@ -92,8 +90,8 @@ Configuring situation: make.options=\ - ALT_BOOTDIR=/home/me/bin/jdk1.6.0 \ - ALT_JDK_IMPORT_PATH=/home/me/bin/jdk1.7.0 \ + ALT_BOOTDIR=/home/me/bin/jdk1.7.0 \ + ALT_JDK_IMPORT_PATH=/home/me/bin/jdk1.8.0 \ OPENJDK=true The trailing '\' are important, so that make gets the above as a @@ -107,7 +105,7 @@ Configuring Windows-specific configuration First, please note that the entire JDK cannot currently be built on Windows platforms. This will likely limit your ability to build - make-based projects. See + make-based projects. See *install-dir*/jdk/make/README-builds.html for full information on issues with building on the Windows platform. @@ -141,7 +139,7 @@ Configuring editor. Locale Requirements - To build the Open JDK sources, be certain that you are using the "C" + To build the OpenJDK sources, be certain that you are using the "C" locale on Unix (R) platforms, or "English (United States)" locale on Windows. @@ -220,13 +218,13 @@ Provided NetBeans projects running and debugging JConsole. This ant-based project does *not* require that you build the jdk - project first, provided that you use a pre-built version of JDK 7. + project first, provided that you use a pre-built version of JDK 7. Java (TM) Management Extensions (JMX(TM)) API (directory "jmx") For working on JMX source code. Creates ../dist/lib/jmx.jar. This ant-based project does *not* require that you build the jdk - project first, provided that you use a pre-built version of JDK 7. + project first, provided that you use a pre-built version of JDK 7. Jar & Zip (directory "jarzip") For working on jar & zip. It builds the zip library (including @@ -242,12 +240,12 @@ Provided NetBeans projects running and debugging the SampleTree demo. This ant-based project does *not* require that you build the jdk - project first, provided that you use a pre-built version of JDK 7. + project first, provided that you use a pre-built version of JDK 7. In addition, there are projects for building the compiler, javadoc, and related tools, in the OpenJDK langtools component. These projects are separate from those described here, and have their - own set of guidelines and conventions. For more details, see the + own set of guidelines and conventions. For more details, see the README files in make/netbeans in the OpenJDK langtools component. Running Tests @@ -603,13 +601,6 @@ Appendix 1: Customizations * -clean-make Known Issues - Tests won't run: waiting for lock - Occasionally when running tests, there will be a delay, followed by a - message like this: - Waiting to lock test result cache for - /tmp/jdk/build/linux-i586/jtreg/jconsole/JTwork for 20 seconds - The workaround is to stop the tests, rm -rf the offending jtreg/ - directory by hand, and re-run the tests. Can't run nor debug a single test in the JConsole test In most projects, you can run a single test by opening it in the editor, diff --git a/jdk/make/netbeans/common/closed-share-view.ent b/jdk/make/netbeans/common/closed-share-view.ent index 6ef29331f9d..82fe0cab525 100644 --- a/jdk/make/netbeans/common/closed-share-view.ent +++ b/jdk/make/netbeans/common/closed-share-view.ent @@ -31,8 +31,8 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> - - + + ${root}/src/closed/share/classes ${includes} ${excludes} diff --git a/jdk/make/netbeans/common/java-data-native.ent b/jdk/make/netbeans/common/java-data-native.ent index fb531ed8921..a801e821db6 100644 --- a/jdk/make/netbeans/common/java-data-native.ent +++ b/jdk/make/netbeans/common/java-data-native.ent @@ -38,7 +38,12 @@ ${root}/src/solaris/classes ${bootstrap.jdk}/jre/lib/rt.jar ${root}/build/${platform}-${arch}/classes - ${root}/build/javadoc/${name} + ${root}/build/${platform}-${arch}/docs/api + 1.7 + + + ${root}/test + 1.7 diff --git a/jdk/make/netbeans/common/java-data-no-native.ent b/jdk/make/netbeans/common/java-data-no-native.ent index 2e1b791bd50..a204f3a6f17 100644 --- a/jdk/make/netbeans/common/java-data-no-native.ent +++ b/jdk/make/netbeans/common/java-data-no-native.ent @@ -36,7 +36,12 @@ ${root}/src/share/classes ${bootstrap.jdk}/jre/lib/rt.jar ${root}/build/${platform}-${arch}/classes - ${root}/build/javadoc/${name} + ${root}/build/${platform}-${arch}/docs/api + 1.7 + + + ${root}/test + 1.7 diff --git a/jdk/make/netbeans/common/jtreg-view.ent b/jdk/make/netbeans/common/jtreg-view.ent index 899df888e23..ce0d2dad3ed 100644 --- a/jdk/make/netbeans/common/jtreg-view.ent +++ b/jdk/make/netbeans/common/jtreg-view.ent @@ -31,7 +31,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> - + ${root}/test ${jtreg.tests} diff --git a/jdk/make/netbeans/common/sample-view.ent b/jdk/make/netbeans/common/sample-view.ent index 70cdd2397ca..9b470ef9d54 100644 --- a/jdk/make/netbeans/common/sample-view.ent +++ b/jdk/make/netbeans/common/sample-view.ent @@ -31,7 +31,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> - + ${root}/src/share/sample ${samples} diff --git a/jdk/make/netbeans/common/share-view.ent b/jdk/make/netbeans/common/share-view.ent index 0b0dde08a2b..2d607889ce6 100644 --- a/jdk/make/netbeans/common/share-view.ent +++ b/jdk/make/netbeans/common/share-view.ent @@ -31,7 +31,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> - + ${root}/src/share/classes ${includes} diff --git a/jdk/make/netbeans/common/unix-view.ent b/jdk/make/netbeans/common/unix-view.ent index c1176f66d74..84f168b2927 100644 --- a/jdk/make/netbeans/common/unix-view.ent +++ b/jdk/make/netbeans/common/unix-view.ent @@ -35,7 +35,7 @@ UNIX is a registered trademark in the United States and other countries, exclusively licensed through X/Open Company, Ltd. --> - + ${root}/src/solaris/classes ${includes} diff --git a/jdk/make/netbeans/common/windows-view.ent b/jdk/make/netbeans/common/windows-view.ent index 38419c2cf5a..8e80c6cfce3 100644 --- a/jdk/make/netbeans/common/windows-view.ent +++ b/jdk/make/netbeans/common/windows-view.ent @@ -31,7 +31,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> - + ${root}/src/windows/classes ${includes} diff --git a/jdk/make/netbeans/j2se/nbproject/project.xml b/jdk/make/netbeans/j2se/nbproject/project.xml index 7cc5b516721..784ab7232b8 100644 --- a/jdk/make/netbeans/j2se/nbproject/project.xml +++ b/jdk/make/netbeans/j2se/nbproject/project.xml @@ -1,7 +1,7 @@