1 # 2 # Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved. 3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 # 5 # This code is free software; you can redistribute it and/or modify it 6 # under the terms of the GNU General Public License version 2 only, as 7 # published by the Free Software Foundation. Oracle designates this 8 # particular file as subject to the "Classpath" exception as provided 9 # by Oracle in the LICENSE file that accompanied this code. 10 # 11 # This code is distributed in the hope that it will be useful, but WITHOUT 12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 # version 2 for more details (a copy is included in the LICENSE file that 15 # accompanied this code). 16 # 17 # You should have received a copy of the GNU General Public License version 18 # 2 along with this work; if not, write to the Free Software Foundation, 19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 # 21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 # or visit www.oracle.com if you need additional information or have any 23 # questions. 24 # 25 26 BUILDDIR = ../.. 27 PACKAGE = sun.awt 28 LIBRARY = jawt 29 PRODUCT = sun 30 31 include $(BUILDDIR)/common/Defs.gmk 32 33 # 34 # Files 35 # 36 ifeq ($(PLATFORM), windows) 37 FILES_cpp = jawt.cpp 38 else ifeq ($(PLATFORM), macosx) # PLATFORM 39 FILES_objc = jawt.m 40 else # PLATFORM 41 FILES_c = jawt.c 42 endif # PLATFORM 43 44 FILES_h = $(INCLUDEDIR)/jawt.h \ 45 $(PLATFORM_INCLUDE)/jawt_md.h 46 47 # 48 # Use mapfile 49 # 50 FILES_m = mapfile-vers 51 include $(BUILDDIR)/common/Mapfile-vers.gmk 52 53 54 ifeq ($(PLATFORM), windows) 55 # 56 # Extra C flags. 57 # 58 59 OTHER_CXXFLAGS += $(GX_OPTION) -DUNICODE -D_UNICODE 60 61 # 62 # Other extra flags needed for compiling. 63 # 64 CPPFLAGS += -I$(SHARE_SRC)/native/common \ 65 -I$(DXSDK_INCLUDE_PATH) \ 66 -I$(PLATFORM_SRC)/native/sun/windows \ 67 -I$(CLASSHDRDIR)/../../awt/CClassHeaders \ 68 -I$(SHARE_SRC)/native/sun/awt/debug \ 69 -I$(SHARE_SRC)/native/sun/font \ 70 -I$(SHARE_SRC)/native/sun/java2d \ 71 -I$(SHARE_SRC)/native/sun/java2d/loops \ 72 -I$(SHARE_SRC)/native/sun/java2d/pipe \ 73 -I$(PLATFORM_SRC)/native/sun/java2d \ 74 -I$(PLATFORM_SRC)/native/sun/java2d/windows \ 75 -I$(PLATFORM_SRC)/native/sun/java2d/d3d \ 76 -I$(SHARE_SRC)/native/$(PKGDIR)/image/cvutils \ 77 -I$(SHARE_SRC)/javavm/export \ 78 -I$(PLATFORM_SRC)/javavm/export 79 INSTALL_DOT_LIB = true 80 81 vpath %.cpp $(PLATFORM_SRC)/native/sun/windows 82 83 # 84 # Libraries to link in. 85 # 86 ifeq ($(ARCH_DATA_MODEL), 64) 87 OTHER_LDLIBS = $(OBJDIR)/../../awt/$(OBJDIRNAME)/awt.lib 88 else 89 OTHER_LDLIBS = kernel32.lib \ 90 $(OBJDIR)/../../awt/$(OBJDIRNAME)/awt.lib 91 endif 92 else # PLATFORM 93 94 # 95 # Other extra flags needed for compiling. 96 # 97 CPPFLAGS += -I$(OPENWIN_HOME)/include \ 98 -I$(SHARE_SRC)/native/$(PKGDIR)/debug \ 99 -I$(SHARE_SRC)/native/$(PKGDIR)/image \ 100 -I$(SHARE_SRC)/native/$(PKGDIR)/image/cvutils \ 101 -I$(SHARE_SRC)/native/$(PKGDIR)/alphacomposite \ 102 -I$(SHARE_SRC)/native/$(PKGDIR)/medialib \ 103 -I$(PLATFORM_SRC)/native/$(PKGDIR)/medialib \ 104 -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/loops \ 105 -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/pipe \ 106 -I$(SHARE_SRC)/native/$(PKGDIR)/../java2d/opengl \ 107 -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/opengl \ 108 -I$(PLATFORM_SRC)/native/$(PKGDIR)/../java2d/x11 \ 109 -I$(SHARE_SRC)/native/$(PKGDIR)/../dc/doe \ 110 -I$(SHARE_SRC)/native/$(PKGDIR)/../dc/path \ 111 -I$(PLATFORM_SRC)/native/$(PKGDIR)/../jdga \ 112 $(EVENT_MODEL) 113 114 # 115 # Libraries to link in. 116 # 117 ifeq ($(PLATFORM), solaris) 118 ifndef BUILD_HEADLESS_ONLY 119 OTHER_LDLIBS = -L$(LIBDIR)/$(LIBARCH) -L$(OPENWIN_LIB) -L$(LIBDIR)/$(LIBARCH)/xawt -lmawt -L/usr/openwin/sfw/lib$(ISA_DIR) -lXrender 120 else 121 OTHER_LDLIBS = -L$(LIBDIR)/$(LIBARCH) -L$(OPENWIN_LIB) -L$(LIBDIR)/$(LIBARCH)/headless -lmawt -L/usr/openwin/sfw/lib$(ISA_DIR) -lXrender 122 endif 123 endif # PLATFORM 124 125 ifeq ($(PLATFORM), linux) 126 ifndef BUILD_HEADLESS_ONLY 127 OTHER_LDLIBS = -L$(LIBDIR)/$(LIBARCH) -lawt -L$(LIBDIR)/$(LIBARCH)/xawt -lmawt 128 else 129 OTHER_LDLIBS = -L$(LIBDIR)/$(LIBARCH) -lawt -L$(LIBDIR)/$(LIBARCH)/headless -lmawt 130 CFLAGS += -DHEADLESS 131 endif 132 endif # PLATFORM 133 134 ifeq ($(PLATFORM), macosx) 135 vpath %.m $(call NativeSrcDirList,,native/sun/awt) 136 OTHER_LDLIBS = -llwawt -L$(LIBDIR)/lwawt -Xlinker -rpath -Xlinker @loader_path/lwawt \ 137 -framework Cocoa 138 endif # PLATFORM 139 140 endif # PLATFORM 141 142 # 143 # Lets not remove any class files. 144 # 145 DONT_CLOBBER_CLASSES = true 146 147 # 148 # Rules 149 # 150 include $(BUILDDIR)/common/Library.gmk 151 152 build: $(FILES_h) 153 154 ifeq ($(PLATFORM), windows) 155 include make.depend 156 endif 157 158 # 159 # Install header files. 160 # 161 $(INCLUDEDIR)/%.h: $(SHARE_SRC)/javavm/export/%.h 162 $(install-file) 163 $(PLATFORM_INCLUDE)/%.h: $(PLATFORM_SRC)/javavm/export/%.h 164 $(install-file) 165 166 167 # 168 # Extra clean rule. 169 # 170 clean clobber:: 171 $(RM) $(FILES_h) 172