1 # 2 # Copyright (c) 2011, 2013, 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 # Openwin is defined on Solaris. 27 OPENWIN_LIB := $(OPENWIN_HOME)/lib 28 29 WIN_AWT_LIB := $(JDK_OUTPUTDIR)/objs/libawt/awt.lib 30 31 ########################################################################################## 32 33 BUILD_LIBMLIB_SRC := $(JDK_TOPDIR)/src/share/native/sun/awt/medialib 34 BUILD_LIBMLIB_CFLAGS := -D__USE_J2D_NAMES -D__MEDIALIB_OLD_NAMES \ 35 -I$(BUILD_LIBMLIB_SRC) \ 36 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt/medialib 37 38 BUILD_LIBMLIB_LDLIBS := 39 BUILD_LIBMLIB_IMAGE_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libmlib_image/mapfile-vers 40 41 BUILD_LIBMLIB_CFLAGS += -DMLIB_NO_LIBSUNMATH 42 43 ifeq ($(OPENJDK_TARGET_CPU_BITS), 64) 44 BUILD_LIBMLIB_CFLAGS += -DMLIB_OS64BIT 45 endif 46 47 ifneq ($(OPENJDK_TARGET_OS), windows) 48 BUILD_LIBMLIB_LDLIBS += $(LIBM) $(LIBDL) 49 endif 50 51 $(eval $(call SetupNativeCompilation,BUILD_LIBMLIB_IMAGE, \ 52 LIBRARY := mlib_image, \ 53 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 54 SRC := $(BUILD_LIBMLIB_SRC), \ 55 EXCLUDE_FILES := awt_ImagingLib.c mlib_c_ImageBlendTable.c, \ 56 LANG := C, \ 57 OPTIMIZATION := HIGHEST, \ 58 CFLAGS := $(CFLAGS_JDKLIB) \ 59 $(BUILD_LIBMLIB_CFLAGS), \ 60 MAPFILE := $(BUILD_LIBMLIB_IMAGE_MAPFILE), \ 61 LDFLAGS := $(LDFLAGS_JDKLIB) \ 62 $(call SET_SHARED_LIBRARY_ORIGIN), \ 63 LDFLAGS_SUFFIX := $(BUILD_LIBMLIB_LDLIBS) \ 64 $(LDFLAGS_JDKLIB_SUFFIX), \ 65 LDFLAGS_SUFFIX_solaris := -lc, \ 66 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ 67 RC_FLAGS := $(RC_FLAGS) \ 68 -D "JDK_FNAME=mlib_image.dll" \ 69 -D "JDK_INTERNAL_NAME=mlib_image" \ 70 -D "JDK_FTYPE=0x2L", \ 71 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libmlib_image, \ 72 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 73 74 $(BUILD_LIBMLIB_IMAGE): $(BUILD_LIBJAVA) 75 76 BUILD_LIBRARIES += $(BUILD_LIBMLIB_IMAGE) 77 78 ########################################################################################## 79 80 ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc) 81 82 BUILD_LIBMLIB_IMAGE_V_FILES := \ 83 mlib_v_ImageLookUp.c \ 84 mlib_ImageCreate.c \ 85 mlib_ImageAffine.c \ 86 mlib_ImageConvMxN.c \ 87 mlib_ImageConvKernelConvert.c \ 88 mlib_sys.c \ 89 mlib_ImageLookUp_64.c \ 90 mlib_ImageLookUp_Bit.c \ 91 mlib_ImageColorTrue2Index.c \ 92 mlib_c_ImageThresh1_U8.c \ 93 mlib_v_ImageLookUpS16S16Func.c \ 94 mlib_v_ImageLookUpS16S32Func.c \ 95 mlib_v_ImageLookUpS16U16Func.c \ 96 mlib_v_ImageLookUpS16U8Func.c \ 97 mlib_v_ImageLookUpS32S16Func.c \ 98 mlib_v_ImageLookUpS32S32Func.c \ 99 mlib_v_ImageLookUpS32U16Func.c \ 100 mlib_v_ImageLookUpS32U8Func.c \ 101 mlib_v_ImageLookUpSIS16S16Func.c \ 102 mlib_v_ImageLookUpSIS16S32Func.c \ 103 mlib_v_ImageLookUpSIS16U16Func.c \ 104 mlib_v_ImageLookUpSIS16U8Func.c \ 105 mlib_v_ImageLookUpSIS32S16Func.c \ 106 mlib_v_ImageLookUpSIS32S32Func.c \ 107 mlib_v_ImageLookUpSIS32U16Func.c \ 108 mlib_v_ImageLookUpSIS32U8Func.c \ 109 mlib_v_ImageLookUpSIU16S16Func.c \ 110 mlib_v_ImageLookUpSIU16S32Func.c \ 111 mlib_v_ImageLookUpSIU16U16Func.c \ 112 mlib_v_ImageLookUpSIU16U8Func.c \ 113 mlib_v_ImageLookUpSIU8S16Func.c \ 114 mlib_v_ImageLookUpSIU8S32Func.c \ 115 mlib_v_ImageLookUpSIU8U16Func.c \ 116 mlib_v_ImageLookUpSIU8U8Func.c \ 117 mlib_v_ImageLookUpU16S16Func.c \ 118 mlib_v_ImageLookUpU16S32Func.c \ 119 mlib_v_ImageLookUpU16U16Func.c \ 120 mlib_v_ImageLookUpU16U8Func.c \ 121 mlib_v_ImageLookUpU8S16Func.c \ 122 mlib_v_ImageLookUpU8S32Func.c \ 123 mlib_v_ImageLookUpU8U16Func.c \ 124 mlib_v_ImageLookUpU8U8Func.c \ 125 mlib_v_ImageAffineIndex_BC.c \ 126 mlib_v_ImageAffine_BC.c \ 127 mlib_v_ImageAffine_BC_S16.c \ 128 mlib_v_ImageAffine_BC_U16.c \ 129 mlib_v_ImageAffine_BL.c \ 130 mlib_v_ImageAffine_BL_S16.c \ 131 mlib_v_ImageAffine_BL_U16.c \ 132 mlib_v_ImageAffine_NN.c \ 133 mlib_v_ImageFilters.c \ 134 mlib_ImageAffineEdge.c \ 135 mlib_ImageAffine_BC_D64.c \ 136 mlib_ImageAffine_BC_F32.c \ 137 mlib_ImageAffine_BC_S32.c \ 138 mlib_ImageAffine_BL_D64.c \ 139 mlib_ImageAffine_BL_F32.c \ 140 mlib_ImageAffine_BL_S32.c \ 141 mlib_ImageAffine_NN.c \ 142 mlib_ImageAffine_NN_Bit.c \ 143 mlib_ImageFilters.c \ 144 mlib_ImageScanPoly.c \ 145 mlib_ImageConv_8nw.c \ 146 mlib_ImageConv_8ext.c \ 147 mlib_ImageConv_16nw.c \ 148 mlib_ImageConv_16ext.c \ 149 mlib_ImageConv_u16nw.c \ 150 mlib_ImageConv_u16ext.c \ 151 mlib_ImageConv_32nw.c \ 152 mlib_ImageConv_F32nw.c \ 153 mlib_ImageConvMxN_Fp.c \ 154 mlib_ImageConvMxN_ext.c \ 155 mlib_ImageConv_D64nw.c \ 156 mlib_ImageClipping.c \ 157 mlib_ImageConvCopyEdge_Bit.c \ 158 mlib_ImageConvClearEdge_Bit.c \ 159 mlib_ImageConv2x2_f.c \ 160 mlib_ImageConvClearEdge_Fp.c \ 161 mlib_v_ImageConvMxN_8.c \ 162 mlib_v_ImageConvClearEdge.c \ 163 mlib_v_ImageConvCopyEdge.c \ 164 mlib_v_ImageConvMxN_8ext.c \ 165 mlib_v_ImageConvVersion.c \ 166 mlib_v_ImageConv_8nw.c \ 167 mlib_ImageConvCopyEdge_Fp.c \ 168 mlib_v_ImageChannelInsert_1.c \ 169 mlib_v_ImageChannelExtract_43.c \ 170 mlib_v_ImageChannelExtract_1.c \ 171 mlib_ImageCopy_Bit.c \ 172 mlib_v_ImageCopy_f.c \ 173 mlib_ImageUtils.c \ 174 mlib_ImageDivTables.c 175 176 BUILD_LIBMLIB_V_CFLAGS := $(filter-out -DMLIB_NO_LIBSUNMATH, $(BUILD_LIBMLIB_CFLAGS)) 177 178 $(eval $(call SetupNativeCompilation,BUILD_LIBMLIB_IMAGE_V, \ 179 LIBRARY := mlib_image_v, \ 180 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 181 SRC := $(JDK_TOPDIR)/src/share/native/sun/awt/medialib \ 182 $(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib, \ 183 LANG := C, \ 184 INCLUDE_FILES := $(BUILD_LIBMLIB_IMAGE_V_FILES), \ 185 OPTIMIZATION := HIGHEST, \ 186 CFLAGS := -xarch=sparcvis \ 187 $(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib/vis_$(OPENJDK_TARGET_CPU_BITS).il \ 188 $(BUILD_LIBMLIB_V_CFLAGS) \ 189 $(CFLAGS_JDKLIB), \ 190 MAPFILE := $(BUILD_LIBMLIB_IMAGE_MAPFILE), \ 191 LDFLAGS := $(LDFLAGS_JDKLIB) \ 192 $(BUILD_LIBMLIB_LDLIBS) -ljava -ljvm \ 193 $(call SET_SHARED_LIBRARY_ORIGIN), \ 194 LDFLAGS_SUFFIX_solaris := -lc, \ 195 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libmlib_image_v, \ 196 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 197 198 $(BUILD_LIBMLIB_IMAGE_V): $(BUILD_LIBJAVA) 199 200 BUILD_LIBRARIES += $(BUILD_LIBMLIB_IMAGE_V) 201 202 endif 203 204 ########################################################################################## 205 206 LIBAWT_DIRS := \ 207 $(JDK_TOPDIR)/src/share/native/sun/awt \ 208 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt \ 209 $(JDK_TOPDIR)/src/share/native/sun/awt/image \ 210 $(JDK_TOPDIR)/src/share/native/sun/awt/image/gif \ 211 $(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \ 212 $(JDK_TOPDIR)/src/share/native/sun/awt/medialib \ 213 $(JDK_TOPDIR)/src/share/native/sun/awt/debug \ 214 $(JDK_TOPDIR)/src/share/native/sun/awt/utility \ 215 $(JDK_TOPDIR)/src/share/native/sun/java2d \ 216 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d \ 217 $(JDK_TOPDIR)/src/share/native/sun/java2d/loops \ 218 $(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \ 219 $(JDK_TOPDIR)/src/share/native/sun/awt/image \ 220 $(JDK_TOPDIR)/src/share/native/sun/java2d/opengl \ 221 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/opengl \ 222 $(JDK_TOPDIR)/src/share/native/sun/font 223 224 ifeq ($(OPENJDK_TARGET_OS), windows) 225 LIBAWT_DIRS += \ 226 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/windows \ 227 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/windows \ 228 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/d3d 229 else 230 LIBAWT_DIRS += \ 231 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/x11 232 endif 233 234 LIBAWT_CFLAGS += -D__MEDIALIB_OLD_NAMES -D__USE_J2D_NAMES \ 235 $(X_CFLAGS) \ 236 $(foreach dir, $(LIBAWT_DIRS), -I$(dir)) 237 238 LIBAWT_FILES := \ 239 gifdecoder.c \ 240 imageInitIDs.c \ 241 img_globals.c \ 242 SurfaceData.c \ 243 Region.c \ 244 BufImgSurfaceData.c \ 245 Disposer.c \ 246 Trace.c \ 247 GraphicsPrimitiveMgr.c \ 248 Blit.c \ 249 BlitBg.c \ 250 ScaledBlit.c \ 251 FillRect.c \ 252 FillSpans.c \ 253 FillParallelogram.c \ 254 DrawParallelogram.c \ 255 DrawLine.c \ 256 DrawRect.c \ 257 DrawPolygons.c \ 258 DrawPath.c \ 259 FillPath.c \ 260 ProcessPath.c \ 261 MaskBlit.c \ 262 MaskFill.c \ 263 TransformHelper.c \ 264 AlphaMath.c \ 265 AlphaMacros.c \ 266 AnyByte.c \ 267 ByteBinary1Bit.c \ 268 ByteBinary2Bit.c \ 269 ByteBinary4Bit.c \ 270 ByteIndexed.c \ 271 ByteGray.c \ 272 Index8Gray.c \ 273 Index12Gray.c \ 274 AnyShort.c \ 275 Ushort555Rgb.c \ 276 Ushort565Rgb.c \ 277 Ushort4444Argb.c \ 278 Ushort555Rgbx.c \ 279 UshortGray.c \ 280 UshortIndexed.c \ 281 Any3Byte.c \ 282 ThreeByteBgr.c \ 283 AnyInt.c \ 284 IntArgb.c \ 285 IntArgbPre.c \ 286 IntArgbBm.c \ 287 IntRgb.c \ 288 IntBgr.c \ 289 IntRgbx.c \ 290 Any4Byte.c \ 291 FourByteAbgr.c \ 292 FourByteAbgrPre.c \ 293 BufferedMaskBlit.c \ 294 BufferedRenderPipe.c \ 295 ShapeSpanIterator.c \ 296 SpanClipRenderer.c \ 297 awt_ImageRep.c \ 298 awt_ImagingLib.c \ 299 awt_Mlib.c \ 300 awt_parseImage.c \ 301 DataBufferNative.c \ 302 dither.c \ 303 debug_assert.c \ 304 debug_mem.c \ 305 debug_trace.c \ 306 debug_util.c 307 308 ifneq (, $(filter $(OPENJDK_TARGET_OS), solaris linux)) 309 LIBAWT_FILES += awt_LoadLibrary.c initIDs.c img_colors.c 310 endif 311 312 ifeq ($(OPENJDK_TARGET_OS), macosx) 313 LIBAWT_FILES += awt_LoadLibrary.c img_colors.c 314 LIBAWT_DIRS += $(JDK_TOPDIR)/src/macosx/native/com/apple/resources 315 LIBAWT_FILES += awt_LoadLibrary.c MacOSXResourceBundle.m 316 LIBAWT_CFLAGS += -F/System/Library/Frameworks/JavaVM.framework/Frameworks 317 318 LIBAWT_MacOSXResourceBundle.m_CFLAGS := -O0 319 endif 320 321 ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc) 322 LIBAWT_CFLAGS += -DMLIB_ADD_SUFF 323 LIBAWT_CFLAGS += -xarch=sparcvis 324 LIBAWT_CFLAGS += $(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib/vis_$(OPENJDK_TARGET_CPU_BITS).il 325 LIBAWT_CFLAGS += \ 326 -I$(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib \ 327 -I$(JDK_TOPDIR)/src/solaris/native/sun/java2d/medialib \ 328 -I$(JDK_TOPDIR)/src/solaris/native/sun/java2d/loops 329 330 LIBAWT_DIRS += $(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib \ 331 $(JDK_TOPDIR)/src/solaris/native/sun/java2d/loops 332 333 LIBAWT_FILES += \ 334 vis_FuncArray.c \ 335 java2d_Mlib.c \ 336 mlib_ImageCreate.c \ 337 mlib_ImageZoom_NN.c \ 338 mlib_ImageCopy_Bit.c \ 339 mlib_sys.c \ 340 mlib_v_ImageClear.c \ 341 mlib_v_ImageClear_f.c \ 342 mlib_v_ImageConstXor.c \ 343 mlib_v_ImageCopy.c \ 344 mlib_v_ImageCopy_f.c \ 345 mlib_v_ImageXor.c \ 346 mlib_v_ImageZoom_NN_f.c \ 347 vis_Interp.c \ 348 vis_AlphaMacros.c \ 349 vis_AlphaMaskBlit.c \ 350 vis_AlphaMaskFill.c \ 351 vis_ByteGray.c \ 352 vis_ByteGray_FromRgb.c \ 353 vis_ByteGray_Mask.c \ 354 vis_ByteIndexed.c \ 355 vis_DrawLine.c \ 356 vis_FourByteAbgr.c \ 357 vis_IntArgb.c \ 358 vis_IntArgbPre.c \ 359 vis_IntArgbPre_Mask.c \ 360 vis_IntBgr.c \ 361 vis_IntRgb.c \ 362 vis_IntRgbx.c \ 363 vis_SrcMaskFill.c \ 364 vis_SrcOverMaskBlit.c \ 365 vis_SrcOverMaskFill.c \ 366 vis_FourByteAbgrPre.c \ 367 vis_GlyphList.c \ 368 vis_GlyphListXor.c \ 369 vis_IntArgbBm.c \ 370 vis_ThreeByteBgr.c \ 371 vis_UshortGray.c \ 372 vis_UshortGray_FromRgb.c \ 373 vis_XorBlit.c \ 374 mlib_v_ImageCopy_blk.s 375 376 ifeq ($(OPENJDK_TARGET_CPU), sparcv9) 377 LIBAWT_ASFLAGS = -P -xarch=v9a 378 else 379 LIBAWT_ASFLAGS = -P -xarch=v8plusa 380 endif 381 else 382 LIBAWT_FILES += MapAccelFunc.c 383 endif 384 385 ifneq ($(OPENJDK_TARGET_OS), solaris) 386 LIBAWT_CFLAGS += -DMLIB_NO_LIBSUNMATH 387 endif 388 389 LIBAWT_LANG := C 390 391 ifeq ($(OPENJDK_TARGET_OS), windows) 392 LIBAWT_FILES += AccelGlyphCache.c \ 393 ShaderList.c \ 394 CmdIDList.cpp \ 395 Hashtable.cpp \ 396 GDIHashtable.cpp \ 397 Devices.cpp \ 398 ObjectList.cpp \ 399 GDIBlitLoops.cpp \ 400 GDIRenderer.cpp \ 401 GDIWindowSurfaceData.cpp \ 402 WindowsFlags.cpp \ 403 WPrinterJob.cpp \ 404 awt_%.cpp \ 405 D3DBlitLoops.cpp \ 406 D3DBufImgOps.cpp \ 407 D3DContext.cpp \ 408 D3DGlyphCache.cpp \ 409 D3DGraphicsDevice.cpp \ 410 D3DMaskBlit.cpp \ 411 D3DMaskCache.cpp \ 412 D3DMaskFill.cpp \ 413 D3DPipelineManager.cpp \ 414 D3DPaints.cpp \ 415 D3DRenderer.cpp \ 416 D3DRenderQueue.cpp \ 417 D3DResourceManager.cpp \ 418 D3DSurfaceData.cpp \ 419 D3DTextRenderer.cpp \ 420 D3DVertexCacher.cpp \ 421 ShellFolder2.cpp \ 422 ThemeReader.cpp \ 423 ComCtl32Util.cpp \ 424 DllUtil.cpp \ 425 initIDs.cpp \ 426 MouseInfo.cpp \ 427 rect.c \ 428 OGLBlitLoops.c \ 429 OGLBufImgOps.c \ 430 OGLContext.c \ 431 OGLFuncs.c \ 432 OGLMaskBlit.c \ 433 OGLMaskFill.c \ 434 OGLPaints.c \ 435 OGLRenderQueue.c \ 436 OGLRenderer.c \ 437 OGLSurfaceData.c \ 438 OGLTextRenderer.c \ 439 OGLVertexCache.c \ 440 WGLGraphicsConfig.c \ 441 WGLSurfaceData.c 442 443 LIBAWT_LANG := C++ 444 LIBAWT_CFLAGS += -EHsc -DUNICODE -D_UNICODE 445 ifeq ($(OPENJDK_TARGET_CPU_BITS), 64) 446 LIBAWT_CFLAGS += -DMLIB_OS64BIT 447 endif 448 449 ifdef OPENJDK 450 LIBAWT_RC_FLAGS := -i "$(JDK_TOPDIR)/src/windows/resource/icons" 451 else 452 LIBAWT_RC_FLAGS := -i "$(JDK_TOPDIR)/src/closed/windows/native/sun/windows" 453 endif 454 LIBAWT_VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/native/sun/windows/awt.rc 455 endif 456 457 ifeq ($(MILESTONE), internal) 458 LIBAWT_CFLAGS += -DINTERNAL_BUILD 459 endif 460 461 LIBAWT_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libawt/mapfile-vers 462 ifeq ($(OPENJDK_TARGET_OS), linux) 463 LIBAWT_MAPFILE := 464 endif 465 466 $(eval $(call SetupNativeCompilation,BUILD_LIBAWT, \ 467 LIBRARY := awt, \ 468 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 469 SRC := $(LIBAWT_DIRS), \ 470 INCLUDE_FILES := $(LIBAWT_FILES), \ 471 LANG := $(LIBAWT_LANG), \ 472 OPTIMIZATION := LOW, \ 473 CFLAGS := $(CFLAGS_JDKLIB) $(LIBAWT_CFLAGS), \ 474 ASFLAGS := $(LIBAWT_ASFLAGS), \ 475 MAPFILE := $(LIBAWT_MAPFILE), \ 476 LDFLAGS := $(LDFLAGS_JDKLIB) $(call SET_SHARED_LIBRARY_ORIGIN), \ 477 LDFLAGS_solaris := -R/usr/dt/lib$(OPENJDK_TARGET_CPU_ISADIR) -R$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR), \ 478 LDFLAGS_SUFFIX_linux := -ljvm $(LIBM) $(LIBDL) -ljava, \ 479 LDFLAGS_SUFFIX_solaris := -ljvm $(LIBM) $(LIBDL) -ljava -lc, \ 480 LDFLAGS_SUFFIX_macosx := -lmlib_image -ljvm $(LIBM) \ 481 -framework Cocoa \ 482 -framework OpenGL \ 483 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ 484 -framework JavaNativeFoundation \ 485 -framework JavaRuntimeSupport \ 486 -framework ApplicationServices \ 487 -framework AudioToolbox \ 488 -ljava, \ 489 LDFLAGS_SUFFIX_windows := kernel32.lib user32.lib gdi32.lib winspool.lib \ 490 imm32.lib ole32.lib uuid.lib shell32.lib \ 491 comdlg32.lib winmm.lib comctl32.lib shlwapi.lib \ 492 delayimp.lib jvm.lib $(WIN_JAVA_LIB) advapi32.lib \ 493 -DELAYLOAD:user32.dll -DELAYLOAD:gdi32.dll \ 494 -DELAYLOAD:shell32.dll -DELAYLOAD:winmm.dll \ 495 -DELAYLOAD:winspool.drv -DELAYLOAD:imm32.dll \ 496 -DELAYLOAD:ole32.dll -DELAYLOAD:comdlg32.dll \ 497 -DELAYLOAD:comctl32.dll -DELAYLOAD:shlwapi.dll, \ 498 VERSIONINFO_RESOURCE := $(LIBAWT_VERSIONINFO_RESOURCE), \ 499 RC_FLAGS := $(RC_FLAGS) $(LIBAWT_RC_FLAGS) \ 500 -D "JDK_FNAME=awt.dll" \ 501 -D "JDK_INTERNAL_NAME=awt" \ 502 -D "JDK_FTYPE=0x2L", \ 503 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libawt, \ 504 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 505 506 $(BUILD_LIBAWT): $(BUILD_LIBJAVA) 507 508 ifeq ($(OPENJDK_TARGET_OS), macosx) 509 $(BUILD_LIBAWT): $(BUILD_LIBMLIB_IMAGE) 510 endif 511 512 BUILD_LIBRARIES += $(BUILD_LIBAWT) 513 514 ########################################################################################## 515 516 # TODO!! 517 # Even though this variable as a general name, it is 518 # only used on macos, in fontpath.c, as prefix for where to find fonts. 519 # 520 # It's used for libawt_headless _and_ libawt_xawt 521 # 522 X11_PATH := /usr/X11R6 523 524 ifneq ($(OPENJDK_TARGET_OS), windows) 525 ifndef BUILD_HEADLESS_ONLY 526 527 LIBAWT_XAWT_DIRS := \ 528 $(JDK_TOPDIR)/src/share/native/sun/awt/debug \ 529 $(JDK_TOPDIR)/src/share/native/sun/awt/utility \ 530 $(JDK_TOPDIR)/src/share/native/sun/font \ 531 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/font \ 532 $(JDK_TOPDIR)/src/share/native/sun/java2d/opengl \ 533 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt \ 534 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/opengl \ 535 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/x11 \ 536 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/xawt \ 537 538 LIBAWT_XAWT_CFLAGS := -DXAWT -DXAWT_HACK \ 539 -DX11_PATH=\"$(X11_PATH)\" -DPACKAGE_PATH=\"$(PACKAGE_PATH)\" \ 540 $(CUPS_CFLAGS) \ 541 $(foreach dir, $(LIBAWT_XAWT_DIRS), -I$(dir)) \ 542 -I$(JDK_TOPDIR)/src/share/native/sun/java2d \ 543 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d \ 544 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \ 545 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \ 546 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image \ 547 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \ 548 -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \ 549 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/jdga 550 551 ifeq ($(OPENJDK_TARGET_OS), solaris) 552 LIBAWT_XAWT_CFLAGS += -DFUNCPROTO=15 553 endif 554 555 ifeq ($(OPENJDK_TARGET_OS), linux) 556 ifndef OPENJDK 557 include $(JDK_TOPDIR)/make/closed/xawt.gmk 558 endif 559 560 ifeq ($(DISABLE_XRENDER), true) 561 LIBAWT_XAWT_CFLAGS += -DDISABLE_XRENDER_BY_DEFAULT=true 562 endif 563 endif 564 565 ifeq ($(MILESTONE), internal) 566 LIBAWT_XAWT_CFLAGS += -DINTERNAL_BUILD 567 endif 568 569 LIBAWT_XAWT_FILES := \ 570 XlibWrapper.c \ 571 XWindow.c \ 572 XToolkit.c \ 573 X11Color.c \ 574 X11SurfaceData.c \ 575 awt_GraphicsEnv.c \ 576 awt_InputMethod.c \ 577 robot_common.c \ 578 awt_Robot.c \ 579 list.c \ 580 multiVis.c \ 581 initIDs.c \ 582 awt_util.c \ 583 awt_Desktop.c \ 584 awt_UNIXToolkit.c \ 585 X11FontScaler_md.c \ 586 X11TextRenderer_md.c \ 587 fontpath.c \ 588 awt_Insets.c \ 589 awt_Event.c \ 590 X11Renderer.c \ 591 X11PMBlitLoops.c \ 592 OGLBlitLoops.c \ 593 OGLBufImgOps.c \ 594 OGLContext.c \ 595 OGLFuncs.c \ 596 OGLMaskBlit.c \ 597 OGLMaskFill.c \ 598 OGLPaints.c \ 599 OGLRenderQueue.c \ 600 OGLRenderer.c \ 601 OGLSurfaceData.c \ 602 OGLTextRenderer.c \ 603 OGLVertexCache.c \ 604 GLXGraphicsConfig.c \ 605 GLXSurfaceData.c \ 606 AccelGlyphCache.c \ 607 awt_Font.c \ 608 multi_font.c \ 609 awt_AWTEvent.c \ 610 awt_DrawingSurface.c \ 611 jawt.c \ 612 CUPSfuncs.c \ 613 debug_assert.c \ 614 debug_mem.c \ 615 debug_trace.c \ 616 debug_util.c \ 617 awt_Plugin.c \ 618 gnome_interface.c \ 619 gtk2_interface.c \ 620 swing_GTKEngine.c \ 621 swing_GTKStyle.c \ 622 rect.c \ 623 sun_awt_X11_GtkFileDialogPeer.c \ 624 XRSurfaceData.c \ 625 XRBackendNative.c 626 627 LIBAWT_XAWT_LDFLAGS_SUFFIX := $(LIBM) -lawt -lXext -lX11 -lXrender $(LIBDL) -lXtst -lXi -ljava -ljvm -lc 628 629 ifeq ($(OPENJDK_TARGET_OS), linux) 630 # To match old build, add this to LDFLAGS instead of suffix. 631 LIBAWT_XAWT_LDFLAGS += -lpthread 632 endif 633 634 ifeq ($(OPENJDK_TARGET_OS), macosx) 635 LIBAWT_XAWT_LDFLAGS_SUFFIX += -lpthread 636 endif 637 638 # On macosx, the shared library origin is set twice for this lib. 639 $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_XAWT, \ 640 LIBRARY := awt_xawt, \ 641 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 642 SRC := $(LIBAWT_XAWT_DIRS), \ 643 INCLUDE_FILES := $(LIBAWT_XAWT_FILES), \ 644 LANG := C, \ 645 OPTIMIZATION := LOW, \ 646 CFLAGS := $(CFLAGS_JDKLIB) $(LIBAWT_XAWT_CFLAGS) \ 647 $(X_CFLAGS), \ 648 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libawt_xawt/mapfile-vers, \ 649 LDFLAGS := $(LDFLAGS_JDKLIB) \ 650 $(X_LIBS) $(LIBAWT_XAWT_LDFLAGS), \ 651 LDFLAGS_linux := $(call SET_SHARED_LIBRARY_ORIGIN) \ 652 $(call SET_SHARED_LIBRARY_ORIGIN,/..), \ 653 LDFLAGS_solaris := -L$(OPENWIN_HOME)/sfw/lib$(OPENJDK_TARGET_CPU_ISADIR) \ 654 -L$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) \ 655 -R$(OPENWIN_HOME)/sfw/lib$(OPENJDK_TARGET_CPU_ISADIR) \ 656 -R$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) \ 657 -R/usr/dt/lib$(OPENJDK_TARGET_CPU_ISADIR) \ 658 $(call SET_SHARED_LIBRARY_ORIGIN) \ 659 $(call SET_SHARED_LIBRARY_ORIGIN,/..), \ 660 LDFLAGS_macosx := $(call SET_SHARED_LIBRARY_ORIGIN) \ 661 $(call SET_SHARED_LIBRARY_ORIGIN). \ 662 $(call SET_SHARED_LIBRARY_ORIGIN) \ 663 $(call SET_SHARED_LIBRARY_ORIGIN)., \ 664 LDFLAGS_SUFFIX := $(LIBAWT_XAWT_LDFLAGS_SUFFIX), \ 665 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ 666 RC_FLAGS := $(RC_FLAGS) \ 667 -D "JDK_FNAME=xawt.dll" \ 668 -D "JDK_INTERNAL_NAME=xawt" \ 669 -D "JDK_FTYPE=0x2L", \ 670 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libawt_xawt, \ 671 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 672 673 $(BUILD_LIBAWT_XAWT): $(BUILD_LIBJAVA) 674 675 $(BUILD_LIBAWT_XAWT): $(BUILD_LIBAWT) 676 677 BUILD_LIBRARIES += $(BUILD_LIBAWT_XAWT) 678 679 endif 680 endif 681 682 ########################################################################################## 683 684 # TODO: Update awt lib path when awt is converted 685 $(eval $(call SetupNativeCompilation,BUILD_LIBLCMS, \ 686 LIBRARY := lcms, \ 687 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 688 SRC := $(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms, \ 689 LANG := C, \ 690 OPTIMIZATION := HIGHEST, \ 691 CFLAGS := $(filter-out -xc99=%none, $(CFLAGS_JDKLIB)) \ 692 $(SHARED_LIBRARY_FLAGS) \ 693 -I$(JDK_TOPDIR)/src/share/native/sun/java2d \ 694 -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug, \ 695 CFLAGS_solaris := -xc99=no_lib, \ 696 CFLAGS_windows := -DCMS_IS_WINDOWS_, \ 697 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/liblcms/mapfile-vers, \ 698 LDFLAGS := $(LDFLAGS_JDKLIB) \ 699 $(call SET_SHARED_LIBRARY_ORIGIN), \ 700 LDFLAGS_solaris := /usr/lib$(OPENJDK_TARGET_CPU_ISADIR)/libm.so.2, \ 701 LDFLAGS_windows := $(WIN_AWT_LIB) $(WIN_JAVA_LIB), \ 702 LDFLAGS_SUFFIX_solaris := -lawt -ljava -ljvm -lc, \ 703 LDFLAGS_SUFFIX_macosx := $(LIBM) -lawt -ljava -ljvm, \ 704 LDFLAGS_SUFFIX_linux := -lm -lawt -ljava -ljvm, \ 705 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ 706 RC_FLAGS := $(RC_FLAGS) \ 707 -D "JDK_FNAME=lcms.dll" \ 708 -D "JDK_INTERNAL_NAME=lcms" \ 709 -D "JDK_FTYPE=0x2L", \ 710 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/liblcms, \ 711 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 712 713 BUILD_LIBRARIES += $(BUILD_LIBLCMS) 714 715 $(BUILD_LIBLCMS): $(BUILD_LIBAWT) 716 717 ########################################################################################## 718 719 ifdef OPENJDK 720 BUILD_LIBJPEG_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/mapfile-vers 721 else 722 BUILD_LIBJPEG_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/mapfile-vers-closed 723 BUILD_LIBJPEG_CLOSED_SRC := $(JDK_TOPDIR)/src/closed/share/native/sun/awt/image/jpeg 724 BUILD_LIBJPEG_CLOSED_INCLUDES := -I$(BUILD_LIBJPEG_CLOSED_SRC) 725 endif 726 727 BUILD_LIBJPEG_REORDER := 728 ifeq ($(OPENJDK_TARGET_OS), solaris) 729 ifneq ($(OPENJDK_TARGET_CPU), x86_64) 730 BUILD_LIBJPEG_REORDER := $(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/reorder-$(OPENJDK_TARGET_CPU) 731 endif 732 endif 733 734 # Suppress gcc warnings like "variable might be clobbered by 'longjmp' 735 # or 'vfork'": this warning indicates that some variable is placed to 736 # a register by optimized compiler and it's value might be lost on longjmp(). 737 # Recommended way to avoid such warning is to declare the variable as 738 # volatile to prevent the optimization. However, this approach does not 739 # work because we have to declare all variables as volatile in result. 740 #ifndef CROSS_COMPILE_ARCH 741 # CC_43_OR_NEWER := \ 742 # $(shell $(EXPR) $(CC_MAJORVER) \> 4 \| \ 743 # \( $(CC_MAJORVER) = 4 \& $(CC_MINORVER) \>= 3 \) ) 744 # ifeq ($(CC_43_OR_NEWER), 1) 745 # BUILD_LIBJPEG_CFLAGS_linux += -Wno-clobbered 746 # endif 747 #endif 748 749 $(eval $(call SetupNativeCompilation,BUILD_LIBJPEG, \ 750 LIBRARY := jpeg, \ 751 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 752 SRC := $(BUILD_LIBJPEG_CLOSED_SRC) \ 753 $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg, \ 754 LANG := C, \ 755 OPTIMIZATION := HIGHEST, \ 756 CFLAGS := $(CFLAGS_JDKLIB) \ 757 $(BUILD_LIBJPEG_CLOSED_INCLUDES) \ 758 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg, \ 759 MAPFILE := $(BUILD_LIBJPEG_MAPFILE), \ 760 LDFLAGS := $(LDFLAGS_JDKLIB) \ 761 $(call SET_SHARED_LIBRARY_ORIGIN), \ 762 LDFLAGS_windows := $(WIN_JAVA_LIB) jvm.lib, \ 763 LDFLAGS_SUFFIX := $(LDFLAGS_JDKLIB_SUFFIX), \ 764 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ 765 RC_FLAGS := $(RC_FLAGS) \ 766 -D "JDK_FNAME=jpeg.dll" \ 767 -D "JDK_INTERNAL_NAME=jpeg" \ 768 -D "JDK_FTYPE=0x2L", \ 769 REORDER := $(BUILD_LIBJPEG_REORDER), \ 770 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libjpeg, \ 771 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 772 773 $(BUILD_LIBJPEG): $(BUILD_LIBJAVA) 774 775 BUILD_LIBRARIES += $(BUILD_LIBJPEG) 776 777 ########################################################################################## 778 779 ifndef OPENJDK 780 FONT_HEADERS := -I$(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k 781 BUILD_LIBFONTMANAGER_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libfontmanager/mapfile-vers 782 LIBFONTMANAGER_EXCLUDE_FILES += freetypeScaler.c 783 else 784 FONT_HEADERS := $(FREETYPE2_CFLAGS) 785 BUILD_LIBFONTMANAGER_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libfontmanager/mapfile-vers.openjdk 786 BUILD_LIBFONTMANAGER_FONTLIB := $(FREETYPE2_LIBS) 787 endif 788 789 LIBFONTMANAGER_OPTIMIZATION := HIGH 790 791 ifeq ($(OPENJDK_TARGET_OS), windows) 792 LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \ 793 X11TextRenderer.c 794 LIBFONTMANAGER_OPTIMIZATION := HIGHEST 795 else 796 LIBFONTMANAGER_EXCLUDE_FILES += fontpath.c \ 797 lcdglyph.c 798 endif 799 800 BUILD_LIBFONTMANAGER_CFLAGS_COMMON := \ 801 $(X_CFLAGS) \ 802 -DLE_STANDALONE -DHEADLESS \ 803 $(FONT_HEADERS) \ 804 -I$(JDK_TOPDIR)/src/share/native/sun/font \ 805 -I$(JDK_TOPDIR)/src/share/native/sun/font/layout \ 806 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \ 807 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt \ 808 -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \ 809 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \ 810 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \ 811 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d \ 812 -I$(JDK_TOPDIR)/src/share/native/sun/java2d 813 814 # Turn off aliasing with GCC for ExtensionSubtables.cpp 815 ifeq ($(OPENJDK_TARGET_OS), linux) 816 BUILD_LIBFONTMANAGER_ExtensionSubtables.cpp_CXXFLAGS := -fno-strict-aliasing 817 endif 818 819 $(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER, \ 820 LIBRARY := fontmanager, \ 821 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 822 SRC := $(JDK_TOPDIR)/src/share/native/sun/font \ 823 $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/font, \ 824 EXCLUDE_FILES := $(LIBFONTMANAGER_EXCLUDE_FILES) \ 825 AccelGlyphCache.c, \ 826 LANG := C++, \ 827 CFLAGS := $(CFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON), \ 828 CXXFLAGS := $(CXXFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON), \ 829 OPTIMIZATION := $(LIBFONTMANAGER_OPTIMIZATION), \ 830 CFLAGS_windows = -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/windows \ 831 -DCC_NOEX, \ 832 MAPFILE := $(BUILD_LIBFONTMANAGER_MAPFILE), \ 833 LDFLAGS := $(subst -Xlinker -z -Xlinker defs,,$(LDFLAGS_JDKLIB)) $(LDFLAGS_CXX_JDK) \ 834 $(call SET_SHARED_LIBRARY_ORIGIN), \ 835 LDFLAGS_SUFFIX := $(BUILD_LIBFONTMANAGER_FONTLIB), \ 836 LDFLAGS_SUFFIX_linux := -lawt $(LIBM) $(LIBCXX) -ljava -ljvm -lc, \ 837 LDFLAGS_SUFFIX_solaris := -lawt -lawt_xawt -lc $(LIBM) $(LIBCXX) -ljava -ljvm, \ 838 LDFLAGS_SUFFIX_macosx := -lawt $(LIBM) $(LIBCXX) -undefined dynamic_lookup \ 839 -ljava -ljvm, \ 840 LDFLAGS_SUFFIX_windows := $(WIN_JAVA_LIB) advapi32.lib user32.lib gdi32.lib \ 841 $(WIN_AWT_LIB), \ 842 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ 843 RC_FLAGS := $(RC_FLAGS) \ 844 -D "JDK_FNAME=fontmanager.dll" \ 845 -D "JDK_INTERNAL_NAME=fontmanager" \ 846 -D "JDK_FTYPE=0x2L", \ 847 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libfontmanager, \ 848 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 849 850 $(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT) 851 852 ifneq (, $(findstring $(OPENJDK_TARGET_OS), solaris macosx)) 853 $(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT_XAWT) 854 endif 855 856 BUILD_LIBRARIES += $(BUILD_LIBFONTMANAGER) 857 858 ########################################################################################## 859 860 ifndef OPENJDK 861 862 #ifeq ($(OPENJDK_TARGET_OS), linux) 863 # ifeq ("$(CC_VER_MAJOR)", "3") 864 # OTHER_LDLIBS += -Wl,-Bstatic -lgcc_eh -Wl,-Bdynamic 865 # endif 866 #endif 867 # 868 # The resulting size of the t2k lib file is (at least on linux) dependant on the order of 869 # the input .o files. Because of this the new build will differ in size to the old build. 870 BUILD_LIBT2K_CFLAGS_COMMON := -I$(JDK_TOPDIR)/src/share/native/sun/font \ 871 -I$(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k \ 872 -I$(JDK_TOPDIR)/src/closed/share/native/sun/font \ 873 -I$(JDK_TOPDIR)/src/share/share/native/sun/font \ 874 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/font \ 875 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \ 876 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \ 877 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d \ 878 -I$(JDK_TOPDIR)/src/share/native/sun/java2d 879 880 $(eval $(call SetupNativeCompilation,BUILD_LIBT2K, \ 881 LIBRARY := t2k, \ 882 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 883 SRC := $(JDK_TOPDIR)/src/closed/share/native/sun/font \ 884 $(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k \ 885 $(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k/ttHints, \ 886 EXCLUDE_FILES := orion.c, \ 887 LANG := C++, \ 888 OPTIMIZATION := HIGH, \ 889 CFLAGS := $(CFLAGS_JDKLIB) $(BUILD_LIBT2K_CFLAGS_COMMON), \ 890 CXXFLAGS := $(CXXFLAGS_JDKLIB) $(BUILD_LIBT2K_CFLAGS_COMMON), \ 891 CFLAGS_windows = -DCC_NOEX, \ 892 CXXFLAGS_windows = -DCC_NOEX, \ 893 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libt2k/mapfile-vers, \ 894 LDFLAGS := $(LDFLAGS_JDKLIB) $(LDFLAGS_CXX_JDK) \ 895 $(call SET_SHARED_LIBRARY_ORIGIN), \ 896 LDFLAGS_windows := user32.lib $(JDK_OUTPUTDIR)/objs/libfontmanager/fontmanager.lib, \ 897 LDFLAGS_SUFFIX_posix := $(LIBM) $(LIBCXX) -lfontmanager -ljava -ljvm -lc, \ 898 LDFLAGS_SUFFIX_solaris := -lawt -lawt_xawt, \ 899 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ 900 RC_FLAGS := $(RC_FLAGS) \ 901 -D "JDK_FNAME=t2k.dll" \ 902 -D "JDK_INTERNAL_NAME=t2k" \ 903 -D "JDK_FTYPE=0x2L", \ 904 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libt2k, \ 905 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 906 907 # t2k is linked against fontmanager 908 $(BUILD_LIBT2K): $(BUILD_LIBFONTMANAGER) 909 910 BUILD_LIBRARIES += $(BUILD_LIBT2K) 911 endif 912 913 ########################################################################################## 914 915 ifeq ($(OPENJDK_TARGET_OS), windows) 916 ifeq ($(OPENJDK_TARGET_CPU), x86) 917 KERNEL32_LIB := kernel32.lib 918 endif 919 $(eval $(call SetupNativeCompilation,BUILD_LIBJAWT, \ 920 LIBRARY := jawt, \ 921 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 922 SRC := $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/windows, \ 923 INCLUDE_FILES := jawt.cpp, \ 924 LANG := C++, \ 925 OPTIMIZATION := LOW, \ 926 CFLAGS := $(CXXFLAGS_JDKLIB) \ 927 -EHsc -DUNICODE -D_UNICODE \ 928 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/windows \ 929 -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \ 930 -I$(JDK_TOPDIR)/src/share/native/sun/java2d \ 931 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \ 932 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d/windows, \ 933 LDFLAGS := $(LDFLAGS_JDKLIB) $(KERNEL32_LIB) $(LDFLAGS_CXX_JDK) \ 934 advapi32.lib $(WIN_AWT_LIB), \ 935 LDFLAGS_SUFFIX := $(LDFLAGS_JDKLIB_SUFFIX), \ 936 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ 937 RC_FLAGS := $(RC_FLAGS) \ 938 -D "JDK_FNAME=jawt.dll" \ 939 -D "JDK_INTERNAL_NAME=jawt" \ 940 -D "JDK_FTYPE=0x2L", \ 941 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libjawt, \ 942 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 943 944 $(BUILD_LIBJAWT): $(BUILD_LIBAWT) 945 946 $(JDK_OUTPUTDIR)/lib/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX): $(BUILD_LIBJAWT) 947 $(ECHO) Copying $(@F) 948 $(CP) $(JDK_OUTPUTDIR)/objs/libjawt/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX) $@ 949 950 BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/lib/$(LIBRARY_PREFIX)jawt$(STATIC_LIBRARY_SUFFIX) 951 952 else # OPENJDK_TARGET_OS not windows 953 954 JAWT_LIBS := 955 ifneq ($(OPENJDK_TARGET_OS), solaris) 956 JAWT_LIBS += -lawt 957 endif 958 959 ifndef BUILD_HEADLESS_ONLY 960 JAWT_LIBS += -lawt_xawt 961 else 962 JAWT_LIBS += -lawt_headless 963 HEADLESS_CFLAG += -DHEADLESS 964 endif 965 966 JAWT_FILES := jawt.c 967 ifeq ($(OPENJDK_TARGET_OS), macosx) 968 JAWT_FILES := jawt.m 969 JAWT_LIBS := -lawt_lwawt 970 endif 971 972 $(eval $(call SetupNativeCompilation,BUILD_LIBJAWT, \ 973 LIBRARY := jawt, \ 974 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 975 SRC := $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt \ 976 $(JDK_TOPDIR)/src/macosx/native/sun/awt, \ 977 INCLUDE_FILES := $(JAWT_FILES), \ 978 LANG := C, \ 979 OPTIMIZATION := LOW, \ 980 CFLAGS := $(CFLAGS_JDKLIB), \ 981 CFLAGS_linux := $(HEADLESS_CFLAG), \ 982 CFLAGS_macosx := -I$(JDK_TOPDIR)/src/solaris/native/sun/awt, \ 983 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjawt/mapfile-vers, \ 984 LDFLAGS := $(LDFLAGS_JDKLIB) \ 985 $(call SET_SHARED_LIBRARY_ORIGIN), \ 986 LDFLAGS_solaris := -L$(OPENWIN_HOME)/sfw/lib$(OPENJDK_TARGET_CPU_ISADIR) -L$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR), \ 987 LDFLAGS_SUFFIX_linux := $(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX), \ 988 LDFLAGS_SUFFIX_solaris := $(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX) -lXrender, \ 989 LDFLAGS_SUFFIX_macosx := -Xlinker -rpath -Xlinker @loader_path $(JAWT_LIBS) \ 990 -framework Cocoa $(LDFLAGS_JDKLIB_SUFFIX), \ 991 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libjawt, \ 992 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 993 994 ifndef BUILD_HEADLESS_ONLY 995 $(BUILD_LIBJAWT): $(BUILD_LIBAWT_XAWT) 996 else 997 $(BUILD_LIBJAWT): $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_headless$(SHARED_LIBRARY_SUFFIX) 998 endif 999 1000 ifeq ($(OPENJDK_TARGET_OS), macosx) 1001 $(BUILD_LIBJAWT): $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_lwawt$(SHARED_LIBRARY_SUFFIX) 1002 endif 1003 1004 endif # OPENJDK_TARGET_OS 1005 1006 BUILD_LIBRARIES += $(BUILD_LIBJAWT) 1007 1008 ########################################################################################## 1009 1010 ifndef OPENJDK 1011 1012 BUILD_LIBKCMS_EXCLUDE_FILES := 1013 ifeq ($(OPENJDK_TARGET_OS), windows) 1014 BUILD_LIBKCMS_EXCLUDE_FILES += ukcpmgr.c unixmem.c 1015 else 1016 BUILD_LIBKCMS_EXCLUDE_FILES += cmmdll.c registry.c spxffile.c sysinfo.c winmem.c wkcpmgr.c 1017 endif 1018 1019 BUILD_LIBKCMS_FLAGS := $(CFLAGS_JDKLIB) 1020 1021 ifeq ($(OPENJDK_TARGET_OS), solaris) 1022 # This particular library uses a feature called PIC_CODE_SMALL (on solaris) 1023 # implement it like this...since it's only used here 1024 BUILD_LIBKCMS_FLAGS := $(patsubst -KPIC, -Kpic, $(BUILD_LIBKCMS_FLAGS)) 1025 else ifeq ($(OPENJDK_TARGET_CPU_ARCH), ppc) 1026 BUILD_LIBKCMS_FLAGS := $(patsubst -fPIC, -fpic, $(BUILD_LIBKCMS_FLAGS)) 1027 endif 1028 1029 $(eval $(call SetupNativeCompilation,BUILD_LIBKCMS, \ 1030 LIBRARY := kcms, \ 1031 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 1032 SRC := $(JDK_TOPDIR)/src/closed/share/native/sun/java2d/cmm/kcms, \ 1033 LANG := C, \ 1034 EXCLUDE_FILES := $(BUILD_LIBKCMS_EXCLUDE_FILES), \ 1035 OPTIMIZATION := LOW, \ 1036 CFLAGS := $(BUILD_LIBKCMS_FLAGS) \ 1037 -DJAVACMM -DFUT_CALC_EX -DNO_FUT_GCONST, \ 1038 CFLAGS_linux := -Wno-missing-field-initializers, \ 1039 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libkcms/mapfile-vers, \ 1040 LDFLAGS := $(LDFLAGS_JDKLIB) \ 1041 $(call SET_SHARED_LIBRARY_ORIGIN), \ 1042 LDFLAGS_SUFFIX_linux := -lc -lpthread, \ 1043 LDFLAGS_SUFFIX_solaris := -lc, \ 1044 LDFLAGS_SUFFIX_windows := $(WIN_JAVA_LIB) advapi32.lib user32.lib version.lib, \ 1045 LDFLAGS_SUFFIX_posix := -lm -ljava -ljvm, \ 1046 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/closed/share/native/sun/java2d/cmm/kcms/cmm.rc, \ 1047 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/closed/share/native/sun/java2d/cmm/kcms/cmm.rc, \ 1048 RC_FLAGS := $(RC_FLAGS) \ 1049 -D "JDK_FNAME=kcms.dll" \ 1050 -D "JDK_INTERNAL_NAME=kcms" \ 1051 -D "JDK_FTYPE=0x2L", \ 1052 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libkcms, \ 1053 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 1054 1055 $(BUILD_LIBKCMS): $(BUILD_LIBJAVA) 1056 1057 BUILD_LIBRARIES += $(BUILD_LIBKCMS) 1058 1059 endif 1060 1061 ########################################################################################## 1062 1063 ifndef OPENJDK 1064 ifeq ($(OPENJDK_TARGET_OS), solaris) 1065 ifneq ($(OPENJDK_TARGET_CPU), x86_64) 1066 1067 ifeq ($(shell if test "$(OS_VERSION_MAJOR)" -eq 5 -a "$(OS_VERSION_MINOR)" -le 10; then $(ECHO) ok; fi), ok) 1068 1069 SUNWJDGA_MAPFILE := 1070 ifeq ($(OPENJDK_TARGET_CPU_ARCH), sparc) 1071 SUNWJDGA_MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libjdga/mapfile-vers 1072 endif 1073 1074 $(eval $(call SetupNativeCompilation,BUILD_LIBSUNWJDGA, \ 1075 LIBRARY := sunwjdga, \ 1076 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 1077 SRC := $(JDK_TOPDIR)/src/solaris/native/sun/jdga, \ 1078 LANG := C, \ 1079 OPTIMIZATION := LOW, \ 1080 CFLAGS := $(CFLAGS_JDKLIB) \ 1081 -I$(JDK_TOPDIR)/src/share/javavm/export \ 1082 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/javavm/export \ 1083 -I$(OPENWIN_HOME)/include, \ 1084 MAPFILE := $(SUNWJDGA_MAPFILE), \ 1085 LDFLAGS := $(LDFLAGS_JDKLIB) \ 1086 $(call SET_SHARED_LIBRARY_ORIGIN), \ 1087 LDFLAGS_SUFFIX := -L$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) -R$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) -ldga -lX11 $(LIBDL) -lc, \ 1088 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libsunwjdga, \ 1089 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 1090 1091 BUILD_LIBRARIES += $(BUILD_LIBSUNWJDGA) 1092 1093 endif 1094 endif 1095 endif 1096 endif 1097 1098 ########################################################################################## 1099 1100 ifeq ($(BUILD_HEADLESS), true) 1101 ifneq ($(OPENJDK_TARGET_OS), windows) 1102 1103 LIBAWT_HEADLESS_DIRS := $(JDK_TOPDIR)/src/share/native/sun/font \ 1104 $(JDK_TOPDIR)/src/share/native/sun/java2d/opengl \ 1105 $(JDK_TOPDIR)/src/solaris/native/sun/font \ 1106 $(JDK_TOPDIR)/src/solaris/native/sun/awt \ 1107 $(JDK_TOPDIR)/src/solaris/native/sun/java2d/opengl \ 1108 $(JDK_TOPDIR)/src/solaris/native/sun/java2d/x11 1109 1110 ifeq ($(OPENJDK_TARGET_OS), macosx) 1111 LIBAWT_HEADLESS_DIRS += $(JDK_TOPDIR)/src/macosx/native/sun/font 1112 endif 1113 1114 LIBAWT_HEADLESS_CFLAGS := -DHEADLESS=true \ 1115 -DX11_PATH=\"$(X11_PATH)\" -DPACKAGE_PATH=\"$(PACKAGE_PATH)\" \ 1116 $(CUPS_CFLAGS) \ 1117 $(X_CFLAGS) \ 1118 -I$(JDK_TOPDIR)/src/share/native/sun/java2d \ 1119 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/java2d \ 1120 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \ 1121 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \ 1122 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image \ 1123 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \ 1124 -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \ 1125 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/jdga \ 1126 $(foreach dir, $(LIBAWT_HEADLESS_DIRS), -I$(dir)) 1127 1128 ifeq ($(OPENJDK_TARGET_OS), macosx) 1129 LIBAWT_HEADLESS_CFLAGS += \ 1130 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ 1131 -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks 1132 endif 1133 1134 LIBAWT_HEADLESS_FILES := \ 1135 awt_Font.c \ 1136 HeadlessToolkit.c \ 1137 fontpath.c \ 1138 VDrawingArea.c \ 1139 X11Color.c \ 1140 X11Renderer.c \ 1141 X11PMBlitLoops.c \ 1142 X11SurfaceData.c \ 1143 X11FontScaler_md.c \ 1144 X11TextRenderer_md.c \ 1145 OGLBlitLoops.c \ 1146 OGLBufImgOps.c \ 1147 OGLContext.c \ 1148 OGLFuncs.c \ 1149 OGLMaskBlit.c \ 1150 OGLMaskFill.c \ 1151 OGLPaints.c \ 1152 OGLRenderQueue.c \ 1153 OGLRenderer.c \ 1154 OGLSurfaceData.c \ 1155 OGLTextRenderer.c \ 1156 OGLVertexCache.c \ 1157 GLXGraphicsConfig.c \ 1158 GLXSurfaceData.c \ 1159 AccelGlyphCache.c \ 1160 CUPSfuncs.c 1161 1162 ifeq ($(OPENJDK_TARGET_OS), macosx) 1163 LIBAWT_HEADLESS_FILES += \ 1164 AWTFont.m \ 1165 AWTStrike.m \ 1166 CCharToGlyphMapper.m \ 1167 CGGlyphImages.m \ 1168 CGGlyphOutlines.m \ 1169 CoreTextSupport.m 1170 endif 1171 1172 LIBAWT_HEADLESS_REORDER := 1173 ifeq ($(OPENJDK_TARGET_OS), solaris) 1174 ifneq ($(OPENJDK_TARGET_CPU), x86_64) 1175 LIBAWT_HEADLESS_REORDER := $(JDK_TOPDIR)/makefiles/mapfiles/libawt_headless/reorder-$(OPENJDK_TARGET_CPU) 1176 endif 1177 endif 1178 1179 $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_HEADLESS, \ 1180 LIBRARY := awt_headless, \ 1181 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 1182 SRC := $(LIBAWT_HEADLESS_DIRS), \ 1183 INCLUDE_FILES := $(LIBAWT_HEADLESS_FILES), \ 1184 LANG := C, \ 1185 OPTIMIZATION := LOW, \ 1186 CFLAGS := $(CFLAGS_JDKLIB) $(LIBAWT_HEADLESS_CFLAGS), \ 1187 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libawt_headless/mapfile-vers, \ 1188 LDFLAGS := $(LDFLAGS_JDKLIB) \ 1189 $(call SET_SHARED_LIBRARY_ORIGIN), \ 1190 LDFLAGS_linux := $(call SET_SHARED_LIBRARY_ORIGIN,/..), \ 1191 LDFLAGS_solaris := $(call SET_SHARED_LIBRARY_ORIGIN,/..) \ 1192 -R/usr/dt/lib$(OPENJDK_TARGET_CPU_ISADIR) \ 1193 -R$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR), \ 1194 LDFLAGS_macosx := $(call SET_SHARED_LIBRARY_ORIGIN)., \ 1195 REORDER := $(LIBAWT_HEADLESS_REORDER), \ 1196 LDFLAGS_SUFFIX_linux := -ljvm -lawt -lm $(LIBDL) -ljava, \ 1197 LDFLAGS_SUFFIX_solaris := $(LIBDL) -ljvm -lawt -lm -ljava $(LIBCXX) -lc, \ 1198 LDFLAGS_SUFFIX_macosx := -ljvm $(LIBCXX) -lawt $(LIBDL) -ljava \ 1199 -framework Accelerate \ 1200 -framework ApplicationServices \ 1201 -framework Cocoa \ 1202 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ 1203 -framework JavaNativeFoundation \ 1204 -framework JavaRuntimeSupport, \ 1205 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libawt_headless, \ 1206 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 1207 1208 $(BUILD_LIBAWT_HEADLESS): $(BUILD_LIBAWT) 1209 1210 BUILD_LIBRARIES += $(BUILD_LIBAWT_HEADLESS) 1211 1212 endif 1213 endif 1214 1215 ########################################################################################## 1216 1217 ifndef BUILD_HEADLESS_ONLY 1218 LIBSPLASHSCREEN_DIRS := \ 1219 $(JDK_TOPDIR)/src/share/native/sun/awt/image/jpeg \ 1220 $(JDK_TOPDIR)/src/share/native/sun/awt/libpng \ 1221 $(JDK_TOPDIR)/src/share/native/sun/awt/splashscreen 1222 1223 ifeq ($(USE_EXTERNAL_LIBGIF), true) 1224 GIFLIB_LDFLAGS := -lgif 1225 else 1226 LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/share/native/sun/awt/giflib 1227 GIFLIB_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/sun/awt/giflib 1228 endif 1229 1230 ifneq ($(OPENJDK_TARGET_OS), macosx) 1231 LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt/splashscreen 1232 else 1233 LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/macosx/native/sun/awt/splashscreen 1234 endif 1235 1236 LIBSPLASHSCREEN_CFLAGS := -DSPLASHSCREEN -DPNG_NO_MMX_CODE \ 1237 $(foreach dir, $(LIBSPLASHSCREEN_DIRS), -I$(dir)) 1238 1239 ifeq ($(OPENJDK_TARGET_OS), macosx) 1240 LIBSPLASHSCREEN_CFLAGS := -I$(JDK_TOPDIR)/src/macosx/native/sun/awt/splashscreen \ 1241 $(LIBSPLASHSCREEN_CFLAGS) \ 1242 -F/System/Library/Frameworks/JavaVM.framework/Frameworks 1243 LIBSPLASHSCREEN_CFLAGS += -DWITH_MACOSX 1244 LIBSPLASHSCREEN_CFLAGS += -I$(JDK_TOPDIR)/src/macosx/native/sun/osxapp 1245 1246 LIBSPLASHSCREEN_java_awt_SplashScreen.c_CFLAGS := -x objective-c -O0 1247 LIBSPLASHSCREEN_splashscreen_gfx_impl.c_CFLAGS := -x objective-c -O0 1248 LIBSPLASHSCREEN_splashscreen_gif.c_CFLAGS := -x objective-c -O0 1249 LIBSPLASHSCREEN_splashscreen_impl.c_CFLAGS := -x objective-c -O0 1250 LIBSPLASHSCREEN_splashscreen_jpeg.c_CFLAGS := -x objective-c -O0 1251 LIBSPLASHSCREEN_splashscreen_png.c_CFLAGS := -x objective-c -O0 1252 LIBSPLASHSCREEN_splashscreen_sys.m_CFLAGS := -O0 1253 1254 else ifeq ($(OPENJDK_TARGET_OS), windows) 1255 LIBSPLASHSCREEN_CFLAGS += -DWITH_WIN32 1256 else ifeq ($(OPENJDK_TARGET_OS), solaris) 1257 LIBSPLASHSCREEN_CFLAGS += -DWITH_X11 -I$(OPENWIN_HOME)/include -I$(OPENWIN_HOME)/include/X11/extensions 1258 else 1259 LIBSPLASHSCREEN_CFLAGS += -DWITH_X11 $(X_CFLAGS) -I$(OPENWIN_HOME)/include/X11/extensions 1260 endif 1261 1262 LIBSPLASHSCREEN_LDFLAGS_SUFFIX := 1263 1264 ifneq ($(USE_EXTERNAL_LIBZ), true) 1265 LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/share/native/java/util/zip/zlib-1.2.5 1266 LIBSPLASHSCREEN_CFLAGS += $(ZLIB_CPPFLAGS) 1267 endif 1268 1269 ifeq ($(OPENJDK_TARGET_OS), macosx) 1270 LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(LIBM) -lpthread -liconv -losxapp \ 1271 -framework ApplicationServices \ 1272 -framework Foundation \ 1273 -framework Cocoa \ 1274 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ 1275 -framework JavaNativeFoundation 1276 else ifeq ($(OPENJDK_TARGET_OS), windows) 1277 LIBSPLASHSCREEN_LDFLAGS_SUFFIX += kernel32.lib user32.lib gdi32.lib delayimp.lib -DELAYLOAD:user32.dll 1278 else ifeq ($(OPENJDK_TARGET_OS), solaris) 1279 # Solaris still uses OPENWIN_LIB .. 1280 LIBSPLASHSCREEN_LDFLAGS_SUFFIX += -L$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) -lX11 -lXext $(LIBM) -lpthread 1281 else # .. all other Unixes can use X_LIBS 1282 LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM) -lpthread 1283 endif 1284 1285 $(eval $(call SetupNativeCompilation,LIBSPLASHSCREEN, \ 1286 LIBRARY := splashscreen, \ 1287 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 1288 SRC := $(LIBSPLASHSCREEN_DIRS), \ 1289 EXCLUDE_FILES := imageioJPEG.c jpegdecoder.c pngtest.c, \ 1290 LANG := C, \ 1291 OPTIMIZATION := LOW, \ 1292 CFLAGS := $(LIBSPLASHSCREEN_CFLAGS) $(CFLAGS_JDKLIB) $(GIFLIB_CFLAGS), \ 1293 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libsplashscreen/mapfile-vers, \ 1294 LDFLAGS := $(LDFLAGS_JDKLIB) \ 1295 $(call SET_SHARED_LIBRARY_ORIGIN), \ 1296 LDFLAGS_SUFFIX := $(LIBSPLASHSCREEN_LDFLAGS_SUFFIX) $(LIBZ) $(GIFLIB_LDFLAGS), \ 1297 LDFLAGS_SUFFIX_solaris := -lc, \ 1298 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ 1299 RC_FLAGS := $(RC_FLAGS) \ 1300 -D "JDK_FNAME=splashscreen.dll" \ 1301 -D "JDK_INTERNAL_NAME=splashscreen" \ 1302 -D "JDK_FTYPE=0x2L", \ 1303 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libsplashscreen, \ 1304 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 1305 1306 BUILD_LIBRARIES += $(LIBSPLASHSCREEN) 1307 1308 ifeq ($(OPENJDK_TARGET_OS), macosx) 1309 $(LIBSPLASHSCREEN): $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)osxapp$(SHARED_LIBRARY_SUFFIX) 1310 endif 1311 1312 endif 1313 1314 ########################################################################################## 1315 1316 ifndef OPENJDK 1317 1318 LIBDCPR_SRC_DIRS := \ 1319 $(JDK_TOPDIR)/src/closed/share/native/sun/dc/doe \ 1320 $(JDK_TOPDIR)/src/closed/share/native/sun/dc/path \ 1321 $(JDK_TOPDIR)/src/closed/share/native/sun/dc/pr \ 1322 $(JDK_TOPDIR)/src/closed/share/native/sun/dc/util 1323 1324 LIBDCPR_CFLAGS := $(foreach dir, $(LIBDCPR_SRC_DIRS), -I$(dir)) \ 1325 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe 1326 1327 $(eval $(call SetupNativeCompilation,BUILD_LIBDCPR, \ 1328 LIBRARY := dcpr, \ 1329 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 1330 SRC := $(LIBDCPR_SRC_DIRS), \ 1331 LANG := C, \ 1332 OPTIMIZATION := LOW, \ 1333 CFLAGS := $(CFLAGS_JDKLIB) \ 1334 $(LIBDCPR_CFLAGS), \ 1335 MAPFILE := $(JDK_TOPDIR)/makefiles/mapfiles/libdcpr/mapfile-vers, \ 1336 LDFLAGS := $(LDFLAGS_JDKLIB) \ 1337 $(call SET_SHARED_LIBRARY_ORIGIN), \ 1338 LDFLAGS_SUFFIX := $(LIBM) $(LDFLAGS_JDKLIB_SUFFIX), \ 1339 LDFLAGS_SUFFIX_posix := -lm, \ 1340 VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ 1341 RC_FLAGS := $(RC_FLAGS) \ 1342 -D "JDK_FNAME=dcpr.dll" \ 1343 -D "JDK_INTERNAL_NAME=dcpr" \ 1344 -D "JDK_FTYPE=0x2L", \ 1345 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libdcpr, \ 1346 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 1347 1348 $(BUILD_LIBDCPR): $(BUILD_LIBJAVA) 1349 1350 BUILD_LIBRARIES += $(BUILD_LIBDCPR) 1351 1352 endif 1353 1354 ########################################################################################## 1355 1356 ifeq ($(OPENJDK_TARGET_OS), macosx) 1357 1358 LIBAWT_LWAWT_FILES := \ 1359 awt.m \ 1360 ApplicationDelegate.m \ 1361 CFRetainedResource.m \ 1362 CGLGraphicsConfig.m \ 1363 CGLSurfaceData.m \ 1364 CGLLayer.m \ 1365 CGraphicsConfig.m \ 1366 CGraphicsDevice.m \ 1367 CGraphicsEnv.m \ 1368 CCharToGlyphMapper.m \ 1369 CSystemColors.m \ 1370 AWTFont.m \ 1371 CGGlyphOutlines.m \ 1372 CGGlyphImages.m \ 1373 CoreTextSupport.m \ 1374 AWTStrike.m \ 1375 InitIDs.m \ 1376 AWTEvent.m \ 1377 AWTView.m \ 1378 AWTWindow.m \ 1379 AWTSurfaceLayers.m \ 1380 CCursorManager.m \ 1381 CClipboard.m \ 1382 CDataTransferer.m \ 1383 CDragSource.m \ 1384 CDragSourceContextPeer.m \ 1385 CDropTarget.m \ 1386 CDropTargetContextPeer.m \ 1387 CInputMethod.m \ 1388 CDesktopPeer.m \ 1389 OSVersion.m \ 1390 DnDUtilities.m \ 1391 CFileDialog.m \ 1392 CImage.m \ 1393 CMenu.m \ 1394 CMenuBar.m \ 1395 CMenuComponent.m \ 1396 CMenuItem.m \ 1397 CPopupMenu.m \ 1398 CRobot.m \ 1399 CTrayIcon.m \ 1400 CWrapper.m \ 1401 JavaAccessibilityAction.m \ 1402 JavaAccessibilityUtilities.m \ 1403 JavaComponentAccessibility.m \ 1404 JavaTextAccessibility.m \ 1405 LWCToolkit.m \ 1406 GeomUtilities.m \ 1407 CPrinterJob.m \ 1408 PrintModel.m \ 1409 PrinterSurfaceData.m \ 1410 PrinterView.m \ 1411 QuartzSurfaceData.m \ 1412 QuartzRenderer.m \ 1413 CTextPipe.m \ 1414 ImageSurfaceData.m \ 1415 awt_DrawingSurface.m \ 1416 \ 1417 OGLBlitLoops.c \ 1418 OGLBufImgOps.c \ 1419 OGLContext.c \ 1420 OGLFuncs.c \ 1421 OGLMaskBlit.c \ 1422 OGLMaskFill.c \ 1423 OGLPaints.c \ 1424 OGLRenderQueue.c \ 1425 OGLRenderer.c \ 1426 OGLSurfaceData.c \ 1427 OGLTextRenderer.c \ 1428 OGLVertexCache.c \ 1429 AccelGlyphCache.c \ 1430 CUPSfuncs.c 1431 1432 1433 LIBAWT_LWAWT_DIRS := \ 1434 $(JDK_TOPDIR)/src/macosx/native/sun/awt \ 1435 $(JDK_TOPDIR)/src/macosx/native/sun/font \ 1436 $(JDK_TOPDIR)/src/macosx/native/sun/java2d/opengl \ 1437 $(JDK_TOPDIR)/src/solaris/native/sun/awt \ 1438 $(JDK_TOPDIR)/src/share/native/sun/font \ 1439 $(JDK_TOPDIR)/src/share/native/sun/java2d/opengl \ 1440 1441 $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_LWAWT, \ 1442 LIBRARY := awt_lwawt, \ 1443 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 1444 SRC := $(LIBAWT_LWAWT_DIRS), \ 1445 LANG := C, \ 1446 INCLUDE_FILES := $(LIBAWT_LWAWT_FILES), \ 1447 OPTIMIZATION := LOW, \ 1448 CFLAGS := $(CFLAGS_JDKLIB) \ 1449 $(X_CFLAGS) \ 1450 $(X_LIBS) \ 1451 $(foreach dir, $(LIBAWT_LWAWT_DIRS), -I$(dir)) \ 1452 -I$(JDK_TOPDIR)/src/macosx/native/sun/osxapp \ 1453 -I$(JDK_TOPDIR)/src/share/native/sun/java2d \ 1454 -I$(JDK_TOPDIR)/src/solaris/native/sun/java2d \ 1455 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image \ 1456 -I$(JDK_TOPDIR)/src/share/native/sun/awt/image/cvutils \ 1457 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/loops \ 1458 -I$(JDK_TOPDIR)/src/share/native/sun/java2d/pipe \ 1459 -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug \ 1460 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ 1461 -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks, \ 1462 LDFLAGS := $(LDFLAGS_JDKLIB) \ 1463 $(call SET_SHARED_LIBRARY_ORIGIN), \ 1464 LDFLAGS_SUFFIX_macosx := -lawt -lmlib_image -losxapp -ljvm $(LIBM) \ 1465 -framework Accelerate \ 1466 -framework ApplicationServices \ 1467 -framework AudioToolbox \ 1468 -framework Carbon \ 1469 -framework Cocoa \ 1470 -framework Security \ 1471 -framework ExceptionHandling \ 1472 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ 1473 -framework JavaNativeFoundation \ 1474 -framework JavaRuntimeSupport \ 1475 -framework OpenGL \ 1476 -framework QuartzCore -ljava, \ 1477 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libawt_lwawt, \ 1478 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 1479 1480 BUILD_LIBRARIES += $(BUILD_LIBAWT_LWAWT) 1481 1482 $(BUILD_LIBAWT_LWAWT): $(BUILD_LIBAWT) 1483 1484 $(BUILD_LIBAWT_LWAWT): $(BUILD_LIBMLIB_IMAGE) 1485 1486 $(BUILD_LIBAWT_LWAWT): $(BUILD_LIBOSXAPP) 1487 1488 $(BUILD_LIBAWT_LWAWT): $(BUILD_LIBJAVA) 1489 1490 endif 1491 1492 ########################################################################################## 1493 1494 ifeq ($(OPENJDK_TARGET_OS), macosx) 1495 1496 $(eval $(call SetupNativeCompilation,BUILD_LIBOSXUI, \ 1497 LIBRARY := osxui, \ 1498 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ 1499 SRC := $(JDK_TOPDIR)/src/macosx/native/com/apple/laf, \ 1500 LANG := C, \ 1501 OPTIMIZATION := LOW, \ 1502 CFLAGS := $(CFLAGS_JDKLIB) \ 1503 -I$(JDK_TOPDIR)/src/macosx/native/com/apple/laf \ 1504 -I$(JDK_TOPDIR)/src/macosx/native/sun/osxapp \ 1505 -I$(JDK_TOPDIR)/src/macosx/native/sun/awt \ 1506 -F/System/Library/Frameworks/JavaVM.framework/Frameworks, \ 1507 LDFLAGS := $(LDFLAGS_JDKLIB) \ 1508 $(call SET_SHARED_LIBRARY_ORIGIN) \ 1509 -Xlinker -rpath -Xlinker @loader_path, \ 1510 LDFLAGS_SUFFIX_macosx := -lawt -losxapp -lawt_lwawt \ 1511 -framework Cocoa \ 1512 -framework Carbon \ 1513 -framework ApplicationServices \ 1514 -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ 1515 -framework JavaNativeFoundation \ 1516 -framework JavaRuntimeSupport \ 1517 -ljava -ljvm, \ 1518 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libosxui, \ 1519 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) 1520 1521 BUILD_LIBRARIES += $(BUILD_LIBOSXUI) 1522 1523 $(BUILD_LIBOSXUI): $(BUILD_LIBAWT) 1524 1525 $(BUILD_LIBOSXUI): $(BUILD_LIBOSXAPP) 1526 1527 $(BUILD_LIBOSXUI): $(BUILD_LIBAWT_LWAWT) 1528 1529 #$(BUILD_LIBOSXUI): $(BUILD_LIBJAVA) 1530 1531 endif