makefiles/CompileNativeLibraries.gmk

Print this page
rev 7983 : 8024265: Enable new build on AIX


  78 OPENWIN_LIB:=$(OPENWIN_HOME)/lib
  79 
  80 ##########################################################################################
  81 
  82 BUILD_LIBFDLIBM_OPTIMIZATION:=HIGH
  83 
  84 ifneq ($(OPENJDK_TARGET_OS), solaris)
  85       BUILD_LIBFDLIBM_OPTIMIZATION:=NONE
  86 endif
  87 
  88 ifneq ($(OPENJDK_TARGET_OS),macosx)
  89 $(eval $(call SetupNativeCompilation,BUILD_LIBFDLIBM,\
  90                 STATIC_LIBRARY:=fdlibm,\
  91                 OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs,\
  92                 SRC:=$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/src,\
  93                 LANG:=C,\
  94                 OPTIMIZATION:=$(BUILD_LIBFDLIBM_OPTIMIZATION), \
  95                 CFLAGS:=$(CFLAGS_JDKLIB) \
  96                         -I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include,\
  97                 CFLAGS_windows_debug:=-DLOGGING,\

  98                 ARFLAGS:=$(ARFLAGS),\
  99                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\
 100                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
 101 
 102 else
 103 
 104 # On macosx the old build does partial (incremental) linking of fdlibm instead of
 105 # a plain static library.
 106 $(eval $(call SetupNativeCompilation,BUILD_LIBFDLIBM_MAC,\
 107                 LIBRARY:=fdlibm,\
 108                 OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\
 109                 SRC:=$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/src,\
 110                 LANG:=C,\
 111                 CFLAGS:=$(CFLAGS_JDKLIB) \
 112                         -I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include,\
 113                 LDFLAGS:=-nostdlib -r -arch x86_64,\
 114                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\
 115                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
 116 
 117 BUILD_LIBFDLIBM := $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fdlibm$(STATIC_LIBRARY_SUFFIX)


 233         LIBJAVA_REORDER:=$(JDK_TOPDIR)/makefiles/mapfiles/libjava/reorder-$(OPENJDK_TARGET_CPU)
 234     endif
 235 endif
 236 
 237 $(eval $(call SetupNativeCompilation,BUILD_LIBJAVA,\
 238                 LIBRARY:=java,\
 239                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
 240                 SRC:=$(LIBJAVA_SRC_DIRS),\
 241                 EXCLUDES:=fdlibm/src zip, \
 242                 EXCLUDE_FILES:=$(LIBJAVA_EXCLUDE_FILES), \
 243                 LANG:=C,\
 244                 OPTIMIZATION:=HIGH, \
 245                 CFLAGS:=$(CFLAGS_JDKLIB) \
 246                         $(LIBJAVA_CFLAGS),\
 247                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjava/mapfile-vers, \
 248                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
 249                          $(call SET_SHARED_LIBRARY_ORIGIN), \
 250                 LDFLAGS_SUFFIX_posix:=-ljvm -lverify, \
 251                 LDFLAGS_SUFFIX_solaris:=-lsocket -lnsl -lscf $(LIBDL) $(BUILD_LIBFDLIBM) -lc,\
 252                 LDFLAGS_SUFFIX_linux:=$(LIBDL) $(BUILD_LIBFDLIBM),\

 253                 LDFLAGS_SUFFIX_macosx:=-L$(JDK_OUTPUTDIR)/objs/ -lfdlibm \
 254                                          -framework CoreFoundation \
 255                                          -framework Security -framework SystemConfiguration, \
 256                 LDFLAGS_SUFFIX_windows:=-export:winFileHandleOpen -export:handleLseek \
 257                                         jvm.lib $(BUILD_LIBFDLIBM) $(WIN_VERIFY_LIB) \
 258                                         shell32.lib delayimp.lib -DELAYLOAD:shell32.dll \
 259                                         advapi32.lib,\
 260                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
 261                 RC_FLAGS:=$(RC_FLAGS)\
 262                           -D "JDK_FNAME=java.dll" \
 263                           -D "JDK_INTERNAL_NAME=java" \
 264                           -D "JDK_FTYPE=0x2L",\
 265                 REORDER:=$(LIBJAVA_REORDER), \
 266                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjava,\
 267                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
 268 
 269 BUILD_LIBRARIES += $(BUILD_LIBJAVA)
 270 
 271 $(BUILD_LIBJAVA) : $(LIBJLI_BINARY)
 272 


 535         IntBgr.c \
 536         IntRgbx.c \
 537         Any4Byte.c \
 538         FourByteAbgr.c \
 539         FourByteAbgrPre.c \
 540         BufferedMaskBlit.c \
 541         BufferedRenderPipe.c \
 542         ShapeSpanIterator.c \
 543         SpanClipRenderer.c \
 544         awt_ImageRep.c \
 545         awt_ImagingLib.c \
 546         awt_Mlib.c \
 547         awt_parseImage.c \
 548         DataBufferNative.c \
 549         dither.c \
 550         debug_assert.c \
 551         debug_mem.c \
 552         debug_trace.c \
 553         debug_util.c
 554 
 555 ifneq (,$(filter $(OPENJDK_TARGET_OS), solaris linux))
 556         LIBAWT_FILES += awt_LoadLibrary.c initIDs.c img_colors.c
 557 endif
 558 
 559 ifeq ($(OPENJDK_TARGET_OS),macosx)
 560         LIBAWT_FILES += awt_LoadLibrary.c img_colors.c
 561         LIBAWT_DIRS += $(JDK_TOPDIR)/src/macosx/native/com/apple/resources
 562         LIBAWT_FILES += awt_LoadLibrary.c MacOSXResourceBundle.m
 563         LIBAWT_CFLAGS += -F/System/Library/Frameworks/JavaVM.framework/Frameworks
 564 
 565         LIBAWT_MacOSXResourceBundle.m_CFLAGS:=-O0
 566 endif
 567 
 568 ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc)
 569         LIBAWT_CFLAGS += -DMLIB_ADD_SUFF
 570         LIBAWT_CFLAGS += -xarch=sparcvis
 571         LIBAWT_CFLAGS += $(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib/vis_$(OPENJDK_TARGET_CPU_BITS).il
 572         LIBAWT_CFLAGS += \
 573             -I$(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib \
 574             -I$(JDK_TOPDIR)/src/solaris/native/sun/java2d/medialib \
 575             -I$(JDK_TOPDIR)/src/solaris/native/sun/java2d/loops


 706 
 707 LIBAWT_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libawt/mapfile-vers
 708 ifeq ($(OPENJDK_TARGET_OS),linux)
 709         LIBAWT_MAPFILE:=
 710 endif
 711 
 712 $(eval $(call SetupNativeCompilation,BUILD_LIBAWT,\
 713                 LIBRARY:=awt,\
 714                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
 715                 SRC:=$(LIBAWT_DIRS),\
 716                 INCLUDE_FILES:=$(LIBAWT_FILES),\
 717                 LANG:=$(LIBAWT_LANG),\
 718                 OPTIMIZATION:=LOW, \
 719                 CFLAGS:=$(CFLAGS_JDKLIB) $(LIBAWT_CFLAGS),\
 720                 ASFLAGS:=$(LIBAWT_ASFLAGS),\
 721                 MAPFILE:=$(LIBAWT_MAPFILE), \
 722                 LDFLAGS:=$(LDFLAGS_JDKLIB) $(call SET_SHARED_LIBRARY_ORIGIN),\
 723                 LDFLAGS_solaris:=-R/usr/dt/lib$(OPENJDK_TARGET_CPU_ISADIR) -R$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR),\
 724                 LDFLAGS_SUFFIX_linux:=-ljvm $(LIBM) $(LIBDL) -ljava,\
 725                 LDFLAGS_SUFFIX_solaris:=-ljvm $(LIBM) $(LIBDL) -ljava -lc,\

 726                 LDFLAGS_SUFFIX_macosx:=-lmlib_image -ljvm $(LIBM) \
 727                                        -framework Cocoa \
 728                                        -framework OpenGL \
 729                                        -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
 730                                        -framework JavaNativeFoundation \
 731                                        -framework JavaRuntimeSupport \
 732                                        -framework ApplicationServices \
 733                                        -framework AudioToolbox \
 734                                        -ljava,\
 735                 LDFLAGS_SUFFIX_windows:=kernel32.lib user32.lib gdi32.lib winspool.lib \
 736                                         imm32.lib ole32.lib uuid.lib shell32.lib \
 737                                         comdlg32.lib winmm.lib comctl32.lib shlwapi.lib \
 738                                         delayimp.lib jvm.lib $(WIN_JAVA_LIB) advapi32.lib \
 739                                         -DELAYLOAD:user32.dll -DELAYLOAD:gdi32.dll \
 740                                         -DELAYLOAD:shell32.dll -DELAYLOAD:winmm.dll \
 741                                         -DELAYLOAD:winspool.drv -DELAYLOAD:imm32.dll \
 742                                         -DELAYLOAD:ole32.dll -DELAYLOAD:comdlg32.dll \
 743                                         -DELAYLOAD:comctl32.dll -DELAYLOAD:shlwapi.dll,\
 744                 VERSIONINFO_RESOURCE:=$(LIBAWT_VERSIONINFO_RESOURCE),\
 745                 RC_FLAGS:=$(RC_FLAGS) $(LIBAWT_RC_FLAGS) \


 951                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
 952                 LANG:=C,\
 953                 OPTIMIZATION:=LOW, \
 954                 SRC:=$(JDK_TOPDIR)/src/share/native/java/util/zip,\
 955                 EXCLUDES:=$(LIBZIP_EXCLUDES),\
 956                 CFLAGS:=$(CFLAGS_JDKLIB) \
 957                         $(ZLIB_CPPFLAGS) \
 958                         -I$(JDK_TOPDIR)/src/share/native/java/io \
 959                         -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/io,\
 960                 CFLAGS_posix:=$(BUILD_LIBZIP_MMAP) -UDEBUG,\
 961                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libzip/mapfile-vers, \
 962                 REORDER:=$(BUILD_LIBZIP_REORDER), \
 963                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
 964                          $(call SET_SHARED_LIBRARY_ORIGIN) \
 965                          $(EXPORT_ZIP_FUNCS), \
 966                 LDFLAGS_windows:=-export:ZIP_Open -export:ZIP_Close -export:ZIP_FindEntry \
 967                                 -export:ZIP_ReadEntry -export:ZIP_GetNextEntry jvm.lib \
 968                                 $(WIN_JAVA_LIB),\
 969                 LDFLAGS_SUFFIX_linux:=-ljvm -ljava $(LIBZ),\
 970                 LDFLAGS_SUFFIX_solaris:=-ljvm -ljava $(LIBZ) -lc,\

 971                 LDFLAGS_SUFFIX_macosx:=$(LIBZ) -ljava -ljvm,\
 972                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
 973                 RC_FLAGS:=$(RC_FLAGS)\
 974                           -D "JDK_FNAME=zip.dll" \
 975                           -D "JDK_INTERNAL_NAME=zip" \
 976                           -D "JDK_FTYPE=0x2L",\
 977                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libzip,\
 978                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
 979 
 980 $(BUILD_LIBZIP) : $(BUILD_LIBJAVA)
 981 
 982 BUILD_LIBRARIES += $(BUILD_LIBZIP)
 983 
 984 ##########################################################################################
 985 
 986 $(eval $(call SetupNativeCompilation,BUILD_LIBUNPACK,\
 987                 LIBRARY:=unpack, \
 988                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
 989                 SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\
 990                 EXCLUDE_FILES:=main.cpp,\


1016         $(ECHO) Copying $(@F)
1017         $(CP) $(patsubst %$(SHARED_LIBRARY_SUFFIX),%.map,$<) $@
1018 
1019     $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)unpack.pdb: $(BUILD_LIBUNPACK)
1020         $(ECHO) Copying $(@F)
1021         $(CP) $(patsubst %$(SHARED_LIBRARY_SUFFIX),%.pdb,$<) $@
1022 endif
1023 
1024 ##########################################################################################
1025 
1026 LIBATTACH_EXCLUDE_FILES:=
1027 ifneq ($(OPENJDK_TARGET_OS),solaris)
1028     LIBATTACH_EXCLUDE_FILES+=SolarisVirtualMachine.c
1029 endif
1030 ifneq ($(OPENJDK_TARGET_OS),linux)
1031     LIBATTACH_EXCLUDE_FILES+=LinuxVirtualMachine.c
1032 endif
1033 ifneq ($(OPENJDK_TARGET_OS),macosx)
1034     LIBATTACH_EXCLUDE_FILES+=BsdVirtualMachine.c
1035 endif



1036 
1037 $(eval $(call SetupNativeCompilation,BUILD_LIBATTACH,\
1038                 LIBRARY:=attach, \
1039                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1040                 SRC:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/tools/attach,\
1041                 EXCLUDE_FILES:=$(LIBATTACH_EXCLUDE_FILES),\
1042                 LANG:=C,\
1043                 OPTIMIZATION:=LOW, \
1044                 CFLAGS:=$(CFLAGS_JDKLIB),\
1045                 CFLAGS_windows:=/Gy,\
1046                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libattach/mapfile-$(OPENJDK_TARGET_OS), \
1047                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
1048                 RC_FLAGS:=$(RC_FLAGS) \
1049                           -D "JDK_FNAME=attach.dll" \
1050                           -D "JDK_INTERNAL_NAME=attach" \
1051                           -D "JDK_FTYPE=0x2L",\
1052                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1053                          $(call SET_SHARED_LIBRARY_ORIGIN),\
1054                 LDFLAGS_solaris:=-ldoor,\
1055                 LDFLAGS_windows:=/ORDER:@$(JDK_TOPDIR)/makefiles/mapfiles/libattach/reorder-windows-$(OPENJDK_TARGET_CPU),\


1238     $(eval $(call SetupNativeCompilation,BUILD_LIBLCMS,\
1239                 LIBRARY:=lcms,\
1240                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1241                 SRC:=$(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms,\
1242                 LANG:=C,\
1243                 OPTIMIZATION:=HIGHEST, \
1244                 CFLAGS:=$(filter-out -xc99=%none,$(CFLAGS_JDKLIB)) \
1245                         $(SHARED_LIBRARY_FLAGS) \
1246                         -I$(JDK_TOPDIR)/src/share/native/sun/java2d \
1247                         -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug,\
1248                 CFLAGS_solaris:=-xc99=no_lib,\
1249                 CFLAGS_windows:=-DCMS_IS_WINDOWS_,\
1250                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/liblcms/mapfile-vers, \
1251                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1252                          $(call SET_SHARED_LIBRARY_ORIGIN), \
1253                 LDFLAGS_solaris:=/usr/lib$(OPENJDK_TARGET_CPU_ISADIR)/libm.so.2,\
1254                 LDFLAGS_windows:=$(WIN_AWT_LIB) $(WIN_JAVA_LIB),\
1255                 LDFLAGS_SUFFIX_solaris:=-lawt -ljava -ljvm -lc,\
1256                 LDFLAGS_SUFFIX_macosx:=$(LIBM) -lawt -ljava -ljvm,\
1257                 LDFLAGS_SUFFIX_linux:=-lm -lawt -ljava -ljvm,\

1258                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
1259                 RC_FLAGS:=$(RC_FLAGS)\
1260                           -D "JDK_FNAME=lcms.dll" \
1261                           -D "JDK_INTERNAL_NAME=lcms" \
1262                           -D "JDK_FTYPE=0x2L",\
1263                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/liblcms,\
1264                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
1265 
1266     BUILD_LIBRARIES += $(BUILD_LIBLCMS)
1267 
1268     $(BUILD_LIBLCMS) : $(BUILD_LIBAWT)
1269 
1270 ##########################################################################################
1271 
1272 ifdef OPENJDK
1273     BUILD_LIBJPEG_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/mapfile-vers
1274 else
1275     BUILD_LIBJPEG_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/mapfile-vers-closed
1276     BUILD_LIBJPEG_CLOSED_SRC:=$(JDK_TOPDIR)/src/closed/share/native/sun/awt/image/jpeg
1277     BUILD_LIBJPEG_CLOSED_INCLUDES:=-I$(BUILD_LIBJPEG_CLOSED_SRC)


1371 
1372 $(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER,\
1373                 LIBRARY:=fontmanager, \
1374                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1375                 SRC:=$(JDK_TOPDIR)/src/share/native/sun/font\
1376                      $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/font,\
1377                 EXCLUDE_FILES:=$(LIBFONTMANAGER_EXCLUDE_FILES) \
1378                                AccelGlyphCache.c,\
1379                 LANG:=C++,\
1380                 CFLAGS:=$(CFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON),\
1381                 CXXFLAGS:=$(CXXFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON),\
1382                 OPTIMIZATION:=$(LIBFONTMANAGER_OPTIMIZATION), \
1383                 CFLAGS_windows= -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/windows \
1384                                 -DCC_NOEX, \
1385                 MAPFILE:=$(BUILD_LIBFONTMANAGER_MAPFILE), \
1386                 LDFLAGS:=$(subst -Xlinker -z -Xlinker defs,,$(LDFLAGS_JDKLIB)) $(LDFLAGS_CXX_JDK) \
1387                          $(call SET_SHARED_LIBRARY_ORIGIN),\
1388                 LDFLAGS_SUFFIX:=$(BUILD_LIBFONTMANAGER_FONTLIB),\
1389                 LDFLAGS_SUFFIX_linux:=-lawt $(LIBM) $(LIBCXX) -ljava -ljvm -lc,\
1390                 LDFLAGS_SUFFIX_solaris:=-lawt -lawt_xawt -lc $(LIBM) $(LIBCXX) -ljava -ljvm,\

1391                 LDFLAGS_SUFFIX_macosx:=-lawt $(LIBM) $(LIBCXX) -undefined dynamic_lookup \
1392                                        -ljava -ljvm,\
1393                 LDFLAGS_SUFFIX_windows:=$(WIN_JAVA_LIB) advapi32.lib user32.lib gdi32.lib \
1394                                         $(WIN_AWT_LIB),\
1395                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
1396                 RC_FLAGS:=$(RC_FLAGS)\
1397                           -D "JDK_FNAME=fontmanager.dll" \
1398                           -D "JDK_INTERNAL_NAME=fontmanager" \
1399                           -D "JDK_FTYPE=0x2L",\
1400                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfontmanager,\
1401                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
1402 
1403 $(BUILD_LIBFONTMANAGER) : $(BUILD_LIBAWT)
1404 
1405 ifneq (,$(findstring $(OPENJDK_TARGET_OS),solaris macosx))
1406 $(BUILD_LIBFONTMANAGER) : $(BUILD_LIBAWT_XAWT)
1407 endif
1408 
1409 BUILD_LIBRARIES += $(BUILD_LIBFONTMANAGER)
1410 
1411 ##########################################################################################
1412 
1413 ifndef OPENJDK
1414 
1415 #    ifeq ($(OPENJDK_TARGET_OS), linux)
1416 #        ifeq ("$(CC_VER_MAJOR)", "3")
1417 #            OTHER_LDLIBS  += -Wl,-Bstatic -lgcc_eh -Wl,-Bdynamic
1418 #        endif
1419 #    endif
1420 #
1421 # The resulting size of the t2k lib file is (at least on linux) dependant on the order of
1422 # the input .o files. Because of this the new build will differ in size to the old build.
1423     BUILD_LIBT2K_CFLAGS_COMMON:=-I$(JDK_TOPDIR)/src/share/native/sun/font \
1424                             -I$(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k \
1425                             -I$(JDK_TOPDIR)/src/closed/share/native/sun/font \


1522         JAWT_FILES:=jawt.m
1523         JAWT_LIBS:=-lawt_lwawt
1524     endif
1525 
1526     $(eval $(call SetupNativeCompilation,BUILD_LIBJAWT,\
1527                 LIBRARY:=jawt, \
1528                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1529                 SRC:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt \
1530                      $(JDK_TOPDIR)/src/macosx/native/sun/awt,\
1531                 INCLUDE_FILES:=$(JAWT_FILES),\
1532                 LANG:=C,\
1533                 OPTIMIZATION:=LOW, \
1534                 CFLAGS:=$(CFLAGS_JDKLIB), \
1535                 CFLAGS_linux:=$(HEADLESS_CFLAG),\
1536                 CFLAGS_macosx:=-I$(JDK_TOPDIR)/src/solaris/native/sun/awt ,\
1537                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjawt/mapfile-vers, \
1538                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1539                          $(call SET_SHARED_LIBRARY_ORIGIN),\
1540                 LDFLAGS_solaris:=-L$(OPENWIN_HOME)/sfw/lib$(OPENJDK_TARGET_CPU_ISADIR) -L$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR),\
1541                 LDFLAGS_SUFFIX_linux:=$(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX),\

1542                 LDFLAGS_SUFFIX_solaris:=$(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX) -lXrender,\
1543                 LDFLAGS_SUFFIX_macosx:=-Xlinker -rpath -Xlinker @loader_path $(JAWT_LIBS) \
1544                                        -framework Cocoa $(LDFLAGS_JDKLIB_SUFFIX),\
1545                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjawt,\
1546                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
1547 
1548 ifndef BUILD_HEADLESS_ONLY
1549 $(BUILD_LIBJAWT) : $(BUILD_LIBAWT_XAWT)
1550 else
1551 $(BUILD_LIBJAWT) : $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_headless$(SHARED_LIBRARY_SUFFIX)
1552 endif
1553 
1554 ifeq ($(OPENJDK_TARGET_OS),macosx)
1555 $(BUILD_LIBJAWT) : $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_lwawt$(SHARED_LIBRARY_SUFFIX)
1556 endif
1557 
1558 endif # OPENJDK_TARGET_OS
1559 
1560 BUILD_LIBRARIES += $(BUILD_LIBJAWT)
1561 


1605                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1606                 SRC:=$(LIBINSTRUMENT_SRC),\
1607                 INCLUDE_FILES:=$(LIBINSTRUMENT_FILES),\
1608                 LANG:=C,\
1609                 OPTIMIZATION:=LOW, \
1610                 CFLAGS:=$(LIBINSTRUMENT_CFLAGS),\
1611                 CFLAGS_debug:=-DJPLIS_LOGGING,\
1612                 CFLAGS_release:=-DNO_JPLIS_LOGGING,\
1613                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libinstrument/mapfile-vers, \
1614                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1615                          $(call SET_SHARED_LIBRARY_ORIGIN) \
1616                          $(LIBINSTRUMENT_LDFLAGS),\
1617                 LDFLAGS_linux:=$(call SET_SHARED_LIBRARY_ORIGIN,/jli),\
1618                 LDFLAGS_solaris:= $(call SET_SHARED_LIBRARY_ORIGIN,/jli),\
1619                 LDFLAGS_macosx:=-Xlinker -all_load $(JDK_OUTPUTDIR)/objs/libjli_static.a \
1620                                 -framework Cocoa -framework Security -framework ApplicationServices,\
1621                 LDFLAGS_SUFFIX:=$(LIBINSTRUMENT_LDFLAGS_SUFFIX),\
1622                 LDFLAGS_SUFFIX_macosx:=-liconv $(LIBZ),\
1623                 LDFLAGS_SUFFIX_solaris:=$(LIBZ) -L $(INSTALL_LIBRARIES_HERE)/jli -ljli $(LIBDL) -lc,\
1624                 LDFLAGS_SUFFIX_linux:=$(LIBZ) -L $(INSTALL_LIBRARIES_HERE)/jli -ljli $(LIBDL),\

1625                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
1626                 RC_FLAGS:=$(RC_FLAGS)\
1627                           -D "JDK_FNAME=instrument.dll" \
1628                           -D "JDK_INTERNAL_NAME=instrument" \
1629                           -D "JDK_FTYPE=0x2L",\
1630                 OBJECT_DIR:=$(LIBINSTRUMENT_DIR),\
1631                 DEBUG_SYMBOLS:=true))
1632 
1633 ifneq (,$(findstring $(OPENJDK_TARGET_OS), macosx windows))
1634 $(BUILD_LIBINSTRUMENT) : $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli_static$(STATIC_LIBRARY_SUFFIX)
1635 else
1636 $(BUILD_LIBINSTRUMENT) : $(INSTALL_LIBRARIES_HERE)/jli/$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX)
1637 endif
1638 $(BUILD_LIBINSTRUMENT) : $(BUILD_LIBJAVA)
1639 
1640 BUILD_LIBRARIES += $(BUILD_LIBINSTRUMENT)
1641 
1642 ##########################################################################################
1643 
1644 BUILD_LIBMANAGEMENT_SRC:=$(JDK_TOPDIR)/src/share/native/sun/management \
1645                            $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/management \
1646                            $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/com/sun/management
1647 
1648 BUILD_LIBMANAGEMENT_EXCLUDES:=
1649 
1650 BUILD_LIBMANAGEMENT_CFLAGS:=-I$(JDK_TOPDIR)/src/share/native/sun/management
1651 
1652 ifneq ($(OPENJDK_TARGET_OS), windows)
1653         BUILD_LIBMANAGEMENT_EXCLUDES += OperatingSystem_md.c


1671 ifneq ($(findstring $(OPENJDK_TARGET_OS),solaris linux),)
1672     ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
1673         LIBMANAGEMENT_OPTIMIZATION:=LOW
1674     endif
1675 endif
1676 
1677 $(eval $(call SetupNativeCompilation,BUILD_LIBMANAGEMENT,\
1678                 LIBRARY:=management,\
1679                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1680                 SRC:=$(BUILD_LIBMANAGEMENT_SRC),\
1681                 EXCLUDE_FILES:=$(BUILD_LIBMANAGEMENT_EXCLUDES),\
1682                 LANG:=C,\
1683                 OPTIMIZATION:=$(LIBMANAGEMENT_OPTIMIZATION), \
1684                 CFLAGS:=$(CFLAGS_JDKLIB) $(BUILD_LIBMANAGEMENT_CFLAGS),\
1685                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libmanagement/mapfile-vers, \
1686                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1687                          $(call SET_SHARED_LIBRARY_ORIGIN),\
1688                 LDFLAGS_solaris:=-lkstat,\
1689                 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
1690                 LDFLAGS_SUFFIX_windows:=jvm.lib psapi.lib $(WIN_JAVA_LIB) advapi32.lib,\

1691                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
1692                 RC_FLAGS:=$(RC_FLAGS)\
1693                           -D "JDK_FNAME=management.dll" \
1694                           -D "JDK_INTERNAL_NAME=management" \
1695                           -D "JDK_FTYPE=0x2L",\
1696                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libmanagement,\
1697                 DEBUG_SYMBOLS:=true))
1698 
1699 $(BUILD_LIBMANAGEMENT) : $(BUILD_LIBJAVA)
1700 
1701 BUILD_LIBRARIES += $(BUILD_LIBMANAGEMENT)
1702 
1703 ##########################################################################################
1704 
1705 BUILD_LIBHPROF_SRC:=$(JDK_TOPDIR)/src/share/demo/jvmti/hprof $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/demo/jvmti/hprof
1706 BUILD_LIBHPROF_CFLAGS:=-I$(JDK_TOPDIR)/src/share/demo/jvmti/hprof \
1707                          -I$(JDK_TOPDIR)/src/share/npt \
1708                          -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/npt \
1709                          -I$(JDK_TOPDIR)/src/share/demo/jvmti/java_crw_demo
1710 


1793                 DEBUG_SYMBOLS:=true))
1794 
1795 BUILD_LIBRARIES += $(BUILD_LIBNPT)
1796 
1797 ##########################################################################################
1798 
1799 LIBNET_SRC_DIRS:=$(JDK_TOPDIR)/src/share/native/java/net \
1800                    $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/net \
1801                    $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/net/dns \
1802                    $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/net/spi
1803 
1804 ifeq ($(OPENJDK_TARGET_OS),windows)
1805     LIBNET_SRC_DIRS+=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/net/www/protocol/http/ntlm
1806 else
1807     LIBNET_SRC_DIRS+=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/net/sdp
1808 endif
1809 
1810 LIBNET_CFLAGS:=$(foreach dir,$(LIBNET_SRC_DIRS),-I$(dir))
1811 
1812 LIBNET_EXCLUDE_FILES:=
1813 ifneq ($(OPENJDK_TARGET_OS),linux)
1814         LIBNET_EXCLUDE_FILES += linux_close.c
1815 endif
1816 
1817 ifneq ($(OPENJDK_TARGET_OS),macosx)
1818         LIBNET_EXCLUDE_FILES += bsd_close.c
1819 endif
1820 
1821 ifeq ($(OPENJDK_TARGET_OS),windows)
1822         LIBNET_EXCLUDE_FILES += PlainSocketImpl.c PlainDatagramSocketImpl.c SdpSupport.c
1823 else
1824         LIBNET_EXCLUDE_FILES += TwoStacksPlainSocketImpl.c DualStackPlainSocketImpl.c \
1825                                 TwoStacksPlainDatagramSocketImpl.c DualStackPlainDatagramSocketImpl.c \
1826                                 NTLMAuthSequence.c NetworkInterface_winXP.c
1827 endif
1828 
1829 $(eval $(call SetupNativeCompilation,BUILD_LIBNET,\
1830                 LIBRARY:=net,\
1831                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1832                 SRC:=$(LIBNET_SRC_DIRS),\
1833                 EXCLUDE_FILES:=$(LIBNET_EXCLUDE_FILES), \
1834                 LANG:=C,\
1835                 OPTIMIZATION:=LOW, \
1836                 CFLAGS:=$(CFLAGS_JDKLIB) \
1837                         $(LIBNET_CFLAGS),\
1838                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libnet/mapfile-vers, \
1839                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1840                          $(call SET_SHARED_LIBRARY_ORIGIN),\
1841                 LDFLAGS_SUFFIX_macosx:=-ljvm -ljava,\
1842                 LDFLAGS_SUFFIX_solaris:=-ljvm -ljava -lnsl -lsocket $(LIBDL) -lc ,\
1843                 LDFLAGS_SUFFIX_linux:=$(LIBDL) -ljvm -lpthread -ljava,\

1844                 LDFLAGS_SUFFIX_windows:=ws2_32.lib jvm.lib secur32.lib iphlpapi.lib \
1845                                         delayimp.lib $(WIN_JAVA_LIB) advapi32.lib \
1846                                         -DELAYLOAD:secur32.dll -DELAYLOAD:iphlpapi.dll, \
1847                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
1848                 RC_FLAGS:=$(RC_FLAGS)\
1849                           -D "JDK_FNAME=net.dll" \
1850                           -D "JDK_INTERNAL_NAME=net" \
1851                           -D "JDK_FTYPE=0x2L",\
1852                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libnet,\
1853                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
1854 
1855 $(BUILD_LIBNET) : $(BUILD_LIBJAVA)
1856 
1857 BUILD_LIBRARIES += $(BUILD_LIBNET)
1858 
1859 $(JDK_OUTPUTDIR)/lib/net.properties: $(JDK_TOPDIR)/src/share/lib/net.properties
1860         $(ECHO) $(LOG_INFO) Copying $(@F)
1861         $(call install-file)
1862 
1863 COPY_FILES += $(JDK_OUTPUTDIR)/lib/net.properties


1944                 KQueueArrayWrapper.c
1945 endif
1946 
1947 ifeq ($(OPENJDK_TARGET_OS), solaris)
1948         BUILD_LIBNIO_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libnio/mapfile-$(OPENJDK_TARGET_OS)
1949         BUILD_LIBNIO_FILES += \
1950                 DevPollArrayWrapper.c \
1951                 InheritedChannel.c \
1952                 NativeThread.c \
1953                 PollArrayWrapper.c \
1954                 SolarisEventPort.c \
1955                 UnixAsynchronousServerSocketChannelImpl.c \
1956                 UnixAsynchronousSocketChannelImpl.c \
1957                 GnomeFileTypeDetector.c \
1958                 SolarisNativeDispatcher.c \
1959                 SolarisWatchService.c \
1960                 UnixCopyFile.c \
1961                 UnixNativeDispatcher.c
1962 endif
1963 















1964 $(eval $(call SetupNativeCompilation,BUILD_LIBNIO,\
1965                 LIBRARY:=nio,\
1966                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1967                 SRC:=$(BUILD_LIBNIO_SRC),\
1968                 INCLUDE_FILES:=$(BUILD_LIBNIO_FILES), \
1969                 LANG:=C,\
1970                 OPTIMIZATION:=HIGH, \
1971                 CFLAGS:=$(CFLAGS_JDKLIB) \
1972                         $(BUILD_LIBNIO_CFLAGS),\
1973                 MAPFILE:=$(BUILD_LIBNIO_MAPFILE), \
1974                 LDFLAGS:=$(LDFLAGS_JDKLIB) $(BUILD_LIBNIO_LDFLAGS) \
1975                          $(call SET_SHARED_LIBRARY_ORIGIN),\
1976                 LDFLAGS_SUFFIX_linux:=-ljava -lnet -lpthread $(LIBDL),\

1977                 LDFLAGS_SUFFIX_solaris:=-ljvm -lsocket -lposix4 $(LIBDL) \
1978                                         -lsendfile -ljava -lnet -lc,\
1979                 LDFLAGS_SUFFIX_windows:=jvm.lib ws2_32.lib $(WIN_JAVA_LIB) \
1980                                         $(JDK_OUTPUTDIR)/objs/libnet/net.lib \
1981                                         advapi32.lib,\
1982                 LDFLAGS_SUFFIX_macosx:=-ljava -lnet -pthread -framework CoreFoundation,\
1983                 LDFLAGS_SUFFIX:=,\
1984                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
1985                 RC_FLAGS:=$(RC_FLAGS)\
1986                           -D "JDK_FNAME=nio.dll" \
1987                           -D "JDK_INTERNAL_NAME=nio" \
1988                           -D "JDK_FTYPE=0x2L",\
1989                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libnio,\
1990                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
1991 
1992 BUILD_LIBRARIES += $(BUILD_LIBNIO)
1993 
1994 $(BUILD_LIBNIO) : $(BUILD_LIBNET)
1995 
1996 ##########################################################################################
1997 
1998 ifeq ($(OPENJDK_TARGET_OS_API),posix)
1999 
2000   ifneq ($(OPENJDK_TARGET_OS),macosx)
2001 
2002     SCTP_WERROR := -Werror
2003     ifeq ($(OPENJDK_TARGET_CPU_ARCH), ppc)
2004       SCTP_WERROR :=
2005     endif
2006 
2007     $(eval $(call SetupNativeCompilation,BUILD_LIBSCTP,\
2008                 LIBRARY:=sctp,\
2009                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
2010                 SRC:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/nio/ch/sctp,\
2011                 LANG:=C,\
2012                 OPTIMIZATION:=LOW, \
2013                 CFLAGS:=$(CFLAGS_JDKLIB)\
2014                         -I$(JDK_TOPDIR)/src/share/native/sun/nio/ch \
2015                         -I$(JDK_TOPDIR)/src/share/native/sun/nio/ch/sctp \
2016                         -I$(JDK_TOPDIR)/src/share/native/java/net \
2017                         -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/nio/ch \
2018                         -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/net,\
2019                 CFLAGS_linux:=$(SCTP_WERROR),\
2020                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libsctp/mapfile-vers, \


2110 else
2111     LIBJLI_OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE)/jli
2112 endif
2113 
2114 $(eval $(call SetupNativeCompilation,BUILD_LIBJLI,\
2115                 LIBRARY:=jli,\
2116                 OUTPUT_DIR:=$(LIBJLI_OUTPUT_DIR),\
2117                 SRC:=$(BUILD_LIBJLI_SRC_DIRS),\
2118                 INCLUDE_FILES:=$(BUILD_LIBJLI_FILES),\
2119                 LANG:=C,\
2120                 OPTIMIZATION:=HIGH, \
2121                 CFLAGS:=$(LIBJLI_CFLAGS),\
2122                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjli/mapfile-vers, \
2123                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
2124                          $(call SET_SHARED_LIBRARY_ORIGIN),\
2125                 LDFLAGS_linux:=$(call SET_SHARED_LIBRARY_ORIGIN,/..),\
2126                 LDFLAGS_solaris:=$(call SET_SHARED_LIBRARY_ORIGIN,/..),\
2127                 LDFLAGS_macosx:=-framework Cocoa -framework Security -framework ApplicationServices,\
2128                 LDFLAGS_SUFFIX_solaris:=$(LIBZ) $(LIBDL) -lc,\
2129                 LDFLAGS_SUFFIX_linux:=$(LIBZ) $(LIBDL) -lc -lpthread,\

2130                 LDFLAGS_SUFFIX_macosx:=$(LIBZ),\
2131                 LDFLAGS_SUFFIX_windows:=\
2132                         -export:JLI_Launch \
2133                         -export:JLI_ManifestIterate \
2134                         -export:JLI_SetTraceLauncher \
2135                         -export:JLI_ReportErrorMessage \
2136                         -export:JLI_ReportErrorMessageSys \
2137                         -export:JLI_ReportMessage \
2138                         -export:JLI_ReportExceptionDescription \
2139                         -export:JLI_MemAlloc \
2140                         -export:JLI_CmdToArgs \
2141                         -export:JLI_GetStdArgc \
2142                         -export:JLI_GetStdArgs \
2143                         advapi32.lib \
2144                         comctl32.lib \
2145                         user32.lib,\
2146                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
2147                 RC_FLAGS:=$(RC_FLAGS) \
2148                           -D "JDK_FNAME=jli.dll" \
2149                           -D "JDK_INTERNAL_NAME=jli" \


2175     #
2176     # On macosx they do partial (incremental) linking of libjli_static.a
2177     #   code it here...rather than add support to NativeCompilation
2178     #   as this is first time I see it
2179     $(eval $(call SetupNativeCompilation,BUILD_LIBJLI_STATIC,\
2180                 LIBRARY:=jli_static, \
2181                 OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs,\
2182                 SRC:=$(BUILD_LIBJLI_SRC_DIRS),\
2183                 INCLUDE_FILES:=$(BUILD_LIBJLI_FILES),\
2184                 LANG:=C,\
2185                 OPTIMIZATION:=HIGH, \
2186                 CFLAGS:=$(CFLAGS_JDKLIB) $(LIBJLI_CFLAGS),\
2187                 LDFLAGS:=-nostdlib -r,\
2188                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjli_static,\
2189                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
2190 
2191 $(JDK_OUTPUTDIR)/objs/libjli_static.a : $(BUILD_LIBJLI_STATIC)
2192         $(call install-file)
2193 
2194 BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/objs/libjli_static.a















2195 endif
2196 
2197 ##########################################################################################
2198 
2199 ifndef OPENJDK
2200 ifeq ($(ENABLE_JFR), true)
2201 
2202 $(eval $(call SetupNativeCompilation,BUILD_LIBJFR,\
2203                 LIBRARY:=jfr,\
2204                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
2205                 SRC:=$(JDK_TOPDIR)/src/closed/share/native/oracle/jfr,\
2206                 LANG:=C,\
2207                 OPTIMIZATION:=LOW, \
2208                 CFLAGS:=$(CFLAGS_JDKLIB) \
2209                         -I$(JDK_TOPDIR)/src/closed/share/javavm/export, \
2210                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjfr/mapfile-vers, \
2211                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
2212                          $(call SET_SHARED_LIBRARY_ORIGIN),\
2213                 LDFLAGS_SUFFIX_solaris:=-lc,\
2214                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\


2396 endif
2397 
2398 $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_HEADLESS,\
2399                 LIBRARY:=awt_headless,\
2400                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
2401                 SRC:=$(LIBAWT_HEADLESS_DIRS),\
2402                 INCLUDE_FILES:=$(LIBAWT_HEADLESS_FILES),\
2403                 LANG:=C,\
2404                 OPTIMIZATION:=LOW, \
2405                 CFLAGS:=$(CFLAGS_JDKLIB) $(LIBAWT_HEADLESS_CFLAGS),\
2406                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libawt_headless/mapfile-vers,\
2407                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
2408                          $(call SET_SHARED_LIBRARY_ORIGIN),\
2409                 LDFLAGS_linux:=$(call SET_SHARED_LIBRARY_ORIGIN,/..),\
2410                 LDFLAGS_solaris:=$(call SET_SHARED_LIBRARY_ORIGIN,/..) \
2411                                  -R/usr/dt/lib$(OPENJDK_TARGET_CPU_ISADIR) \
2412                                  -R$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR),\
2413                 LDFLAGS_macosx:=$(call SET_SHARED_LIBRARY_ORIGIN).,\
2414                 REORDER:=$(LIBAWT_HEADLESS_REORDER), \
2415                 LDFLAGS_SUFFIX_linux:=-ljvm -lawt -lm $(LIBDL) -ljava,\

2416                 LDFLAGS_SUFFIX_solaris:=$(LIBDL) -ljvm -lawt -lm -ljava $(LIBCXX) -lc,\
2417                 LDFLAGS_SUFFIX_macosx:=-ljvm $(LIBCXX) -lawt $(LIBDL) -ljava \
2418                                  -framework Accelerate \
2419                                  -framework ApplicationServices \
2420                                  -framework Cocoa \
2421                                  -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
2422                                  -framework JavaNativeFoundation \
2423                                  -framework JavaRuntimeSupport,\
2424                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libawt_headless,\
2425                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
2426 
2427 $(BUILD_LIBAWT_HEADLESS) : $(BUILD_LIBAWT)
2428 
2429 BUILD_LIBRARIES += $(BUILD_LIBAWT_HEADLESS)
2430 
2431 endif
2432 endif
2433 
2434 ##########################################################################################
2435 


2798         DirectAudioDevice.c
2799 
2800 ifeq ($(OPENJDK_TARGET_OS), windows)
2801         EXTRA_SOUND_JNI_LIBS += jsoundds
2802         LIBJSOUND_CFLAGS += -DX_PLATFORM=X_WINDOWS \
2803                             -DUSE_PLATFORM_MIDI_OUT=TRUE \
2804                             -DUSE_PLATFORM_MIDI_IN=TRUE \
2805                             -DUSE_PORTS=TRUE
2806         LIBJSOUND_SRC_FILES += \
2807                 PLATFORM_API_WinOS_MidiIn.cpp \
2808                 PLATFORM_API_WinOS_MidiOut.c \
2809                 PLATFORM_API_WinOS_Util.c \
2810                 PLATFORM_API_WinOS_Ports.c
2811         LIBJSOUND_SRC_FILES += $(LIBJSOUND_MIDIFILES)
2812         LIBJSOUND_SRC_FILES += $(LIBJSOUND_PORTFILES)
2813 endif # OPENJDK_TARGET_OS windows
2814 
2815 ifeq ($(OPENJDK_TARGET_OS), linux)
2816         EXTRA_SOUND_JNI_LIBS += jsoundalsa
2817         LIBJSOUND_CFLAGS += -DX_PLATFORM=X_LINUX




2818 endif # OPENJDK_TARGET_OS linux
2819 
2820 ifeq ($(OPENJDK_TARGET_OS), macosx)
2821         LIBJSOUND_LANG:=C++
2822         LIBJSOUND_CFLAGS += -DX_PLATFORM=X_MACOSX \
2823                             -DUSE_PORTS=TRUE \
2824                             -DUSE_DAUDIO=TRUE \
2825                             -DUSE_PLATFORM_MIDI_OUT=TRUE \
2826                             -DUSE_PLATFORM_MIDI_IN=TRUE
2827         LIBJSOUND_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/native/com/sun/media/sound
2828         LIBJSOUND_SRC_FILES += \
2829                 PLATFORM_API_MacOSX_Utils.cpp \
2830                 PLATFORM_API_MacOSX_PCM.cpp \
2831                 PLATFORM_API_MacOSX_Ports.cpp \
2832                 PLATFORM_API_MacOSX_MidiIn.c \
2833                 PLATFORM_API_MacOSX_MidiOut.c \
2834                 PLATFORM_API_MacOSX_MidiUtils.c
2835         LIBJSOUND_SRC_FILES += $(LIBJSOUND_MIDIFILES)
2836         LIBJSOUND_SRC_FILES += $(LIBJSOUND_PORTFILES)
2837         LIBJSOUND_SRC_FILES += $(LIBJSOUND_DAUDIOFILES)




  78 OPENWIN_LIB:=$(OPENWIN_HOME)/lib
  79 
  80 ##########################################################################################
  81 
  82 BUILD_LIBFDLIBM_OPTIMIZATION:=HIGH
  83 
  84 ifneq ($(OPENJDK_TARGET_OS), solaris)
  85       BUILD_LIBFDLIBM_OPTIMIZATION:=NONE
  86 endif
  87 
  88 ifneq ($(OPENJDK_TARGET_OS),macosx)
  89 $(eval $(call SetupNativeCompilation,BUILD_LIBFDLIBM,\
  90                 STATIC_LIBRARY:=fdlibm,\
  91                 OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs,\
  92                 SRC:=$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/src,\
  93                 LANG:=C,\
  94                 OPTIMIZATION:=$(BUILD_LIBFDLIBM_OPTIMIZATION), \
  95                 CFLAGS:=$(CFLAGS_JDKLIB) \
  96                         -I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include,\
  97                 CFLAGS_windows_debug:=-DLOGGING,\
  98                 CFLAGS_aix:=-qfloat=nomaf,\
  99                 ARFLAGS:=$(ARFLAGS),\
 100                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\
 101                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
 102 
 103 else
 104 
 105 # On macosx the old build does partial (incremental) linking of fdlibm instead of
 106 # a plain static library.
 107 $(eval $(call SetupNativeCompilation,BUILD_LIBFDLIBM_MAC,\
 108                 LIBRARY:=fdlibm,\
 109                 OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\
 110                 SRC:=$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/src,\
 111                 LANG:=C,\
 112                 CFLAGS:=$(CFLAGS_JDKLIB) \
 113                         -I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include,\
 114                 LDFLAGS:=-nostdlib -r -arch x86_64,\
 115                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\
 116                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
 117 
 118 BUILD_LIBFDLIBM := $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fdlibm$(STATIC_LIBRARY_SUFFIX)


 234         LIBJAVA_REORDER:=$(JDK_TOPDIR)/makefiles/mapfiles/libjava/reorder-$(OPENJDK_TARGET_CPU)
 235     endif
 236 endif
 237 
 238 $(eval $(call SetupNativeCompilation,BUILD_LIBJAVA,\
 239                 LIBRARY:=java,\
 240                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
 241                 SRC:=$(LIBJAVA_SRC_DIRS),\
 242                 EXCLUDES:=fdlibm/src zip, \
 243                 EXCLUDE_FILES:=$(LIBJAVA_EXCLUDE_FILES), \
 244                 LANG:=C,\
 245                 OPTIMIZATION:=HIGH, \
 246                 CFLAGS:=$(CFLAGS_JDKLIB) \
 247                         $(LIBJAVA_CFLAGS),\
 248                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjava/mapfile-vers, \
 249                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
 250                          $(call SET_SHARED_LIBRARY_ORIGIN), \
 251                 LDFLAGS_SUFFIX_posix:=-ljvm -lverify, \
 252                 LDFLAGS_SUFFIX_solaris:=-lsocket -lnsl -lscf $(LIBDL) $(BUILD_LIBFDLIBM) -lc,\
 253                 LDFLAGS_SUFFIX_linux:=$(LIBDL) $(BUILD_LIBFDLIBM),\
 254                 LDFLAGS_SUFFIX_aix:=$(LIBDL) $(BUILD_LIBFDLIBM) -lm,\
 255                 LDFLAGS_SUFFIX_macosx:=-L$(JDK_OUTPUTDIR)/objs/ -lfdlibm \
 256                                          -framework CoreFoundation \
 257                                          -framework Security -framework SystemConfiguration, \
 258                 LDFLAGS_SUFFIX_windows:=-export:winFileHandleOpen -export:handleLseek \
 259                                         jvm.lib $(BUILD_LIBFDLIBM) $(WIN_VERIFY_LIB) \
 260                                         shell32.lib delayimp.lib -DELAYLOAD:shell32.dll \
 261                                         advapi32.lib,\
 262                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
 263                 RC_FLAGS:=$(RC_FLAGS)\
 264                           -D "JDK_FNAME=java.dll" \
 265                           -D "JDK_INTERNAL_NAME=java" \
 266                           -D "JDK_FTYPE=0x2L",\
 267                 REORDER:=$(LIBJAVA_REORDER), \
 268                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjava,\
 269                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
 270 
 271 BUILD_LIBRARIES += $(BUILD_LIBJAVA)
 272 
 273 $(BUILD_LIBJAVA) : $(LIBJLI_BINARY)
 274 


 537         IntBgr.c \
 538         IntRgbx.c \
 539         Any4Byte.c \
 540         FourByteAbgr.c \
 541         FourByteAbgrPre.c \
 542         BufferedMaskBlit.c \
 543         BufferedRenderPipe.c \
 544         ShapeSpanIterator.c \
 545         SpanClipRenderer.c \
 546         awt_ImageRep.c \
 547         awt_ImagingLib.c \
 548         awt_Mlib.c \
 549         awt_parseImage.c \
 550         DataBufferNative.c \
 551         dither.c \
 552         debug_assert.c \
 553         debug_mem.c \
 554         debug_trace.c \
 555         debug_util.c
 556 
 557 ifneq (,$(filter $(OPENJDK_TARGET_OS), solaris linux aix))
 558         LIBAWT_FILES += awt_LoadLibrary.c initIDs.c img_colors.c
 559 endif
 560 
 561 ifeq ($(OPENJDK_TARGET_OS),macosx)
 562         LIBAWT_FILES += awt_LoadLibrary.c img_colors.c
 563         LIBAWT_DIRS += $(JDK_TOPDIR)/src/macosx/native/com/apple/resources
 564         LIBAWT_FILES += awt_LoadLibrary.c MacOSXResourceBundle.m
 565         LIBAWT_CFLAGS += -F/System/Library/Frameworks/JavaVM.framework/Frameworks
 566 
 567         LIBAWT_MacOSXResourceBundle.m_CFLAGS:=-O0
 568 endif
 569 
 570 ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc)
 571         LIBAWT_CFLAGS += -DMLIB_ADD_SUFF
 572         LIBAWT_CFLAGS += -xarch=sparcvis
 573         LIBAWT_CFLAGS += $(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib/vis_$(OPENJDK_TARGET_CPU_BITS).il
 574         LIBAWT_CFLAGS += \
 575             -I$(JDK_TOPDIR)/src/solaris/native/sun/awt/medialib \
 576             -I$(JDK_TOPDIR)/src/solaris/native/sun/java2d/medialib \
 577             -I$(JDK_TOPDIR)/src/solaris/native/sun/java2d/loops


 708 
 709 LIBAWT_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libawt/mapfile-vers
 710 ifeq ($(OPENJDK_TARGET_OS),linux)
 711         LIBAWT_MAPFILE:=
 712 endif
 713 
 714 $(eval $(call SetupNativeCompilation,BUILD_LIBAWT,\
 715                 LIBRARY:=awt,\
 716                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
 717                 SRC:=$(LIBAWT_DIRS),\
 718                 INCLUDE_FILES:=$(LIBAWT_FILES),\
 719                 LANG:=$(LIBAWT_LANG),\
 720                 OPTIMIZATION:=LOW, \
 721                 CFLAGS:=$(CFLAGS_JDKLIB) $(LIBAWT_CFLAGS),\
 722                 ASFLAGS:=$(LIBAWT_ASFLAGS),\
 723                 MAPFILE:=$(LIBAWT_MAPFILE), \
 724                 LDFLAGS:=$(LDFLAGS_JDKLIB) $(call SET_SHARED_LIBRARY_ORIGIN),\
 725                 LDFLAGS_solaris:=-R/usr/dt/lib$(OPENJDK_TARGET_CPU_ISADIR) -R$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR),\
 726                 LDFLAGS_SUFFIX_linux:=-ljvm $(LIBM) $(LIBDL) -ljava,\
 727                 LDFLAGS_SUFFIX_solaris:=-ljvm $(LIBM) $(LIBDL) -ljava -lc,\
 728                 LDFLAGS_SUFFIX_aix:=-ljvm $(LIBM) $(LIBDL) -ljava -lm,\
 729                 LDFLAGS_SUFFIX_macosx:=-lmlib_image -ljvm $(LIBM) \
 730                                        -framework Cocoa \
 731                                        -framework OpenGL \
 732                                        -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
 733                                        -framework JavaNativeFoundation \
 734                                        -framework JavaRuntimeSupport \
 735                                        -framework ApplicationServices \
 736                                        -framework AudioToolbox \
 737                                        -ljava,\
 738                 LDFLAGS_SUFFIX_windows:=kernel32.lib user32.lib gdi32.lib winspool.lib \
 739                                         imm32.lib ole32.lib uuid.lib shell32.lib \
 740                                         comdlg32.lib winmm.lib comctl32.lib shlwapi.lib \
 741                                         delayimp.lib jvm.lib $(WIN_JAVA_LIB) advapi32.lib \
 742                                         -DELAYLOAD:user32.dll -DELAYLOAD:gdi32.dll \
 743                                         -DELAYLOAD:shell32.dll -DELAYLOAD:winmm.dll \
 744                                         -DELAYLOAD:winspool.drv -DELAYLOAD:imm32.dll \
 745                                         -DELAYLOAD:ole32.dll -DELAYLOAD:comdlg32.dll \
 746                                         -DELAYLOAD:comctl32.dll -DELAYLOAD:shlwapi.dll,\
 747                 VERSIONINFO_RESOURCE:=$(LIBAWT_VERSIONINFO_RESOURCE),\
 748                 RC_FLAGS:=$(RC_FLAGS) $(LIBAWT_RC_FLAGS) \


 954                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
 955                 LANG:=C,\
 956                 OPTIMIZATION:=LOW, \
 957                 SRC:=$(JDK_TOPDIR)/src/share/native/java/util/zip,\
 958                 EXCLUDES:=$(LIBZIP_EXCLUDES),\
 959                 CFLAGS:=$(CFLAGS_JDKLIB) \
 960                         $(ZLIB_CPPFLAGS) \
 961                         -I$(JDK_TOPDIR)/src/share/native/java/io \
 962                         -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/io,\
 963                 CFLAGS_posix:=$(BUILD_LIBZIP_MMAP) -UDEBUG,\
 964                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libzip/mapfile-vers, \
 965                 REORDER:=$(BUILD_LIBZIP_REORDER), \
 966                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
 967                          $(call SET_SHARED_LIBRARY_ORIGIN) \
 968                          $(EXPORT_ZIP_FUNCS), \
 969                 LDFLAGS_windows:=-export:ZIP_Open -export:ZIP_Close -export:ZIP_FindEntry \
 970                                 -export:ZIP_ReadEntry -export:ZIP_GetNextEntry jvm.lib \
 971                                 $(WIN_JAVA_LIB),\
 972                 LDFLAGS_SUFFIX_linux:=-ljvm -ljava $(LIBZ),\
 973                 LDFLAGS_SUFFIX_solaris:=-ljvm -ljava $(LIBZ) -lc,\
 974                 LDFLAGS_SUFFIX_aix:=-ljvm -ljava $(LIBZ),\
 975                 LDFLAGS_SUFFIX_macosx:=$(LIBZ) -ljava -ljvm,\
 976                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
 977                 RC_FLAGS:=$(RC_FLAGS)\
 978                           -D "JDK_FNAME=zip.dll" \
 979                           -D "JDK_INTERNAL_NAME=zip" \
 980                           -D "JDK_FTYPE=0x2L",\
 981                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libzip,\
 982                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
 983 
 984 $(BUILD_LIBZIP) : $(BUILD_LIBJAVA)
 985 
 986 BUILD_LIBRARIES += $(BUILD_LIBZIP)
 987 
 988 ##########################################################################################
 989 
 990 $(eval $(call SetupNativeCompilation,BUILD_LIBUNPACK,\
 991                 LIBRARY:=unpack, \
 992                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
 993                 SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\
 994                 EXCLUDE_FILES:=main.cpp,\


1020         $(ECHO) Copying $(@F)
1021         $(CP) $(patsubst %$(SHARED_LIBRARY_SUFFIX),%.map,$<) $@
1022 
1023     $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)unpack.pdb: $(BUILD_LIBUNPACK)
1024         $(ECHO) Copying $(@F)
1025         $(CP) $(patsubst %$(SHARED_LIBRARY_SUFFIX),%.pdb,$<) $@
1026 endif
1027 
1028 ##########################################################################################
1029 
1030 LIBATTACH_EXCLUDE_FILES:=
1031 ifneq ($(OPENJDK_TARGET_OS),solaris)
1032     LIBATTACH_EXCLUDE_FILES+=SolarisVirtualMachine.c
1033 endif
1034 ifneq ($(OPENJDK_TARGET_OS),linux)
1035     LIBATTACH_EXCLUDE_FILES+=LinuxVirtualMachine.c
1036 endif
1037 ifneq ($(OPENJDK_TARGET_OS),macosx)
1038     LIBATTACH_EXCLUDE_FILES+=BsdVirtualMachine.c
1039 endif
1040 ifneq ($(OPENJDK_TARGET_OS),aix)
1041     LIBATTACH_EXCLUDE_FILES+=AixVirtualMachine.c
1042 endif
1043 
1044 $(eval $(call SetupNativeCompilation,BUILD_LIBATTACH,\
1045                 LIBRARY:=attach, \
1046                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1047                 SRC:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/tools/attach,\
1048                 EXCLUDE_FILES:=$(LIBATTACH_EXCLUDE_FILES),\
1049                 LANG:=C,\
1050                 OPTIMIZATION:=LOW, \
1051                 CFLAGS:=$(CFLAGS_JDKLIB),\
1052                 CFLAGS_windows:=/Gy,\
1053                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libattach/mapfile-$(OPENJDK_TARGET_OS), \
1054                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
1055                 RC_FLAGS:=$(RC_FLAGS) \
1056                           -D "JDK_FNAME=attach.dll" \
1057                           -D "JDK_INTERNAL_NAME=attach" \
1058                           -D "JDK_FTYPE=0x2L",\
1059                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1060                          $(call SET_SHARED_LIBRARY_ORIGIN),\
1061                 LDFLAGS_solaris:=-ldoor,\
1062                 LDFLAGS_windows:=/ORDER:@$(JDK_TOPDIR)/makefiles/mapfiles/libattach/reorder-windows-$(OPENJDK_TARGET_CPU),\


1245     $(eval $(call SetupNativeCompilation,BUILD_LIBLCMS,\
1246                 LIBRARY:=lcms,\
1247                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1248                 SRC:=$(JDK_TOPDIR)/src/share/native/sun/java2d/cmm/lcms,\
1249                 LANG:=C,\
1250                 OPTIMIZATION:=HIGHEST, \
1251                 CFLAGS:=$(filter-out -xc99=%none,$(CFLAGS_JDKLIB)) \
1252                         $(SHARED_LIBRARY_FLAGS) \
1253                         -I$(JDK_TOPDIR)/src/share/native/sun/java2d \
1254                         -I$(JDK_TOPDIR)/src/share/native/sun/awt/debug,\
1255                 CFLAGS_solaris:=-xc99=no_lib,\
1256                 CFLAGS_windows:=-DCMS_IS_WINDOWS_,\
1257                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/liblcms/mapfile-vers, \
1258                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1259                          $(call SET_SHARED_LIBRARY_ORIGIN), \
1260                 LDFLAGS_solaris:=/usr/lib$(OPENJDK_TARGET_CPU_ISADIR)/libm.so.2,\
1261                 LDFLAGS_windows:=$(WIN_AWT_LIB) $(WIN_JAVA_LIB),\
1262                 LDFLAGS_SUFFIX_solaris:=-lawt -ljava -ljvm -lc,\
1263                 LDFLAGS_SUFFIX_macosx:=$(LIBM) -lawt -ljava -ljvm,\
1264                 LDFLAGS_SUFFIX_linux:=-lm -lawt -ljava -ljvm,\
1265                 LDFLAGS_SUFFIX_aix:=-lm -lawt -ljava -ljvm,\
1266                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
1267                 RC_FLAGS:=$(RC_FLAGS)\
1268                           -D "JDK_FNAME=lcms.dll" \
1269                           -D "JDK_INTERNAL_NAME=lcms" \
1270                           -D "JDK_FTYPE=0x2L",\
1271                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/liblcms,\
1272                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
1273 
1274     BUILD_LIBRARIES += $(BUILD_LIBLCMS)
1275 
1276     $(BUILD_LIBLCMS) : $(BUILD_LIBAWT)
1277 
1278 ##########################################################################################
1279 
1280 ifdef OPENJDK
1281     BUILD_LIBJPEG_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/mapfile-vers
1282 else
1283     BUILD_LIBJPEG_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjpeg/mapfile-vers-closed
1284     BUILD_LIBJPEG_CLOSED_SRC:=$(JDK_TOPDIR)/src/closed/share/native/sun/awt/image/jpeg
1285     BUILD_LIBJPEG_CLOSED_INCLUDES:=-I$(BUILD_LIBJPEG_CLOSED_SRC)


1379 
1380 $(eval $(call SetupNativeCompilation,BUILD_LIBFONTMANAGER,\
1381                 LIBRARY:=fontmanager, \
1382                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1383                 SRC:=$(JDK_TOPDIR)/src/share/native/sun/font\
1384                      $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/font,\
1385                 EXCLUDE_FILES:=$(LIBFONTMANAGER_EXCLUDE_FILES) \
1386                                AccelGlyphCache.c,\
1387                 LANG:=C++,\
1388                 CFLAGS:=$(CFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON),\
1389                 CXXFLAGS:=$(CXXFLAGS_JDKLIB) $(BUILD_LIBFONTMANAGER_CFLAGS_COMMON),\
1390                 OPTIMIZATION:=$(LIBFONTMANAGER_OPTIMIZATION), \
1391                 CFLAGS_windows= -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/windows \
1392                                 -DCC_NOEX, \
1393                 MAPFILE:=$(BUILD_LIBFONTMANAGER_MAPFILE), \
1394                 LDFLAGS:=$(subst -Xlinker -z -Xlinker defs,,$(LDFLAGS_JDKLIB)) $(LDFLAGS_CXX_JDK) \
1395                          $(call SET_SHARED_LIBRARY_ORIGIN),\
1396                 LDFLAGS_SUFFIX:=$(BUILD_LIBFONTMANAGER_FONTLIB),\
1397                 LDFLAGS_SUFFIX_linux:=-lawt $(LIBM) $(LIBCXX) -ljava -ljvm -lc,\
1398                 LDFLAGS_SUFFIX_solaris:=-lawt -lawt_xawt -lc $(LIBM) $(LIBCXX) -ljava -ljvm,\
1399                 LDFLAGS_SUFFIX_aix:=-lawt -lawt_xawt $(LIBM) $(LIBCXX) -ljava -ljvm,\
1400                 LDFLAGS_SUFFIX_macosx:=-lawt $(LIBM) $(LIBCXX) -undefined dynamic_lookup \
1401                                        -ljava -ljvm,\
1402                 LDFLAGS_SUFFIX_windows:=$(WIN_JAVA_LIB) advapi32.lib user32.lib gdi32.lib \
1403                                         $(WIN_AWT_LIB),\
1404                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
1405                 RC_FLAGS:=$(RC_FLAGS)\
1406                           -D "JDK_FNAME=fontmanager.dll" \
1407                           -D "JDK_INTERNAL_NAME=fontmanager" \
1408                           -D "JDK_FTYPE=0x2L",\
1409                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfontmanager,\
1410                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
1411 
1412 $(BUILD_LIBFONTMANAGER) : $(BUILD_LIBAWT)
1413 
1414 ifneq (,$(findstring $(OPENJDK_TARGET_OS),solaris macosx aix))
1415 $(BUILD_LIBFONTMANAGER) : $(BUILD_LIBAWT_XAWT)
1416 endif
1417 
1418 BUILD_LIBRARIES += $(BUILD_LIBFONTMANAGER)
1419 
1420 ##########################################################################################
1421 
1422 ifndef OPENJDK
1423 
1424 #    ifeq ($(OPENJDK_TARGET_OS), linux)
1425 #        ifeq ("$(CC_VER_MAJOR)", "3")
1426 #            OTHER_LDLIBS  += -Wl,-Bstatic -lgcc_eh -Wl,-Bdynamic
1427 #        endif
1428 #    endif
1429 #
1430 # The resulting size of the t2k lib file is (at least on linux) dependant on the order of
1431 # the input .o files. Because of this the new build will differ in size to the old build.
1432     BUILD_LIBT2K_CFLAGS_COMMON:=-I$(JDK_TOPDIR)/src/share/native/sun/font \
1433                             -I$(JDK_TOPDIR)/src/closed/share/native/sun/font/t2k \
1434                             -I$(JDK_TOPDIR)/src/closed/share/native/sun/font \


1531         JAWT_FILES:=jawt.m
1532         JAWT_LIBS:=-lawt_lwawt
1533     endif
1534 
1535     $(eval $(call SetupNativeCompilation,BUILD_LIBJAWT,\
1536                 LIBRARY:=jawt, \
1537                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1538                 SRC:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/awt \
1539                      $(JDK_TOPDIR)/src/macosx/native/sun/awt,\
1540                 INCLUDE_FILES:=$(JAWT_FILES),\
1541                 LANG:=C,\
1542                 OPTIMIZATION:=LOW, \
1543                 CFLAGS:=$(CFLAGS_JDKLIB), \
1544                 CFLAGS_linux:=$(HEADLESS_CFLAG),\
1545                 CFLAGS_macosx:=-I$(JDK_TOPDIR)/src/solaris/native/sun/awt ,\
1546                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjawt/mapfile-vers, \
1547                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1548                          $(call SET_SHARED_LIBRARY_ORIGIN),\
1549                 LDFLAGS_solaris:=-L$(OPENWIN_HOME)/sfw/lib$(OPENJDK_TARGET_CPU_ISADIR) -L$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR),\
1550                 LDFLAGS_SUFFIX_linux:=$(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX),\
1551                 LDFLAGS_SUFFIX_aix:=$(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX),\
1552                 LDFLAGS_SUFFIX_solaris:=$(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX) -lXrender,\
1553                 LDFLAGS_SUFFIX_macosx:=-Xlinker -rpath -Xlinker @loader_path $(JAWT_LIBS) \
1554                                        -framework Cocoa $(LDFLAGS_JDKLIB_SUFFIX),\
1555                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjawt,\
1556                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
1557 
1558 ifndef BUILD_HEADLESS_ONLY
1559 $(BUILD_LIBJAWT) : $(BUILD_LIBAWT_XAWT)
1560 else
1561 $(BUILD_LIBJAWT) : $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_headless$(SHARED_LIBRARY_SUFFIX)
1562 endif
1563 
1564 ifeq ($(OPENJDK_TARGET_OS),macosx)
1565 $(BUILD_LIBJAWT) : $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)awt_lwawt$(SHARED_LIBRARY_SUFFIX)
1566 endif
1567 
1568 endif # OPENJDK_TARGET_OS
1569 
1570 BUILD_LIBRARIES += $(BUILD_LIBJAWT)
1571 


1615                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1616                 SRC:=$(LIBINSTRUMENT_SRC),\
1617                 INCLUDE_FILES:=$(LIBINSTRUMENT_FILES),\
1618                 LANG:=C,\
1619                 OPTIMIZATION:=LOW, \
1620                 CFLAGS:=$(LIBINSTRUMENT_CFLAGS),\
1621                 CFLAGS_debug:=-DJPLIS_LOGGING,\
1622                 CFLAGS_release:=-DNO_JPLIS_LOGGING,\
1623                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libinstrument/mapfile-vers, \
1624                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1625                          $(call SET_SHARED_LIBRARY_ORIGIN) \
1626                          $(LIBINSTRUMENT_LDFLAGS),\
1627                 LDFLAGS_linux:=$(call SET_SHARED_LIBRARY_ORIGIN,/jli),\
1628                 LDFLAGS_solaris:= $(call SET_SHARED_LIBRARY_ORIGIN,/jli),\
1629                 LDFLAGS_macosx:=-Xlinker -all_load $(JDK_OUTPUTDIR)/objs/libjli_static.a \
1630                                 -framework Cocoa -framework Security -framework ApplicationServices,\
1631                 LDFLAGS_SUFFIX:=$(LIBINSTRUMENT_LDFLAGS_SUFFIX),\
1632                 LDFLAGS_SUFFIX_macosx:=-liconv $(LIBZ),\
1633                 LDFLAGS_SUFFIX_solaris:=$(LIBZ) -L $(INSTALL_LIBRARIES_HERE)/jli -ljli $(LIBDL) -lc,\
1634                 LDFLAGS_SUFFIX_linux:=$(LIBZ) -L $(INSTALL_LIBRARIES_HERE)/jli -ljli $(LIBDL),\
1635                 LDFLAGS_SUFFIX_aix:=$(LIBZ) -L$(JDK_OUTPUTDIR)/objs -ljli_static $(LIBDL),\
1636                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
1637                 RC_FLAGS:=$(RC_FLAGS)\
1638                           -D "JDK_FNAME=instrument.dll" \
1639                           -D "JDK_INTERNAL_NAME=instrument" \
1640                           -D "JDK_FTYPE=0x2L",\
1641                 OBJECT_DIR:=$(LIBINSTRUMENT_DIR),\
1642                 DEBUG_SYMBOLS:=true))
1643 
1644 ifneq (,$(findstring $(OPENJDK_TARGET_OS), macosx windows aix))
1645 $(BUILD_LIBINSTRUMENT) : $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli_static$(STATIC_LIBRARY_SUFFIX)
1646 else
1647 $(BUILD_LIBINSTRUMENT) : $(INSTALL_LIBRARIES_HERE)/jli/$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX)
1648 endif
1649 $(BUILD_LIBINSTRUMENT) : $(BUILD_LIBJAVA)
1650 
1651 BUILD_LIBRARIES += $(BUILD_LIBINSTRUMENT)
1652 
1653 ##########################################################################################
1654 
1655 BUILD_LIBMANAGEMENT_SRC:=$(JDK_TOPDIR)/src/share/native/sun/management \
1656                            $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/management \
1657                            $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/com/sun/management
1658 
1659 BUILD_LIBMANAGEMENT_EXCLUDES:=
1660 
1661 BUILD_LIBMANAGEMENT_CFLAGS:=-I$(JDK_TOPDIR)/src/share/native/sun/management
1662 
1663 ifneq ($(OPENJDK_TARGET_OS), windows)
1664         BUILD_LIBMANAGEMENT_EXCLUDES += OperatingSystem_md.c


1682 ifneq ($(findstring $(OPENJDK_TARGET_OS),solaris linux),)
1683     ifeq ($(ENABLE_DEBUG_SYMBOLS), true)
1684         LIBMANAGEMENT_OPTIMIZATION:=LOW
1685     endif
1686 endif
1687 
1688 $(eval $(call SetupNativeCompilation,BUILD_LIBMANAGEMENT,\
1689                 LIBRARY:=management,\
1690                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1691                 SRC:=$(BUILD_LIBMANAGEMENT_SRC),\
1692                 EXCLUDE_FILES:=$(BUILD_LIBMANAGEMENT_EXCLUDES),\
1693                 LANG:=C,\
1694                 OPTIMIZATION:=$(LIBMANAGEMENT_OPTIMIZATION), \
1695                 CFLAGS:=$(CFLAGS_JDKLIB) $(BUILD_LIBMANAGEMENT_CFLAGS),\
1696                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libmanagement/mapfile-vers, \
1697                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1698                          $(call SET_SHARED_LIBRARY_ORIGIN),\
1699                 LDFLAGS_solaris:=-lkstat,\
1700                 LDFLAGS_SUFFIX:=$(LDFLAGS_JDKLIB_SUFFIX),\
1701                 LDFLAGS_SUFFIX_windows:=jvm.lib psapi.lib $(WIN_JAVA_LIB) advapi32.lib,\
1702                 LDFLAGS_SUFFIX_aix:=-lperfstat,\
1703                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
1704                 RC_FLAGS:=$(RC_FLAGS)\
1705                           -D "JDK_FNAME=management.dll" \
1706                           -D "JDK_INTERNAL_NAME=management" \
1707                           -D "JDK_FTYPE=0x2L",\
1708                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libmanagement,\
1709                 DEBUG_SYMBOLS:=true))
1710 
1711 $(BUILD_LIBMANAGEMENT) : $(BUILD_LIBJAVA)
1712 
1713 BUILD_LIBRARIES += $(BUILD_LIBMANAGEMENT)
1714 
1715 ##########################################################################################
1716 
1717 BUILD_LIBHPROF_SRC:=$(JDK_TOPDIR)/src/share/demo/jvmti/hprof $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/demo/jvmti/hprof
1718 BUILD_LIBHPROF_CFLAGS:=-I$(JDK_TOPDIR)/src/share/demo/jvmti/hprof \
1719                          -I$(JDK_TOPDIR)/src/share/npt \
1720                          -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/npt \
1721                          -I$(JDK_TOPDIR)/src/share/demo/jvmti/java_crw_demo
1722 


1805                 DEBUG_SYMBOLS:=true))
1806 
1807 BUILD_LIBRARIES += $(BUILD_LIBNPT)
1808 
1809 ##########################################################################################
1810 
1811 LIBNET_SRC_DIRS:=$(JDK_TOPDIR)/src/share/native/java/net \
1812                    $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/net \
1813                    $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/net/dns \
1814                    $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/net/spi
1815 
1816 ifeq ($(OPENJDK_TARGET_OS),windows)
1817     LIBNET_SRC_DIRS+=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/net/www/protocol/http/ntlm
1818 else
1819     LIBNET_SRC_DIRS+=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/net/sdp
1820 endif
1821 
1822 LIBNET_CFLAGS:=$(foreach dir,$(LIBNET_SRC_DIRS),-I$(dir))
1823 
1824 LIBNET_EXCLUDE_FILES:=
1825 ifeq (,$(filter $(OPENJDK_TARGET_OS), linux aix))
1826         LIBNET_EXCLUDE_FILES += linux_close.c
1827 endif
1828 
1829 ifneq ($(OPENJDK_TARGET_OS),macosx)
1830         LIBNET_EXCLUDE_FILES += bsd_close.c
1831 endif
1832 
1833 ifeq ($(OPENJDK_TARGET_OS),windows)
1834         LIBNET_EXCLUDE_FILES += PlainSocketImpl.c PlainDatagramSocketImpl.c SdpSupport.c
1835 else
1836         LIBNET_EXCLUDE_FILES += TwoStacksPlainSocketImpl.c DualStackPlainSocketImpl.c \
1837                                 TwoStacksPlainDatagramSocketImpl.c DualStackPlainDatagramSocketImpl.c \
1838                                 NTLMAuthSequence.c NetworkInterface_winXP.c
1839 endif
1840 
1841 $(eval $(call SetupNativeCompilation,BUILD_LIBNET,\
1842                 LIBRARY:=net,\
1843                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1844                 SRC:=$(LIBNET_SRC_DIRS),\
1845                 EXCLUDE_FILES:=$(LIBNET_EXCLUDE_FILES), \
1846                 LANG:=C,\
1847                 OPTIMIZATION:=LOW, \
1848                 CFLAGS:=$(CFLAGS_JDKLIB) \
1849                         $(LIBNET_CFLAGS),\
1850                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libnet/mapfile-vers, \
1851                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
1852                          $(call SET_SHARED_LIBRARY_ORIGIN),\
1853                 LDFLAGS_SUFFIX_macosx:=-ljvm -ljava,\
1854                 LDFLAGS_SUFFIX_solaris:=-ljvm -ljava -lnsl -lsocket $(LIBDL) -lc ,\
1855                 LDFLAGS_SUFFIX_linux:=$(LIBDL) -ljvm -lpthread -ljava,\
1856                 LDFLAGS_SUFFIX_aix:=$(LIBDL) -ljvm -ljava,\
1857                 LDFLAGS_SUFFIX_windows:=ws2_32.lib jvm.lib secur32.lib iphlpapi.lib \
1858                                         delayimp.lib $(WIN_JAVA_LIB) advapi32.lib \
1859                                         -DELAYLOAD:secur32.dll -DELAYLOAD:iphlpapi.dll, \
1860                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
1861                 RC_FLAGS:=$(RC_FLAGS)\
1862                           -D "JDK_FNAME=net.dll" \
1863                           -D "JDK_INTERNAL_NAME=net" \
1864                           -D "JDK_FTYPE=0x2L",\
1865                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libnet,\
1866                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
1867 
1868 $(BUILD_LIBNET) : $(BUILD_LIBJAVA)
1869 
1870 BUILD_LIBRARIES += $(BUILD_LIBNET)
1871 
1872 $(JDK_OUTPUTDIR)/lib/net.properties: $(JDK_TOPDIR)/src/share/lib/net.properties
1873         $(ECHO) $(LOG_INFO) Copying $(@F)
1874         $(call install-file)
1875 
1876 COPY_FILES += $(JDK_OUTPUTDIR)/lib/net.properties


1957                 KQueueArrayWrapper.c
1958 endif
1959 
1960 ifeq ($(OPENJDK_TARGET_OS), solaris)
1961         BUILD_LIBNIO_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libnio/mapfile-$(OPENJDK_TARGET_OS)
1962         BUILD_LIBNIO_FILES += \
1963                 DevPollArrayWrapper.c \
1964                 InheritedChannel.c \
1965                 NativeThread.c \
1966                 PollArrayWrapper.c \
1967                 SolarisEventPort.c \
1968                 UnixAsynchronousServerSocketChannelImpl.c \
1969                 UnixAsynchronousSocketChannelImpl.c \
1970                 GnomeFileTypeDetector.c \
1971                 SolarisNativeDispatcher.c \
1972                 SolarisWatchService.c \
1973                 UnixCopyFile.c \
1974                 UnixNativeDispatcher.c
1975 endif
1976 
1977 ifeq ($(OPENJDK_TARGET_OS), aix)
1978         BUILD_LIBNIO_MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libnio/mapfile-$(OPENJDK_TARGET_OS)
1979         BUILD_LIBNIO_FILES += \
1980                 AixPollPort.c \
1981                 InheritedChannel.c \
1982                 NativeThread.c \
1983                 PollArrayWrapper.c \
1984                 UnixAsynchronousServerSocketChannelImpl.c \
1985                 UnixAsynchronousSocketChannelImpl.c \
1986                 GnomeFileTypeDetector.c \
1987                 UnixCopyFile.c \
1988                 AixNativeDispatcher.c \
1989                 UnixNativeDispatcher.c
1990 endif
1991 
1992 $(eval $(call SetupNativeCompilation,BUILD_LIBNIO,\
1993                 LIBRARY:=nio,\
1994                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
1995                 SRC:=$(BUILD_LIBNIO_SRC),\
1996                 INCLUDE_FILES:=$(BUILD_LIBNIO_FILES), \
1997                 LANG:=C,\
1998                 OPTIMIZATION:=HIGH, \
1999                 CFLAGS:=$(CFLAGS_JDKLIB) \
2000                         $(BUILD_LIBNIO_CFLAGS),\
2001                 MAPFILE:=$(BUILD_LIBNIO_MAPFILE), \
2002                 LDFLAGS:=$(LDFLAGS_JDKLIB) $(BUILD_LIBNIO_LDFLAGS) \
2003                          $(call SET_SHARED_LIBRARY_ORIGIN),\
2004                 LDFLAGS_SUFFIX_linux:=-ljava -lnet -lpthread $(LIBDL),\
2005                 LDFLAGS_SUFFIX_aix:=-ljava -lnet $(LIBDL),\
2006                 LDFLAGS_SUFFIX_solaris:=-ljvm -lsocket -lposix4 $(LIBDL) \
2007                                         -lsendfile -ljava -lnet -lc,\
2008                 LDFLAGS_SUFFIX_windows:=jvm.lib ws2_32.lib $(WIN_JAVA_LIB) \
2009                                         $(JDK_OUTPUTDIR)/objs/libnet/net.lib \
2010                                         advapi32.lib,\
2011                 LDFLAGS_SUFFIX_macosx:=-ljava -lnet -pthread -framework CoreFoundation,\
2012                 LDFLAGS_SUFFIX:=,\
2013                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
2014                 RC_FLAGS:=$(RC_FLAGS)\
2015                           -D "JDK_FNAME=nio.dll" \
2016                           -D "JDK_INTERNAL_NAME=nio" \
2017                           -D "JDK_FTYPE=0x2L",\
2018                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libnio,\
2019                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
2020 
2021 BUILD_LIBRARIES += $(BUILD_LIBNIO)
2022 
2023 $(BUILD_LIBNIO) : $(BUILD_LIBNET)
2024 
2025 ##########################################################################################
2026 
2027 ifeq ($(OPENJDK_TARGET_OS_API),posix)
2028 
2029   ifeq (,$(filter $(OPENJDK_TARGET_OS), macosx aix))
2030 
2031     SCTP_WERROR := -Werror
2032     ifeq ($(OPENJDK_TARGET_CPU_ARCH), ppc)
2033       SCTP_WERROR :=
2034     endif
2035 
2036     $(eval $(call SetupNativeCompilation,BUILD_LIBSCTP,\
2037                 LIBRARY:=sctp,\
2038                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
2039                 SRC:=$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/nio/ch/sctp,\
2040                 LANG:=C,\
2041                 OPTIMIZATION:=LOW, \
2042                 CFLAGS:=$(CFLAGS_JDKLIB)\
2043                         -I$(JDK_TOPDIR)/src/share/native/sun/nio/ch \
2044                         -I$(JDK_TOPDIR)/src/share/native/sun/nio/ch/sctp \
2045                         -I$(JDK_TOPDIR)/src/share/native/java/net \
2046                         -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/sun/nio/ch \
2047                         -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/native/java/net,\
2048                 CFLAGS_linux:=$(SCTP_WERROR),\
2049                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libsctp/mapfile-vers, \


2139 else
2140     LIBJLI_OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE)/jli
2141 endif
2142 
2143 $(eval $(call SetupNativeCompilation,BUILD_LIBJLI,\
2144                 LIBRARY:=jli,\
2145                 OUTPUT_DIR:=$(LIBJLI_OUTPUT_DIR),\
2146                 SRC:=$(BUILD_LIBJLI_SRC_DIRS),\
2147                 INCLUDE_FILES:=$(BUILD_LIBJLI_FILES),\
2148                 LANG:=C,\
2149                 OPTIMIZATION:=HIGH, \
2150                 CFLAGS:=$(LIBJLI_CFLAGS),\
2151                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjli/mapfile-vers, \
2152                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
2153                          $(call SET_SHARED_LIBRARY_ORIGIN),\
2154                 LDFLAGS_linux:=$(call SET_SHARED_LIBRARY_ORIGIN,/..),\
2155                 LDFLAGS_solaris:=$(call SET_SHARED_LIBRARY_ORIGIN,/..),\
2156                 LDFLAGS_macosx:=-framework Cocoa -framework Security -framework ApplicationServices,\
2157                 LDFLAGS_SUFFIX_solaris:=$(LIBZ) $(LIBDL) -lc,\
2158                 LDFLAGS_SUFFIX_linux:=$(LIBZ) $(LIBDL) -lc -lpthread,\
2159                 LDFLAGS_SUFFIX_aix:=$(LIBZ) $(LIBDL),\
2160                 LDFLAGS_SUFFIX_macosx:=$(LIBZ),\
2161                 LDFLAGS_SUFFIX_windows:=\
2162                         -export:JLI_Launch \
2163                         -export:JLI_ManifestIterate \
2164                         -export:JLI_SetTraceLauncher \
2165                         -export:JLI_ReportErrorMessage \
2166                         -export:JLI_ReportErrorMessageSys \
2167                         -export:JLI_ReportMessage \
2168                         -export:JLI_ReportExceptionDescription \
2169                         -export:JLI_MemAlloc \
2170                         -export:JLI_CmdToArgs \
2171                         -export:JLI_GetStdArgc \
2172                         -export:JLI_GetStdArgs \
2173                         advapi32.lib \
2174                         comctl32.lib \
2175                         user32.lib,\
2176                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
2177                 RC_FLAGS:=$(RC_FLAGS) \
2178                           -D "JDK_FNAME=jli.dll" \
2179                           -D "JDK_INTERNAL_NAME=jli" \


2205     #
2206     # On macosx they do partial (incremental) linking of libjli_static.a
2207     #   code it here...rather than add support to NativeCompilation
2208     #   as this is first time I see it
2209     $(eval $(call SetupNativeCompilation,BUILD_LIBJLI_STATIC,\
2210                 LIBRARY:=jli_static, \
2211                 OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs,\
2212                 SRC:=$(BUILD_LIBJLI_SRC_DIRS),\
2213                 INCLUDE_FILES:=$(BUILD_LIBJLI_FILES),\
2214                 LANG:=C,\
2215                 OPTIMIZATION:=HIGH, \
2216                 CFLAGS:=$(CFLAGS_JDKLIB) $(LIBJLI_CFLAGS),\
2217                 LDFLAGS:=-nostdlib -r,\
2218                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjli_static,\
2219                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
2220 
2221 $(JDK_OUTPUTDIR)/objs/libjli_static.a : $(BUILD_LIBJLI_STATIC)
2222         $(call install-file)
2223 
2224 BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/objs/libjli_static.a
2225 
2226 else ifeq ($(OPENJDK_TARGET_OS), aix)
2227     $(eval $(call SetupNativeCompilation,BUILD_LIBJLI_STATIC,\
2228                 STATIC_LIBRARY:=jli_static,\
2229                 OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs,\
2230                 SRC:=$(BUILD_LIBJLI_SRC_DIRS),\
2231                 INCLUDE_FILES:=$(BUILD_LIBJLI_FILES),\
2232                 LANG:=C,\
2233                 OPTIMIZATION:=HIGH, \
2234                 CFLAGS:=$(STATIC_LIBRARY_FLAGS) $(LIBJLI_CFLAGS),\
2235                 ARFLAGS:=$(ARFLAGS),\
2236                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjli_static))
2237 
2238 BUILD_LIBRARIES += $(JDK_OUTPUTDIR)/objs/libjli_static.a
2239 
2240 endif
2241 
2242 ##########################################################################################
2243 
2244 ifndef OPENJDK
2245 ifeq ($(ENABLE_JFR), true)
2246 
2247 $(eval $(call SetupNativeCompilation,BUILD_LIBJFR,\
2248                 LIBRARY:=jfr,\
2249                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
2250                 SRC:=$(JDK_TOPDIR)/src/closed/share/native/oracle/jfr,\
2251                 LANG:=C,\
2252                 OPTIMIZATION:=LOW, \
2253                 CFLAGS:=$(CFLAGS_JDKLIB) \
2254                         -I$(JDK_TOPDIR)/src/closed/share/javavm/export, \
2255                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libjfr/mapfile-vers, \
2256                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
2257                          $(call SET_SHARED_LIBRARY_ORIGIN),\
2258                 LDFLAGS_SUFFIX_solaris:=-lc,\
2259                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\


2441 endif
2442 
2443 $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_HEADLESS,\
2444                 LIBRARY:=awt_headless,\
2445                 OUTPUT_DIR:=$(INSTALL_LIBRARIES_HERE),\
2446                 SRC:=$(LIBAWT_HEADLESS_DIRS),\
2447                 INCLUDE_FILES:=$(LIBAWT_HEADLESS_FILES),\
2448                 LANG:=C,\
2449                 OPTIMIZATION:=LOW, \
2450                 CFLAGS:=$(CFLAGS_JDKLIB) $(LIBAWT_HEADLESS_CFLAGS),\
2451                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libawt_headless/mapfile-vers,\
2452                 LDFLAGS:=$(LDFLAGS_JDKLIB) \
2453                          $(call SET_SHARED_LIBRARY_ORIGIN),\
2454                 LDFLAGS_linux:=$(call SET_SHARED_LIBRARY_ORIGIN,/..),\
2455                 LDFLAGS_solaris:=$(call SET_SHARED_LIBRARY_ORIGIN,/..) \
2456                                  -R/usr/dt/lib$(OPENJDK_TARGET_CPU_ISADIR) \
2457                                  -R$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR),\
2458                 LDFLAGS_macosx:=$(call SET_SHARED_LIBRARY_ORIGIN).,\
2459                 REORDER:=$(LIBAWT_HEADLESS_REORDER), \
2460                 LDFLAGS_SUFFIX_linux:=-ljvm -lawt -lm $(LIBDL) -ljava,\
2461                 LDFLAGS_SUFFIX_aix:=-ljvm -lawt -ljava,\
2462                 LDFLAGS_SUFFIX_solaris:=$(LIBDL) -ljvm -lawt -lm -ljava $(LIBCXX) -lc,\
2463                 LDFLAGS_SUFFIX_macosx:=-ljvm $(LIBCXX) -lawt $(LIBDL) -ljava \
2464                                  -framework Accelerate \
2465                                  -framework ApplicationServices \
2466                                  -framework Cocoa \
2467                                  -F/System/Library/Frameworks/JavaVM.framework/Frameworks \
2468                                  -framework JavaNativeFoundation \
2469                                  -framework JavaRuntimeSupport,\
2470                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libawt_headless,\
2471                 DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES)))
2472 
2473 $(BUILD_LIBAWT_HEADLESS) : $(BUILD_LIBAWT)
2474 
2475 BUILD_LIBRARIES += $(BUILD_LIBAWT_HEADLESS)
2476 
2477 endif
2478 endif
2479 
2480 ##########################################################################################
2481 


2844         DirectAudioDevice.c
2845 
2846 ifeq ($(OPENJDK_TARGET_OS), windows)
2847         EXTRA_SOUND_JNI_LIBS += jsoundds
2848         LIBJSOUND_CFLAGS += -DX_PLATFORM=X_WINDOWS \
2849                             -DUSE_PLATFORM_MIDI_OUT=TRUE \
2850                             -DUSE_PLATFORM_MIDI_IN=TRUE \
2851                             -DUSE_PORTS=TRUE
2852         LIBJSOUND_SRC_FILES += \
2853                 PLATFORM_API_WinOS_MidiIn.cpp \
2854                 PLATFORM_API_WinOS_MidiOut.c \
2855                 PLATFORM_API_WinOS_Util.c \
2856                 PLATFORM_API_WinOS_Ports.c
2857         LIBJSOUND_SRC_FILES += $(LIBJSOUND_MIDIFILES)
2858         LIBJSOUND_SRC_FILES += $(LIBJSOUND_PORTFILES)
2859 endif # OPENJDK_TARGET_OS windows
2860 
2861 ifeq ($(OPENJDK_TARGET_OS), linux)
2862         EXTRA_SOUND_JNI_LIBS += jsoundalsa
2863         LIBJSOUND_CFLAGS += -DX_PLATFORM=X_LINUX
2864 endif # OPENJDK_TARGET_OS linux
2865 
2866 ifeq ($(OPENJDK_TARGET_OS), aix)
2867         LIBJSOUND_CFLAGS += -DX_PLATFORM=X_AIX
2868 endif # OPENJDK_TARGET_OS linux
2869 
2870 ifeq ($(OPENJDK_TARGET_OS), macosx)
2871         LIBJSOUND_LANG:=C++
2872         LIBJSOUND_CFLAGS += -DX_PLATFORM=X_MACOSX \
2873                             -DUSE_PORTS=TRUE \
2874                             -DUSE_DAUDIO=TRUE \
2875                             -DUSE_PLATFORM_MIDI_OUT=TRUE \
2876                             -DUSE_PLATFORM_MIDI_IN=TRUE
2877         LIBJSOUND_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/native/com/sun/media/sound
2878         LIBJSOUND_SRC_FILES += \
2879                 PLATFORM_API_MacOSX_Utils.cpp \
2880                 PLATFORM_API_MacOSX_PCM.cpp \
2881                 PLATFORM_API_MacOSX_Ports.cpp \
2882                 PLATFORM_API_MacOSX_MidiIn.c \
2883                 PLATFORM_API_MacOSX_MidiOut.c \
2884                 PLATFORM_API_MacOSX_MidiUtils.c
2885         LIBJSOUND_SRC_FILES += $(LIBJSOUND_MIDIFILES)
2886         LIBJSOUND_SRC_FILES += $(LIBJSOUND_PORTFILES)
2887         LIBJSOUND_SRC_FILES += $(LIBJSOUND_DAUDIOFILES)