| # |
| # Copyright (c) 2011, 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. |
| # |
| |
| defalt: all |
| |
| include $(SPEC) |
| include MakeBase.gmk |
| include NativeCompilation.gmk |
| |
| # Setup the java compilers for the JDK build. |
| include Setup.gmk |
| |
| # Copy files (can now depend on $(COPY_FILES)) |
| include CopyFiles.gmk |
| |
| # Prepare the find cache. Only used if running on windows. |
| $(eval $(call FillCacheFind,$(JDK_TOPDIR)/src)) |
| |
| # Build tools |
| include Tools.gmk |
| |
| # Include the javah generated headers. |
| CFLAGS_JDKLIB += -I$(JDK_OUTPUTDIR)/gensrc_headers |
| CXXFLAGS_JDKLIB += -I$(JDK_OUTPUTDIR)/gensrc_headers |
| |
| # Put the libraries here. Different locations for different target apis. |
| ifeq ($(OPENJDK_TARGET_OS_API),posix) |
| INSTALL_LIBRARIES_HERE:=$(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_LIBDIR) |
| else |
| INSTALL_LIBRARIES_HERE:=$(JDK_OUTPUTDIR)/bin |
| endif |
| |
| BUILD_LIBRARIES= |
| |
| # Absolute paths to lib files on windows for use in LDFLAGS. Should figure out a more |
| # elegant solution to this. |
| WIN_VERIFY_LIB := $(JDK_OUTPUTDIR)/objs/libverify/verify.lib |
| WIN_JAVA_LIB := $(JDK_OUTPUTDIR)/objs/libjava/java.lib |
| WIN_AWT_LIB := $(JDK_OUTPUTDIR)/objs/libawt/awt.lib |
| |
| # Use this variable to set DEBUG_SYMBOLS true on windows for all libraries, but |
| # not on other platforms. |
| ifeq ($(OPENJDK_TARGET_OS), windows) |
| DEBUG_ALL_BINARIES := true |
| endif |
| |
| # Build everything with debugging on OpenJDK |
| ifdef OPENJDK |
| DEBUG_ALL_BINARIES := true |
| endif |
| |
| # |
| # TODO replace with X_FLAGS / X_LIBS |
| # and add them to configure |
| # |
| OPENWIN_LIB:=$(OPENWIN_HOME)/lib |
| |
| ########################################################################################## |
| |
| BUILD_LIBFDLIBM_OPTIMIZATION:=HIGH |
| |
| ifneq ($(OPENJDK_TARGET_OS), solaris) |
| BUILD_LIBFDLIBM_OPTIMIZATION:=NONE |
| endif |
| |
| ifneq ($(OPENJDK_TARGET_OS),macosx) |
| $(eval $(call SetupNativeCompilation,BUILD_LIBFDLIBM,\ |
| STATIC_LIBRARY:=fdlibm,\ |
| OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs,\ |
| SRC:=$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/src,\ |
| LANG:=C,\ |
| OPTIMIZATION:=$(BUILD_LIBFDLIBM_OPTIMIZATION), \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include,\ |
| CFLAGS_windows_debug:=-DLOGGING,\ |
| ARFLAGS:=$(ARFLAGS),\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| else |
| |
| # On macosx the old build does partial (incremental) linking of fdlibm instead of |
| # a plain static library. |
| $(eval $(call SetupNativeCompilation,BUILD_LIBFDLIBM_MAC,\ |
| LIBRARY:=fdlibm,\ |
| OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\ |
| SRC:=$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/src,\ |
| LANG:=C,\ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include,\ |
| LDFLAGS:=-nostdlib -r -arch x86_64,\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBFDLIBM := $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fdlibm$(STATIC_LIBRARY_SUFFIX) |
| $(BUILD_LIBFDLIBM) : $(BUILD_LIBFDLIBM_MAC) |
| $(call install-file) |
| |
| endif |
| BUILD_LIBRARIES += $(BUILD_LIBFDLIBM) |
| |
| ########################################################################################## |
| |
| BUILD_LIBVERIFY_SRC:=check_code.c check_format.c |
| |
| ifeq ($(OPENJDK_TARGET_OS), solaris) |
| ifneq ($(OPENJDK_TARGET_CPU), x86_64) |
| BUILD_LIBVERIFY_REORDER:=$(JDK_TOPDIR)/makefiles/mapfiles/libverify/reorder-$(OPENJDK_TARGET_CPU) |
| endif |
| endif |
| |
| LIBVERIFY_OPTIMIZATION:=HIGH |
| ifneq ($(findstring $(OPENJDK_TARGET_OS),solaris linux),) |
| ifeq ($(ENABLE_DEBUG_SYMBOLS), true) |
| LIBVERIFY_OPTIMIZATION:=LOW |
| endif |
| endif |
| |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBVERIFY,\ |
| LIBRARY:=verify, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/native/common,\ |
| INCLUDE_FILES:=$(BUILD_LIBVERIFY_SRC),\ |
| LANG:=C,\ |
| OPTIMIZATION:=$(LIBVERIFY_OPTIMIZATION), \ |
| CFLAGS:=$(CFLAGS_JDKLIB),\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libverify/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN), \ |
| LDFLAGS_SUFFIX_posix:=-ljvm -lc,\ |
| LDFLAGS_SUFFIX_windows:=jvm.lib,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS) \ |
| -D "JDK_FNAME=verify.dll" \ |
| -D "JDK_INTERNAL_NAME=verify" \ |
| -D "JDK_FTYPE=0x2L",\ |
| REORDER:=$(BUILD_LIBVERIFY_REORDER),\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libverify,\ |
| DEBUG_SYMBOLS:=true)) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBVERIFY) |
| |
| ########################################################################################## |
| |
| LIBJAVA_SRC_DIRS:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/lang \ |
| $(JDK_TOPDIR)/src/share/native/java/lang \ |
| $(JDK_TOPDIR)/src/share/native/java/lang/ref \ |
| $(JDK_TOPDIR)/src/share/native/java/lang/reflect \ |
| $(JDK_TOPDIR)/src/share/native/java/io \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/io \ |
| $(JDK_TOPDIR)/src/share/native/java/nio \ |
| $(JDK_TOPDIR)/src/share/native/java/security \ |
| $(JDK_TOPDIR)/src/share/native/common \ |
| $(JDK_TOPDIR)/src/share/native/sun/misc \ |
| $(JDK_TOPDIR)/src/share/native/sun/reflect \ |
| $(JDK_TOPDIR)/src/share/native/java/util \ |
| $(JDK_TOPDIR)/src/share/native/java/util/concurrent/atomic \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/common \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/util |
| |
| ifneq ($(OPENJDK_TARGET_OS),macosx) |
| LIBJAVA_SRC_DIRS+=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/util/locale/provider |
| else |
| LIBJAVA_SRC_DIRS+=$(JDK_TOPDIR)/src/macosx/native/sun/util/locale/provider |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS),windows) |
| LIBJAVA_SRC_DIRS+=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/provider \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/io |
| endif |
| |
| LIBJAVA_CFLAGS:=$(foreach dir,$(LIBJAVA_SRC_DIRS),-I$(dir)) \ |
| -I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include \ |
| -DARCHPROPNAME='"$(OPENJDK_TARGET_CPU_OSARCH)"' |
| |
| LIBJAVA_CFLAGS += -DJDK_MAJOR_VERSION='"$(JDK_MAJOR_VERSION)"' \ |
| -DJDK_MINOR_VERSION='"$(JDK_MINOR_VERSION)"' \ |
| -DJDK_MICRO_VERSION='"$(JDK_MICRO_VERSION)"' \ |
| -DJDK_BUILD_NUMBER='"$(JDK_BUILD_NUMBER)"' |
| |
| ifneq (,$(JDK_UPDATE_VERSION)) |
| LIBJAVA_CFLAGS += -DJDK_UPDATE_VERSION='"$(JDK_UPDATE_VERSION)"' |
| endif |
| |
| LIBJAVA_EXCLUDE_FILES:=check_code.c check_format.c |
| |
| ifneq ($(OPENJDK_TARGET_OS),macosx) |
| LIBJAVA_EXCLUDE_FILES += java_props_macosx.c |
| else |
| BUILD_LIBJAVA_java_props_md.c_CFLAGS:=-x objective-c |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS),windows) |
| LIBJAVA_EXCLUDE_FILES += \ |
| UNIXProcess_md.c \ |
| UnixFileSystem_md.c \ |
| FileSystemPreferences.c |
| else |
| LIBJAVA_EXCLUDE_FILES += \ |
| ProcessImpl_md.c \ |
| WinNTFileSystem_md.c \ |
| dirent_md.c \ |
| WindowsPreferences.c \ |
| sun/security/provider/WinCAPISeedGenerator.c \ |
| sun/io/Win32ErrorMode.c |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS), solaris) |
| ifneq ($(OPENJDK_TARGET_CPU), x86_64) |
| LIBJAVA_REORDER:=$(JDK_TOPDIR)/makefiles/mapfiles/libjava/reorder-$(OPENJDK_TARGET_CPU) |
| endif |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJAVA,\ |
| LIBRARY:=java,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(LIBJAVA_SRC_DIRS),\ |
| EXCLUDES:=fdlibm/src zip, \ |
| EXCLUDE_FILES:=$(LIBJAVA_EXCLUDE_FILES), \ |
| LANG:=C,\ |
| OPTIMIZATION:=HIGH, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| $(LIBJAVA_CFLAGS),\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjava/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN), \ |
| LDFLAGS_SUFFIX_posix:=-ljvm -lverify, \ |
| LDFLAGS_SUFFIX_solaris:=-lsocket -lnsl -lscf $(LIBDL) $(BUILD_LIBFDLIBM) -lc,\ |
| LDFLAGS_SUFFIX_linux:=$(LIBDL) $(BUILD_LIBFDLIBM),\ |
| LDFLAGS_SUFFIX_macosx:=-L$(JDK_OUTPUTDIR)/objs/ -lfdlibm \ |
| -framework CoreFoundation \ |
| -framework Security -framework SystemConfiguration, \ |
| LDFLAGS_SUFFIX_windows:=-export:winFileHandleOpen -export:handleLseek \ |
| jvm.lib $(BUILD_LIBFDLIBM) $(WIN_VERIFY_LIB) \ |
| shell32.lib delayimp.lib -DELAYLOAD:shell32.dll \ |
| advapi32.lib,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=java.dll" \ |
| -D "JDK_INTERNAL_NAME=java" \ |
| -D "JDK_FTYPE=0x2L",\ |
| REORDER:=$(LIBJAVA_REORDER), \ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjava,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJAVA) |
| |
| $(BUILD_LIBJAVA) : $(LIBJLI_BINARY) |
| |
| $(BUILD_LIBJAVA) : $(BUILD_LIBVERIFY) |
| |
| $(BUILD_LIBJAVA) : $(BUILD_LIBFDLIBM) |
| |
| ########################################################################################## |
| |
| BUILD_LIBMLIB_SRC:=$(JDK_TOPDIR)/src/share/native/sun/awt/medialib |
| BUILD_LIBMLIB_CFLAGS:=-D__USE_J2D_NAMES -D__MEDIALIB_OLD_NAMES \ |
| -I$(BUILD_LIBMLIB_SRC) \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt/medialib |
| |
| BUILD_LIBMLIB_LDLIBS:= |
| BUILD_LIBMLIB_IMAGE_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libmlib_image/mapfile-vers |
| |
| BUILD_LIBMLIB_CFLAGS += -DMLIB_NO_LIBSUNMATH |
| |
| ifeq ($(OPENJDK_TARGET_CPU_BITS), 64) |
| BUILD_LIBMLIB_CFLAGS += -DMLIB_OS64BIT |
| endif |
| |
| ifneq ($(OPENJDK_TARGET_OS), windows) |
| BUILD_LIBMLIB_LDLIBS += $(LIBM) $(LIBDL) |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBMLIB_IMAGE,\ |
| LIBRARY:=mlib_image,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(BUILD_LIBMLIB_SRC),\ |
| EXCLUDE_FILES:=awt_ImagingLib.c mlib_c_ImageBlendTable.c,\ |
| LANG:=C,\ |
| OPTIMIZATION:=HIGHEST, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| $(BUILD_LIBMLIB_CFLAGS),\ |
| MAPFILE:=$(BUILD_LIBMLIB_IMAGE_MAPFILE), \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX:=$(BUILD_LIBMLIB_LDLIBS) \ |
| $(LDFLAGS_JDKLIB_SUFFIX),\ |
| LDFLAGS_SUFFIX_solaris:=-lc, \ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=mlib_image.dll" \ |
| -D "JDK_INTERNAL_NAME=mlib_image" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libmlib_image,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBMLIB_IMAGE) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBMLIB_IMAGE) |
| |
| ########################################################################################## |
| |
| ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH),solaris-sparc) |
| |
| BUILD_LIBMLIB_IMAGE_V_FILES:=\ |
| mlib_v_ImageLookUp.c \ |
| mlib_ImageCreate.c \ |
| mlib_ImageAffine.c \ |
| mlib_ImageConvMxN.c \ |
| mlib_ImageConvKernelConvert.c \ |
| mlib_sys.c \ |
| mlib_ImageLookUp_64.c \ |
| mlib_ImageLookUp_Bit.c \ |
| mlib_ImageColorTrue2Index.c \ |
| mlib_c_ImageThresh1_U8.c \ |
| mlib_v_ImageLookUpS16S16Func.c \ |
| mlib_v_ImageLookUpS16S32Func.c \ |
| mlib_v_ImageLookUpS16U16Func.c \ |
| mlib_v_ImageLookUpS16U8Func.c \ |
| mlib_v_ImageLookUpS32S16Func.c \ |
| mlib_v_ImageLookUpS32S32Func.c \ |
| mlib_v_ImageLookUpS32U16Func.c \ |
| mlib_v_ImageLookUpS32U8Func.c \ |
| mlib_v_ImageLookUpSIS16S16Func.c \ |
| mlib_v_ImageLookUpSIS16S32Func.c \ |
| mlib_v_ImageLookUpSIS16U16Func.c \ |
| mlib_v_ImageLookUpSIS16U8Func.c \ |
| mlib_v_ImageLookUpSIS32S16Func.c \ |
| mlib_v_ImageLookUpSIS32S32Func.c \ |
| mlib_v_ImageLookUpSIS32U16Func.c \ |
| mlib_v_ImageLookUpSIS32U8Func.c \ |
| mlib_v_ImageLookUpSIU16S16Func.c \ |
| mlib_v_ImageLookUpSIU16S32Func.c \ |
| mlib_v_ImageLookUpSIU16U16Func.c \ |
| mlib_v_ImageLookUpSIU16U8Func.c \ |
| mlib_v_ImageLookUpSIU8S16Func.c \ |
| mlib_v_ImageLookUpSIU8S32Func.c \ |
| mlib_v_ImageLookUpSIU8U16Func.c \ |
| mlib_v_ImageLookUpSIU8U8Func.c \ |
| mlib_v_ImageLookUpU16S16Func.c \ |
| mlib_v_ImageLookUpU16S32Func.c \ |
| mlib_v_ImageLookUpU16U16Func.c \ |
| mlib_v_ImageLookUpU16U8Func.c \ |
| mlib_v_ImageLookUpU8S16Func.c \ |
| mlib_v_ImageLookUpU8S32Func.c \ |
| mlib_v_ImageLookUpU8U16Func.c \ |
| mlib_v_ImageLookUpU8U8Func.c \ |
| mlib_v_ImageAffineIndex_BC.c \ |
| mlib_v_ImageAffine_BC.c \ |
| mlib_v_ImageAffine_BC_S16.c \ |
| mlib_v_ImageAffine_BC_U16.c \ |
| mlib_v_ImageAffine_BL.c \ |
| mlib_v_ImageAffine_BL_S16.c \ |
| mlib_v_ImageAffine_BL_U16.c \ |
| mlib_v_ImageAffine_NN.c \ |
| mlib_v_ImageFilters.c \ |
| mlib_ImageAffineEdge.c \ |
| mlib_ImageAffine_BC_D64.c \ |
| mlib_ImageAffine_BC_F32.c \ |
| mlib_ImageAffine_BC_S32.c \ |
| mlib_ImageAffine_BL_D64.c \ |
| mlib_ImageAffine_BL_F32.c \ |
| mlib_ImageAffine_BL_S32.c \ |
| mlib_ImageAffine_NN.c \ |
| mlib_ImageAffine_NN_Bit.c \ |
| mlib_ImageFilters.c \ |
| mlib_ImageScanPoly.c \ |
| mlib_ImageConv_8nw.c \ |
| mlib_ImageConv_8ext.c \ |
| mlib_ImageConv_16nw.c \ |
| mlib_ImageConv_16ext.c \ |
| mlib_ImageConv_u16nw.c \ |
| mlib_ImageConv_u16ext.c \ |
| mlib_ImageConv_32nw.c \ |
| mlib_ImageConv_F32nw.c \ |
| mlib_ImageConvMxN_Fp.c \ |
| mlib_ImageConvMxN_ext.c \ |
| mlib_ImageConv_D64nw.c \ |
| mlib_ImageClipping.c \ |
| mlib_ImageConvCopyEdge_Bit.c \ |
| mlib_ImageConvClearEdge_Bit.c \ |
| mlib_ImageConv2x2_f.c \ |
| mlib_ImageConvClearEdge_Fp.c \ |
| mlib_v_ImageConvMxN_8.c \ |
| mlib_v_ImageConvClearEdge.c \ |
| mlib_v_ImageConvCopyEdge.c \ |
| mlib_v_ImageConvMxN_8ext.c \ |
| mlib_v_ImageConvVersion.c \ |
| mlib_v_ImageConv_8nw.c \ |
| mlib_ImageConvCopyEdge_Fp.c \ |
| mlib_v_ImageChannelInsert_1.c \ |
| mlib_v_ImageChannelExtract_43.c \ |
| mlib_v_ImageChannelExtract_1.c \ |
| mlib_ImageCopy_Bit.c \ |
| mlib_v_ImageCopy_f.c \ |
| mlib_ImageUtils.c \ |
| mlib_ImageDivTables.c |
| |
| BUILD_LIBMLIB_V_CFLAGS := $(filter-out -DMLIB_NO_LIBSUNMATH,$(BUILD_LIBMLIB_CFLAGS)) |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBMLIB_IMAGE_V,\ |
| LIBRARY:=mlib_image_v, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/native/sun/awt/medialib \ |
| $(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib,\ |
| LANG:=C,\ |
| INCLUDE_FILES:=$(BUILD_LIBMLIB_IMAGE_V_FILES),\ |
| OPTIMIZATION:=HIGHEST, \ |
| CFLAGS:=-xarch=sparcvis \ |
| $(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib/vis_$(OPENJDK_TARGET_CPU_BITS).il\ |
| $(BUILD_LIBMLIB_V_CFLAGS) \ |
| $(CFLAGS_JDKLIB), \ |
| MAPFILE:=$(BUILD_LIBMLIB_IMAGE_MAPFILE), \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(BUILD_LIBMLIB_LDLIBS) -ljava -ljvm \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX_solaris:=-lc,\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libmlib_image_v,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBMLIB_IMAGE_V): $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBMLIB_IMAGE_V) |
| |
| endif |
| |
| ########################################################################################## |
| |
| LIBAWT_DIRS:=\ |
| $(JDK_TOPDIR)/src/share/native/sun/awt \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt \ |
| $(JDK_TOPDIR)/src/share/native/sun/awt/image \ |
| $(JDK_TOPDIR)/src/share/native/sun/awt/image/gif \ |
| $(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \ |
| $(JDK_TOPDIR)/src/share/native/sun/awt/medialib \ |
| $(JDK_TOPDIR)/src/share/native/sun/awt/debug \ |
| $(JDK_TOPDIR)/src/share/native/sun/awt/utility \ |
| $(JDK_TOPDIR)/src/share/native/sun/java2d \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d \ |
| $(JDK_TOPDIR)/src/share/native/sun/java2d/loops \ |
| $(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \ |
| $(JDK_TOPDIR)/src/share/native/sun/awt/image \ |
| $(JDK_TOPDIR)/src/share/native/sun/java2d/opengl \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/opengl \ |
| $(JDK_TOPDIR)/src/share/native/sun/font |
| |
| ifeq ($(OPENJDK_TARGET_OS),windows) |
| LIBAWT_DIRS+=\ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/windows \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/windows \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/d3d |
| LIBAWT_CFLAGS+=-I$(DXSDK_INCLUDE_PATH) |
| else |
| LIBAWT_DIRS+=\ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/x11 |
| endif |
| |
| LIBAWT_CFLAGS+=-D__MEDIALIB_OLD_NAMES -D__USE_J2D_NAMES \ |
| $(X_CFLAGS) \ |
| $(foreach dir,$(LIBAWT_DIRS),-I$(dir)) |
| |
| LIBAWT_FILES:=\ |
| gifdecoder.c \ |
| imageInitIDs.c \ |
| img_globals.c \ |
| SurfaceData.c \ |
| Region.c \ |
| BufImgSurfaceData.c \ |
| Disposer.c \ |
| Trace.c \ |
| GraphicsPrimitiveMgr.c \ |
| Blit.c \ |
| BlitBg.c \ |
| ScaledBlit.c \ |
| FillRect.c \ |
| FillSpans.c \ |
| FillParallelogram.c \ |
| DrawParallelogram.c \ |
| DrawLine.c \ |
| DrawRect.c \ |
| DrawPolygons.c \ |
| DrawPath.c \ |
| FillPath.c \ |
| ProcessPath.c \ |
| MaskBlit.c \ |
| MaskFill.c \ |
| TransformHelper.c \ |
| AlphaMath.c \ |
| AlphaMacros.c \ |
| AnyByte.c \ |
| ByteBinary1Bit.c \ |
| ByteBinary2Bit.c \ |
| ByteBinary4Bit.c \ |
| ByteIndexed.c \ |
| ByteGray.c \ |
| Index8Gray.c \ |
| Index12Gray.c \ |
| AnyShort.c \ |
| Ushort555Rgb.c \ |
| Ushort565Rgb.c \ |
| Ushort4444Argb.c \ |
| Ushort555Rgbx.c \ |
| UshortGray.c \ |
| UshortIndexed.c \ |
| Any3Byte.c \ |
| ThreeByteBgr.c \ |
| AnyInt.c \ |
| IntArgb.c \ |
| IntArgbPre.c \ |
| IntArgbBm.c \ |
| IntRgb.c \ |
| IntBgr.c \ |
| IntRgbx.c \ |
| Any4Byte.c \ |
| FourByteAbgr.c \ |
| FourByteAbgrPre.c \ |
| BufferedMaskBlit.c \ |
| BufferedRenderPipe.c \ |
| ShapeSpanIterator.c \ |
| SpanClipRenderer.c \ |
| awt_ImageRep.c \ |
| awt_ImagingLib.c \ |
| awt_Mlib.c \ |
| awt_parseImage.c \ |
| DataBufferNative.c \ |
| dither.c \ |
| debug_assert.c \ |
| debug_mem.c \ |
| debug_trace.c \ |
| debug_util.c |
| |
| ifneq (,$(filter $(OPENJDK_TARGET_OS), solaris linux)) |
| LIBAWT_FILES += awt_LoadLibrary.c initIDs.c img_colors.c |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS),macosx) |
| LIBAWT_FILES += awt_LoadLibrary.c img_colors.c |
| LIBAWT_DIRS += $(JDK_TOPDIR)/src/macosx/native/com/apple/resources |
| LIBAWT_FILES += awt_LoadLibrary.c MacOSXResourceBundle.m |
| LIBAWT_CFLAGS += -F/System/Library/Frameworks/JavaVM.framework/Frameworks |
| |
| LIBAWT_MacOSXResourceBundle.m_CFLAGS:=-O0 |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc) |
| LIBAWT_CFLAGS += -DMLIB_ADD_SUFF |
| LIBAWT_CFLAGS += -xarch=sparcvis |
| LIBAWT_CFLAGS += $(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib/vis_$(OPENJDK_TARGET_CPU_BITS).il |
| LIBAWT_CFLAGS += \ |
| -I$(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib \ |
| -I$(JDK_TOPDIR)/src/solaris/native/sun/java2d/medialib \ |
| -I$(JDK_TOPDIR)/src/solaris/native/sun/java2d/loops |
| |
| LIBAWT_DIRS += $(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib \ |
| $(JDK_TOPDIR)/src/solaris/native/sun/java2d/loops |
| |
| LIBAWT_FILES += \ |
| vis_FuncArray.c \ |
| java2d_Mlib.c \ |
| mlib_ImageCreate.c \ |
| mlib_ImageZoom_NN.c \ |
| mlib_ImageCopy_Bit.c \ |
| mlib_sys.c \ |
| mlib_v_ImageClear.c \ |
| mlib_v_ImageClear_f.c \ |
| mlib_v_ImageConstXor.c \ |
| mlib_v_ImageCopy.c \ |
| mlib_v_ImageCopy_f.c \ |
| mlib_v_ImageXor.c \ |
| mlib_v_ImageZoom_NN_f.c \ |
| vis_Interp.c \ |
| vis_AlphaMacros.c \ |
| vis_AlphaMaskBlit.c \ |
| vis_AlphaMaskFill.c \ |
| vis_ByteGray.c \ |
| vis_ByteGray_FromRgb.c \ |
| vis_ByteGray_Mask.c \ |
| vis_ByteIndexed.c \ |
| vis_DrawLine.c \ |
| vis_FourByteAbgr.c \ |
| vis_IntArgb.c \ |
| vis_IntArgbPre.c \ |
| vis_IntArgbPre_Mask.c \ |
| vis_IntBgr.c \ |
| vis_IntRgb.c \ |
| vis_IntRgbx.c \ |
| vis_SrcMaskFill.c \ |
| vis_SrcOverMaskBlit.c \ |
| vis_SrcOverMaskFill.c \ |
| vis_FourByteAbgrPre.c \ |
| vis_GlyphList.c \ |
| vis_GlyphListXor.c \ |
| vis_IntArgbBm.c \ |
| vis_ThreeByteBgr.c \ |
| vis_UshortGray.c \ |
| vis_UshortGray_FromRgb.c \ |
| vis_XorBlit.c \ |
| mlib_v_ImageCopy_blk.s |
| |
| ifeq ($(OPENJDK_TARGET_CPU),sparcv9) |
| LIBAWT_ASFLAGS=-P -xarch=v9a |
| else |
| LIBAWT_ASFLAGS=-P -xarch=v8plusa |
| endif |
| else |
| LIBAWT_FILES += MapAccelFunc.c |
| endif |
| |
| ifneq ($(OPENJDK_TARGET_OS),solaris) |
| LIBAWT_CFLAGS += -DMLIB_NO_LIBSUNMATH |
| endif |
| |
| LIBAWT_LANG:=C |
| |
| ifeq ($(OPENJDK_TARGET_OS),windows) |
| LIBAWT_FILES += AccelGlyphCache.c \ |
| ShaderList.c \ |
| CmdIDList.cpp \ |
| Hashtable.cpp \ |
| GDIHashtable.cpp \ |
| Devices.cpp \ |
| ObjectList.cpp \ |
| GDIBlitLoops.cpp \ |
| GDIRenderer.cpp \ |
| GDIWindowSurfaceData.cpp \ |
| WindowsFlags.cpp \ |
| WPrinterJob.cpp \ |
| awt_%.cpp \ |
| D3DBlitLoops.cpp \ |
| D3DBufImgOps.cpp \ |
| D3DContext.cpp \ |
| D3DGlyphCache.cpp \ |
| D3DGraphicsDevice.cpp \ |
| D3DMaskBlit.cpp \ |
| D3DMaskCache.cpp \ |
| D3DMaskFill.cpp \ |
| D3DPipelineManager.cpp \ |
| D3DPaints.cpp \ |
| D3DRenderer.cpp \ |
| D3DRenderQueue.cpp \ |
| D3DResourceManager.cpp \ |
| D3DSurfaceData.cpp \ |
| D3DTextRenderer.cpp \ |
| D3DVertexCacher.cpp \ |
| ShellFolder2.cpp \ |
| ThemeReader.cpp \ |
| ComCtl32Util.cpp \ |
| DllUtil.cpp \ |
| initIDs.cpp \ |
| MouseInfo.cpp \ |
| rect.c \ |
| OGLBlitLoops.c \ |
| OGLBufImgOps.c \ |
| OGLContext.c \ |
| OGLFuncs.c \ |
| OGLMaskBlit.c \ |
| OGLMaskFill.c \ |
| OGLPaints.c \ |
| OGLRenderQueue.c \ |
| OGLRenderer.c \ |
| OGLSurfaceData.c \ |
| OGLTextRenderer.c \ |
| OGLVertexCache.c \ |
| WGLGraphicsConfig.c \ |
| WGLSurfaceData.c |
| LIBAWT_LANG:=C++ |
| LIBAWT_CFLAGS += -EHsc -DUNICODE -D_UNICODE |
| ifeq ($(OPENJDK_TARGET_CPU_BITS), 64) |
| LIBAWT_CFLAGS += -DMLIB_OS64BIT |
| endif |
| |
| ifdef OPENJDK |
| LIBAWT_RC_FLAGS:=-i "$(JDK_TOPDIR)/src/windows/resource/icons" |
| else |
| LIBAWT_RC_FLAGS:=-i "$(JDK_TOPDIR)/src/closed/windows/native/sun/windows" |
| endif |
| LIBAWT_VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/native/sun/windows/awt.rc |
| endif |
| |
| ifeq ($(MILESTONE), internal) |
| LIBAWT_CFLAGS += -DINTERNAL_BUILD |
| endif |
| |
| LIBAWT_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libawt/mapfile-vers |
| ifeq ($(OPENJDK_TARGET_OS),linux) |
| LIBAWT_MAPFILE:= |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBAWT,\ |
| LIBRARY:=awt,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(LIBAWT_DIRS),\ |
| INCLUDE_FILES:=$(LIBAWT_FILES),\ |
| LANG:=$(LIBAWT_LANG),\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) $(LIBAWT_CFLAGS),\ |
| ASFLAGS:=$(LIBAWT_ASFLAGS),\ |
| MAPFILE:=$(LIBAWT_MAPFILE), \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| 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_macosx:=-lmlib_image -ljvm $(LIBM) \ |
| -framework Cocoa \ |
| -framework OpenGL \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -framework JavaNativeFoundation \ |
| -framework JavaRuntimeSupport \ |
| -framework ApplicationServices \ |
| -framework AudioToolbox \ |
| -ljava,\ |
| LDFLAGS_SUFFIX_windows:=kernel32.lib user32.lib gdi32.lib winspool.lib \ |
| imm32.lib ole32.lib uuid.lib shell32.lib \ |
| comdlg32.lib winmm.lib comctl32.lib shlwapi.lib \ |
| delayimp.lib jvm.lib $(WIN_JAVA_LIB) advapi32.lib \ |
| -DELAYLOAD:user32.dll -DELAYLOAD:gdi32.dll \ |
| -DELAYLOAD:shell32.dll -DELAYLOAD:winmm.dll \ |
| -DELAYLOAD:winspool.drv -DELAYLOAD:imm32.dll \ |
| -DELAYLOAD:ole32.dll -DELAYLOAD:comdlg32.dll \ |
| -DELAYLOAD:comctl32.dll -DELAYLOAD:shlwapi.dll,\ |
| VERSIONINFO_RESOURCE:=$(LIBAWT_VERSIONINFO_RESOURCE),\ |
| RC_FLAGS:=$(RC_FLAGS) $(LIBAWT_RC_FLAGS) \ |
| -D "JDK_FNAME=awt.dll" \ |
| -D "JDK_INTERNAL_NAME=awt" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libawt,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBAWT) : $(BUILD_LIBJAVA) |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| $(BUILD_LIBAWT) : $(BUILD_LIBMLIB_IMAGE) |
| endif |
| |
| BUILD_LIBRARIES += $(BUILD_LIBAWT) |
| |
| ########################################################################################## |
| |
| # TODO!! |
| # Even though this variable as a general name, it is |
| # only used on macos, in fontpath.c, as prefix for where to find fonts. |
| # |
| # It's used for libawt_headless _and_ libawt_xawt |
| # |
| X11_PATH:=/usr/X11R6 |
| |
| ifneq ($(OPENJDK_TARGET_OS), windows) |
| ifndef BUILD_HEADLESS_ONLY |
| |
| LIBAWT_XAWT_DIRS:=\ |
| $(JDK_TOPDIR)/src/share/native/sun/awt/debug \ |
| $(JDK_TOPDIR)/src/share/native/sun/awt/utility \ |
| $(JDK_TOPDIR)/src/share/native/sun/font \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/font \ |
| $(JDK_TOPDIR)/src/share/native/sun/java2d/opengl \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/opengl \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/x11 \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/xawt \ |
| |
| LIBAWT_XAWT_CFLAGS:=-DXAWT -DXAWT_HACK \ |
| -DX11_PATH=\"$(X11_PATH)\" -DPACKAGE_PATH=\"$(PACKAGE_PATH)\" \ |
| $(CUPS_CFLAGS) \ |
| $(foreach dir,$(LIBAWT_XAWT_DIRS),-I$(dir)) \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/image \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/jdga |
| |
| ifeq ($(OPENJDK_TARGET_OS),solaris) |
| LIBAWT_XAWT_CFLAGS += -DFUNCPROTO=15 |
| endif |
| |
| ifeq ($(MILESTONE),internal) |
| LIBAWT_XAWT_CFLAGS += -DINTERNAL_BUILD |
| endif |
| |
| LIBAWT_XAWT_FILES:=\ |
| XlibWrapper.c \ |
| XWindow.c \ |
| XToolkit.c \ |
| X11Color.c \ |
| X11SurfaceData.c \ |
| awt_GraphicsEnv.c \ |
| awt_InputMethod.c \ |
| robot_common.c \ |
| awt_Robot.c \ |
| list.c \ |
| multiVis.c \ |
| initIDs.c \ |
| awt_util.c \ |
| awt_Desktop.c \ |
| awt_UNIXToolkit.c \ |
| X11FontScaler_md.c \ |
| X11TextRenderer_md.c \ |
| fontpath.c \ |
| awt_Insets.c \ |
| awt_Event.c \ |
| X11Renderer.c \ |
| X11PMBlitLoops.c \ |
| OGLBlitLoops.c \ |
| OGLBufImgOps.c \ |
| OGLContext.c \ |
| OGLFuncs.c \ |
| OGLMaskBlit.c \ |
| OGLMaskFill.c \ |
| OGLPaints.c \ |
| OGLRenderQueue.c \ |
| OGLRenderer.c \ |
| OGLSurfaceData.c \ |
| OGLTextRenderer.c \ |
| OGLVertexCache.c \ |
| GLXGraphicsConfig.c \ |
| GLXSurfaceData.c \ |
| AccelGlyphCache.c \ |
| awt_Font.c \ |
| multi_font.c \ |
| awt_AWTEvent.c \ |
| awt_DrawingSurface.c \ |
| jawt.c \ |
| CUPSfuncs.c \ |
| debug_assert.c \ |
| debug_mem.c \ |
| debug_trace.c \ |
| debug_util.c \ |
| awt_Plugin.c \ |
| gnome_interface.c \ |
| gtk2_interface.c \ |
| swing_GTKEngine.c \ |
| swing_GTKStyle.c \ |
| rect.c \ |
| sun_awt_X11_GtkFileDialogPeer.c \ |
| XRSurfaceData.c \ |
| XRBackendNative.c |
| |
| LIBAWT_XAWT_LDFLAGS_SUFFIX:=$(LIBM) -lawt -lXext -lX11 -lXrender $(LIBDL) -lXtst -lXi -ljava -ljvm -lc |
| |
| ifeq ($(OPENJDK_TARGET_OS), linux) |
| # To match old build, add this to LDFLAGS instead of suffix. |
| LIBAWT_XAWT_LDFLAGS += -lpthread |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| LIBAWT_XAWT_LDFLAGS_SUFFIX += -lpthread |
| endif |
| |
| # On macosx, the shared library origin is set twice for this lib. |
| $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_XAWT,\ |
| LIBRARY:=awt_xawt,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(LIBAWT_XAWT_DIRS),\ |
| INCLUDE_FILES:=$(LIBAWT_XAWT_FILES),\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) $(LIBAWT_XAWT_CFLAGS) \ |
| $(X_CFLAGS),\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libawt_xawt/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(X_LIBS) $(LIBAWT_XAWT_LDFLAGS),\ |
| LDFLAGS_linux:=$(call SET_SHARED_LIBRARY_ORIGIN) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN,/..),\ |
| LDFLAGS_solaris:=-L$(OPENWIN_HOME)/sfw/lib$(OPENJDK_TARGET_CPU_ISADIR) \ |
| -L$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) \ |
| -R$(OPENWIN_HOME)/sfw/lib$(OPENJDK_TARGET_CPU_ISADIR) \ |
| -R$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) \ |
| -R/usr/dt/lib$(OPENJDK_TARGET_CPU_ISADIR) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN,/..),\ |
| LDFLAGS_macosx:=$(call SET_SHARED_LIBRARY_ORIGIN) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN). \ |
| $(call SET_SHARED_LIBRARY_ORIGIN) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN).,\ |
| LDFLAGS_SUFFIX:=$(LIBAWT_XAWT_LDFLAGS_SUFFIX),\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=xawt.dll" \ |
| -D "JDK_INTERNAL_NAME=xawt" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libawt_xawt,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBAWT_XAWT) : $(BUILD_LIBJAVA) |
| |
| $(BUILD_LIBAWT_XAWT) : $(BUILD_LIBAWT) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBAWT_XAWT) |
| |
| endif |
| endif |
| |
| ########################################################################################## |
| |
| BUILD_LIBZIP_EXCLUDES := |
| ifeq ($(USE_EXTERNAL_LIBZ),true) |
| LIBZ := -lz |
| LIBZIP_EXCLUDES += zlib-1.2.5 |
| else |
| ZLIB_CPPFLAGS := -I$(JDK_TOPDIR)/src/share/native/java/util/zip/zlib-1.2.5 |
| endif |
| |
| BUILD_LIBZIP_REORDER := |
| ifeq ($(OPENJDK_TARGET_OS), solaris) |
| ifneq ($(OPENJDK_TARGET_CPU), x86_64) |
| BUILD_LIBZIP_REORDER := $(JDK_TOPDIR)/makefiles/mapfiles/libzip/reorder-$(OPENJDK_TARGET_CPU) |
| endif |
| endif |
| |
| ifeq ($(LIBZIP_CAN_USE_MMAP), true) |
| BUILD_LIBZIP_MMAP := -DUSE_MMAP |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBZIP,\ |
| LIBRARY:=zip,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| SRC:=$(JDK_TOPDIR)/src/share/native/java/util/zip,\ |
| EXCLUDES:=$(LIBZIP_EXCLUDES),\ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| $(ZLIB_CPPFLAGS) \ |
| -I$(JDK_TOPDIR)/src/share/native/java/io \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/io,\ |
| CFLAGS_posix:=$(BUILD_LIBZIP_MMAP) -UDEBUG,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libzip/mapfile-vers, \ |
| REORDER:=$(BUILD_LIBZIP_REORDER), \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN) \ |
| $(EXPORT_ZIP_FUNCS), \ |
| LDFLAGS_windows:=-export:ZIP_Open -export:ZIP_Close -export:ZIP_FindEntry \ |
| -export:ZIP_ReadEntry -export:ZIP_GetNextEntry jvm.lib \ |
| $(WIN_JAVA_LIB),\ |
| LDFLAGS_SUFFIX_linux:=-ljvm -ljava $(LIBZ),\ |
| LDFLAGS_SUFFIX_solaris:=-ljvm -ljava $(LIBZ) -lc,\ |
| LDFLAGS_SUFFIX_macosx:=$(LIBZ) -ljava -ljvm,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=zip.dll" \ |
| -D "JDK_INTERNAL_NAME=zip" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libzip,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBZIP) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBZIP) |
| |
| ########################################################################################## |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBUNPACK,\ |
| LIBRARY:=unpack, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\ |
| EXCLUDE_FILES:=main.cpp,\ |
| LANG:=C++,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CXXFLAGS_JDKLIB) \ |
| -DNO_ZLIB -DUNPACK_JNI -DFULL,\ |
| CFLAGS_release:=-DPRODUCT,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libunpack/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) $(LDFLAGS_CXX_JDK) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_windows:=-map:$(JDK_OUTPUTDIR)/objs/unpack.map -debug \ |
| jvm.lib $(WIN_JAVA_LIB),\ |
| LDFLAGS_SUFFIX_posix:=-ljvm $(LIBCXX) -ljava -lc,\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libunpack,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=unpack.dll" \ |
| -D "JDK_INTERNAL_NAME=unpack" \ |
| -D "JDK_FTYPE=0x2L",\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBUNPACK) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBUNPACK) |
| |
| ifeq ($(OPENJDK_TARGET_OS),windows) |
| $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)unpack.map: $(BUILD_LIBUNPACK) |
| $(ECHO) Copying $(@F) |
| $(CP) $(patsubst %$(SHARED_LIBRARY_SUFFIX),%.map,$<) $@ |
| |
| $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)unpack.pdb: $(BUILD_LIBUNPACK) |
| $(ECHO) Copying $(@F) |
| $(CP) $(patsubst %$(SHARED_LIBRARY_SUFFIX),%.pdb,$<) $@ |
| endif |
| |
| ########################################################################################## |
| |
| LIBATTACH_EXCLUDE_FILES:= |
| ifneq ($(OPENJDK_TARGET_OS),solaris) |
| LIBATTACH_EXCLUDE_FILES+=SolarisVirtualMachine.c |
| endif |
| ifneq ($(OPENJDK_TARGET_OS),linux) |
| LIBATTACH_EXCLUDE_FILES+=LinuxVirtualMachine.c |
| endif |
| ifneq ($(OPENJDK_TARGET_OS),macosx) |
| LIBATTACH_EXCLUDE_FILES+=BsdVirtualMachine.c |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBATTACH,\ |
| LIBRARY:=attach, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/tools/attach,\ |
| EXCLUDE_FILES:=$(LIBATTACH_EXCLUDE_FILES),\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB),\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libattach/mapfile-$(OPENJDK_TARGET_OS), \ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS) \ |
| -D "JDK_FNAME=attach.dll" \ |
| -D "JDK_INTERNAL_NAME=attach" \ |
| -D "JDK_FTYPE=0x2L",\ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_solaris:=-ldoor,\ |
| LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\ |
| LDFLAGS_SUFFIX_windows:=$(WIN_JAVA_LIB) advapi32.lib psapi.lib,\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libattach,\ |
| DEBUG_SYMBOLS:=true)) |
| |
| $(BUILD_LIBATTACH) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBATTACH) |
| |
| ########################################################################################## |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBDT_SOCKET,\ |
| LIBRARY:=dt_socket,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/transport/socket \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/transport/socket,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) -DUSE_MMAP \ |
| -I$(INCLUDEDIR) -I$(JDK_OUTPUTDIR)/include/$(OPENJDK_TARGET_OS) \ |
| -I$(JDK_TOPDIR)/src/share/transport/socket \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/transport/socket \ |
| -I$(JDK_TOPDIR)/src/share/back/export \ |
| -I$(JDK_TOPDIR)/src/share/back,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libdt_socket/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN), \ |
| LDFLAGS_SUFFIX_linux:=-lpthread,\ |
| LDFLAGS_SUFFIX_solaris:=-lnsl -lsocket -lc,\ |
| LDFLAGS_SUFFIX_windows:=$(LDFLAGS_JDKLIB_SUFFIX) -export:jdwpTransport_OnLoad ws2_32.lib,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=dt_socket.dll" \ |
| -D "JDK_INTERNAL_NAME=dt_socket" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libdt_socket,\ |
| DEBUG_SYMBOLS:=true)) |
| |
| $(BUILD_LIBDT_SOCKET) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBDT_SOCKET) |
| |
| ########################################################################################## |
| |
| ifeq ($(OPENJDK_TARGET_OS),windows) |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBDT_SHMEM,\ |
| LIBRARY:=dt_shmem,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/tools/jdi \ |
| $(JDK_TOPDIR)/src/share/transport/shmem \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/transport/shmem,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) -DUSE_MMAP\ |
| -I$(INCLUDEDIR) -I$(JDK_OUTPUTDIR)/include/$(OPENJDK_TARGET_OS) \ |
| -I$(JDK_TOPDIR)/src/share/transport/shmem \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/transport/shmem \ |
| -I$(JDK_TOPDIR)/src/share/back/export, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB),\ |
| LDFLAGS_windows:=-export:jdwpTransport_OnLoad,\ |
| LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=dt_shmem.dll" \ |
| -D "JDK_INTERNAL_NAME=dt_shmem" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libdt_shmem,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBDT_SHMEM) |
| |
| endif # OPENJDK_TARGET_OS |
| |
| ########################################################################################## |
| # JDWP_LOGGING causes log messages to be compiled into the library. |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJDWP,\ |
| LIBRARY:=jdwp, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/back $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/back,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) -DJDWP_LOGGING\ |
| -I$(JDK_TOPDIR)/src/share/transport/export \ |
| -I$(JDK_TOPDIR)/src/share/back/export \ |
| -I$(JDK_TOPDIR)/src/share/npt \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/npt \ |
| -I$(JDK_TOPDIR)/src/share/back \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/back \ |
| -I$(JDK_OUTPUTDIR)/gensrc_jdwp_headers,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjdwp/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX_linux:=$(LIBDL),\ |
| LDFLAGS_SUFFIX_solaris:=$(LIBDL) -lc,\ |
| LDFLAGS_SUFFIX_windows:=$(LDFLAGS_JDKLIB_SUFFIX),\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=jdwp.dll" \ |
| -D "JDK_INTERNAL_NAME=jdwp" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjdwp,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBJDWP) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJDWP) |
| |
| ########################################################################################## |
| |
| LIBJAAS_MAPFILE:= |
| ifneq ($(OPENJDK_TARGET_OS),solaris) |
| LIBJAAS_EXCLUDE_FILES:=Solaris.c |
| else |
| # only on solaris...wonder why |
| LIBJAAS_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjaas/mapfile-vers |
| endif |
| |
| LIBJAAS_NAME:=jaas_unix |
| ifeq ($(OPENJDK_TARGET_OS), windows) |
| LIBJAAS_NAME:=jaas_nt |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJAAS,\ |
| LIBRARY:=$(LIBJAAS_NAME),\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/com/sun/security/auth/module,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB),\ |
| MAPFILE:=$(LIBJAAS_MAPFILE),\ |
| LDFLAGS:=$(filter-out -ljava,$(LDFLAGS_JDKLIB)) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_windows:=netapi32.lib user32.lib mpr.lib advapi32.lib,\ |
| LDFLAGS_SUFFIX_windows:=$(LDFLAGS_JDKLIB_SUFFIX),\ |
| LDFLAGS_SUFFIX_solaris:=-lc,\ |
| EXCLUDE_FILES:=$(LIBJAAS_EXCLUDE_FILES),\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS) \ |
| -D "JDK_FNAME=$(LIBJAAS_NAME).dll" \ |
| -D "JDK_INTERNAL_NAME=$(LIBJAAS_NAME)" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjaas,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBJAAS) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJAAS) |
| |
| ########################################################################################## |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJSDT,\ |
| LIBRARY:=jsdt,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/native/sun/tracing/dtrace\ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/tracing/dtrace,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB)\ |
| -I$(JDK_TOPDIR)/src/share/native/sun/tracing/dtrace,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjsdt/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX_linux:=$(LIBDL),\ |
| LDFLAGS_SUFFIX_windows:=$(LDFLAGS_JDKLIB_SUFFIX) $(LIBDL),\ |
| LDFLAGS_SUFFIX_macosx:= $(LIBDL),\ |
| LDFLAGS_SUFFIX_solaris:=-lc,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=jsdt.dll" \ |
| -D "JDK_INTERNAL_NAME=jsdt" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjsdt, \ |
| DEBUG_SYMBOLS:=true)) |
| |
| $(BUILD_LIBJSDT) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJSDT) |
| |
| ########################################################################################## |
| |
| # TODO: Update awt lib path when awt is converted |
| $(eval $(call SetupNativeCompilation,BUILD_LIBLCMS,\ |
| LIBRARY:=lcms,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms,\ |
| LANG:=C,\ |
| OPTIMIZATION:=HIGHEST, \ |
| CFLAGS:=$(filter-out -xc99=%none,$(CFLAGS_JDKLIB)) \ |
| $(SHARED_LIBRARY_FLAGS) \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug,\ |
| CFLAGS_solaris:=-xc99=no_lib,\ |
| CFLAGS_windows:=-DCMS_IS_WINDOWS_,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/liblcms/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN), \ |
| LDFLAGS_solaris:=/usr/lib$(OPENJDK_TARGET_CPU_ISADIR)/libm.so.2,\ |
| LDFLAGS_windows:=$(WIN_AWT_LIB) $(WIN_JAVA_LIB),\ |
| LDFLAGS_SUFFIX_solaris:=-lawt -ljava -ljvm -lc,\ |
| LDFLAGS_SUFFIX_macosx:=$(LIBM) -lawt -ljava -ljvm,\ |
| LDFLAGS_SUFFIX_linux:=-lm -lawt -ljava -ljvm,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=lcms.dll" \ |
| -D "JDK_INTERNAL_NAME=lcms" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/liblcms,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBLCMS) |
| |
| $(BUILD_LIBLCMS) : $(BUILD_LIBAWT) |
| |
| ########################################################################################## |
| |
| ifdef OPENJDK |
| BUILD_LIBJPEG_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/mapfile-vers |
| else |
| BUILD_LIBJPEG_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/mapfile-vers-closed |
| BUILD_LIBJPEG_CLOSED_SRC:=$(JDK_TOPDIR)/src/closed/share/native/sun/awt/image/jpeg |
| BUILD_LIBJPEG_CLOSED_INCLUDES:=-I$(BUILD_LIBJPEG_CLOSED_SRC) |
| endif |
| |
| BUILD_LIBJPEG_REORDER:= |
| ifeq ($(OPENJDK_TARGET_OS), solaris) |
| ifneq ($(OPENJDK_TARGET_CPU), x86_64) |
| BUILD_LIBJPEG_REORDER:=$(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/reorder-$(OPENJDK_TARGET_CPU) |
| endif |
| endif |
| |
| # Suppress gcc warnings like "variable might be clobbered by 'longjmp' |
| # or 'vfork'": this warning indicates that some variable is placed to |
| # a register by optimized compiler and it's value might be lost on longjmp(). |
| # Recommended way to avoid such warning is to declare the variable as |
| # volatile to prevent the optimization. However, this approach does not |
| # work because we have to declare all variables as volatile in result. |
| #ifndef CROSS_COMPILE_ARCH |
| # CC_43_OR_NEWER:=\ |
| # $(shell $(EXPR) $(CC_MAJORVER) \> 4 \| \ |
| # \( $(CC_MAJORVER) = 4 \& $(CC_MINORVER) \>= 3 \) ) |
| # ifeq ($(CC_43_OR_NEWER),1) |
| # BUILD_LIBJPEG_CFLAGS_linux += -Wno-clobbered |
| # endif |
| #endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJPEG,\ |
| LIBRARY:=jpeg, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(BUILD_LIBJPEG_CLOSED_SRC) \ |
| $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg,\ |
| LANG:=C,\ |
| OPTIMIZATION:=HIGHEST, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| $(BUILD_LIBJPEG_CLOSED_INCLUDES) \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg,\ |
| MAPFILE:=$(BUILD_LIBJPEG_MAPFILE), \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_windows:=$(WIN_JAVA_LIB) jvm.lib,\ |
| LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=jpeg.dll" \ |
| -D "JDK_INTERNAL_NAME=jpeg" \ |
| -D "JDK_FTYPE=0x2L",\ |
| REORDER:=$(BUILD_LIBJPEG_REORDER),\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjpeg,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBJPEG) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJPEG) |
| |
| ########################################################################################## |
| |
| ifndef OPENJDK |
| FONT_HEADERS:=-I$(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k |
| BUILD_LIBFONTMANAGER_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libfontmanager/mapfile-vers |
| LIBFONTMANAGER_EXCLUDE_FILES += freetypeScaler.c |
| else |
| FONT_HEADERS:=$(FREETYPE2_CFLAGS) |
| BUILD_LIBFONTMANAGER_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libfontmanager/mapfile-vers.openjdk |
| BUILD_LIBFONTMANAGER_FONTLIB:=$(FREETYPE2_LIBS) |
| endif |
| |
| LIBFONTMANAGER_OPTIMIZATION:=HIGH |
| |
| ifeq ($(OPENJDK_TARGET_OS),windows) |
| LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \ |
| X11TextRenderer.c |
| LIBFONTMANAGER_OPTIMIZATION:=LOW |
| else |
| LIBFONTMANAGER_EXCLUDE_FILES += fontpath.c \ |
| lcdglyph.c |
| endif |
| |
| BUILD_LIBFONTMANAGER_CFLAGS_COMMON:=\ |
| $(X_CFLAGS) \ |
| -DLE_STANDALONE -DHEADLESS \ |
| $(FONT_HEADERS) \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/font \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/font/layout \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d |
| |
| # Turn off aliasing with GCC for ExtensionSubtables.cpp |
| ifeq ($(OPENJDK_TARGET_OS), linux) |
| BUILD_LIBFONTMANAGER_ExtensionSubtables.cpp_CXXFLAGS:=-fno-strict-aliasing |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER,\ |
| LIBRARY:=fontmanager, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/native/sun/font\ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/font,\ |
| EXCLUDE_FILES:=$(LIBFONTMANAGER_EXCLUDE_FILES) \ |
| AccelGlyphCache.c,\ |
| LANG:=C++,\ |
| CFLAGS:=$(CFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON),\ |
| CXXFLAGS:=$(CXXFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON),\ |
| OPTIMIZATION:=$(LIBFONTMANAGER_OPTIMIZATION), \ |
| CFLAGS_windows= -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/windows \ |
| -DCC_NOEX, \ |
| MAPFILE:=$(BUILD_LIBFONTMANAGER_MAPFILE), \ |
| LDFLAGS:=$(subst -Xlinker -z -Xlinker defs,,$(LDFLAGS_JDKLIB)) $(LDFLAGS_CXX_JDK) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| 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_macosx:=-lawt $(LIBM) $(LIBCXX) -undefined dynamic_lookup \ |
| -ljava -ljvm,\ |
| LDFLAGS_SUFFIX_windows:=$(WIN_JAVA_LIB) advapi32.lib user32.lib gdi32.lib \ |
| $(WIN_AWT_LIB),\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=fontmanager.dll" \ |
| -D "JDK_INTERNAL_NAME=fontmanager" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfontmanager,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBFONTMANAGER) : $(BUILD_LIBAWT) |
| |
| ifneq (,$(findstring $(OPENJDK_TARGET_OS),solaris macosx)) |
| $(BUILD_LIBFONTMANAGER) : $(BUILD_LIBAWT_XAWT) |
| endif |
| |
| BUILD_LIBRARIES += $(BUILD_LIBFONTMANAGER) |
| |
| ########################################################################################## |
| |
| ifndef OPENJDK |
| |
| # ifeq ($(OPENJDK_TARGET_OS), linux) |
| # ifeq ("$(CC_VER_MAJOR)", "3") |
| # OTHER_LDLIBS += -Wl,-Bstatic -lgcc_eh -Wl,-Bdynamic |
| # endif |
| # endif |
| # |
| # The resulting size of the t2k lib file is (at least on linux) dependant on the order of |
| # the input .o files. Because of this the new build will differ in size to the old build. |
| BUILD_LIBT2K_CFLAGS_COMMON:=-I$(JDK_TOPDIR)/src/share/native/sun/font \ |
| -I$(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k \ |
| -I$(JDK_TOPDIR)/src/closed/share/native/sun/font \ |
| -I$(JDK_TOPDIR)/src/share/share/native/sun/font \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/font \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBT2K,\ |
| LIBRARY:=t2k, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/closed/share/native/sun/font \ |
| $(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k \ |
| $(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k/ttHints,\ |
| EXCLUDE_FILES:=orion.c,\ |
| LANG:=C++,\ |
| OPTIMIZATION:=HIGH, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) $(BUILD_LIBT2K_CFLAGS_COMMON),\ |
| CXXFLAGS:=$(CXXFLAGS_JDKLIB) $(BUILD_LIBT2K_CFLAGS_COMMON),\ |
| CFLAGS_windows=-DCC_NOEX, \ |
| CXXFLAGS_windows=-DCC_NOEX, \ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libt2k/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) $(LDFLAGS_CXX_JDK) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_windows:=user32.lib $(JDK_OUTPUTDIR)/objs/libfontmanager/fontmanager.lib,\ |
| LDFLAGS_SUFFIX_posix:=$(LIBM) $(LIBCXX) -lfontmanager -ljava -ljvm -lc,\ |
| LDFLAGS_SUFFIX_solaris:=-lawt -lawt_xawt,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=t2k.dll" \ |
| -D "JDK_INTERNAL_NAME=t2k" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libt2k,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| # t2k is linked against fontmanager |
| $(BUILD_LIBT2K) : $(BUILD_LIBFONTMANAGER) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBT2K) |
| endif |
| |
| ########################################################################################## |
| |
| ifeq ($(OPENJDK_TARGET_OS), windows) |
| ifeq ($(OPENJDK_TARGET_CPU), x86) |
| KERNEL32_LIB:=kernel32.lib |
| endif |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJAWT,\ |
| LIBRARY:=jawt, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/windows,\ |
| INCLUDE_FILES:=jawt.cpp,\ |
| LANG:=C++,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CXXFLAGS_JDKLIB) \ |
| -EHsc -DUNICODE -D_UNICODE \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/windows \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/windows \ |
| -I$(DXSDK_INCLUDE_PATH), \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) $(KERNEL32_LIB) $(LDFLAGS_CXX_JDK) \ |
| advapi32.lib $(WIN_AWT_LIB),\ |
| LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=jawt.dll" \ |
| -D "JDK_INTERNAL_NAME=jawt" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjawt,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBJAWT) : $(BUILD_LIBAWT) |
| |
| $(JDK_OUTPUTDIR)/lib/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX): $(BUILD_LIBJAWT) |
| $(ECHO) Copying $(@F) |
| $(CP) $(JDK_OUTPUTDIR)/objs/libjawt/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX) $@ |
| |
| BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/lib/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX) |
| |
| else # OPENJDK_TARGET_OS not windows |
| |
| JAWT_LIBS:= |
| ifneq ($(OPENJDK_TARGET_OS), solaris) |
| JAWT_LIBS += -lawt |
| endif |
| |
| ifndef BUILD_HEADLESS_ONLY |
| JAWT_LIBS += -lawt_xawt |
| else |
| JAWT_LIBS += -lawt_headless |
| HEADLESS_CFLAG += -DHEADLESS |
| endif |
| |
| JAWT_FILES:=jawt.c |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| JAWT_FILES:=jawt.m |
| JAWT_LIBS:=-lawt_lwawt |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJAWT,\ |
| LIBRARY:=jawt, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt \ |
| $(JDK_TOPDIR)/src/macosx/native/sun/awt,\ |
| INCLUDE_FILES:=$(JAWT_FILES),\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB), \ |
| CFLAGS_linux:=$(HEADLESS_CFLAG),\ |
| CFLAGS_macosx:=-I$(JDK_TOPDIR)/src/solaris/native/sun/awt ,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjawt/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(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_solaris:=$(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX) -lXrender,\ |
| LDFLAGS_SUFFIX_macosx:=-Xlinker -rpath -Xlinker @loader_path $(JAWT_LIBS) \ |
| -framework Cocoa $(LDFLAGS_JDKLIB_SUFFIX),\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjawt,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| ifndef BUILD_HEADLESS_ONLY |
| $(BUILD_LIBJAWT) : $(BUILD_LIBAWT_XAWT) |
| else |
| $(BUILD_LIBJAWT) : $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_headless$(SHARED_LIBRARY_SUFFIX) |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS),macosx) |
| $(BUILD_LIBJAWT) : $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_lwawt$(SHARED_LIBRARY_SUFFIX) |
| endif |
| |
| endif # OPENJDK_TARGET_OS |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJAWT) |
| |
| ########################################################################################## |
| |
| LIBINSTRUMENT_SRC :=$(JDK_TOPDIR)/src/share/instrument \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/io \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/instrument |
| |
| LIBINSTRUMENT_FILES :=\ |
| EncodingSupport.c \ |
| EncodingSupport_md.c \ |
| FileSystemSupport_md.c \ |
| InstrumentationImplNativeMethods.c \ |
| InvocationAdapter.c \ |
| JarFacade.c \ |
| JPLISAgent.c \ |
| JPLISAssert.c \ |
| JavaExceptions.c \ |
| PathCharsValidator.c \ |
| Reentrancy.c \ |
| Utilities.c \ |
| canonicalize_md.c |
| |
| LIBINSTRUMENT_DIR :=$(JDK_OUTPUTDIR)/objs/libinstrument |
| LIBINSTRUMENT_CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/share/instrument \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/instrument \ |
| -I$(JDK_TOPDIR)/src/share/bin |
| |
| LIBINSTRUMENT_LDFLAGS:= |
| LIBINSTRUMENT_LDFLAGS_SUFFIX:= |
| |
| ifeq ($(OPENJDK_TARGET_OS), windows) |
| LIBINSTRUMENT_LDFLAGS += $(JDK_OUTPUTDIR)/objs/jli_static.lib $(WIN_JAVA_LIB) \ |
| -export:Agent_OnAttach advapi32.lib |
| # Statically link the C runtime so that there are not dependencies on modules |
| # not on the search patch when invoked from the Windows system directory |
| # (or elsewhere). |
| LIBINSTRUMENT_CFLAGS := $(filter-out -MD,$(LIBINSTRUMENT_CFLAGS)) |
| # equivalent of strcasecmp is stricmp on Windows |
| LIBINSTRUMENT_CFLAGS += -Dstrcasecmp=stricmp |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBINSTRUMENT,\ |
| LIBRARY:=instrument, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(LIBINSTRUMENT_SRC),\ |
| INCLUDE_FILES:=$(LIBINSTRUMENT_FILES),\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(LIBINSTRUMENT_CFLAGS),\ |
| CFLAGS_debug:=-DJPLIS_LOGGING,\ |
| CFLAGS_release:=-DNO_JPLIS_LOGGING,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libinstrument/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN) \ |
| $(LIBINSTRUMENT_LDFLAGS),\ |
| LDFLAGS_linux:=$(call SET_SHARED_LIBRARY_ORIGIN,/jli),\ |
| LDFLAGS_solaris:= $(call SET_SHARED_LIBRARY_ORIGIN,/jli),\ |
| LDFLAGS_macosx:=-Xlinker -all_load $(JDK_OUTPUTDIR)/objs/libjli_static.a \ |
| -framework Cocoa -framework Security -framework ApplicationServices,\ |
| LDFLAGS_SUFFIX:=$(LIBINSTRUMENT_LDFLAGS_SUFFIX),\ |
| 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),\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=instrument.dll" \ |
| -D "JDK_INTERNAL_NAME=instrument" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(LIBINSTRUMENT_DIR),\ |
| DEBUG_SYMBOLS:=true)) |
| |
| ifneq (,$(findstring $(OPENJDK_TARGET_OS), macosx windows)) |
| $(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) |
| endif |
| $(BUILD_LIBINSTRUMENT) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBINSTRUMENT) |
| |
| ########################################################################################## |
| |
| BUILD_LIBMANAGEMENT_SRC:=$(JDK_TOPDIR)/src/share/native/sun/management \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/management \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/com/sun/management |
| |
| BUILD_LIBMANAGEMENT_EXCLUDES:= |
| |
| BUILD_LIBMANAGEMENT_CFLAGS:=-I$(JDK_TOPDIR)/src/share/native/sun/management |
| |
| ifneq ($(OPENJDK_TARGET_OS), windows) |
| BUILD_LIBMANAGEMENT_EXCLUDES += OperatingSystem_md.c |
| else |
| BUILD_LIBMANAGEMENT_EXCLUDES += UnixOperatingSystem_md.c |
| endif |
| |
| ifneq ($(OPENJDK_TARGET_OS),solaris) |
| BUILD_LIBMANAGEMENT_EXCLUDES += SolarisOperatingSystem.c |
| endif |
| |
| ifneq ($(OPENJDK_TARGET_OS),linux) |
| BUILD_LIBMANAGEMENT_EXCLUDES += LinuxOperatingSystem.c |
| endif |
| |
| ifneq ($(OPENJDK_TARGET_OS),macosx) |
| BUILD_LIBMANAGEMENT_EXCLUDES += MacosxOperatingSystem.c |
| endif |
| |
| LIBMANAGEMENT_OPTIMIZATION:=HIGH |
| ifneq ($(findstring $(OPENJDK_TARGET_OS),solaris linux),) |
| ifeq ($(ENABLE_DEBUG_SYMBOLS), true) |
| LIBMANAGEMENT_OPTIMIZATION:=LOW |
| endif |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBMANAGEMENT,\ |
| LIBRARY:=management,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(BUILD_LIBMANAGEMENT_SRC),\ |
| EXCLUDE_FILES:=$(BUILD_LIBMANAGEMENT_EXCLUDES),\ |
| LANG:=C,\ |
| OPTIMIZATION:=$(LIBMANAGEMENT_OPTIMIZATION), \ |
| CFLAGS:=$(CFLAGS_JDKLIB) $(BUILD_LIBMANAGEMENT_CFLAGS),\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libmanagement/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_solaris:=-lkstat,\ |
| LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\ |
| LDFLAGS_SUFFIX_windows:=jvm.lib psapi.lib $(WIN_JAVA_LIB) advapi32.lib,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=management.dll" \ |
| -D "JDK_INTERNAL_NAME=management" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libmanagement,\ |
| DEBUG_SYMBOLS:=true)) |
| |
| $(BUILD_LIBMANAGEMENT) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBMANAGEMENT) |
| |
| ########################################################################################## |
| |
| BUILD_LIBHPROF_SRC:=$(JDK_TOPDIR)/src/share/demo/jvmti/hprof $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/demo/jvmti/hprof |
| BUILD_LIBHPROF_CFLAGS:=-I$(JDK_TOPDIR)/src/share/demo/jvmti/hprof \ |
| -I$(JDK_TOPDIR)/src/share/npt \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/npt \ |
| -I$(JDK_TOPDIR)/src/share/demo/jvmti/java_crw_demo |
| |
| BUILD_LIBHPROF_LDFLAGS:= |
| |
| LIBHPROF_OPTIMIZATION:=HIGHEST |
| ifneq ($(findstring $(OPENJDK_TARGET_OS),solaris linux),) |
| ifeq ($(ENABLE_DEBUG_SYMBOLS), true) |
| LIBHPROF_OPTIMIZATION:=LOW |
| endif |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBHPROF,\ |
| LIBRARY:=hprof, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(BUILD_LIBHPROF_SRC),\ |
| LANG:=C,\ |
| OPTIMIZATION:=$(LIBHPROF_OPTIMIZATION), \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| $(BUILD_LIBHPROF_CFLAGS),\ |
| CFLAGS_debug:=-DHPROF_LOGGING,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libhprof/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_windows:=wsock32.lib winmm.lib advapi32.lib,\ |
| LDFLAGS_SUFFIX_linux:=$(LIBDL),\ |
| LDFLAGS_SUFFIX_macosx:=$(LIBDL),\ |
| LDFLAGS_SUFFIX_solaris:=-lsocket -lnsl $(LIBDL) -lc,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=hprof.dll" \ |
| -D "JDK_INTERNAL_NAME=hprof" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libhprof_jvmti,\ |
| DEBUG_SYMBOLS:=true)) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBHPROF) |
| |
| ########################################################################################## |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJAVA_CRW_DEMO,\ |
| LIBRARY:=java_crw_demo, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/demo/jvmti/java_crw_demo,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/share/demo/jvmti/java_crw_demo,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjava_crw_demo/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX_solaris:=-lc,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=java_crw_demo.dll" \ |
| -D "JDK_INTERNAL_NAME=java_crw_demo" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjava_crw_demo,\ |
| DEBUG_SYMBOLS:=true)) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJAVA_CRW_DEMO) |
| |
| ########################################################################################## |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBNPT,\ |
| LIBRARY:=npt, \ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/npt $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/npt,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/share/npt \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/npt,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libnpt/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_macosx:=-liconv,\ |
| LDFLAGS_SUFFIX_windows:=-export:nptInitialize -export:nptTerminate,\ |
| LDFLAGS_SUFFIX_solaris:=-lc, \ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=npt.dll" \ |
| -D "JDK_INTERNAL_NAME=npt" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libnpt,\ |
| DEBUG_SYMBOLS:=true)) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBNPT) |
| |
| ########################################################################################## |
| |
| LIBNET_SRC_DIRS:=$(JDK_TOPDIR)/src/share/native/java/net \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/net \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/net/dns \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/net/spi |
| |
| ifeq ($(OPENJDK_TARGET_OS),windows) |
| LIBNET_SRC_DIRS+=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/net/www/protocol/http/ntlm |
| else |
| LIBNET_SRC_DIRS+=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/net/sdp |
| endif |
| |
| LIBNET_CFLAGS:=$(foreach dir,$(LIBNET_SRC_DIRS),-I$(dir)) |
| |
| LIBNET_EXCLUDE_FILES:= |
| ifneq ($(OPENJDK_TARGET_OS),linux) |
| LIBNET_EXCLUDE_FILES += linux_close.c |
| endif |
| |
| ifneq ($(OPENJDK_TARGET_OS),macosx) |
| LIBNET_EXCLUDE_FILES += bsd_close.c |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS),windows) |
| LIBNET_EXCLUDE_FILES += PlainSocketImpl.c PlainDatagramSocketImpl.c SdpSupport.c |
| else |
| LIBNET_EXCLUDE_FILES += TwoStacksPlainSocketImpl.c DualStackPlainSocketImpl.c \ |
| TwoStacksPlainDatagramSocketImpl.c DualStackPlainDatagramSocketImpl.c \ |
| NTLMAuthSequence.c NetworkInterface_winXP.c |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBNET,\ |
| LIBRARY:=net,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(LIBNET_SRC_DIRS),\ |
| EXCLUDE_FILES:=$(LIBNET_EXCLUDE_FILES), \ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| $(LIBNET_CFLAGS),\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libnet/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX_macosx:=-ljvm -ljava,\ |
| LDFLAGS_SUFFIX_solaris:=-ljvm -ljava -lnsl -lsocket $(LIBDL) -lc ,\ |
| LDFLAGS_SUFFIX_linux:=$(LIBDL) -ljvm -lpthread -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, \ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=net.dll" \ |
| -D "JDK_INTERNAL_NAME=net" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libnet,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBNET) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBNET) |
| |
| $(JDK_OUTPUTDIR)/lib/net.properties: $(JDK_TOPDIR)/src/share/lib/net.properties |
| $(ECHO) $(LOG_INFO) Copying $(@F) |
| $(call install-file) |
| |
| COPY_FILES += $(JDK_OUTPUTDIR)/lib/net.properties |
| |
| ifeq ($(OPENJDK_TARGET_OS), solaris) |
| $(JDK_OUTPUTDIR)/lib/sdp/sdp.conf.template : $(JDK_TOPDIR)/src/${OPENJDK_TARGET_OS_API_DIR}/lib/sdp/sdp.conf.template |
| $(ECHO) $(LOG_INFO) Copying $(@F) |
| $(call install-file) |
| |
| COPY_FILES += $(JDK_OUTPUTDIR)/lib/sdp/sdp.conf.template |
| endif |
| |
| ########################################################################################## |
| |
| BUILD_LIBNIO_SRC:=\ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/nio \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/nio/ch \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/nio/fs |
| |
| BUILD_LIBNIO_CFLAGS:=\ |
| -I$(JDK_TOPDIR)/src/share/native/sun/nio/ch \ |
| -I$(JDK_TOPDIR)/src/share/native/java/io \ |
| -I$(JDK_TOPDIR)/src/share/native/java/net \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/net |
| |
| BUILD_LIBNIO_FILES:=\ |
| DatagramChannelImpl.c \ |
| DatagramDispatcher.c \ |
| FileChannelImpl.c \ |
| FileDispatcherImpl.c \ |
| FileKey.c \ |
| IOUtil.c \ |
| MappedByteBuffer.c \ |
| Net.c \ |
| ServerSocketChannelImpl.c \ |
| SocketChannelImpl.c \ |
| SocketDispatcher.c |
| |
| ifeq ($(OPENJDK_TARGET_OS), windows) |
| BUILD_LIBNIO_FILES += \ |
| Iocp.c \ |
| RegistryFileTypeDetector.c \ |
| WindowsAsynchronousFileChannelImpl.c \ |
| WindowsAsynchronousServerSocketChannelImpl.c \ |
| WindowsAsynchronousSocketChannelImpl.c \ |
| WindowsNativeDispatcher.c \ |
| WindowsSelectorImpl.c |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS), linux) |
| BUILD_LIBNIO_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libnio/mapfile-$(OPENJDK_TARGET_OS) |
| BUILD_LIBNIO_FILES += \ |
| EPoll.c \ |
| EPollArrayWrapper.c \ |
| EPollPort.c \ |
| InheritedChannel.c \ |
| NativeThread.c \ |
| PollArrayWrapper.c \ |
| UnixAsynchronousServerSocketChannelImpl.c \ |
| UnixAsynchronousSocketChannelImpl.c \ |
| GnomeFileTypeDetector.c \ |
| MagicFileTypeDetector.c \ |
| LinuxNativeDispatcher.c \ |
| LinuxWatchService.c \ |
| UnixCopyFile.c \ |
| UnixNativeDispatcher.c |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| BUILD_LIBNIO_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libnio/mapfile-$(OPENJDK_TARGET_OS) |
| BUILD_LIBNIO_SRC += $(JDK_TOPDIR)/src/macosx/native/sun/nio/ch |
| BUILD_LIBNIO_FILES += \ |
| InheritedChannel.c \ |
| NativeThread.c \ |
| PollArrayWrapper.c \ |
| UnixAsynchronousServerSocketChannelImpl.c \ |
| UnixAsynchronousSocketChannelImpl.c \ |
| BsdNativeDispatcher.c \ |
| MacOSXNativeDispatcher.c \ |
| UnixCopyFile.c \ |
| UnixNativeDispatcher.c \ |
| KQueue.c \ |
| KQueuePort.c \ |
| KQueueArrayWrapper.c |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS), solaris) |
| BUILD_LIBNIO_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libnio/mapfile-$(OPENJDK_TARGET_OS) |
| BUILD_LIBNIO_FILES += \ |
| DevPollArrayWrapper.c \ |
| InheritedChannel.c \ |
| NativeThread.c \ |
| PollArrayWrapper.c \ |
| SolarisEventPort.c \ |
| UnixAsynchronousServerSocketChannelImpl.c \ |
| UnixAsynchronousSocketChannelImpl.c \ |
| GnomeFileTypeDetector.c \ |
| SolarisNativeDispatcher.c \ |
| SolarisWatchService.c \ |
| UnixCopyFile.c \ |
| UnixNativeDispatcher.c |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBNIO,\ |
| LIBRARY:=nio,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(BUILD_LIBNIO_SRC),\ |
| INCLUDE_FILES:=$(BUILD_LIBNIO_FILES), \ |
| LANG:=C,\ |
| OPTIMIZATION:=HIGH, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| $(BUILD_LIBNIO_CFLAGS),\ |
| MAPFILE:=$(BUILD_LIBNIO_MAPFILE), \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) $(BUILD_LIBNIO_LDFLAGS) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX_linux:=-ljava -lnet -lpthread $(LIBDL),\ |
| LDFLAGS_SUFFIX_solaris:=-ljvm -lsocket -lposix4 $(LIBDL) \ |
| -lsendfile -ljava -lnet -lc,\ |
| LDFLAGS_SUFFIX_windows:=jvm.lib ws2_32.lib $(WIN_JAVA_LIB) \ |
| $(JDK_OUTPUTDIR)/objs/libnet/net.lib \ |
| advapi32.lib,\ |
| LDFLAGS_SUFFIX_macosx:=-ljava -lnet -pthread -framework CoreFoundation,\ |
| LDFLAGS_SUFFIX:=,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=nio.dll" \ |
| -D "JDK_INTERNAL_NAME=nio" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libnio,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBNIO) |
| |
| $(BUILD_LIBNIO) : $(BUILD_LIBNET) |
| |
| ########################################################################################## |
| |
| ifeq ($(OPENJDK_TARGET_OS_API),posix) |
| |
| ifneq ($(OPENJDK_TARGET_OS),macosx) |
| |
| SCTP_WERROR := -Werror |
| ifeq ($(OPENJDK_TARGET_CPU_ARCH), ppc) |
| SCTP_WERROR := |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBSCTP,\ |
| LIBRARY:=sctp,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/nio/ch/sctp,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB)\ |
| -I$(JDK_TOPDIR)/src/share/native/sun/nio/ch \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/nio/ch/sctp \ |
| -I$(JDK_TOPDIR)/src/share/native/java/net \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/nio/ch \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/net,\ |
| CFLAGS_linux:=$(SCTP_WERROR),\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libsctp/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX_linux:=-lpthread $(LIBDL) -ljava -ljvm,\ |
| LDFLAGS_SUFFIX_posix:=-lnio -lnet,\ |
| LDFLAGS_SUFFIX_solaris:=-lsocket -ljava -ljvm -lc,\ |
| LDFLAGS_SUFFIX_macosx:=-ljava -ljvm,\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libsctp,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBSCTP) |
| |
| $(BUILD_LIBSCTP) : $(BUILD_LIBNIO) |
| endif |
| endif |
| |
| ########################################################################################## |
| |
| BUILD_LIBJLI_SRC_DIRS:=$(JDK_TOPDIR)/src/share/bin $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/bin |
| LIBJLI_CFLAGS:=$(CFLAGS_JDKLIB) $(foreach dir,$(BUILD_LIBJLI_SRC_DIRS),-I$(dir)) |
| |
| BUILD_LIBJLI_FILES:=\ |
| java.c \ |
| splashscreen_stubs.c \ |
| parse_manifest.c \ |
| version_comp.c \ |
| wildcard.c \ |
| jli_util.c |
| |
| ifeq ($(JVM_VARIANT_ZERO), true) |
| ERGO_FAMILY:=zero |
| else |
| ifeq ($(OPENJDK_TARGET_CPU_ARCH), x86) |
| ERGO_FAMILY:=i586 |
| else |
| ERGO_FAMILY:=$(OPENJDK_TARGET_CPU_ARCH) |
| endif |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| LIBJLI_CFLAGS += -I$(JDK_TOPDIR)/src/macosx/bin |
| BUILD_LIBJLI_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/bin |
| BUILD_LIBJLI_FILES += java_md_common.c java_md_macosx.c |
| |
| BUILD_LIBJLI_java_md_macosx.c_CFLAGS:=-x objective-c |
| BUILD_LIBJLI_STATIC_java_md_macosx.c_CFLAGS:=-x objective-c |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS), windows) |
| BUILD_LIBJLI_FILES += java_md.c \ |
| cmdtoargs.c |
| # Staticically link with c runtime on windows. |
| LIBJLI_CFLAGS:=$(filter-out -MD,$(LIBJLI_CFLAGS)) |
| else ifneq ($(OPENJDK_TARGET_OS), macosx) |
| |
| BUILD_LIBJLI_FILES += java_md_common.c |
| BUILD_LIBJLI_FILES += java_md_solinux.c ergo.c |
| |
| ERGO_ARCH_FILE = ergo_$(ERGO_FAMILY).c |
| |
| # if the architecture specific ergo file exists then |
| # use it, else use the generic definitions from ergo.c |
| ifneq ($(wildcard $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/bin/$(ERGO_ARCH_FILE)),) |
| BUILD_LIBJLI_FILES += $(ERGO_ARCH_FILE) |
| else # !ERGO_ARCH_FILE |
| LIBJLI_CFLAGS += -DUSE_GENERIC_ERGO |
| endif # ERGO_ARCH_FILE |
| endif #WINDOWS |
| |
| # Append defines depending on target platform |
| LIBJLI_CFLAGS += $(OPENJDK_TARGET_CPU_JLI_CFLAGS) |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| LIBJLI_CFLAGS += -DPACKAGE_PATH=\"$(PACKAGE_PATH)\" |
| endif |
| |
| ifneq ($(USE_EXTERNAL_LIBZ),true) |
| BUILD_LIBJLI_SRC_DIRS += $(JDK_TOPDIR)/src/share/native/java/util/zip/zlib-1.2.5 |
| LIBJLI_CFLAGS += $(ZLIB_CPPFLAGS) |
| BUILD_LIBJLI_FILES += \ |
| inflate.c \ |
| inftrees.c \ |
| inffast.c \ |
| zadler32.c \ |
| zcrc32.c \ |
| zutil.c |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS), windows) |
| LIBJLI_OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE) |
| else |
| LIBJLI_OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE)/jli |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJLI,\ |
| LIBRARY:=jli,\ |
| OUTPUT_DIR:=$(LIBJLI_OUTPUT_DIR),\ |
| SRC:=$(BUILD_LIBJLI_SRC_DIRS),\ |
| INCLUDE_FILES:=$(BUILD_LIBJLI_FILES),\ |
| LANG:=C,\ |
| OPTIMIZATION:=HIGH, \ |
| CFLAGS:=$(LIBJLI_CFLAGS),\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjli/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_linux:=$(call SET_SHARED_LIBRARY_ORIGIN,/..),\ |
| LDFLAGS_solaris:=$(call SET_SHARED_LIBRARY_ORIGIN,/..),\ |
| LDFLAGS_macosx:=-framework Cocoa -framework Security -framework ApplicationServices,\ |
| LDFLAGS_SUFFIX_solaris:=$(LIBZ) $(LIBDL) -lc,\ |
| LDFLAGS_SUFFIX_linux:=$(LIBZ) $(LIBDL) -lc -lpthread,\ |
| LDFLAGS_SUFFIX_macosx:=$(LIBZ),\ |
| LDFLAGS_SUFFIX_windows:=\ |
| -export:JLI_Launch \ |
| -export:JLI_ManifestIterate \ |
| -export:JLI_SetTraceLauncher \ |
| -export:JLI_ReportErrorMessage \ |
| -export:JLI_ReportErrorMessageSys \ |
| -export:JLI_ReportMessage \ |
| -export:JLI_ReportExceptionDescription \ |
| -export:JLI_MemAlloc \ |
| -export:JLI_CmdToArgs \ |
| -export:JLI_GetStdArgc \ |
| -export:JLI_GetStdArgs \ |
| advapi32.lib \ |
| comctl32.lib \ |
| user32.lib,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS) \ |
| -D "JDK_FNAME=jli.dll" \ |
| -D "JDK_INTERNAL_NAME=jli" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjli,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJLI) |
| |
| # On windows, the static library has the same suffix as the import library created by |
| # with the shared library, so the static library is given a different name. No harm |
| # in doing it for all platform to reduce complexity. |
| ifeq ($(OPENJDK_TARGET_OS), windows) |
| $(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,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJLI_STATIC) |
| |
| else ifeq ($(OPENJDK_TARGET_OS),macosx) |
| # |
| # On macosx they do partial (incremental) linking of libjli_static.a |
| # code it here...rather than add support to NativeCompilation |
| # as this is first time I see it |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJLI_STATIC,\ |
| LIBRARY:=jli_static, \ |
| OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs,\ |
| SRC:=$(BUILD_LIBJLI_SRC_DIRS),\ |
| INCLUDE_FILES:=$(BUILD_LIBJLI_FILES),\ |
| LANG:=C,\ |
| OPTIMIZATION:=HIGH, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) $(LIBJLI_CFLAGS),\ |
| LDFLAGS:=-nostdlib -r,\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjli_static,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(JDK_OUTPUTDIR)/objs/libjli_static.a : $(BUILD_LIBJLI_STATIC) |
| $(call install-file) |
| |
| BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/objs/libjli_static.a |
| endif |
| |
| ########################################################################################## |
| |
| ifndef OPENJDK |
| ifeq ($(ENABLE_JFR), true) |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJFR,\ |
| LIBRARY:=jfr,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/closed/share/native/oracle/jfr,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/closed/share/javavm/export, \ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjfr/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX_solaris:=-lc,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=jfr.dll" \ |
| -D "JDK_INTERNAL_NAME=jfr" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjfr,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJFR) |
| |
| endif |
| endif |
| |
| ########################################################################################## |
| |
| ifndef OPENJDK |
| |
| BUILD_LIBKCMS_EXCLUDE_FILES:= |
| ifeq ($(OPENJDK_TARGET_OS),windows) |
| BUILD_LIBKCMS_EXCLUDE_FILES += ukcpmgr.c unixmem.c |
| else |
| BUILD_LIBKCMS_EXCLUDE_FILES += cmmdll.c registry.c spxffile.c sysinfo.c winmem.c wkcpmgr.c |
| endif |
| |
| BUILD_LIBKCMS_FLAGS:=$(CFLAGS_JDKLIB) |
| |
| ifeq ($(OPENJDK_TARGET_OS),solaris) |
| # This particular library uses a feature called PIC_CODE_SMALL (on solaris) |
| # implement it like this...since it's only used here |
| BUILD_LIBKCMS_FLAGS:=$(patsubst -KPIC,-Kpic,$(BUILD_LIBKCMS_FLAGS)) |
| else ifeq ($(OPENJDK_TARGET_CPU_ARCH), ppc) |
| BUILD_LIBKCMS_FLAGS:=$(patsubst -fPIC,-fpic,$(BUILD_LIBKCMS_FLAGS)) |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBKCMS,\ |
| LIBRARY:=kcms,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/closed/share/native/sun/java2d/cmm/kcms,\ |
| LANG:=C,\ |
| EXCLUDE_FILES:=$(BUILD_LIBKCMS_EXCLUDE_FILES),\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(BUILD_LIBKCMS_FLAGS) \ |
| -DJAVACMM -DFUT_CALC_EX -DNO_FUT_GCONST,\ |
| CFLAGS_linux:=-Wno-missing-field-initializers,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libkcms/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX_linux:=-lc -lpthread,\ |
| LDFLAGS_SUFFIX_solaris:=-lc,\ |
| LDFLAGS_SUFFIX_windows:=$(WIN_JAVA_LIB) advapi32.lib user32.lib version.lib, \ |
| LDFLAGS_SUFFIX_posix:=-lm -ljava -ljvm,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/closed/share/native/sun/java2d/cmm/kcms/cmm.rc,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/closed/share/native/sun/java2d/cmm/kcms/cmm.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=kcms.dll" \ |
| -D "JDK_INTERNAL_NAME=kcms" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libkcms,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBKCMS) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBKCMS) |
| |
| endif |
| |
| ########################################################################################## |
| |
| ifndef OPENJDK |
| ifeq ($(OPENJDK_TARGET_OS), solaris) |
| ifneq ($(OPENJDK_TARGET_CPU), x86_64) |
| |
| ifeq ($(shell if test "$(OS_VERSION_MAJOR)" -eq 5 -a "$(OS_VERSION_MINOR)" -le 10; then $(ECHO) ok; fi), ok) |
| |
| SUNWJDGA_MAPFILE:= |
| ifeq ($(OPENJDK_TARGET_CPU_ARCH), sparc) |
| SUNWJDGA_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjdga/mapfile-vers |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBSUNWJDGA, \ |
| LIBRARY:=sunwjdga,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/solaris/native/sun/jdga, \ |
| LANG:=C, \ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/share/javavm/export \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/javavm/export \ |
| -I$(OPENWIN_HOME)/include, \ |
| MAPFILE:=$(SUNWJDGA_MAPFILE), \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN), \ |
| LDFLAGS_SUFFIX:=-L$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) -R$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) -ldga -lX11 $(LIBDL) -lc, \ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libsunwjdga,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBSUNWJDGA) |
| |
| endif |
| endif |
| endif |
| endif |
| |
| ########################################################################################## |
| |
| ifeq ($(BUILD_HEADLESS), true) |
| ifneq ($(OPENJDK_TARGET_OS), windows) |
| |
| LIBAWT_HEADLESS_DIRS:=$(JDK_TOPDIR)/src/share/native/sun/font \ |
| $(JDK_TOPDIR)/src/share/native/sun/java2d/opengl \ |
| $(JDK_TOPDIR)/src/solaris/native/sun/font \ |
| $(JDK_TOPDIR)/src/solaris/native/sun/awt \ |
| $(JDK_TOPDIR)/src/solaris/native/sun/java2d/opengl \ |
| $(JDK_TOPDIR)/src/solaris/native/sun/java2d/x11 |
| |
| ifeq ($(OPENJDK_TARGET_OS),macosx) |
| LIBAWT_HEADLESS_DIRS+=$(JDK_TOPDIR)/src/macosx/native/sun/font |
| endif |
| |
| LIBAWT_HEADLESS_CFLAGS:=-DHEADLESS=true \ |
| -DX11_PATH=\"$(X11_PATH)\" -DPACKAGE_PATH=\"$(PACKAGE_PATH)\" \ |
| $(CUPS_CFLAGS) \ |
| $(X_CFLAGS) \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/image \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/jdga \ |
| $(foreach dir,$(LIBAWT_HEADLESS_DIRS),-I$(dir)) |
| |
| ifeq ($(OPENJDK_TARGET_OS),macosx) |
| LIBAWT_HEADLESS_CFLAGS+=\ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks |
| endif |
| |
| LIBAWT_HEADLESS_FILES:=\ |
| awt_Font.c \ |
| HeadlessToolkit.c \ |
| fontpath.c \ |
| VDrawingArea.c \ |
| X11Color.c \ |
| X11Renderer.c \ |
| X11PMBlitLoops.c \ |
| X11SurfaceData.c \ |
| X11FontScaler_md.c \ |
| X11TextRenderer_md.c \ |
| OGLBlitLoops.c \ |
| OGLBufImgOps.c \ |
| OGLContext.c \ |
| OGLFuncs.c \ |
| OGLMaskBlit.c \ |
| OGLMaskFill.c \ |
| OGLPaints.c \ |
| OGLRenderQueue.c \ |
| OGLRenderer.c \ |
| OGLSurfaceData.c \ |
| OGLTextRenderer.c \ |
| OGLVertexCache.c \ |
| GLXGraphicsConfig.c \ |
| GLXSurfaceData.c \ |
| AccelGlyphCache.c \ |
| CUPSfuncs.c |
| |
| ifeq ($(OPENJDK_TARGET_OS),macosx) |
| LIBAWT_HEADLESS_FILES+=\ |
| AWTFont.m \ |
| AWTStrike.m \ |
| CCharToGlyphMapper.m \ |
| CGGlyphImages.m \ |
| CGGlyphOutlines.m \ |
| CoreTextSupport.m |
| endif |
| |
| LIBAWT_HEADLESS_REORDER:= |
| ifeq ($(OPENJDK_TARGET_OS), solaris) |
| ifneq ($(OPENJDK_TARGET_CPU), x86_64) |
| LIBAWT_HEADLESS_REORDER:=$(JDK_TOPDIR)/makefiles/mapfiles/libawt_headless/reorder-$(OPENJDK_TARGET_CPU) |
| endif |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_HEADLESS,\ |
| LIBRARY:=awt_headless,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(LIBAWT_HEADLESS_DIRS),\ |
| INCLUDE_FILES:=$(LIBAWT_HEADLESS_FILES),\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) $(LIBAWT_HEADLESS_CFLAGS),\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libawt_headless/mapfile-vers,\ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_linux:=$(call SET_SHARED_LIBRARY_ORIGIN,/..),\ |
| LDFLAGS_solaris:=$(call SET_SHARED_LIBRARY_ORIGIN,/..) \ |
| -R/usr/dt/lib$(OPENJDK_TARGET_CPU_ISADIR) \ |
| -R$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR),\ |
| LDFLAGS_macosx:=$(call SET_SHARED_LIBRARY_ORIGIN).,\ |
| REORDER:=$(LIBAWT_HEADLESS_REORDER), \ |
| LDFLAGS_SUFFIX_linux:=-ljvm -lawt -lm $(LIBDL) -ljava,\ |
| LDFLAGS_SUFFIX_solaris:=$(LIBDL) -ljvm -lawt -lm -ljava $(LIBCXX) -lc,\ |
| LDFLAGS_SUFFIX_macosx:=-ljvm $(LIBCXX) -lawt $(LIBDL) -ljava \ |
| -framework Accelerate \ |
| -framework ApplicationServices \ |
| -framework Cocoa \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -framework JavaNativeFoundation \ |
| -framework JavaRuntimeSupport,\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libawt_headless,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBAWT_HEADLESS) : $(BUILD_LIBAWT) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBAWT_HEADLESS) |
| |
| endif |
| endif |
| |
| ########################################################################################## |
| |
| ifndef BUILD_HEADLESS_ONLY |
| LIBSPLASHSCREEN_DIRS:=\ |
| $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg \ |
| $(JDK_TOPDIR)/src/share/native/sun/awt/libpng \ |
| $(JDK_TOPDIR)/src/share/native/sun/awt/splashscreen |
| |
| ifeq ($(USE_EXTERNAL_LIBGIF),true) |
| GIFLIB_LDFLAGS := -lgif |
| else |
| LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/share/native/sun/awt/giflib |
| GIFLIB_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/sun/awt/giflib |
| endif |
| |
| ifneq ($(OPENJDK_TARGET_OS), macosx) |
| LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt/splashscreen |
| else |
| LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/macosx/native/sun/awt/splashscreen |
| endif |
| |
| LIBSPLASHSCREEN_CFLAGS:=-DSPLASHSCREEN -DPNG_NO_MMX_CODE \ |
| $(foreach dir,$(LIBSPLASHSCREEN_DIRS),-I$(dir)) |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| LIBSPLASHSCREEN_CFLAGS:=-I$(JDK_TOPDIR)/src/macosx/native/sun/awt/splashscreen \ |
| $(LIBSPLASHSCREEN_CFLAGS) \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks |
| LIBSPLASHSCREEN_CFLAGS += -DWITH_MACOSX |
| LIBSPLASHSCREEN_CFLAGS += -I$(JDK_TOPDIR)/src/macosx/native/sun/osxapp |
| |
| LIBSPLASHSCREEN_java_awt_SplashScreen.c_CFLAGS:=-x objective-c -O0 |
| LIBSPLASHSCREEN_splashscreen_gfx_impl.c_CFLAGS:=-x objective-c -O0 |
| LIBSPLASHSCREEN_splashscreen_gif.c_CFLAGS:=-x objective-c -O0 |
| LIBSPLASHSCREEN_splashscreen_impl.c_CFLAGS:=-x objective-c -O0 |
| LIBSPLASHSCREEN_splashscreen_jpeg.c_CFLAGS:=-x objective-c -O0 |
| LIBSPLASHSCREEN_splashscreen_png.c_CFLAGS:=-x objective-c -O0 |
| LIBSPLASHSCREEN_splashscreen_sys.m_CFLAGS:=-O0 |
| |
| else ifneq ($(OPENJDK_TARGET_OS), windows) |
| LIBSPLASHSCREEN_CFLAGS += -DWITH_X11 -I$(OPENWIN_HOME)/include -I$(OPENWIN_HOME)/include/X11/extensions |
| else |
| LIBSPLASHSCREEN_CFLAGS += -DWITH_WIN32 |
| endif |
| |
| LIBSPLASHSCREEN_LDFLAGS_SUFFIX:= |
| |
| ifneq ($(USE_EXTERNAL_LIBZ),true) |
| LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/share/native/java/util/zip/zlib-1.2.5 |
| LIBSPLASHSCREEN_CFLAGS += $(ZLIB_CPPFLAGS) |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(LIBM) -lpthread -liconv -losxapp \ |
| -framework ApplicationServices \ |
| -framework Foundation \ |
| -framework Cocoa \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -framework JavaNativeFoundation |
| else ifneq ($(OPENJDK_TARGET_OS), windows) |
| LIBSPLASHSCREEN_LDFLAGS_SUFFIX += -L$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) -lX11 -lXext $(LIBM) -lpthread |
| else # OPENJDK_TARGET_OS |
| LIBSPLASHSCREEN_LDFLAGS_SUFFIX += kernel32.lib user32.lib gdi32.lib delayimp.lib -DELAYLOAD:user32.dll |
| endif # OPENJDK_TARGET_OS |
| |
| $(eval $(call SetupNativeCompilation,LIBSPLASHSCREEN,\ |
| LIBRARY:=splashscreen,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(LIBSPLASHSCREEN_DIRS),\ |
| EXCLUDE_FILES:=imageioJPEG.c jpegdecoder.c pngtest.c,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(LIBSPLASHSCREEN_CFLAGS) $(CFLAGS_JDKLIB) $(GIFLIB_CFLAGS),\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libsplashscreen/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX:=$(LIBSPLASHSCREEN_LDFLAGS_SUFFIX) $(LIBZ) $(GIFLIB_LDFLAGS),\ |
| LDFLAGS_SUFFIX_solaris:=-lc,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=splashscreen.dll" \ |
| -D "JDK_INTERNAL_NAME=splashscreen" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libsplashscreen,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(LIBSPLASHSCREEN) |
| |
| ifeq ($(OPENJDK_TARGET_OS),macosx) |
| $(LIBSPLASHSCREEN) : $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)osxapp$(SHARED_LIBRARY_SUFFIX) |
| endif |
| |
| endif |
| |
| ########################################################################################## |
| |
| ifndef OPENJDK |
| |
| LIBDCPR_SRC_DIRS:=\ |
| $(JDK_TOPDIR)/src/closed/share/native/sun/dc/doe \ |
| $(JDK_TOPDIR)/src/closed/share/native/sun/dc/path \ |
| $(JDK_TOPDIR)/src/closed/share/native/sun/dc/pr \ |
| $(JDK_TOPDIR)/src/closed/share/native/sun/dc/util |
| |
| LIBDCPR_CFLAGS:=$(foreach dir,$(LIBDCPR_SRC_DIRS),-I$(dir)) \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBDCPR,\ |
| LIBRARY:=dcpr,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(LIBDCPR_SRC_DIRS),\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| $(LIBDCPR_CFLAGS), \ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libdcpr/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX:=$(LIBM) $(LDFLAGS_JDKLIB_SUFFIX),\ |
| LDFLAGS_SUFFIX_posix:=-lm,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=dcpr.dll" \ |
| -D "JDK_INTERNAL_NAME=dcpr" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libdcpr,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBDCPR) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBDCPR) |
| |
| endif |
| |
| ########################################################################################## |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJ2PCSC,\ |
| LIBRARY:=j2pcsc,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/native/sun/security/smartcardio \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/smartcardio,\ |
| LANG:=C,\ |
| CFLAGS_posix:=-D__sun_jdk,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/security/smartcardio \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/smartcardio\ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/smartcardio/MUSCLE,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libj2pcsc/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX_posix:=$(LIBDL), \ |
| LDFLAGS_SUFFIX_windows:=winscard.lib,\ |
| LDFLAGS_SUFFIX_solaris:=-lc,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=j2pcsc.dll" \ |
| -D "JDK_INTERNAL_NAME=j2pcsc" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libj2pcsc,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJ2PCSC) |
| |
| ########################################################################################## |
| |
| ifneq ($(OPENJDK_TARGET_OS), windows) |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJ2GSS,\ |
| LIBRARY:=j2gss,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/native/sun/security/jgss/wrapper \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/jgss/wrapper,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/security/jgss/wrapper \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/jgss/wrapper,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libj2gss/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX:=$(LIBDL),\ |
| LDFLAGS_SUFFIX_solaris:=-lc,\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libj2gss,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJ2GSS) |
| endif |
| |
| ########################################################################################## |
| |
| BUILD_LIBKRB5_NAME:= |
| ifeq ($(OPENJDK_TARGET_OS), windows) |
| BUILD_LIBKRB5_NAME:=w2k_lsa_auth |
| BUILD_LIBKRB5_SRC:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/krb5 |
| BUILD_LIBKRB5_LIBS:=advapi32.lib Secur32.lib netapi32.lib kernel32.lib user32.lib \ |
| gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib \ |
| ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib |
| else ifeq ($(OPENJDK_TARGET_OS), macosx) |
| BUILD_LIBKRB5_NAME:=osxkrb5 |
| BUILD_LIBKRB5_SRC:=$(JDK_TOPDIR)/src/share/native/sun/security/krb5 |
| BUILD_LIBKRB5_LIBS:=-framework Kerberos |
| endif |
| |
| ifneq ($(BUILD_LIBKRB5_NAME),) |
| $(eval $(call SetupNativeCompilation,BUILD_LIBKRB5,\ |
| LIBRARY:=$(BUILD_LIBKRB5_NAME),\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(BUILD_LIBKRB5_SRC),\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/security/krb5 \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/krb5 ,\ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX:=$(BUILD_LIBKRB5_LIBS) ,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=$(BUILD_LIBKRB5_NAME).dll" \ |
| -D "JDK_INTERNAL_NAME=$(BUILD_LIBKRB5_NAME)" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libkrb5,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBKRB5) |
| endif |
| |
| ########################################################################################## |
| |
| ifeq ($(OPENJDK_TARGET_OS), windows) |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBSUNMSCAPI,\ |
| LIBRARY:=sunmscapi,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/mscapi,\ |
| LANG:=C++,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/mscapi ,\ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) $(LDFLAGS_CXX_JDK) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX:=Crypt32.Lib advapi32.lib,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=sunmscapi.dll" \ |
| -D "JDK_INTERNAL_NAME=sunmscapi" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libsunmscapi,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBSUNMSCAPI) |
| endif |
| |
| ########################################################################################## |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJ2PKCS11,\ |
| LIBRARY:=j2pkcs11,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/native/sun/security/pkcs11 \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/pkcs11 \ |
| $(JDK_TOPDIR)/src/share/native/sun/security/pkcs11/wrapper \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/pkcs11/wrapper,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/security/pkcs11 \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/pkcs11 \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/security/pkcs11/wrapper \ |
| -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/security/pkcs11/wrapper,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libj2pkcs11/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX_posix:=$(LIBDL),\ |
| LDFLAGS_SUFFIX_solaris:=-lc,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=j2pkcs11.dll" \ |
| -D "JDK_INTERNAL_NAME=j2pkcs11" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libj2pkcs11,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJ2PKCS11) |
| |
| ########################################################################################## |
| |
| ifeq ($(ENABLE_INTREE_EC),yes) |
| |
| BUILD_LIBSUNEC_FLAGS:= -I$(JDK_TOPDIR)/src/share/native/sun/security/ec \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/security/ec/impl |
| |
| # |
| # On sol-sparc...all libraries are compiled with -xregs=no%appl |
| # (set in CFLAGS_REQUIRED_sparc) |
| # |
| # except!!! libsunec.so |
| # |
| ECC_JNI_SOLSPARC_FILTER:= |
| ifeq ($(OPENJDK_TARGET_CPU_ARCH), sparc) |
| ECC_JNI_SOLSPARC_FILTER:=-xregs=no%appl |
| endif |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBSUNEC,\ |
| LIBRARY:=sunec,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/share/native/sun/security/ec \ |
| $(JDK_TOPDIR)/src/share/native/sun/security/ec/impl, \ |
| LANG:=C++, \ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(filter-out $(ECC_JNI_SOLSPARC_FILTER), $(CFLAGS_JDKLIB))\ |
| $(BUILD_LIBSUNEC_FLAGS) \ |
| -DMP_API_COMPATIBLE -DNSS_ECC_MORE_THAN_SUITE_B,\ |
| CXXFLAGS:=$(filter-out $(ECC_JNI_SOLSPARC_FILTER), $(CXXFLAGS_JDKLIB)) \ |
| $(BUILD_LIBSUNEC_FLAGS),\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libsunec/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) $(LDFLAGS_CXX_JDK),\ |
| LDFLAGS_macosx:=$(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX:=$(LIBCXX),\ |
| LDFLAGS_SUFFIX_linux:=-lc ,\ |
| LDFLAGS_SUFFIX_solaris:=-lc ,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=sunec.dll" \ |
| -D "JDK_INTERNAL_NAME=sunec" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libsunec,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBSUNEC) |
| endif |
| |
| ########################################################################################## |
| |
| LIBJSOUND_SRC_DIRS:=\ |
| $(JDK_TOPDIR)/src/share/native/com/sun/media/sound \ |
| $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/com/sun/media/sound |
| |
| LIBJSOUND_SRC_FILES:=Utilities.c Platform.c |
| |
| LIBJSOUND_LANG:=C |
| LIBJSOUND_CFLAGS:=$(foreach dir,$(LIBJSOUND_SRC_DIRS),-I$(dir)) |
| |
| EXTRA_SOUND_JNI_LIBS:= |
| |
| LIBJSOUND_MIDIFILES:=\ |
| MidiInDevice.c \ |
| MidiInDeviceProvider.c \ |
| MidiOutDevice.c \ |
| MidiOutDeviceProvider.c \ |
| PlatformMidi.c |
| |
| # files needed for ports |
| LIBJSOUND_PORTFILES:=\ |
| PortMixerProvider.c \ |
| PortMixer.c |
| |
| # files needed for direct audio |
| LIBJSOUND_DAUDIOFILES:=\ |
| DirectAudioDeviceProvider.c \ |
| DirectAudioDevice.c |
| |
| ifeq ($(OPENJDK_TARGET_OS), windows) |
| EXTRA_SOUND_JNI_LIBS += jsoundds |
| LIBJSOUND_CFLAGS += -DX_PLATFORM=X_WINDOWS \ |
| -DUSE_PLATFORM_MIDI_OUT=TRUE \ |
| -DUSE_PLATFORM_MIDI_IN=TRUE \ |
| -DUSE_PORTS=TRUE |
| LIBJSOUND_SRC_FILES += \ |
| PLATFORM_API_WinOS_MidiIn.cpp \ |
| PLATFORM_API_WinOS_MidiOut.c \ |
| PLATFORM_API_WinOS_Util.c \ |
| PLATFORM_API_WinOS_Ports.c |
| LIBJSOUND_SRC_FILES += $(LIBJSOUND_MIDIFILES) |
| LIBJSOUND_SRC_FILES += $(LIBJSOUND_PORTFILES) |
| endif # OPENJDK_TARGET_OS windows |
| |
| ifeq ($(OPENJDK_TARGET_OS), linux) |
| EXTRA_SOUND_JNI_LIBS += jsoundalsa |
| LIBJSOUND_CFLAGS += -DX_PLATFORM=X_LINUX |
| endif # OPENJDK_TARGET_OS linux |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| LIBJSOUND_LANG:=C++ |
| LIBJSOUND_CFLAGS += -DX_PLATFORM=X_MACOSX \ |
| -DUSE_PORTS=TRUE \ |
| -DUSE_DAUDIO=TRUE \ |
| -DUSE_PLATFORM_MIDI_OUT=TRUE \ |
| -DUSE_PLATFORM_MIDI_IN=TRUE |
| LIBJSOUND_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/native/com/sun/media/sound |
| LIBJSOUND_SRC_FILES += \ |
| PLATFORM_API_MacOSX_Utils.cpp \ |
| PLATFORM_API_MacOSX_PCM.cpp \ |
| PLATFORM_API_MacOSX_Ports.cpp \ |
| PLATFORM_API_MacOSX_MidiIn.c \ |
| PLATFORM_API_MacOSX_MidiOut.c \ |
| PLATFORM_API_MacOSX_MidiUtils.c |
| LIBJSOUND_SRC_FILES += $(LIBJSOUND_MIDIFILES) |
| LIBJSOUND_SRC_FILES += $(LIBJSOUND_PORTFILES) |
| LIBJSOUND_SRC_FILES += $(LIBJSOUND_DAUDIOFILES) |
| endif # OPENJDK_TARGET_OS macosx |
| |
| ifeq ($(OPENJDK_TARGET_OS), solaris) |
| LIBJSOUND_CFLAGS += -DX_PLATFORM=X_SOLARIS \ |
| -DUSE_PORTS=TRUE \ |
| -DUSE_DAUDIO=TRUE |
| LIBJSOUND_SRC_FILES += \ |
| PLATFORM_API_SolarisOS_Utils.c \ |
| PLATFORM_API_SolarisOS_Ports.c \ |
| PLATFORM_API_SolarisOS_PCM.c |
| LIBJSOUND_SRC_FILES += $(LIBJSOUND_MIDIFILES) |
| LIBJSOUND_SRC_FILES += $(LIBJSOUND_PORTFILES) |
| LIBJSOUND_SRC_FILES += $(LIBJSOUND_DAUDIOFILES) |
| endif # OPENJDK_TARGET_OS solaris |
| |
| |
| ifeq ($(JVM_VARIANT_ZERO), true) |
| LIBJSOUND_CFLAGS += -DX_ARCH=X_ZERO |
| else |
| ifeq ($(OPENJDK_TARGET_CPU), x86) |
| LIBJSOUND_CFLAGS += -DX_ARCH=X_I586 |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_CPU), sparc) |
| LIBJSOUND_CFLAGS += -DX_ARCH=X_SPARC |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_CPU), sparcv9) |
| LIBJSOUND_CFLAGS += -DX_ARCH=X_SPARCV9 |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_CPU), x86_64) |
| LIBJSOUND_CFLAGS += -DX_ARCH=X_AMD64 |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_CPU), arm) |
| LIBJSOUND_CFLAGS += -DX_ARCH=X_ARM |
| endif |
| |
| ifeq ($(OPENJDK_TARGET_CPU), ppc) |
| LIBJSOUND_CFLAGS += -DX_ARCH=X_PPC |
| endif |
| endif |
| |
| LIBJSOUND_CFLAGS += -DEXTRA_SOUND_JNI_LIBS='"$(EXTRA_SOUND_JNI_LIBS)"' |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJSOUND,\ |
| LIBRARY:=jsound,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(LIBJSOUND_SRC_DIRS),\ |
| INCLUDE_FILES:=$(LIBJSOUND_SRC_FILES),\ |
| LANG:=$(LIBJSOUND_LANG),\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| $(LIBJSOUND_CFLAGS), \ |
| CXXFLAGS:=$(CXXFLAGS_JDKLIB) $(LIBJSOUND_CFLAGS), \ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjsound/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB)\ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_macosx:=-framework CoreAudio -framework CoreFoundation \ |
| -framework CoreServices -framework AudioUnit $(LIBCXX) \ |
| -framework CoreMIDI -framework AudioToolbox,\ |
| LDFLAGS_windows:=$(WIN_JAVA_LIB) advapi32.lib winmm.lib,\ |
| LDFLAGS_SUFFIX_posix:=-ljava -ljvm,\ |
| LDFLAGS_SUFFIX_solaris:=-lc ,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=jsound.dll" \ |
| -D "JDK_INTERNAL_NAME=jsound" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjsound,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBJSOUND) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJSOUND) |
| |
| ########################################################################################## |
| |
| ifneq ($(filter jsoundalsa, $(EXTRA_SOUND_JNI_LIBS)),) |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJSOUNDALSA,\ |
| LIBRARY:=jsoundalsa,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(LIBJSOUND_SRC_DIRS),\ |
| INCLUDE_FILES:=Utilities.c $(LIBJSOUND_MIDIFILES) $(LIBJSOUND_PORTFILES) \ |
| $(LIBJSOUND_DAUDIOFILES) \ |
| PLATFORM_API_LinuxOS_ALSA_CommonUtils.c \ |
| PLATFORM_API_LinuxOS_ALSA_PCM.c \ |
| PLATFORM_API_LinuxOS_ALSA_PCMUtils.c \ |
| PLATFORM_API_LinuxOS_ALSA_MidiIn.c \ |
| PLATFORM_API_LinuxOS_ALSA_MidiOut.c \ |
| PLATFORM_API_LinuxOS_ALSA_MidiUtils.c \ |
| PLATFORM_API_LinuxOS_ALSA_Ports.c,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| $(LIBJSOUND_CFLAGS) \ |
| -DUSE_DAUDIO=TRUE \ |
| -DUSE_PORTS=TRUE \ |
| -DUSE_PLATFORM_MIDI_OUT=TRUE \ |
| -DUSE_PLATFORM_MIDI_IN=TRUE, \ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjsoundalsa/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB)\ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX:=-lasound -ljava -ljvm,\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjsoundalsa,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBJSOUNDALSA) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJSOUNDALSA) |
| |
| endif |
| |
| ########################################################################################## |
| |
| ifneq ($(filter jsoundds, $(EXTRA_SOUND_JNI_LIBS)),) |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJSOUNDDS,\ |
| LIBRARY:=jsoundds,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(LIBJSOUND_SRC_DIRS),\ |
| INCLUDE_FILES:=Utilities.c $(LIBJSOUND_DAUDIOFILES) \ |
| PLATFORM_API_WinOS_DirectSound.cpp, \ |
| LANG:=C++,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| $(LIBJSOUND_CFLAGS) \ |
| -DUSE_DAUDIO=TRUE \ |
| -I$(DXSDK_INCLUDE_PATH), \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) $(LDFLAGS_CXX_JDK) \ |
| $(call SET_SHARED_LIBRARY_ORIGIN),\ |
| LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX) dsound.lib winmm.lib user32.lib ole32.lib,\ |
| VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\ |
| RC_FLAGS:=$(RC_FLAGS)\ |
| -D "JDK_FNAME=jsoundds.dll" \ |
| -D "JDK_INTERNAL_NAME=jsoundds" \ |
| -D "JDK_FTYPE=0x2L",\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjsoundds,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBJSOUNDDS) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJSOUNDDS) |
| |
| endif |
| |
| ########################################################################################## |
| |
| ifeq ($(OPENJDK_TARGET_OS), solaris) |
| ifndef OPENJDK |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJ2UCRYPTO,\ |
| LIBRARY:=j2ucrypto,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/closed/solaris/native/com/oracle/security/ucrypto,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/closed/solaris/native/com/oracle/security/ucrypto ,\ |
| MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libj2ucrypto/mapfile-vers, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB),\ |
| LDFLAGS_SUFFIX:=$(LIBDL),\ |
| LDFLAGS_SUFFIX_solaris:=-lc,\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libj2ucrypto,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBJ2UCRYPTO) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBJ2UCRYPTO) |
| |
| endif |
| endif |
| |
| ########################################################################################## |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBAPPLESCRIPTENGINE,\ |
| LIBRARY:=AppleScriptEngine,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/macosx/native/apple/applescript,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/macosx/native/apple/applescript \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB)\ |
| $(call SET_SHARED_LIBRARY_ORIGIN), \ |
| LDFLAGS_SUFFIX:=-framework Cocoa \ |
| -framework Carbon \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -framework JavaNativeFoundation \ |
| $(LDFLAGS_JDKLIB_SUFFIX),\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libAppleScriptEngine,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(BUILD_LIBAPPLESCRIPTENGINE) : $(BUILD_LIBJAVA) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBAPPLESCRIPTENGINE) |
| |
| endif |
| |
| ########################################################################################## |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBOSXAPP,\ |
| LIBRARY:=osxapp,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/macosx/native/sun/osxapp,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/macosx/native/sun/osxapp \ |
| -I$(JDK_OUTPUTDIR)/gensrc/sun/osxapp \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks,\ |
| LDFLAGS:=$(LDFLAGS_JDKLIB)\ |
| $(call SET_SHARED_LIBRARY_ORIGIN), \ |
| LDFLAGS_SUFFIX_macosx:=\ |
| -framework Accelerate \ |
| -framework ApplicationServices \ |
| -framework AudioToolbox \ |
| -framework Carbon \ |
| -framework Cocoa \ |
| -framework Security \ |
| -framework ExceptionHandling \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -framework JavaNativeFoundation \ |
| -framework JavaRuntimeSupport \ |
| -framework OpenGL \ |
| -framework IOSurface \ |
| -framework QuartzCore, \ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libosxapp,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBOSXAPP) |
| |
| endif |
| |
| ########################################################################################## |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| |
| LIBOSX_DIRS:=\ |
| $(JDK_TOPDIR)/src/macosx/native/com/apple/concurrent \ |
| $(JDK_TOPDIR)/src/macosx/native/java/util \ |
| $(JDK_TOPDIR)/src/macosx/native/com/apple/eio \ |
| $(JDK_TOPDIR)/src/macosx/native/apple/security \ |
| $(JDK_TOPDIR)/src/macosx/native/apple/launcher |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBOSX,\ |
| LIBRARY:=osx,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(LIBOSX_DIRS),\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| $(foreach dir,$(LIBOSX_DIRS),-I$(dir)) \ |
| -I$(JDK_TOPDIR)/src/macosx/native/sun/osxapp \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks,\ |
| LDFLAGS:=$(LDFLAGS_JDKLIB)\ |
| $(call SET_SHARED_LIBRARY_ORIGIN), \ |
| LDFLAGS_SUFFIX_macosx:=\ |
| -losxapp \ |
| -framework Cocoa \ |
| -framework ApplicationServices \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -framework JavaNativeFoundation \ |
| -framework JavaRuntimeSupport \ |
| -framework Security \ |
| -framework SystemConfiguration \ |
| $(LDFLAGS_JDKLIB_SUFFIX), \ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libosx,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBOSX) |
| |
| $(BUILD_LIBOSX) : $(BUILD_LIBOSXAPP) |
| |
| $(BUILD_LIBOSX) : $(BUILD_LIBJAVA) |
| |
| endif |
| |
| ########################################################################################## |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| |
| LIBAWT_LWAWT_FILES:=\ |
| awt.m \ |
| ApplicationDelegate.m \ |
| CFRetainedResource.m \ |
| CGLGraphicsConfig.m \ |
| CGLSurfaceData.m \ |
| CGLLayer.m \ |
| CGraphicsConfig.m \ |
| CGraphicsDevice.m \ |
| CGraphicsEnv.m \ |
| CCharToGlyphMapper.m \ |
| CSystemColors.m \ |
| AWTFont.m \ |
| CGGlyphOutlines.m \ |
| CGGlyphImages.m \ |
| CoreTextSupport.m \ |
| AWTStrike.m \ |
| InitIDs.m \ |
| AWTEvent.m \ |
| AWTView.m \ |
| AWTWindow.m \ |
| AWTSurfaceLayers.m \ |
| CCursorManager.m \ |
| CClipboard.m \ |
| CDataTransferer.m \ |
| CDragSource.m \ |
| CDragSourceContextPeer.m \ |
| CDropTarget.m \ |
| CDropTargetContextPeer.m \ |
| CInputMethod.m \ |
| CDesktopPeer.m \ |
| OSVersion.m \ |
| DnDUtilities.m \ |
| CFileDialog.m \ |
| CImage.m \ |
| CMenu.m \ |
| CMenuBar.m \ |
| CMenuComponent.m \ |
| CMenuItem.m \ |
| CPopupMenu.m \ |
| CRobot.m \ |
| CTrayIcon.m \ |
| CWrapper.m \ |
| JavaAccessibilityAction.m \ |
| JavaAccessibilityUtilities.m \ |
| JavaComponentAccessibility.m \ |
| JavaTextAccessibility.m \ |
| LWCToolkit.m \ |
| GeomUtilities.m \ |
| CPrinterJob.m \ |
| PrintModel.m \ |
| PrinterSurfaceData.m \ |
| PrinterView.m \ |
| QuartzSurfaceData.m \ |
| QuartzRenderer.m \ |
| CTextPipe.m \ |
| ImageSurfaceData.m \ |
| awt_DrawingSurface.m \ |
| \ |
| OGLBlitLoops.c \ |
| OGLBufImgOps.c \ |
| OGLContext.c \ |
| OGLFuncs.c \ |
| OGLMaskBlit.c \ |
| OGLMaskFill.c \ |
| OGLPaints.c \ |
| OGLRenderQueue.c \ |
| OGLRenderer.c \ |
| OGLSurfaceData.c \ |
| OGLTextRenderer.c \ |
| OGLVertexCache.c \ |
| AccelGlyphCache.c \ |
| CUPSfuncs.c |
| |
| |
| LIBAWT_LWAWT_DIRS:=\ |
| $(JDK_TOPDIR)/src/macosx/native/sun/awt \ |
| $(JDK_TOPDIR)/src/macosx/native/sun/font \ |
| $(JDK_TOPDIR)/src/macosx/native/sun/java2d/opengl \ |
| $(JDK_TOPDIR)/src/solaris/native/sun/awt \ |
| $(JDK_TOPDIR)/src/share/native/sun/font \ |
| $(JDK_TOPDIR)/src/share/native/sun/java2d/opengl \ |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_LWAWT,\ |
| LIBRARY:=awt_lwawt,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(LIBAWT_LWAWT_DIRS),\ |
| LANG:=C,\ |
| INCLUDE_FILES:=$(LIBAWT_LWAWT_FILES),\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| $(X_CFLAGS) \ |
| $(X_LIBS) \ |
| $(foreach dir,$(LIBAWT_LWAWT_DIRS),-I$(dir)) \ |
| -I$(JDK_TOPDIR)/src/macosx/native/sun/osxapp \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d \ |
| -I$(JDK_TOPDIR)/src/solaris/native/sun/java2d \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/image \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \ |
| -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks,\ |
| LDFLAGS:=$(LDFLAGS_JDKLIB)\ |
| $(call SET_SHARED_LIBRARY_ORIGIN), \ |
| LDFLAGS_SUFFIX_macosx:=-lawt -lmlib_image -losxapp -ljvm $(LIBM) \ |
| -framework Accelerate \ |
| -framework ApplicationServices \ |
| -framework AudioToolbox \ |
| -framework Carbon \ |
| -framework Cocoa \ |
| -framework Security \ |
| -framework ExceptionHandling \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -framework JavaNativeFoundation \ |
| -framework JavaRuntimeSupport \ |
| -framework OpenGL \ |
| -framework QuartzCore -ljava,\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libawt_lwawt,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBAWT_LWAWT) |
| |
| $(BUILD_LIBAWT_LWAWT) : $(BUILD_LIBAWT) |
| |
| $(BUILD_LIBAWT_LWAWT) : $(BUILD_LIBMLIB_IMAGE) |
| |
| $(BUILD_LIBAWT_LWAWT) : $(BUILD_LIBOSXAPP) |
| |
| $(BUILD_LIBAWT_LWAWT) : $(BUILD_LIBJAVA) |
| |
| endif |
| |
| ########################################################################################## |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBOSXUI,\ |
| LIBRARY:=osxui,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(JDK_TOPDIR)/src/macosx/native/com/apple/laf,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -I$(JDK_TOPDIR)/src/macosx/native/com/apple/laf \ |
| -I$(JDK_TOPDIR)/src/macosx/native/sun/osxapp \ |
| -I$(JDK_TOPDIR)/src/macosx/native/sun/awt \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks, \ |
| LDFLAGS:=$(LDFLAGS_JDKLIB)\ |
| $(call SET_SHARED_LIBRARY_ORIGIN) \ |
| -Xlinker -rpath -Xlinker @loader_path,\ |
| LDFLAGS_SUFFIX_macosx:=-lawt -losxapp -lawt_lwawt \ |
| -framework Cocoa \ |
| -framework Carbon \ |
| -framework ApplicationServices \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -framework JavaNativeFoundation \ |
| -framework JavaRuntimeSupport \ |
| -ljava -ljvm,\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libosxui,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| BUILD_LIBRARIES += $(BUILD_LIBOSXUI) |
| |
| $(BUILD_LIBOSXUI) : $(BUILD_LIBAWT) |
| |
| $(BUILD_LIBOSXUI) : $(BUILD_LIBOSXAPP) |
| |
| $(BUILD_LIBOSXUI) : $(BUILD_LIBAWT_LWAWT) |
| |
| #$(BUILD_LIBOSXUI) : $(BUILD_LIBJAVA) |
| |
| endif |
| |
| ########################################################################################## |
| |
| ifeq ($(OPENJDK_TARGET_OS), macosx) |
| |
| # Ugly hack to mimic behaviour in old build where this is built as an xcode project. |
| SET_SHARED_LIBRARY_NAME=-Xlinker -install_name -Xlinker /usr/local/lib/libJObjC.dylib |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJOBJC32,\ |
| LIBRARY:=JObjC,\ |
| OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs/libjobjc32,\ |
| SRC:=$(JDK_TOPDIR)/src/macosx/native/jobjc/src/core/native \ |
| $(JDK_TOPDIR)/src/macosx/native/jobjc/src/runtime-additions/native ,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=-fpascal-strings \ |
| -fobjc-gc \ |
| -gdwarf-2 \ |
| $(CFLAGS_JDKLIB) -I$(JDK_OUTPUTDIR)/gensrc_headers_jobjc \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -m32,\ |
| LDFLAGS:=$(LDFLAGS_JDKLIB)\ |
| -m32, \ |
| LDFLAGS_SUFFIX:=-framework Foundation -framework JavaVM \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -framework JavaNativeFoundation \ |
| -lffi, \ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjobjc32,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(eval $(call SetupNativeCompilation,BUILD_LIBJOBJC64,\ |
| LIBRARY:=JObjC,\ |
| OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs/libjobjc64,\ |
| SRC:=$(JDK_TOPDIR)/src/macosx/native/jobjc/src/core/native \ |
| $(JDK_TOPDIR)/src/macosx/native/jobjc/src/runtime-additions/native ,\ |
| LANG:=C,\ |
| OPTIMIZATION:=LOW, \ |
| CFLAGS:=-fpascal-strings \ |
| -fobjc-gc \ |
| -gdwarf-2 \ |
| $(CFLAGS_JDKLIB) -I$(JDK_OUTPUTDIR)/gensrc_headers_jobjc \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| , \ |
| LDFLAGS:=-fpascal-strings \ |
| -fobjc-gc \ |
| -gdwarf-2 \ |
| $(LDFLAGS_JDKLIB)\ |
| $(call SET_SHARED_LIBRARY_ORIGIN), \ |
| LDFLAGS_SUFFIX:=-framework Foundation -framework JavaVM \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -framework JavaNativeFoundation \ |
| -lffi, \ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjobjc64,\ |
| DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) |
| |
| $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)JObjC$(SHARED_LIBRARY_SUFFIX): $(BUILD_LIBJOBJC32) $(BUILD_LIBJOBJC64) |
| $(LIPO) -create -output $@ $(BUILD_LIBJOBJC32) $(BUILD_LIBJOBJC64) |
| |
| BUILD_LIBRARIES += $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)JObjC$(SHARED_LIBRARY_SUFFIX) |
| |
| endif |
| |
| ########################################################################################## |
| |
| ifndef OPENJDK |
| ifeq ($(OPENJDK_TARGET_OS), windows) |
| |
| ACCESSBRIDGE_SRCDIR:=$(JDK_TOPDIR)/src/closed/windows/native/sun/bridge |
| |
| define SetupAccessBridge |
| # Parameter 1 Suffix |
| # Parameter 2 Machine |
| # Parameter 3 ACCESSBRIDGE_ARCH_ suffix |
| |
| $(call SetupNativeCompilation,BUILD_JAWTACCESSBRIDGE$1,\ |
| LIBRARY=JAWTAccessBridge$1,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(ACCESSBRIDGE_SRCDIR),\ |
| INCLUDE_FILES:=JAWTAccessBridge.cpp,\ |
| LANG:=C++,\ |
| OPTIMIZATION:=LOW,\ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -DACCESSBRIDGE_ARCH_$3,\ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) kernel32.lib user32.lib gdi32.lib \ |
| winspool.lib jawt.lib comdlg32.lib advapi32.lib shell32.lib \ |
| ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib \ |
| -subsystem:windows -machine:$2 \ |
| -def:$(ACCESSBRIDGE_SRCDIR)/JAWTAccessBridge.DEF,\ |
| VERSIONINFO_RESOURCE:=$(ACCESSBRIDGE_SRCDIR)/AccessBridgeStatusWindow.rc,\ |
| RC_FLAGS:=$(RC_FLAGS),\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjawtaccessbridge$1,\ |
| DEBUG_SYMBOLS:=true) |
| |
| $$(BUILD_JAWTACCESSBRIDGE$1): $(JDK_OUTPUTDIR)/lib/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX) |
| |
| $(call SetupNativeCompilation,BUILD_JAVAACCESSBRIDGE$1,\ |
| LIBRARY=JavaAccessBridge$1,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(ACCESSBRIDGE_SRCDIR),\ |
| INCLUDE_FILES:=AccessBridgeATInstance.cpp AccessBridgeDebug.cpp \ |
| AccessBridgeJavaEntryPoints.cpp \ |
| AccessBridgeMessages.cpp JavaAccessBridge.cpp,\ |
| LANG:=C++,\ |
| OPTIMIZATION:=LOW,\ |
| CFLAGS:=$(CFLAGS_JDKLIB) \ |
| -DACCESSBRIDGE_ARCH_$3,\ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) kernel32.lib user32.lib gdi32.lib \ |
| winspool.lib comdlg32.lib advapi32.lib shell32.lib \ |
| ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib \ |
| -subsystem:windows -machine:$2 \ |
| -def:$(ACCESSBRIDGE_SRCDIR)/JavaAccessBridge.DEF,\ |
| VERSIONINFO_RESOURCE:=$(ACCESSBRIDGE_SRCDIR)/AccessBridgeStatusWindow.rc,\ |
| RC_FLAGS:=$(RC_FLAGS),\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjavaaccessbridge$1,\ |
| DEBUG_SYMBOLS:=true) |
| |
| $(call SetupNativeCompilation,BUILD_WINDOWSACCESSBRIDGE$1,\ |
| LIBRARY=WindowsAccessBridge$1,\ |
| OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\ |
| SRC:=$(ACCESSBRIDGE_SRCDIR),\ |
| INCLUDE_FILES:=AccessBridgeJavaVMInstance.cpp AccessBridgeMessageQueue.cpp \ |
| AccessBridgeMessages.cpp AccessBridgeWindowsEntryPoints.cpp \ |
| WinAccessBridge.cpp AccessBridgeDebug.cpp \ |
| AccessBridgeEventHandler.cpp,\ |
| LANG:=C++,\ |
| OPTIMIZATION:=LOW,\ |
| CFLAGS:=$(filter-out -MD,$(CFLAGS_JDKLIB)) -MT \ |
| -DACCESSBRIDGE_ARCH_$3,\ |
| LDFLAGS:=$(LDFLAGS_JDKLIB) kernel32.lib user32.lib gdi32.lib \ |
| winspool.lib comdlg32.lib advapi32.lib shell32.lib \ |
| ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib \ |
| -subsystem:windows -machine:$2 \ |
| -def:$(ACCESSBRIDGE_SRCDIR)/WinAccessBridge.DEF,\ |
| VERSIONINFO_RESOURCE:=$(ACCESSBRIDGE_SRCDIR)/AccessBridgeStatusWindow.rc,\ |
| RC_FLAGS:=$(RC_FLAGS),\ |
| OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libwindowsaccessbridge$1,\ |
| DEBUG_SYMBOLS:=true) |
| |
| BUILD_LIBRARIES += $$(BUILD_JAWTACCESSBRIDGE$1) $$(BUILD_JAVAACCESSBRIDGE$1) \ |
| $$(BUILD_WINDOWSACCESSBRIDGE$1) |
| |
| endef |
| |
| ifeq ($(OPENJDK_TARGET_CPU_BITS),32) |
| $(eval $(call SetupAccessBridge,-32,I386,32)) |
| $(eval $(call SetupAccessBridge,,I386,LEGACY)) |
| else |
| $(eval $(call SetupAccessBridge,-64,X64,64)) |
| endif |
| endif |
| endif |
| |
| |
| ########################################################################################## |
| |
| all: $(COPY_FILES) $(BUILD_LIBRARIES) |
| |
| .PHONY: all |