# # Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it # 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), 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 # # 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 += $(CUPS_CFLAGS) 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) ifndef HEADLESS CPPFLAGS += -I$(MOTIF_DIR)/include \ -I$(OPENWIN_HOME)/include LDFLAGS += -L$(MOTIF_LIB) -L$(OPENWIN_LIB) 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