| # |
| # Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved. |
| # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
| # |
| # This code is free software; you can redistribute it and/or modify it |
| # under the terms of the GNU General Public License version 2 only, as |
| # published by the Free Software Foundation. Oracle designates this |
| # particular file as subject to the "Classpath" exception as provided |
| # by Oracle in the LICENSE file that accompanied this code. |
| # |
| # This code is distributed in the hope that it will be useful, but WITHOUT |
| # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
| # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
| # version 2 for more details (a copy is included in the LICENSE file that |
| # accompanied this code). |
| # |
| # You should have received a copy of the GNU General Public License version |
| # 2 along with this work; if not, write to the Free Software Foundation, |
| # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
| # |
| # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
| # or visit www.oracle.com if you need additional information or have any |
| # questions. |
| # |
| |
| # |
| # to create directory: |
| # |
| INIT += $(LIB_LOCATION) |
| |
| # |
| # Files |
| # |
| # mawt.gmk is just used in building X/Motif native code, so |
| # this list of java files is no longer included. |
| #include FILES_java_unix.gmk |
| include $(BUILDDIR)/sun/awt/FILES_c_unix.gmk |
| |
| include $(BUILDDIR)/sun/awt/FILES_export_unix.gmk |
| |
| # Check which C files should be built. Headless uses only |
| # non-motif files. Also, a version-specific motif file is |
| # compiled based on the motif version. |
| FILES_c = $(FILES_NO_MOTIF_c) |
| |
| ifeq ($(PLATFORM), macosx) |
| FILES_objc = $(FILES_NO_MOTIF_objc) |
| endif # PLATFORM |
| |
| ifeq ($(PLATFORM), solaris) |
| ifneq ($(ARCH), amd64) |
| FILES_reorder += reorder-$(ARCH) |
| endif |
| endif |
| |
| # |
| # Rules |
| # |
| |
| # Class files should be built & clobbered in make/sun/awt |
| # If removing this line, also reinclude sun_awt.jmk |
| DONT_CLOBBER_CLASSES = true |
| |
| |
| ifndef HEADLESS |
| ifeq ($(VARIANT), OPT) |
| FILES_m = ../awt/mapfile-mawt-vers |
| endif |
| endif |
| |
| # Since this library will be living in a subdirectory below the other libraries |
| # we need to add an extra runpath so that libraries in the upper directory |
| # are found at runtime. |
| LD_RUNPATH_EXTRAS = .. |
| |
| include $(BUILDDIR)/common/Mapfile-vers.gmk |
| include $(BUILDDIR)/common/Library.gmk |
| |
| $(LIB_LOCATION): |
| $(MKDIR) -p $@ |
| |
| clean:: |
| |
| # |
| # Add to the ambient vpath to pick up files in subdirectories |
| # |
| vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/alphacomposite |
| vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/image |
| vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/image/gif |
| vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/image/cvutils |
| vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/shell |
| vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/medialib |
| vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl |
| vpath %.c $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl |
| vpath %.c $(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/x11 |
| vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/debug |
| vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../font |
| vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d |
| vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d/loops |
| vpath %.c $(SHARE_SRC)/native/$(PKGDIR)/../java2d/pipe |
| vpath %.cpp $(SHARE_SRC)/native/$(PKGDIR)/image |
| vpath %.c $(PLATFORM_SRC)/native/$(PKGDIR)/robot_child |
| |
| ifeq ($(PLATFORM), macosx) |
| vpath %.m $(call NativeSrcDirList,,native/sun/font) |
| endif # PLATFORM |
| |
| # |
| # Libraries to link in. |
| # |
| |
| |
| ifeq ($(DEBUG_BINARIES), true) |
| CFLAGS += -g |
| endif |
| ifeq ($(HEADLESS),true) |
| CFLAGS += -DHEADLESS=$(HEADLESS) |
| CPPFLAGS += -DHEADLESS=$(HEADLESS) |
| OTHER_LDLIBS = |
| else |
| LIBXTST = -lXtst |
| ifeq ($(PLATFORM), linux) |
| ifeq ($(ARCH_DATA_MODEL), 64) |
| # XXX what about the rest of them? |
| LIBXT = -lXt |
| else |
| # Allows for builds on Debian GNU Linux, X11 is in a different place |
| LIBXT = $(firstword $(wildcard $(OPENWIN_LIB)/libXt.a) \ |
| $(wildcard /usr/lib/libXt.a)) |
| LIBSM = $(firstword $(wildcard $(OPENWIN_LIB)/libSM.a) \ |
| $(wildcard /usr/lib/libSM.a)) |
| LIBICE = $(firstword $(wildcard $(OPENWIN_LIB)/libICE.a) \ |
| $(wildcard /usr/lib/libICE.a)) |
| LIBXTST = $(firstword $(wildcard $(OPENWIN_LIB)/libXtst.a) \ |
| $(wildcard /usr/lib/libXtst.a)) |
| endif |
| endif |
| |
| # Use -lXmu for EditRes support |
| LIBXMU_DBG = -lXmu |
| LIBXMU_OPT = |
| LIBXMU = $(LIBXMU_$(VARIANT)) |
| |
| ifeq ($(PLATFORM), solaris) |
| OTHER_LDLIBS = -lXt -lXext $(LIBXTST) $(LIBXMU) -lX11 -lXi |
| endif |
| |
| ifneq (,$(findstring $(PLATFORM), linux macosx)) |
| OTHER_CFLAGS += -DMLIB_NO_LIBSUNMATH |
| # XXX what is this define below? Isn't it motif-related? |
| OTHER_CFLAGS += -DXMSTRINGDEFINES=1 |
| OTHER_LDLIBS = $(LIBXMU) $(LIBXTST) -lXext $(LIBXT) $(LIBSM) $(LIBICE) -lX11 -lXi |
| endif |
| |
| endif |
| # !HEADLESS |
| |
| OTHER_LDLIBS += $(JVMLIB) $(LIBCXX) \ |
| -lawt $(LIBM) $(LIBDL) |
| |
| # |
| # Sun CC with -Xa misdefines __STDC__ to 0 (zero). |
| # The following will force checking of X11 prototypes. |
| # |
| ifneq ($(CC_VERSION),gcc) |
| CPPFLAGS += -DFUNCPROTO=15 |
| endif |
| |
| # |
| # Other extra flags needed for compiling. |
| # |
| CPPFLAGS += -I$(CUPS_HEADERS_PATH) |
| |
| ifndef HEADLESS |
| CPPFLAGS += -I$(OPENWIN_HOME)/include |
| LDFLAGS += -L$(OPENWIN_LIB) |
| |
| endif # !HEADLESS |
| |
| CPPFLAGS += -I$(SHARE_SRC)/native/$(PKGDIR)/debug \ |
| -I$(SHARE_SRC)/native/$(PKGDIR)/../font \ |
| -I$(PLATFORM_SRC)/native/$(PKGDIR)/../font \ |
| -I$(SHARE_SRC)/native/$(PKGDIR)/image \ |
| -I$(SHARE_SRC)/native/$(PKGDIR)/image/cvutils \ |
| -I$(SHARE_SRC)/native/$(PKGDIR)/shell \ |
| -I$(SHARE_SRC)/native/$(PKGDIR)/alphacomposite \ |
| -I$(SHARE_SRC)/native/$(PKGDIR)/medialib \ |
| -I$(PLATFORM_SRC)/native/$(PKGDIR)/medialib \ |
| -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d \ |
| -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d \ |
| -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/loops \ |
| -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/pipe \ |
| -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl \ |
| -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl \ |
| -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/x11 \ |
| -I$(SHARE_SRC)/native/$(PKGDIR)/../dc/doe \ |
| -I$(SHARE_SRC)/native/$(PKGDIR)/../dc/path \ |
| -I$(PLATFORM_SRC)/native/$(PKGDIR)/../jdga \ |
| -I$(PLATFORM_SRC)/native/$(PKGDIR) \ |
| $(EVENT_MODEL) |
| |
| ifeq ($(PLATFORM), macosx) |
| CPPFLAGS += -I$(CUPS_HEADERS_PATH) \ |
| $(call NativeSrcDirList,-I,native/sun/awt) \ |
| $(call NativeSrcDirList,-I,native/sun/font) |
| |
| ifndef HEADLESS |
| CPPFLAGS += -I$(MOTIF_DIR)/include \ |
| -I$(OPENWIN_HOME)/include |
| LDFLAGS += -L$(MOTIF_LIB) -L$(OPENWIN_LIB) |
| else |
| LDFLAGS += -framework Accelerate \ |
| -framework ApplicationServices \ |
| -framework Cocoa \ |
| -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ |
| -framework JavaNativeFoundation \ |
| -framework JavaRuntimeSupport |
| endif # !HEADLESS |
| endif # PLATFORM |
| |
| ifeq ($(PLATFORM), linux) |
| # Checking for the X11/extensions headers at the additional location |
| CPPFLAGS += -I$(firstword $(wildcard $(OPENWIN_HOME)/include/X11/extensions) \ |
| $(wildcard /usr/include/X11/extensions)) |
| endif |
| |
| ifeq ($(PLATFORM), macosx) |
| CPPFLAGS += -I$(OPENWIN_HOME)/include/X11/extensions \ |
| -I$(OPENWIN_HOME)/include |
| endif |
| |
| ifeq ($(PLATFORM), solaris) |
| CPPFLAGS += -I$(OPENWIN_HOME)/include/X11/extensions |
| endif |
| |
| ifeq ($(PLATFORM), macosx) |
| CPPFLAGS += -DX11_PATH=\"$(X11_PATH)\" -DPACKAGE_PATH=\"$(PACKAGE_PATH)\" |
| endif |
| |
| LDFLAGS += -L$(LIBDIR)/$(LIBARCH)/$(TSOBJDIR) \ |
| $(AWT_RUNPATH) |
| |
| CLASSES.export += java.io.InputStream \ |
| java.lang.ThreadGroup |
| |