From owner-svn-ports-head@FreeBSD.ORG Sun Jun 23 20:44:24 2013 Return-Path: Delivered-To: svn-ports-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id EAAA9E93; Sun, 23 Jun 2013 20:44:24 +0000 (UTC) (envelope-from glewis@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id DCBF21CB9; Sun, 23 Jun 2013 20:44:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5NKiOuf074122; Sun, 23 Jun 2013 20:44:24 GMT (envelope-from glewis@svn.freebsd.org) Received: (from glewis@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5NKiOje074121; Sun, 23 Jun 2013 20:44:24 GMT (envelope-from glewis@svn.freebsd.org) Message-Id: <201306232044.r5NKiOje074121@svn.freebsd.org> From: Greg Lewis Date: Sun, 23 Jun 2013 20:44:24 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r321654 - head/java/openjdk7/files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 23 Jun 2013 20:44:25 -0000 Author: glewis Date: Sun Jun 23 20:44:24 2013 New Revision: 321654 URL: http://svnweb.freebsd.org/changeset/ports/321654 Log: . Split out the JDK patches into their own file. This will actually break the port since I can't commit the split all at once due to subversion size limits. Yay. Added: head/java/openjdk7/files/patch-set-jdk (contents, props changed) Added: head/java/openjdk7/files/patch-set-jdk ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/java/openjdk7/files/patch-set-jdk Sun Jun 23 20:44:24 2013 (r321654) @@ -0,0 +1,132659 @@ +--- jdk/.hgtags 2012-08-10 10:21:29.000000000 -0700 ++++ jdk/.hgtags 2013-06-22 09:42:17.000000000 -0700 +@@ -123,6 +123,7 @@ + 539e576793a8e64aaf160e0d6ab0b9723cd0bef0 jdk7-b146 + 69e973991866c948cf1808b06884ef2d28b64fcb jdk7u1-b01 + f097ca2434b1412b12ab4a5c2397ce271bf681e7 jdk7-b147 ++0870207843e2a74816dff1e33a717ffaf6f0a919 7u0 + 2baf612764d215e6f3a5b48533f74c6924ac98d7 jdk7u1-b02 + a4781b6d9cfb6901452579adee17c9a17c1b584c jdk7u1-b03 + b223ed9a5fdf8ce3af42adfa8815975811d70eae jdk7u1-b04 +@@ -197,5 +198,86 @@ + 243717d7fe9589148951ffb5551264af0e446314 jdk7u6-b21 + d78f2b600d393f45d6ace8ca0f29ad677624a775 jdk7u6-b22 + 0ae89e53f5300da1961984a7d81c220c7cf717d7 jdk7u6-b23 +-df945ef30444adf08f3ef14b0c49c8bda6dda587 jdk7u8-b01 +-dd1e513c05b8b8c8402e9ecf9c0d5bdbebb1a089 jdk7u8-b02 ++1c775da998735711853cfe1ae1d6baddc5f12a66 jdk7u6-b24 ++4bd0528374971157afd6372890f4250e1cf712d9 jdk7u6-b30 ++8c2c5d63a17ee5aa85face026d6f60fb7d34aded jdk7u6-b31 ++78e01a6ca8d30e8fc4eb297d297a098edfb3fec6 jdk7u7-b10 ++9666d4e4bbf3f80614e246d5c15df86154544013 jdk7u7-b30 ++94154c14973aee7c5ff4846af7bcb71fe7a82fa5 jdk7u7-b11 ++f93d2e3b2610b612401c95dd56d1a1122d35f676 jdk7u7-b31 ++94a7d51992ae6fd31f9adc15c4976d6354dca14d jdk7u7-b01 ++901c290c9c8b495a2696f10a87523363239d001b jdk7u7-b02 ++0e2200a8762c1fdbd1ea812ba3f6535245372c81 jdk7u9-b03 ++0000000000000000000000000000000000000000 jdk7u7-b01 ++94a7d51992ae6fd31f9adc15c4976d6354dca14d jdk7u9-b01 ++0000000000000000000000000000000000000000 jdk7u7-b02 ++901c290c9c8b495a2696f10a87523363239d001b jdk7u9-b02 ++7302c386ca9c6cd20c27d0a2adb0b142f679d6b3 jdk7u9-b04 ++ffad06d7009576c3098705e05452ebc309a59e56 jdk7u9-b05 ++3b1a395f1948c7063d342a0c3e26c8450c6e7acb jdk7u9-b31 ++77f7e5f13763fed11afb6e12840d78bd55c2d979 jdk7u9-b32 ++c1efb11d7db509dafd7882811b2562ba593f6431 jdk7u10-b10 ++0243e41000c6f76654725cac31ffdc95633c63e7 jdk7u10-b11 ++c86a49dd4a0dca3a56f00429cfcffb2ad5f2a224 jdk7u10-b12 ++c6de70ed568d190c9c7d9641b88b9b5f1bc36fd5 jdk7u10-b13 ++abe96e9e10f973cf0fdacc1475e69a274ef76fcf jdk7u10-b14 ++c9a0e381cd8eaf62bcacfd59b01c249de81ae167 jdk7u10-b15 ++ed59989fb0635f2d4461173e218c43494f06bb82 jdk7u10-b16 ++a1c5bac982a6d4aa58f551cb46cde53f526aca48 jdk7u10-b17 ++115d1e4365293846bbc911cf312886c471e37fbd jdk7u10-b18 ++84218dff5e4c7bc00fd9266769c0d12bdde866f5 jdk7u10-b30 ++3515fd583ede49b125a0b5f72ac403b3984d199b jdk7u10-b31 ++ecc14534318c80dc7612c8b1d328a67849c5b07f jdk7u11-b20 ++d9969a953f693f5760b1d2759f11a2cb222e4f20 jdk7u11-b21 ++c7282a85c6bcc717b7099a03db028ecb77b41098 jdk7u11-b32 ++8fd5e105c6a288b01f8809a6c84a5a64a63f39be jdk7u11-b33 ++84da14fbd3ac12a3c6734fa4b6a366cfde1426af jdk7u11-b03 ++932ef74edbf984299a68c126c70bbe04ffbde9b5 jdk7u11-b04 ++fb35fb91f6478f8076993bcc4112746bcd9a2985 jdk7u11-b05 ++f26def552d2c4873aeaee00241f60efc462a11a7 jdk7u11-b06 ++1d14a3d7bac870423e52a889d2f5f60ee76ddc6a jdk7u11-b07 ++ee61b528b3f866b20095f5e9593896d4ea4be468 jdk7u11-b08 ++0b9564dab118d40bc5edc60269f736f97ab6f385 jdk7u13-b09 ++cbbb166b38eb15f5d5c68e913ee18f6f352b7af0 jdk7u13-b10 ++28700a56b69d80e70aecf230ab7f9ad4bb5acf23 jdk7u13-b30 ++8eb180a284b0911b2645d5cbdff5be499a75d6b2 jdk7u13-b20 ++835448d525a10bb826f4f7ebe272fc410bdb0f5d jdk7u15-b01 ++0443fe2d8023111b52f4c8db32e038f4a5a9f373 jdk7u15-b02 ++70b0f967c0649c501fb14a27bb06daeccbff823a jdk7u15-b30 ++9f20468265071696b4d2ece286bc228a4d5a302a jdk7u15-b31 ++3ef25219292f57ea56ac0ef338ceadf5fd098bdf jdk7u15-b33 ++87e45d30e24db726ea03b20d861f0a025e437641 jdk7u15-b03 ++b5ae6fb92e71df1833221026efe50863593bf682 jdk7u17-b01 ++b130c8cfecfc552614047b3244d5d94439827fcd jdk7u17-b02 ++a474615061bf610105a426780a7ac4c95bd76456 jdk7u17-b30 ++1ad6f413e250bd2671b4908e232bd0d244c917a7 jdk7u17-b31 ++6c6b9d7943e78d1f797b0c2e1c1231f81816dfde jdk7u17-b32 ++8261e56b7f91c7553e8485b206bdc9030a3546e4 jdk7u21-b01 ++af6be9d7aed7c323858932c908b049f4bcdb6a3e jdk7u21-b05 ++ffc1454e644a39265cd6d80ef4b4c12c5dbf35c9 jdk7u21-b06 ++b453d9be6b3f5496aa217ade7478d3b7fa32b13b jdk7u21-b07 ++de4e41c5c549136209a68154d847cf126e563b88 jdk7u21-b08 ++622aedcdda610a148a082558a0c25d8b3b735d07 jdk7u21-b09 ++f447c3bbf074439ece0ce9fea82c857f93817801 jdk7u21-b10 ++f9323b9d020ce8d313af2d2e2682e2b6cabcc40d jdk7u21-b11 ++08ed0bfc9668f04ce4e3803f16aad92f6e50f885 jdk7u21-b30 ++f3cf02a53684b9fbefabb212c80dfbea0c27f113 jdk7u21-b12 ++a5e712ea6944b1c81bcd5343a50645964f12b107 jdk7u21-b02 ++9d87f5f84afef6ba4c92523a76e3c81fd9acfa00 jdk7u21-b03 ++139d3e3b62d49374112ce1add84cd3d1e5ed5335 jdk7u21-b04 ++7fd0922d6ed2988954c666de313f7fceef75dc63 jdk7u25-b01 ++846304f476f1b1d2955d025d54307be76c3c4874 jdk7u25-b02 ++2a444d8e36ebc7161a735b45143b22e141d9a5c0 jdk7u25-b03 ++7fc6c331082c3586fa6c6ead014c96f3c532bc34 jdk7u25-b04 ++f2d4da9ba0f05165e8a85d0fd5085d707e434eab jdk7u25-b05 ++5748526c96f0d3fd5771b72a81fcd61f4e23b0d8 jdk7u25-b06 ++fe514475bc17355f5f0a8dc7dd423d0043ed5326 jdk7u25-b07 ++f8373784a79eba32b47e655cc5880f594a12423c jdk7u25-b08 ++023297d5b047c0b6c54869d6514fa3c1427c206c jdk7u25-b09 ++c82ed89b21bcb5279ff2fd4bc54127cd580dea7e jdk7u25-b10 ++ef5d29607ccee9712f2c768f269e4b9fa53a6859 jdk7u25-b11 ++39282f16234385bbddd19189de2450f8bf88492b jdk7u25-b12 ++ba6c3d64b94d17d90b86e36b7a282480a1c6808a jdk7u25-b13 ++a71103b8cbb155a4af136baaee4f4bdd30ee817c jdk7u25-b14 ++e1768e2070c938ec97325ad48b0d281e3031a29c jdk7u25-b15 ++0d68732acbd4b6669512b1d2be496a9e391795a9 jdk7u25-b30 +--- jdk/make/com/oracle/security/ucrypto/Makefile 2012-08-10 10:21:29.000000000 -0700 ++++ jdk/make/com/oracle/security/ucrypto/Makefile 2013-03-03 08:49:00.000000000 -0800 +@@ -198,9 +198,9 @@ + # + # Build ucrypto.jar. + # +- $(UNSIGNED_DIR)/ucrypto.jar: build ++ $(UNSIGNED_DIR)/ucrypto.jar: build $(JCE_MANIFEST_FILE) + $(prep-target) +- $(BOOT_JAR_CMD) cf $@ $(JAR_DIRS) \ ++ $(BOOT_JAR_CMD) cmf $(JCE_MANIFEST_FILE) $@ $(JAR_DIRS) \ + $(BOOT_JAR_JFLAGS) + @$(java-vm-cleanup) + +--- jdk/make/com/sun/nio/Makefile 2012-08-10 10:21:31.000000000 -0700 ++++ jdk/make/com/sun/nio/Makefile 2013-06-22 09:42:17.000000000 -0700 +@@ -31,11 +31,18 @@ + include $(BUILDDIR)/common/Defs.gmk + + # MMM: disable for now +-ifneq ($(PLATFORM), macosx) ++ifeq (,$(findstring $(PLATFORM), bsd macosx)) + include $(BUILDDIR)/common/Subdirs.gmk + SUBDIRS = sctp + endif + ++ifeq ($(OS_VENDOR), FreeBSD) ++# FreeBSD 5.x and lower are unsupported, 6.x has no sctp support. ++ifneq ($(call MajorVersion,$(shell uname -r)), 6) ++include $(BUILDDIR)/common/Subdirs.gmk ++SUBDIRS = sctp ++endif ++endif + + all build clean clobber:: + $(SUBDIRS-loop) +--- jdk/make/com/sun/nio/sctp/Makefile 2012-08-10 10:21:31.000000000 -0700 ++++ jdk/make/com/sun/nio/sctp/Makefile 2013-06-22 09:42:17.000000000 -0700 +@@ -59,15 +59,11 @@ + -I$(PLATFORM_SRC)/native/java/net \ + -I$(CLASSHDRDIR)/../../../../java/java.nio/nio/CClassHeaders + ++OTHER_LDLIBS += $(LIBSOCKET) -L$(LIBDIR)/$(LIBARCH) -lnet -lnio + ifeq ($(PLATFORM), linux) + COMPILER_WARNINGS_FATAL=true +-#OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -lnet -lpthread -ldl +-OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -lnio -lnet -lpthread -ldl ++OTHER_LDLIBS += -lpthread $(LIBDL) + endif +-ifeq ($(PLATFORM), solaris) +-#LIBSCTP = -lsctp +-OTHER_LDLIBS += $(LIBSOCKET) -L$(LIBDIR)/$(LIBARCH) -lnet -lnio +-endif # PLATFORM + + else # windows + include $(BUILDDIR)/common/Classes.gmk +--- jdk/make/com/sun/security/auth/module/Makefile 2012-08-10 10:21:32.000000000 -0700 ++++ jdk/make/com/sun/security/auth/module/Makefile 2013-06-22 09:42:17.000000000 -0700 +@@ -67,7 +67,7 @@ + include FILES_c_solaris.gmk + endif # solaris + +-ifneq (,$(findstring $(PLATFORM), linux macosx)) ++ifneq (,$(findstring $(PLATFORM), linux bsd macosx)) + LIBRARY = jaas_unix + include FILES_export_unix.gmk + include FILES_c_unix.gmk +--- jdk/make/com/sun/tools/attach/Exportedfiles.gmk 2012-08-10 10:21:32.000000000 -0700 ++++ jdk/make/com/sun/tools/attach/Exportedfiles.gmk 2013-06-22 09:42:17.000000000 -0700 +@@ -43,7 +43,7 @@ + sun/tools/attach/LinuxVirtualMachine.java + endif + +-ifeq ($(PLATFORM), macosx) ++ifneq (,$(findstring $(PLATFORM), bsd macosx)) + FILES_export = \ + sun/tools/attach/BsdVirtualMachine.java + endif +--- jdk/make/com/sun/tools/attach/FILES_c.gmk 2012-08-10 10:21:32.000000000 -0700 ++++ jdk/make/com/sun/tools/attach/FILES_c.gmk 2013-06-22 09:42:17.000000000 -0700 +@@ -39,7 +39,7 @@ + LinuxVirtualMachine.c + endif + +-ifeq ($(PLATFORM), macosx) ++ifneq (,$(findstring $(PLATFORM), bsd macosx)) + FILES_c = \ + BsdVirtualMachine.c + endif +--- jdk/make/com/sun/tools/attach/FILES_java.gmk 2012-08-10 10:21:32.000000000 -0700 ++++ jdk/make/com/sun/tools/attach/FILES_java.gmk 2013-06-22 09:42:17.000000000 -0700 +@@ -43,7 +43,7 @@ + sun/tools/attach/LinuxAttachProvider.java + endif + +-ifeq ($(PLATFORM), macosx) ++ifneq (,$(findstring $(PLATFORM), bsd macosx)) + FILES_java += \ + sun/tools/attach/BsdAttachProvider.java + endif +--- jdk/make/com/sun/tools/attach/Makefile 2012-08-10 10:21:32.000000000 -0700 ++++ jdk/make/com/sun/tools/attach/Makefile 2013-06-22 09:42:17.000000000 -0700 +@@ -38,7 +38,7 @@ + ifeq ($(PLATFORM), linux) + FILES_m = mapfile-linux + endif +-ifeq ($(PLATFORM), macosx) ++ifneq (,$(findstring $(PLATFORM), bsd macosx)) + FILES_m = mapfile-bsd + endif + include $(BUILDDIR)/common/Mapfile-vers.gmk +@@ -57,7 +57,7 @@ + EXTRA_LIBS += psapi.lib + endif + +-ifeq ($PLATFORM), macosx) ++ifeq ($(PLATFORM), macosx) + vpath %.c $(call NativeSrcDirList,,native/sun/tools/attach) + else + vpath %.c $(PLATFORM_SRC)/native/sun/tools/attach +--- jdk/make/com/sun/tools/attach/mapfile-bsd 2012-08-10 10:21:32.000000000 -0700 ++++ jdk/make/com/sun/tools/attach/mapfile-bsd 2013-06-22 09:42:17.000000000 -0700 +@@ -30,6 +30,7 @@ + Java_sun_tools_attach_BsdVirtualMachine_checkPermissions; + Java_sun_tools_attach_BsdVirtualMachine_close; + Java_sun_tools_attach_BsdVirtualMachine_connect; ++ Java_sun_tools_attach_BsdVirtualMachine_getTempDir; + Java_sun_tools_attach_BsdVirtualMachine_open; + Java_sun_tools_attach_BsdVirtualMachine_sendQuitTo; + Java_sun_tools_attach_BsdVirtualMachine_socket; +--- jdk/make/common/Defs-bsd.gmk 1969-12-31 16:00:00.000000000 -0800 ++++ jdk/make/common/Defs-bsd.gmk 2013-06-22 09:42:17.000000000 -0700 +@@ -0,0 +1,490 @@ ++# ++# Copyright (c) 1999, 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. ++# ++ ++# ++# Makefile to specify compiler flags for programs and libraries ++# targeted to BSD. Should not contain any rules. ++# ++# WARNING: This file is shared with other workspaces. ++# So when it includes other files, it must use JDK_TOPDIR. ++# ++ ++# Warning: the following variables are overriden by Defs.gmk. Set ++# values will be silently ignored: ++# CFLAGS (set $(OTHER_CFLAGS) instead) ++# CPPFLAGS (set $(OTHER_CPPFLAGS) instead) ++# CXXFLAGS (set $(OTHER_CXXFLAGS) instead) ++# LDFLAGS (set $(OTHER_LDFAGS) instead) ++# LDLIBS (set $(EXTRA_LIBS) instead) ++# LDLIBS_COMMON (set $(EXTRA_LIBS) instead) ++ ++# Get shared JDK settings ++include $(JDK_MAKE_SHARED_DIR)/Defs.gmk ++ ++# Part of INCREMENTAL_BUILD mechanism. ++# Compiler emits things like: path/file.o: file.h ++# We want something like: relative_path/file.o relative_path/file.d: file.h ++CC_DEPEND = -MM ++CC_DEPEND_FILTER = $(SED) -e 's!$*\.$(OBJECT_SUFFIX)!$(dir $@)& $(dir $@)$*.$(DEPEND_SUFFIX)!g' ++ ++ifndef PLATFORM_SRC ++ PLATFORM_SRC = $(BUILDDIR)/../src/solaris ++endif # PLATFORM_SRC ++ ++# Location of the various .properties files specific to BSD platform ++ifndef PLATFORM_PROPERTIES ++ PLATFORM_PROPERTIES = $(BUILDDIR)/../src/solaris/lib ++endif # PLATFORM_SRC ++ ++# BSD build pulls its platform sources from the solaris tree. ++JAVA_SRCDIR_LIST = src/macosx src/solaris src/share ++NATIVE_SRCDIR_LIST = src/macosx src/solaris src/share ++ ++# Platform specific closed sources ++ifndef OPENJDK ++ ifndef CLOSED_PLATFORM_SRC ++ CLOSED_PLATFORM_SRC = $(BUILDDIR)/../src/closed/solaris ++ endif ++endif ++ ++# platform specific include files ++PLATFORM_INCLUDE_NAME = $(OS_NAME) ++PLATFORM_INCLUDE = $(INCLUDEDIR)/$(PLATFORM_INCLUDE_NAME) ++ ++# suffix used for make dependencies files. ++DEPEND_SUFFIX = d ++# The suffix applied to the library name for FDLIBM ++FDDLIBM_SUFFIX = a ++# The suffix applied to scripts (.bat for windows, nothing for unix) ++SCRIPT_SUFFIX = ++# CC compiler object code output directive flag value ++CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required! ++CC_PROGRAM_OUTPUT_FLAG = -o #trailing blank required! ++ ++# The Full Debug Symbols (FDS) default for VARIANT == OPT builds is ++# enabled with debug info files ZIP'ed to save space. For VARIANT != ++# OPT builds, FDS is always enabled, after all a debug build without ++# debug info isn't very useful. The ZIP_DEBUGINFO_FILES option only has ++# meaning when FDS is enabled. ++# ++# If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be ++# disabled for a VARIANT == OPT build. ++# ++# Note: Use of a different variable name for the FDS override option ++# versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS ++# versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass ++# in options via environment variables, use of distinct variables ++# prevents strange behaviours. For example, in a VARIANT != OPT build, ++# the FULL_DEBUG_SYMBOLS environment variable will be 0, but the ++# ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If the same ++# variable name is used, then different values can be picked up by ++# different parts of the build. Just to be clear, we only need two ++# variable names because the incoming option value can be overridden ++# in some situations, e.g., a VARIANT != OPT build. ++ ++ifeq ($(VARIANT), OPT) ++ FULL_DEBUG_SYMBOLS ?= 1 ++ ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS) ++else ++ # debug variants always get Full Debug Symbols (if available) ++ ENABLE_FULL_DEBUG_SYMBOLS = 1 ++endif ++_JUNK_ := $(shell \ ++ echo >&2 "INFO: ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)") ++# since objcopy is optional, we set ZIP_DEBUGINFO_FILES later ++ ++ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) ++ # Default OBJCOPY comes from GNU Binutils on BSD: ++ 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 ++ ++ # Setting ENABLE_FULL_DEBUG_SYMBOLS=1 (and OBJCOPY) above enables the ++ # JDK build to import .debuginfo or .diz files from the HotSpot build. ++ # However, adding FDS support to the JDK build will occur in phases ++ # so a different make variable (LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS ++ # and PROGRAM_SUPPORTS_FULL_DEBUG_SYMBOLS) is used to indicate that a ++ # particular library or program supports FDS. ++ ++ ifeq ($(OBJCOPY),) ++ _JUNK_ := $(shell \ ++ echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files.") ++ ENABLE_FULL_DEBUG_SYMBOLS=0 ++ 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. ++ # ++ # Currently, STRIP_POLICY is only used when Full Debug Symbols is enabled. ++ STRIP_POLICY ?= min_strip ++ ++ _JUNK_ := $(shell \ ++ echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)") ++ ++ ZIP_DEBUGINFO_FILES ?= 1 ++ ++ _JUNK_ := $(shell \ ++ echo >&2 "INFO: ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)") ++ endif ++endif ++ ++# ++# Default optimization ++# ++ ++ifndef OPTIMIZATION_LEVEL ++ ifeq ($(PRODUCT), java) ++ OPTIMIZATION_LEVEL = HIGHER ++ else ++ OPTIMIZATION_LEVEL = LOWER ++ endif ++endif ++ifndef FASTDEBUG_OPTIMIZATION_LEVEL ++ FASTDEBUG_OPTIMIZATION_LEVEL = LOWER ++endif ++ ++CC_OPT/NONE = ++CC_OPT/LOWER = -O2 ++CC_OPT/HIGHER = -O3 ++CC_OPT/HIGHEST = -O3 ++ ++CC_OPT = $(CC_OPT/$(OPTIMIZATION_LEVEL)) ++ ++# For all platforms, do not omit the frame pointer register usage. ++# We need this frame pointer to make it easy to walk the stacks. ++# This should be the default on X86, but ia64 and amd64 may not have this ++# as the default. ++CFLAGS_REQUIRED_amd64 += -m64 -fno-omit-frame-pointer -D_LITTLE_ENDIAN ++LDFLAGS_COMMON_amd64 += -m64 ++CFLAGS_REQUIRED_i586 += -m32 -fno-omit-frame-pointer -D_LITTLE_ENDIAN ++LDFLAGS_COMMON_i586 += -m32 ++CFLAGS_REQUIRED_ia64 += -m64 -fno-omit-frame-pointer -D_LITTLE_ENDIAN ++CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9 ++LDFLAGS_COMMON_sparcv9 += -m64 -mcpu=v9 ++CFLAGS_REQUIRED_sparc += -m32 -mcpu=v9 ++LDFLAGS_COMMON_sparc += -m32 -mcpu=v9 ++CFLAGS_REQUIRED_arm += -fsigned-char -D_LITTLE_ENDIAN ++CFLAGS_REQUIRED_ppc += -fsigned-char -D_BIG_ENDIAN ++ifeq ($(ZERO_BUILD), true) ++ CFLAGS_REQUIRED = $(ZERO_ARCHFLAG) ++ ifeq ($(ZERO_ENDIANNESS), little) ++ CFLAGS_REQUIRED += -D_LITTLE_ENDIAN ++ endif ++ LDFLAGS_COMMON += $(ZERO_ARCHFLAG) ++else ++ CFLAGS_REQUIRED = $(CFLAGS_REQUIRED_$(ARCH)) ++ LDFLAGS_COMMON += $(LDFLAGS_COMMON_$(ARCH)) ++endif ++ ++# If this is a --hash-style=gnu system, use --hash-style=both ++# The gnu .hash section won't work on some Linux systems like SuSE 10. ++_HAS_HASH_STYLE_GNU:=$(shell $(CC) -dumpspecs | $(GREP) -- '--hash-style=gnu') ++ifneq ($(_HAS_HASH_STYLE_GNU),) ++ LDFLAGS_HASH_STYLE = -Wl,--hash-style=both ++endif ++LDFLAGS_COMMON += $(LDFLAGS_HASH_STYLE) ++ ++# ++# Selection of warning messages ++# ++GCC_INHIBIT = -Wno-unused -Wno-parentheses ++GCC_STYLE = ++GCC_WARNINGS = -W -Wall $(GCC_STYLE) $(GCC_INHIBIT) ++ ++# ++# Treat compiler warnings as errors, if warnings not allowed ++# ++ifeq ($(COMPILER_WARNINGS_FATAL),true) ++ GCC_WARNINGS += -Werror ++endif ++ ++# ++# Misc compiler options ++# ++ifneq ($(ARCH),ppc) ++ CFLAGS_COMMON = -fno-strict-aliasing ++endif ++PIC_CODE_LARGE = -fPIC ++PIC_CODE_SMALL = -fpic ++GLOBAL_KPIC = $(PIC_CODE_LARGE) ++CFLAGS_COMMON += $(GLOBAL_KPIC) $(GCC_WARNINGS) ++ifeq ($(ARCH), amd64) ++ CFLAGS_COMMON += -pipe ++endif ++ ++# BSD 64bit machines use Dwarf2, which can be HUGE, have fastdebug use -g1 ++DEBUG_FLAG = -g ++ifeq ($(FASTDEBUG), true) ++ ifeq ($(ARCH_DATA_MODEL), 64) ++ DEBUG_FLAG = -g1 ++ endif ++endif ++ ++# DEBUG_BINARIES overrides everything, use full -g debug information ++ifeq ($(DEBUG_BINARIES), true) ++ DEBUG_FLAG = -g ++ CFLAGS_REQUIRED += $(DEBUG_FLAG) ++endif ++ ++# If Full Debug Symbols is enabled, then we want the same debug and ++# optimization flags as used by FASTDEBUG. ++# ++ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) ++ ifeq ($(LIBRARY_SUPPORTS_FULL_DEBUG_SYMBOLS),1) ++ ifeq ($(VARIANT), OPT) ++ CC_OPT = $(DEBUG_FLAG) $(CC_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL)) ++ endif ++ endif ++endif ++ ++CFLAGS_OPT = $(CC_OPT) ++CFLAGS_DBG = $(DEBUG_FLAG) ++CFLAGS_COMMON += $(CFLAGS_REQUIRED) ++ ++CXXFLAGS_COMMON = $(GLOBAL_KPIC) -DCC_NOEX $(GCC_WARNINGS) ++CXXFLAGS_OPT = $(CC_OPT) ++CXXFLAGS_DBG = $(DEBUG_FLAG) ++CXXFLAGS_COMMON += $(CFLAGS_REQUIRED) ++ ++# FASTDEBUG: Optimize the code in the -g versions, gives us a faster debug java ++ifeq ($(FASTDEBUG), true) ++ CFLAGS_DBG += $(CC_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL)) ++ CXXFLAGS_DBG += $(CC_OPT/$(FASTDEBUG_OPTIMIZATION_LEVEL)) ++endif ++ ++CPP_ARCH_FLAGS = -DARCH='"$(ARCH)"' ++ ++# Alpha arch does not like "alpha" defined (potential general arch cleanup issue here) ++ifneq ($(ARCH),alpha) ++ CPP_ARCH_FLAGS += -D$(ARCH) ++else ++ CPP_ARCH_FLAGS += -D_$(ARCH)_ ++endif ++ ++CPPFLAGS_COMMON = $(CPP_ARCH_FLAGS) -D_ALLBSD_SOURCE $(VERSION_DEFINES) \ ++ -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT ++ ++ifeq ($(ARCH_DATA_MODEL), 64) ++CPPFLAGS_COMMON += -D_LP64=1 ++endif ++ ++CPPFLAGS_OPT = -DNDEBUG ++CPPFLAGS_DBG = -DDEBUG ++ifneq ($(PRODUCT), java) ++ CPPFLAGS_DBG += -DLOGGING ++endif ++ ++# Libraries need to locate other libraries at runtime, and you can tell ++# a library where to look by way of the dynamic runpaths (RPATH or RUNPATH) ++# buried inside the .so. The $ORIGIN says to look relative to where ++# the library itself is and it can be followed with relative paths from ++# that. By default we always look in $ORIGIN, optionally we add relative ++# paths if the Makefile sets LD_RUNPATH_EXTRAS to those relative paths. ++# On BSD we add a flag -z origin, not sure if this is necessary, but ++# doesn't seem to hurt. ++# The environment variable LD_LIBRARY_PATH will over-ride these runpaths. ++# Try: 'readelf -d lib*.so' to see these settings in a library. ++# ++Z_ORIGIN_FLAG/sparc = -Xlinker -z -Xlinker origin ++Z_ORIGIN_FLAG/i586 = -Xlinker -z -Xlinker origin ++Z_ORIGIN_FLAG/amd64 = -Xlinker -z -Xlinker origin ++Z_ORIGIN_FLAG/ia64 = -Xlinker -z -Xlinker origin ++Z_ORIGIN_FLAG/arm = ++Z_ORIGIN_FLAG/ppc = ++Z_ORIGIN_FLAG/zero = -Xlinker -z -Xlinker origin ++ ++LDFLAG_Z_ORIGIN = $(Z_ORIGIN_FLAG/$(ARCH_FAMILY)) ++ ++LDFLAGS_COMMON += $(LDFLAG_Z_ORIGIN) -Xlinker -rpath -Xlinker \$$ORIGIN ++LDFLAGS_COMMON += $(LD_RUNPATH_EXTRAS:%=$(LDFLAG_Z_ORIGIN) -Xlinker -rpath -Xlinker \$$ORIGIN/%) ++ ++# ++# -L paths for finding and -ljava ++# ++LDFLAGS_OPT = -Xlinker -O1 ++LDFLAGS_COMMON += -L$(LIBDIR)/$(LIBARCH) ++LDFLAGS_COMMON += -Wl,-soname=$(LIB_PREFIX)$(LIBRARY).$(LIBRARY_SUFFIX) ++ ++# ++# -static-libgcc is a gcc-3 flag to statically link libgcc, gcc-2.9x always ++# statically link libgcc but will print a warning with the flag. We don't ++# want the warning, so check gcc version first. ++# ++ifeq ($(CC_MAJORVER),3) ++ OTHER_LDFLAGS += -static-libgcc ++endif ++ ++# Automatic precompiled header option to use (if COMPILE_APPROACH=batch) ++# (See Rules.gmk) The gcc 5 compiler might have an option for this? ++AUTOMATIC_PCH_OPTION = ++ ++# ++# Post Processing of libraries/executables ++# ++ifeq ($(VARIANT), OPT) ++ ifneq ($(NO_STRIP), true) ++ ifneq ($(DEBUG_BINARIES), true) ++ # Debug 'strip -S' leaves local function Elf symbols (better stack ++ # traces) ++ POST_STRIP_PROCESS = $(STRIP) -S ++ endif ++ endif ++endif ++ ++# ++# Use: ld $(LD_MAPFILE_FLAG) mapfile *.o ++# ++LD_MAPFILE_FLAG = -Xlinker --version-script -Xlinker ++ ++# ++# Support for Quantify. ++# ++ifdef QUANTIFY ++QUANTIFY_CMD = quantify ++QUANTIFY_OPTIONS = -cache-dir=/tmp/quantify -always-use-cache-dir=yes ++LINK_PRE_CMD = $(QUANTIFY_CMD) $(QUANTIFY_OPTIONS) ++endif ++ ++# Using map files currently break compilation on FreeBSD during shared library ++# checks for some of the AWT native libraries. ++ifeq ($(OS_VENDOR), FreeBSD) ++LDNOMAP=true ++endif ++ ++# ++# Path and option to link against the VM, if you have to. Note that ++# there are libraries that link against only -ljava, but they do get ++# -L to the -ljvm, this is because -ljava depends on -ljvm, whereas ++# the library itself should not. ++# ++VM_NAME = server ++JVMLIB = -L$(LIBDIR)/$(LIBARCH)/$(VM_NAME) -ljvm ++JAVALIB = -ljava $(JVMLIB) ++ ++# ++# We want to privatize JVM symbols on Solaris. This is so the user can ++# write a function called FindClass and this should not override the ++# FindClass that is inside the JVM. At this point in time we are not ++# concerned with other JNI libraries because we hope that there will ++# not be as many clashes there. ++# ++PRIVATIZE_JVM_SYMBOLS = false ++ ++USE_PTHREADS = true ++override ALT_CODESET_KEY = _NL_CTYPE_CODESET_NAME ++override AWT_RUNPATH = ++override HAVE_ALTZONE = false ++override HAVE_FILIOH = false ++override HAVE_GETHRTIME = false ++override HAVE_GETHRVTIME = false ++override LEX_LIBRARY = -lfl ++ifeq ($(STATIC_CXX),true) ++override LIBCXX = -Wl,-Bstatic -lstdc++ -lgcc -Wl,-Bdynamic ++else ++override LIBCXX = -lstdc++ ++endif ++override LIBPOSIX4 = ++override LIBSOCKET = ++override LIBNSL = ++override LIBSCF = ++override LIBTHREAD = ++override LIBDL = ++override MOOT_PRIORITIES = true ++override NO_INTERRUPTIBLE_IO = true ++override OPENWIN_HOME = $(X11_PATH) ++override OPENWIN_LIB = $(OPENWIN_HOME)/lib ++override OTHER_M4FLAGS = -D__GLIBC__ -DGNU_ASSEMBLER ++override SUN_CMM_SUBDIR = ++override THREADS_FLAG = native ++override USE_GNU_M4 = true ++override USING_GNU_TAR = true ++override WRITE_LIBVERSION = false ++ ++# USE_EXECNAME forces the launcher to look up argv[0] on $PATH, and put the ++# resulting resolved absolute name of the executable in the environment ++# variable EXECNAME. That executable name is then used that to locate the ++# installation area. ++override USE_EXECNAME = true ++ ++# If your platform has DPS, it will have Type1 fonts too, in which case ++# it is best to enable DPS support until such time as 2D's rasteriser ++# can fully handle Type1 fonts in all cases. Default is "yes". ++# HAVE_DPS should only be "no" if the platform has no DPS headers or libs ++# DPS (Displayable PostScript) is available on Solaris machines ++HAVE_DPS = no ++ ++ifeq ($(OS_VENDOR), FreeBSD) ++ SYSTEM_ZLIB = true ++endif ++ ++ifeq ($(OS_VENDOR), OpenBSD) ++ SYSTEM_ZLIB = true ++endif ++ ++# ++# Japanese manpages ++# ++JA_SOURCE_ENCODING = eucJP ++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 ++SA_DIZ_NAME = $(LIB_PREFIX)saproc.diz ++ ++# The JDI - Serviceability Agent binding is not currently supported ++# on ia64. ++ifeq ($(ARCH), ia64) ++ INCLUDE_SA = false ++else ++ INCLUDE_SA = true ++endif ++ ++ifdef CROSS_COMPILE_ARCH ++ # X11 headers are not under /usr/include ++ OTHER_CFLAGS += -I$(OPENWIN_HOME)/include ++ OTHER_CXXFLAGS += -I$(OPENWIN_HOME)/include ++ OTHER_CPPFLAGS += -I$(OPENWIN_HOME)/include ++endif +--- jdk/make/common/Defs-linux.gmk 2012-08-10 10:21:33.000000000 -0700 ++++ jdk/make/common/Defs-linux.gmk 2013-06-22 09:42:17.000000000 -0700 +@@ -429,6 +429,7 @@ + override LIBDL = -ldl + override MOOT_PRIORITIES = true + override NO_INTERRUPTIBLE_IO = true ++override OPENWIN_HOME = $(X11_PATH) + ifeq ($(ARCH), amd64) + override OPENWIN_LIB = $(OPENWIN_HOME)/lib64 + else +--- jdk/make/common/Defs-solaris.gmk 2012-08-10 10:21:33.000000000 -0700 ++++ jdk/make/common/Defs-solaris.gmk 2013-06-22 09:42:17.000000000 -0700 +@@ -753,6 +753,9 @@ + # Network Services library + LIBNSL = -lnsl + ++# Dynamic Loading library ++LIBDL = -ldl ++ + # service configuration facility library + LIBSCF = -lscf + +--- jdk/make/common/Defs.gmk 2012-08-10 10:21:33.000000000 -0700 ++++ jdk/make/common/Defs.gmk 2013-06-22 09:42:17.000000000 -0700 +@@ -179,15 +179,15 @@ + + ifdef ALT_FREETYPE_LIB_PATH + FREETYPE_LIB_PATH = $(ALT_FREETYPE_LIB_PATH) +- ifeq ($(PLATFORM), macosx) ++ ifneq (,$(findstring $(PLATFORM), bsd macosx)) + USING_SYSTEM_FT_LIB=true + endif + else + ifeq ($(DEVTOOLS_FT_DIR_EXISTS), true) + FREETYPE_LIB_PATH = $(DEVTOOLS_FT_DIR)/lib + else +- ifeq ($(PLATFORM), macosx) +- FREETYPE_LIB_PATH = /usr/X11R6/lib ++ ifneq (,$(findstring $(PLATFORM), bsd macosx)) ++ FREETYPE_LIB_PATH = $(X11_PATH)/lib + else + FREETYPE_LIB_PATH = /usr/lib + endif +@@ -201,8 +201,8 @@ + ifeq ($(DEVTOOLS_FT_DIR_EXISTS), true) + FREETYPE_HEADERS_PATH = $(DEVTOOLS_FT_DIR)/include + else +- ifeq ($(PLATFORM), macosx) +- FREETYPE_HEADERS_PATH = /usr/X11R6/include ++ ifneq (,$(findstring $(PLATFORM), bsd macosx)) ++ FREETYPE_HEADERS_PATH = $(X11_PATH)/include + else + FREETYPE_HEADERS_PATH = /usr/include + endif +@@ -258,6 +258,10 @@ + LDLIBS_COMMON = -pthread + endif + ++ ifeq ($(PLATFORM), bsd) ++ LDLIBS_COMMON = -pthread ++ endif ++ + endif # PROGRAM + + LDLIBS_COMMON += $(EXTRA_LIBS) +@@ -312,6 +316,7 @@ + + JDK_IMAGE_DIR = $(ABS_OUTPUTDIR)/j2sdk-image + JRE_IMAGE_DIR = $(ABS_OUTPUTDIR)/j2re-image ++JDK_SERVER_IMAGE_DIR = $(ABS_OUTPUTDIR)/j2sdk-server-image + + #where the demo source can be found + DEMOSRCDIR = $(SHARE_SRC)/demo +@@ -399,7 +404,7 @@ + # We define an intermediate variable for Java files because + # we use its value later to help define $SOURCEPATH + +-ifeq ($(PLATFORM), macosx) ++ifneq (,$(findstring $(PLATFORM), bsd macosx)) + VPATH0.java = $(subst $(ONESPACE),:,$(GENSRCDIR) $(call JavaSrcDirList,,classes)) + else + VPATH0.java = $(GENSRCDIR)$(CLASSPATH_SEPARATOR)$(PLATFORM_SRC)/classes$(CLASSPATH_SEPARATOR)$(SHARE_SRC)/classes +--- jdk/make/common/Library.gmk 2012-08-10 10:21:33.000000000 -0700 ++++ jdk/make/common/Library.gmk 2013-06-22 09:42:17.000000000 -0700 +@@ -299,8 +299,12 @@ + ifeq ($(PLATFORM), solaris) + $(STRIP) -x $@ + else +- # assume Linux +- $(STRIP) -g $@ ++ ifeq ($(PLATFORM), linux) ++ $(STRIP) -g $@ ++ else ++ # assume BSD ++ $(STRIP) -S $@ ++ endif + endif + # implied else here is no stripping at all + endif +--- jdk/make/common/Mapfile-vers.gmk 2012-08-10 10:21:33.000000000 -0700 ++++ jdk/make/common/Mapfile-vers.gmk 2013-06-22 09:42:17.000000000 -0700 +@@ -76,7 +76,7 @@ + + endif # PLATFORM + +-ifeq ($(PLATFORM), linux) ++ifneq (,$(findstring $(PLATFORM), linux bsd)) + + ifeq ($(VARIANT), OPT) + # OPT build MUST have a mapfile? +--- jdk/make/common/Program.gmk 2012-08-10 10:21:33.000000000 -0700 ++++ jdk/make/common/Program.gmk 2013-06-22 09:42:17.000000000 -0700 +@@ -95,6 +95,17 @@ + endif # SYSTEM_ZLIB + endif # PLATFORM + ++ifeq ($(PLATFORM), bsd) ++ LDFLAGS += -Wl,--whole-archive ++ LDFLAGS += $(OUTPUTDIR)/tmp/java/jli/$(OBJDIRNAME)/static/libjli.a ++ LDFLAGS += -Wl,--no-whole-archive ++# Work-around an dlsym(RTLD_DEFAULT) bug in at least FreeBSD & OpenBSD ++ LDFLAGS += -Wl,--export-dynamic ++ ifeq ($(SYSTEM_ZLIB),true) ++ OTHER_LDLIBS += -lz ++ endif ++endif #PLATFORM ++ + ifneq (,$(findstring $(PLATFORM), linux solaris)) # UNIX systems + LDFLAGS += -L $(LIBDIR)/$(LIBARCH)/jli + OTHER_LDLIBS += -ljli +@@ -153,7 +164,6 @@ + ifndef LOCAL_RESOURCE_FILE + @$(ECHO) $(OBJDIR)/$(PROGRAM).res >> $@ + endif # LOCAL_RESOURCE_FILE +- @$(ECHO) setargv.obj >> $@ + @$(ECHO) Created $@ + + $(ACTUAL_PROGRAM):: $(OBJDIR)/$(PROGRAM)$(EXE_SUFFIX) +@@ -227,6 +237,11 @@ + INFO_PLIST_FILE= + endif # MACOSX + ++ ifeq ($(PLATFORM), bsd) ++ THREADLIBS = -pthread ++ OTHER_CPPFLAGS += -DPACKAGE_PATH='"$(PACKAGE_PATH)"' ++ endif ++ + # + # This rule only applies on unix. It supports quantify and its ilk. + # +@@ -281,8 +296,12 @@ + ifeq ($(PLATFORM), solaris) + $(STRIP) -x $@ + else +- # assume Linux +- $(STRIP) -g $@ ++ ifeq ($(PLATFORM), linux) ++ $(STRIP) -g $@ ++ else ++ # assume BSD ++ $(STRIP) -S $@ ++ endif + endif + # implied else here is no stripping at all + endif +@@ -350,7 +369,9 @@ + + + ifneq ($(PLATFORM), windows) +- HAVE_GETHRTIME=true ++ ifneq ($(PLATFORM), bsd) ++ HAVE_GETHRTIME=true ++ endif + endif #PLATFORM + + ifeq ($(HAVE_GETHRTIME),true) +@@ -360,12 +381,10 @@ + OTHER_INCLUDES += -I$(LAUNCHER_SHARE_SRC)/bin -I$(LAUNCHER_PLATFORM_SRC)/bin + ifeq ($(PLATFORM), macosx) + OTHER_INCLUDES += -I$(LAUNCHER_SOLARIS_PLATFORM_SRC)/bin +- ifneq ($(SYSTEM_ZLIB), true) +- OTHER_INCLUDES += -I$(SHARE_SRC)/native/java/util/zip/zlib-1.1.3 +- endif # SYSTEM_ZLIB +-else # PLATFORM !MACOSX ++endif # PLATFORM ++ifneq ($(SYSTEM_ZLIB), true) + OTHER_INCLUDES += -I$(SHARE_SRC)/native/java/util/zip/zlib-1.1.3 +-endif ++endif # SYSTEM_ZLIB + + OTHER_CPPFLAGS += -DPROGNAME='"$(PROGRAM)"' + VERSION_DEFINES += -DFULL_VERSION='"$(FULL_VERSION)"' +--- jdk/make/common/Release-macosx.gmk 2012-08-10 10:21:33.000000000 -0700 ++++ jdk/make/common/Release-macosx.gmk 2013-04-28 16:29:30.000000000 -0700 +@@ -31,6 +31,8 @@ + + JDK_BUNDLE_DIR = $(ABS_OUTPUTDIR)/j2sdk-bundle/jdk$(JDK_VERSION).jdk/Contents + JRE_BUNDLE_DIR = $(ABS_OUTPUTDIR)/j2re-bundle/jre$(JDK_VERSION).jre/Contents ++JDK_SERVER_BUNDLE_DIR = $(ABS_OUTPUTDIR)/j2sdk-server-bundle/jdk$(JDK_VERSION).jdk/Contents ++JDK_SERVER_IMAGE_DIR = $(ABS_OUTPUTDIR)/j2sdk-server-image + + MACOSX_SRC = $(JDK_TOPDIR)/src/macosx + +@@ -70,6 +72,13 @@ + $(SED) -e "s/@@ID@@/$(BUNDLE_ID_JDK)/g" -e "s/@@NAME@@/$(BUNDLE_NAME_JDK)/g" -e "s/@@INFO@@/$(BUNDLE_INFO_JDK)/g" -e "s/@@PLATFORM_VERSION@@/$(BUNDLE_PLATFORM_VERSION)/g" -e "s/@@VERSION@@/$(BUNDLE_VERSION)/g" -e "s/@@VENDOR@@/$(BUNDLE_VENDOR)/g" < $(MACOSX_SRC)/bundle/JDK-Info.plist > $(JDK_BUNDLE_DIR)/Info.plist + /usr/bin/SetFile -a B $(JDK_BUNDLE_DIR)/../ + +-EXTRA_IMAGE_TARGETS += jre-bundle-setup jdk-bundle-setup jre-bundle-files jdk-bundle-files ++jdk-server-bundle-files: ++ $(MKDIR) -p $(JDK_SERVER_BUNDLE_DIR)/MacOS ++ ln -s ../Home/jre/lib/jli/libjli.dylib $(JDK_SERVER_BUNDLE_DIR)/MacOS/ ++ $(CP) -r $(JDK_IMAGE_DIR) $(JDK_SERVER_BUNDLE_DIR)/Home ++ $(SED) -e "s/@@ID@@/$(BUNDLE_ID_JDK)/g" -e "s/@@NAME@@/$(BUNDE_NAME_JDK)/g" -e "s/@@INFO@@/$(BUNDLE_INFO_JDK)/g" -e "s/@@PLATFORM_VERSION@@/$(BUNDLE_PLATFORM_VERSION)/g" -e "s/@@VERSION@@/$(BUNDLE_VERSION)/g" -e "s/@@VENDOR@@/$(BUNDLE_VENDOR)/g" < $(MACOSX_SRC)/bundle/JDK-Info.plist > $(JDK_SERVER_BUNDLE_DIR)/Info.plist ++ /usr/bin/SetFile -a B $(JDK_SERVER_BUNDLE_DIR)/../ ++ ++EXTRA_IMAGE_TARGETS += jre-bundle-setup jdk-bundle-setup jre-bundle-files jdk-bundle-files jdk-server-bundle-files + + .PHONY: $(EXTRA_JRE_TARGETS) $(EXTRA_IMAGE_TARGETS) +--- jdk/make/common/Release.gmk 2012-08-10 10:21:33.000000000 -0700 ++++ jdk/make/common/Release.gmk 2013-06-22 09:42:17.000000000 -0700 +@@ -178,6 +178,12 @@ + JA_DIRNAME=ja_JP.UTF-8 + endif # linux + ++ifeq ($(PLATFORM), bsd) ++ MANBASEDIRS=$(JDK_TOPDIR)/src/linux/doc $(IMPORTDOCDIR) ++ MAN1SUBDIR=man ++ JA_DIRNAME=ja_JP.UTF-8 ++endif # linux ++ + define copy-man-pages + $(MKDIR) -p $1/man/man1 + for manbase in $(MANBASEDIRS:%=%/$(MAN1SUBDIR)) ; do \ +@@ -233,8 +239,8 @@ + trim-image-jre trim-image-jdk \ + identify-image-jre identify-image-jdk \ + process-image-jre process-image-jdk \ +-compare-image \ +-sec-files sec-files-win jgss-files :: ++compare-image \ ++sec-files sec-files-win jgss-files server-jdk-image :: + @$(ECHO) ">>>Making "$@" @ `$(DATE)` ..." + + # Order is important here, trim jre after jdk image is created +@@ -243,16 +249,17 @@ + images:: sanity-images post-sanity-images \ + $(INITIAL_IMAGE_JRE) $(EXTRA_JRE_TARGETS) $(INITIAL_IMAGE_JDK) \ + trim-image-jre trim-image-jdk \ +- identify-image-jre identify-image-jdk \ +- process-image-jre process-image-jdk sec-files sec-files-win jgss-files \ +- $(EXTRA_IMAGE_TARGETS) ++ identify-image-jre identify-image-jdk \ ++ process-image-jre process-image-jdk sec-files sec-files-win \ ++ jgss-files $(EXTRA_IMAGE_TARGETS) server-jdk-image + else + + images:: sanity-images post-sanity-images \ + $(INITIAL_IMAGE_JRE) $(INITIAL_IMAGE_JDK) \ + trim-image-jre trim-image-jdk \ + identify-image-jre identify-image-jdk \ +- process-image-jre process-image-jdk sec-files sec-files-win jgss-files ++ process-image-jre process-image-jdk sec-files sec-files-win \ ++ jgss-files server-jdk-image + endif + + # Don't use these +@@ -399,10 +406,29 @@ + sun/tools/jinfo \ + sun/tools/jmap + ++JFR_SRCDIRS_EXIST := $(shell \ ++ if [ -d $(CLOSED_SHARE_SRC)/classes/com/oracle/jrockit/jfr ] ; then \ ++ echo true; \ ++ else \ ++ echo false; \ *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***