提交 7b792454 编写于 作者: S simonis

8024900: PPC64: Enable new build on AIX (jdk part)

Reviewed-by: erikj
上级 8694e23e
此差异已折叠。
......@@ -149,6 +149,15 @@ ifneq ($(OPENJDK_TARGET_OS),macosx)
sun/tools/attach/BsdVirtualMachine.java
endif
ifneq ($(OPENJDK_TARGET_OS),aix)
EXFILES+=sun/nio/ch/AixAsynchronousChannelProvider.java \
sun/nio/ch/AixPollPort.java \
sun/nio/fs/AixFileStore.java \
sun/nio/fs/AixFileSystem.java \
sun/nio/fs/AixFileSystemProvider.java \
sun/nio/fs/AixNativeDispatcher.java
endif
# Exclude BreakIterator classes that are just used in compile process to generate
# data files and shouldn't go in the product
EXFILES+=sun/text/resources/BreakIteratorRules.java \
......
......@@ -106,6 +106,10 @@ define SetupLauncher
$1_LDFLAGS_SUFFIX += -pthread
endif
ifeq ($(OPENJDK_TARGET_OS), aix)
$1_LDFLAGS_SUFFIX += -L$(JDK_OUTPUTDIR)/objs -ljli_static
endif
ifeq ($(USE_EXTERNAL_LIBZ), true)
$1_LDFLAGS_SUFFIX += -lz
endif
......@@ -193,7 +197,7 @@ define SetupLauncher
BUILD_LAUNCHERS += $$(BUILD_LAUNCHER_$1)
ifeq ($(OPENJDK_TARGET_OS),macosx)
ifneq (,$(filter $(OPENJDK_TARGET_OS), macosx aix))
$$(BUILD_LAUNCHER_$1) : $(JDK_OUTPUTDIR)/objs/libjli_static.a
endif
......
......@@ -95,6 +95,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBFDLIBM,\
CFLAGS:=$(CFLAGS_JDKLIB) \
-I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include,\
CFLAGS_windows_debug:=-DLOGGING,\
CFLAGS_aix:=-qfloat=nomaf,\
ARFLAGS:=$(ARFLAGS),\
OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\
DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
......@@ -250,6 +251,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBJAVA,\
LDFLAGS_SUFFIX_posix:=-ljvm -lverify, \
LDFLAGS_SUFFIX_solaris:=-lsocket -lnsl -lscf $(LIBDL) $(BUILD_LIBFDLIBM) -lc,\
LDFLAGS_SUFFIX_linux:=$(LIBDL) $(BUILD_LIBFDLIBM),\
LDFLAGS_SUFFIX_aix:=$(LIBDL) $(BUILD_LIBFDLIBM) -lm,\
LDFLAGS_SUFFIX_macosx:=-L$(JDK_OUTPUTDIR)/objs/ -lfdlibm \
-framework CoreFoundation \
-framework Security -framework SystemConfiguration, \
......@@ -552,7 +554,7 @@ LIBAWT_FILES:=\
debug_trace.c \
debug_util.c
ifneq (,$(filter $(OPENJDK_TARGET_OS), solaris linux))
ifneq (,$(filter $(OPENJDK_TARGET_OS), solaris linux aix))
LIBAWT_FILES += awt_LoadLibrary.c initIDs.c img_colors.c
endif
......@@ -723,6 +725,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBAWT,\
LDFLAGS_solaris:=-R/usr/dt/lib$(OPENJDK_TARGET_CPU_ISADIR) -R$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR),\
LDFLAGS_SUFFIX_linux:=-ljvm $(LIBM) $(LIBDL) -ljava,\
LDFLAGS_SUFFIX_solaris:=-ljvm $(LIBM) $(LIBDL) -ljava -lc,\
LDFLAGS_SUFFIX_aix:=-ljvm $(LIBM) $(LIBDL) -ljava -lm,\
LDFLAGS_SUFFIX_macosx:=-lmlib_image -ljvm $(LIBM) \
-framework Cocoa \
-framework OpenGL \
......@@ -968,6 +971,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBZIP,\
$(WIN_JAVA_LIB),\
LDFLAGS_SUFFIX_linux:=-ljvm -ljava $(LIBZ),\
LDFLAGS_SUFFIX_solaris:=-ljvm -ljava $(LIBZ) -lc,\
LDFLAGS_SUFFIX_aix:=-ljvm -ljava $(LIBZ),\
LDFLAGS_SUFFIX_macosx:=$(LIBZ) -ljava -ljvm,\
VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
RC_FLAGS:=$(RC_FLAGS)\
......@@ -1033,6 +1037,9 @@ endif
ifneq ($(OPENJDK_TARGET_OS),macosx)
LIBATTACH_EXCLUDE_FILES+=BsdVirtualMachine.c
endif
ifneq ($(OPENJDK_TARGET_OS),aix)
LIBATTACH_EXCLUDE_FILES+=AixVirtualMachine.c
endif
$(eval $(call SetupNativeCompilation,BUILD_LIBATTACH,\
LIBRARY:=attach, \
......@@ -1255,6 +1262,7 @@ BUILD_LIBRARIES += $(BUILD_LIBJSDT)
LDFLAGS_SUFFIX_solaris:=-lawt -ljava -ljvm -lc,\
LDFLAGS_SUFFIX_macosx:=$(LIBM) -lawt -ljava -ljvm,\
LDFLAGS_SUFFIX_linux:=-lm -lawt -ljava -ljvm,\
LDFLAGS_SUFFIX_aix:=-lm -lawt -ljava -ljvm,\
VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
RC_FLAGS:=$(RC_FLAGS)\
-D "JDK_FNAME=lcms.dll" \
......@@ -1388,6 +1396,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER,\
LDFLAGS_SUFFIX:=$(BUILD_LIBFONTMANAGER_FONTLIB),\
LDFLAGS_SUFFIX_linux:=-lawt $(LIBM) $(LIBCXX) -ljava -ljvm -lc,\
LDFLAGS_SUFFIX_solaris:=-lawt -lawt_xawt -lc $(LIBM) $(LIBCXX) -ljava -ljvm,\
LDFLAGS_SUFFIX_aix:=-lawt -lawt_xawt $(LIBM) $(LIBCXX) -ljava -ljvm,\
LDFLAGS_SUFFIX_macosx:=-lawt $(LIBM) $(LIBCXX) -undefined dynamic_lookup \
-ljava -ljvm,\
LDFLAGS_SUFFIX_windows:=$(WIN_JAVA_LIB) advapi32.lib user32.lib gdi32.lib \
......@@ -1402,7 +1411,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER,\
$(BUILD_LIBFONTMANAGER) : $(BUILD_LIBAWT)
ifneq (,$(findstring $(OPENJDK_TARGET_OS),solaris macosx))
ifneq (,$(findstring $(OPENJDK_TARGET_OS),solaris macosx aix))
$(BUILD_LIBFONTMANAGER) : $(BUILD_LIBAWT_XAWT)
endif
......@@ -1539,6 +1548,7 @@ else # OPENJDK_TARGET_OS not windows
$(call SET_SHARED_LIBRARY_ORIGIN),\
LDFLAGS_solaris:=-L$(OPENWIN_HOME)/sfw/lib$(OPENJDK_TARGET_CPU_ISADIR) -L$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR),\
LDFLAGS_SUFFIX_linux:=$(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX),\
LDFLAGS_SUFFIX_aix:=$(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX),\
LDFLAGS_SUFFIX_solaris:=$(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX) -lXrender,\
LDFLAGS_SUFFIX_macosx:=-Xlinker -rpath -Xlinker @loader_path $(JAWT_LIBS) \
-framework Cocoa $(LDFLAGS_JDKLIB_SUFFIX),\
......@@ -1622,6 +1632,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBINSTRUMENT,\
LDFLAGS_SUFFIX_macosx:=-liconv $(LIBZ),\
LDFLAGS_SUFFIX_solaris:=$(LIBZ) -L $(INSTALL_LIBRARIES_HERE)/jli -ljli $(LIBDL) -lc,\
LDFLAGS_SUFFIX_linux:=$(LIBZ) -L $(INSTALL_LIBRARIES_HERE)/jli -ljli $(LIBDL),\
LDFLAGS_SUFFIX_aix:=$(LIBZ) -L$(JDK_OUTPUTDIR)/objs -ljli_static $(LIBDL),\
VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
RC_FLAGS:=$(RC_FLAGS)\
-D "JDK_FNAME=instrument.dll" \
......@@ -1630,7 +1641,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBINSTRUMENT,\
OBJECT_DIR:=$(LIBINSTRUMENT_DIR),\
DEBUG_SYMBOLS:=true))
ifneq (,$(findstring $(OPENJDK_TARGET_OS), macosx windows))
ifneq (,$(findstring $(OPENJDK_TARGET_OS), macosx windows aix))
$(BUILD_LIBINSTRUMENT) : $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli_static$(STATIC_LIBRARY_SUFFIX)
else
$(BUILD_LIBINSTRUMENT) : $(INSTALL_LIBRARIES_HERE)/jli/$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX)
......@@ -1688,6 +1699,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBMANAGEMENT,\
LDFLAGS_solaris:=-lkstat,\
LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
LDFLAGS_SUFFIX_windows:=jvm.lib psapi.lib $(WIN_JAVA_LIB) advapi32.lib,\
LDFLAGS_SUFFIX_aix:=-lperfstat,\
VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
RC_FLAGS:=$(RC_FLAGS)\
-D "JDK_FNAME=management.dll" \
......@@ -1810,7 +1822,7 @@ endif
LIBNET_CFLAGS:=$(foreach dir,$(LIBNET_SRC_DIRS),-I$(dir))
LIBNET_EXCLUDE_FILES:=
ifneq ($(OPENJDK_TARGET_OS),linux)
ifeq (,$(filter $(OPENJDK_TARGET_OS), linux aix))
LIBNET_EXCLUDE_FILES += linux_close.c
endif
......@@ -1841,6 +1853,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBNET,\
LDFLAGS_SUFFIX_macosx:=-ljvm -ljava,\
LDFLAGS_SUFFIX_solaris:=-ljvm -ljava -lnsl -lsocket $(LIBDL) -lc ,\
LDFLAGS_SUFFIX_linux:=$(LIBDL) -ljvm -lpthread -ljava,\
LDFLAGS_SUFFIX_aix:=$(LIBDL) -ljvm -ljava,\
LDFLAGS_SUFFIX_windows:=ws2_32.lib jvm.lib secur32.lib iphlpapi.lib \
delayimp.lib $(WIN_JAVA_LIB) advapi32.lib \
-DELAYLOAD:secur32.dll -DELAYLOAD:iphlpapi.dll, \
......@@ -1961,6 +1974,21 @@ ifeq ($(OPENJDK_TARGET_OS), solaris)
UnixNativeDispatcher.c
endif
ifeq ($(OPENJDK_TARGET_OS), aix)
BUILD_LIBNIO_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libnio/mapfile-$(OPENJDK_TARGET_OS)
BUILD_LIBNIO_FILES += \
AixPollPort.c \
InheritedChannel.c \
NativeThread.c \
PollArrayWrapper.c \
UnixAsynchronousServerSocketChannelImpl.c \
UnixAsynchronousSocketChannelImpl.c \
GnomeFileTypeDetector.c \
UnixCopyFile.c \
AixNativeDispatcher.c \
UnixNativeDispatcher.c
endif
$(eval $(call SetupNativeCompilation,BUILD_LIBNIO,\
LIBRARY:=nio,\
OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
......@@ -1974,6 +2002,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBNIO,\
LDFLAGS:=$(LDFLAGS_JDKLIB) $(BUILD_LIBNIO_LDFLAGS) \
$(call SET_SHARED_LIBRARY_ORIGIN),\
LDFLAGS_SUFFIX_linux:=-ljava -lnet -lpthread $(LIBDL),\
LDFLAGS_SUFFIX_aix:=-ljava -lnet $(LIBDL),\
LDFLAGS_SUFFIX_solaris:=-ljvm -lsocket -lposix4 $(LIBDL) \
-lsendfile -ljava -lnet -lc,\
LDFLAGS_SUFFIX_windows:=jvm.lib ws2_32.lib $(WIN_JAVA_LIB) \
......@@ -1997,7 +2026,7 @@ $(BUILD_LIBNIO) : $(BUILD_LIBNET)
ifeq ($(OPENJDK_TARGET_OS_API),posix)
ifneq ($(OPENJDK_TARGET_OS),macosx)
ifeq (,$(filter $(OPENJDK_TARGET_OS), macosx aix))
SCTP_WERROR := -Werror
ifeq ($(OPENJDK_TARGET_CPU_ARCH), ppc)
......@@ -2127,6 +2156,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBJLI,\
LDFLAGS_macosx:=-framework Cocoa -framework Security -framework ApplicationServices,\
LDFLAGS_SUFFIX_solaris:=$(LIBZ) $(LIBDL) -lc,\
LDFLAGS_SUFFIX_linux:=$(LIBZ) $(LIBDL) -lc -lpthread,\
LDFLAGS_SUFFIX_aix:=$(LIBZ) $(LIBDL),\
LDFLAGS_SUFFIX_macosx:=$(LIBZ),\
LDFLAGS_SUFFIX_windows:=\
-export:JLI_Launch \
......@@ -2192,6 +2222,21 @@ $(JDK_OUTPUTDIR)/objs/libjli_static.a : $(BUILD_LIBJLI_STATIC)
$(call install-file)
BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/objs/libjli_static.a
else ifeq ($(OPENJDK_TARGET_OS), aix)
$(eval $(call SetupNativeCompilation,BUILD_LIBJLI_STATIC,\
STATIC_LIBRARY:=jli_static,\
OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs,\
SRC:=$(BUILD_LIBJLI_SRC_DIRS),\
INCLUDE_FILES:=$(BUILD_LIBJLI_FILES),\
LANG:=C,\
OPTIMIZATION:=HIGH, \
CFLAGS:=$(STATIC_LIBRARY_FLAGS) $(LIBJLI_CFLAGS),\
ARFLAGS:=$(ARFLAGS),\
OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjli_static))
BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/objs/libjli_static.a
endif
##########################################################################################
......@@ -2413,6 +2458,7 @@ $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_HEADLESS,\
LDFLAGS_macosx:=$(call SET_SHARED_LIBRARY_ORIGIN).,\
REORDER:=$(LIBAWT_HEADLESS_REORDER), \
LDFLAGS_SUFFIX_linux:=-ljvm -lawt -lm $(LIBDL) -ljava,\
LDFLAGS_SUFFIX_aix:=-ljvm -lawt -ljava,\
LDFLAGS_SUFFIX_solaris:=$(LIBDL) -ljvm -lawt -lm -ljava $(LIBCXX) -lc,\
LDFLAGS_SUFFIX_macosx:=-ljvm $(LIBCXX) -lawt $(LIBDL) -ljava \
-framework Accelerate \
......@@ -2817,6 +2863,10 @@ ifeq ($(OPENJDK_TARGET_OS), linux)
LIBJSOUND_CFLAGS += -DX_PLATFORM=X_LINUX
endif # OPENJDK_TARGET_OS linux
ifeq ($(OPENJDK_TARGET_OS), aix)
LIBJSOUND_CFLAGS += -DX_PLATFORM=X_AIX
endif # OPENJDK_TARGET_OS linux
ifeq ($(OPENJDK_TARGET_OS), macosx)
LIBJSOUND_LANG:=C++
LIBJSOUND_CFLAGS += -DX_PLATFORM=X_MACOSX \
......
......@@ -66,6 +66,13 @@ ifeq ($(OPENJDK_TARGET_OS), macosx)
GENDATA_FONT_CONFIG_SRC_PREFIX := macosx.
endif
ifeq ($(OPENJDK_TARGET_OS), aix)
GENDATA_FONT_CONFIG_SRC_DIR := \
$(JDK_TOPDIR)/src/solaris/classes/sun/awt/fontconfigs
GENDATA_FONT_CONFIG_SRC_FILES := fontconfig.properties
GENDATA_FONT_CONFIG_SRC_PREFIX := aix.
endif
###
$(GENDATA_FONT_CONFIG_DST)/%.src : \
......
......@@ -88,7 +88,7 @@ ifneq ($(COMPILE_TYPE),cross)
# use -m32/-m64 only if the compiler supports it
ifeq ($(COMPILER_SUPPORTS_TARGET_BITS_FLAG),true)
MEMORY_MODEL_FLAG="-m$*"
MEMORY_MODEL_FLAG="$(COMPILER_TARGET_BITS_FLAG)$*"
endif
# Compile the C code into an executable.
......
#
# Copyright (c) 2005, 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.
#
# Define public interface.
SUNWprivate_1.1 {
global:
Java_sun_tools_attach_AixVirtualMachine_socket
Java_sun_tools_attach_AixVirtualMachine_connect
Java_sun_tools_attach_AixVirtualMachine_sendQuitTo
Java_sun_tools_attach_AixVirtualMachine_checkPermissions
Java_sun_tools_attach_AixVirtualMachine_close
Java_sun_tools_attach_AixVirtualMachine_read
Java_sun_tools_attach_AixVirtualMachine_write
local:
*;
};
#
# 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.
#
# TODO: implement for AIX
SUNWprivate_1.1 {
global:
local:
*;
};
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册