21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
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 |
22 # or visit www.oracle.com if you need additional information or have any |
23 # questions. |
23 # questions. |
24 # |
24 # |
25 |
25 |
26 # Hook to include the corresponding custom file, if present. |
|
27 $(eval $(call IncludeCustomExtension, jdk, lib/Awt2dLibraries.gmk)) |
|
28 |
|
29 WIN_AWT_LIB := $(JDK_OUTPUTDIR)/objs/libawt/awt.lib |
26 WIN_AWT_LIB := $(JDK_OUTPUTDIR)/objs/libawt/awt.lib |
30 |
27 |
31 ########################################################################################## |
28 ################################################################################ |
32 |
29 |
33 BUILD_LIBMLIB_SRC := $(JDK_TOPDIR)/src/java.desktop/share/native/libmlib_image \ |
30 BUILD_LIBMLIB_SRC := $(JDK_TOPDIR)/src/java.desktop/share/native/libmlib_image \ |
34 $(JDK_TOPDIR)/src/java.desktop/share/native/common/sun/awt/medialib |
31 $(JDK_TOPDIR)/src/java.desktop/share/native/common/sun/awt/medialib |
35 BUILD_LIBMLIB_CFLAGS := -D__USE_J2D_NAMES -D__MEDIALIB_OLD_NAMES \ |
32 BUILD_LIBMLIB_CFLAGS := -D__USE_J2D_NAMES -D__MEDIALIB_OLD_NAMES \ |
36 $(addprefix -I, $(BUILD_LIBMLIB_SRC)) \ |
33 $(addprefix -I, $(BUILD_LIBMLIB_SRC)) \ |
605 $(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT_XAWT) |
602 $(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT_XAWT) |
606 endif |
603 endif |
607 |
604 |
608 DESKTOP_LIBRARIES += $(BUILD_LIBFONTMANAGER) |
605 DESKTOP_LIBRARIES += $(BUILD_LIBFONTMANAGER) |
609 |
606 |
610 ########################################################################################## |
607 ################################################################################ |
611 |
|
612 ifndef OPENJDK |
|
613 |
|
614 LIBT2K_SRC := $(JDK_TOPDIR)/src/closed/java.desktop/share/native/libt2k |
|
615 LIBT2K_CFLAGS := $(addprefix -I, $(LIBT2K_SRC)) \ |
|
616 -I$(JDK_TOPDIR)/src/closed/java.desktop/share/native/libt2k/t2k \ |
|
617 -I$(JDK_TOPDIR)/src/java.desktop/share/native/libfontmanager \ |
|
618 -I$(JDK_TOPDIR)/src/java.desktop/share/native/libawt/sun/java2d \ |
|
619 -I$(JDK_TOPDIR)/src/java.desktop/share/native/libawt/sun/java2d/loops \ |
|
620 -I$(JDK_TOPDIR)/src/java.desktop/share/native/common/sun/font \ |
|
621 -I$(JDK_TOPDIR)/src/java.base/share/native/libjava \ |
|
622 -I$(JDK_TOPDIR)/src/java.base/$(OPENJDK_TARGET_OS_API_DIR)/native/libjava \ |
|
623 -I$(JDK_OUTPUTDIR)/gensrc_headers/java.desktop \ |
|
624 # |
|
625 |
|
626 $(eval $(call SetupNativeCompilation,BUILD_LIBT2K, \ |
|
627 LIBRARY := t2k, \ |
|
628 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ |
|
629 SRC := $(LIBT2K_SRC), \ |
|
630 EXCLUDE_FILES := t2k/orion.c, \ |
|
631 LANG := C++, \ |
|
632 OPTIMIZATION := HIGH, \ |
|
633 CFLAGS := $(CFLAGS_JDKLIB) $(LIBT2K_CFLAGS), \ |
|
634 CXXFLAGS := $(CXXFLAGS_JDKLIB) $(LIBT2K_CFLAGS), \ |
|
635 CFLAGS_windows = -DCC_NOEX, \ |
|
636 CXXFLAGS_windows = -DCC_NOEX, \ |
|
637 MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libt2k/mapfile-vers, \ |
|
638 LDFLAGS := $(LDFLAGS_JDKLIB) $(LDFLAGS_CXX_JDK) \ |
|
639 $(call SET_SHARED_LIBRARY_ORIGIN), \ |
|
640 LDFLAGS_windows := user32.lib $(JDK_OUTPUTDIR)/objs/libfontmanager/fontmanager.lib, \ |
|
641 LDFLAGS_SUFFIX_posix := $(LIBM) $(LIBCXX) -lfontmanager -ljava -ljvm -lc, \ |
|
642 LDFLAGS_SUFFIX_solaris := -lawt -lawt_xawt, \ |
|
643 VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \ |
|
644 RC_FLAGS := $(RC_FLAGS) \ |
|
645 -D "JDK_FNAME=t2k.dll" \ |
|
646 -D "JDK_INTERNAL_NAME=t2k" \ |
|
647 -D "JDK_FTYPE=0x2L", \ |
|
648 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libt2k, \ |
|
649 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) |
|
650 |
|
651 # t2k is linked against fontmanager |
|
652 $(BUILD_LIBT2K): $(BUILD_LIBFONTMANAGER) |
|
653 |
|
654 DESKTOP_LIBRARIES += $(BUILD_LIBT2K) |
|
655 endif |
|
656 |
|
657 ########################################################################################## |
|
658 |
608 |
659 ifeq ($(OPENJDK_TARGET_OS), windows) |
609 ifeq ($(OPENJDK_TARGET_OS), windows) |
660 LIBJAWT_SRC := $(JDK_TOPDIR)/src/java.desktop/$(OPENJDK_TARGET_OS_API_DIR)/native/libjawt |
610 LIBJAWT_SRC := $(JDK_TOPDIR)/src/java.desktop/$(OPENJDK_TARGET_OS_API_DIR)/native/libjawt |
661 LIBJAWT_CFLAGS := -I$(JDK_TOPDIR)/src/java.desktop/$(OPENJDK_TARGET_OS_API_DIR)/native/libawt/sun/windows \ |
611 LIBJAWT_CFLAGS := -I$(JDK_TOPDIR)/src/java.desktop/$(OPENJDK_TARGET_OS_API_DIR)/native/libawt/sun/windows \ |
662 -I$(JDK_TOPDIR)/src/java.desktop/share/native/common/sun/awt/debug \ |
612 -I$(JDK_TOPDIR)/src/java.desktop/share/native/common/sun/awt/debug \ |
766 |
716 |
767 endif # OPENJDK_TARGET_OS |
717 endif # OPENJDK_TARGET_OS |
768 |
718 |
769 DESKTOP_LIBRARIES += $(BUILD_LIBJAWT) |
719 DESKTOP_LIBRARIES += $(BUILD_LIBJAWT) |
770 |
720 |
771 ########################################################################################## |
721 ################################################################################ |
772 |
|
773 ifndef OPENJDK |
|
774 |
|
775 LIBKCMS_SRC := $(JDK_TOPDIR)/src/closed/java.desktop/share/native/libkcms \ |
|
776 $(JDK_TOPDIR)/src/closed/java.desktop/$(OPENJDK_TARGET_OS_API_DIR)/native/libkcms \ |
|
777 # |
|
778 LIBKCMS_CFLAGS += $(addprefix -I, $(LIBKCMS_SRC)) \ |
|
779 -I$(JDK_TOPDIR)/src/java.base/share/native/libjava \ |
|
780 -I$(JDK_TOPDIR)/src/java.base/$(OPENJDK_TARGET_OS_API_DIR)/native/libjava \ |
|
781 -I$(JDK_OUTPUTDIR)/gensrc_headers/java.desktop \ |
|
782 # |
|
783 LIBKCMS_VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/closed/java.desktop/windows/native/libkcms/cmm.rc |
|
784 |
|
785 LIBKCMS_CFLAGS += $(CFLAGS_JDKLIB) |
|
786 |
|
787 ifeq ($(OPENJDK_TARGET_OS), solaris) |
|
788 # This particular library uses a feature called PIC_CODE_SMALL (on solaris) |
|
789 # implement it like this...since it's only used here |
|
790 LIBKCMS_CFLAGS := $(patsubst -KPIC, -Kpic, $(LIBKCMS_CFLAGS)) |
|
791 else ifeq ($(OPENJDK_TARGET_CPU_ARCH), ppc) |
|
792 LIBKCMS_CFLAGS := $(patsubst -fPIC, -fpic, $(LIBKCMS_CFLAGS)) |
|
793 endif |
|
794 |
|
795 $(eval $(call SetupNativeCompilation,BUILD_LIBKCMS, \ |
|
796 LIBRARY := kcms, \ |
|
797 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ |
|
798 SRC := $(LIBKCMS_SRC), \ |
|
799 LANG := C, \ |
|
800 EXCLUDE_FILES := $(BUILD_LIBKCMS_EXCLUDE_FILES), \ |
|
801 OPTIMIZATION := LOW, \ |
|
802 CFLAGS := $(LIBKCMS_CFLAGS) \ |
|
803 -DJAVACMM -DFUT_CALC_EX -DNO_FUT_GCONST, \ |
|
804 CFLAGS_linux := -Wno-missing-field-initializers, \ |
|
805 MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libkcms/mapfile-vers, \ |
|
806 LDFLAGS := $(LDFLAGS_JDKLIB) \ |
|
807 $(call SET_SHARED_LIBRARY_ORIGIN), \ |
|
808 LDFLAGS_SUFFIX_linux := -lc -lpthread, \ |
|
809 LDFLAGS_SUFFIX_solaris := -lc, \ |
|
810 LDFLAGS_SUFFIX_windows := $(WIN_JAVA_LIB) advapi32.lib user32.lib version.lib, \ |
|
811 LDFLAGS_SUFFIX_posix := -lm -ljava -ljvm, \ |
|
812 VERSIONINFO_RESOURCE := $(LIBKCMS_VERSIONINFO_RESOURCE), \ |
|
813 RC_FLAGS := $(RC_FLAGS) \ |
|
814 -D "JDK_FNAME=kcms.dll" \ |
|
815 -D "JDK_INTERNAL_NAME=kcms" \ |
|
816 -D "JDK_FTYPE=0x2L", \ |
|
817 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libkcms, \ |
|
818 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) |
|
819 |
|
820 $(BUILD_LIBKCMS): $(BUILD_LIBJAVA) |
|
821 |
|
822 DESKTOP_LIBRARIES += $(BUILD_LIBKCMS) |
|
823 |
|
824 endif |
|
825 |
|
826 ########################################################################################## |
|
827 |
|
828 ifndef OPENJDK |
|
829 ifeq ($(OPENJDK_TARGET_OS), solaris) |
|
830 ifneq ($(OPENJDK_TARGET_CPU), x86_64) |
|
831 |
|
832 ifeq ($(shell if test "$(OS_VERSION_MAJOR)" -eq 5 -a "$(OS_VERSION_MINOR)" -le 10; then $(ECHO) ok; fi), ok) |
|
833 |
|
834 SUNWJDGA_MAPFILE := |
|
835 ifeq ($(OPENJDK_TARGET_CPU_ARCH), sparc) |
|
836 SUNWJDGA_MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjdga/mapfile-vers |
|
837 endif |
|
838 |
|
839 $(eval $(call SetupNativeCompilation,BUILD_LIBSUNWJDGA, \ |
|
840 LIBRARY := sunwjdga, \ |
|
841 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ |
|
842 SRC := $(JDK_TOPDIR)/src/java.desktop/unix/native/libsunwjdga, \ |
|
843 LANG := C, \ |
|
844 OPTIMIZATION := LOW, \ |
|
845 CFLAGS := $(CFLAGS_JDKLIB) \ |
|
846 -I$(JDK_TOPDIR)/src/share/javavm/export \ |
|
847 -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/javavm/export \ |
|
848 $(X_CFLAGS), \ |
|
849 MAPFILE := $(SUNWJDGA_MAPFILE), \ |
|
850 LDFLAGS := $(LDFLAGS_JDKLIB) \ |
|
851 $(call SET_SHARED_LIBRARY_ORIGIN), \ |
|
852 LDFLAGS_SUFFIX := $(X_LIBS) -ldga -lX11 $(LIBDL) -lc, \ |
|
853 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libsunwjdga, \ |
|
854 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) |
|
855 |
|
856 DESKTOP_LIBRARIES += $(BUILD_LIBSUNWJDGA) |
|
857 |
|
858 endif |
|
859 endif |
|
860 endif |
|
861 endif |
|
862 |
|
863 ########################################################################################## |
|
864 |
722 |
865 ifeq ($(BUILD_HEADLESS), true) |
723 ifeq ($(BUILD_HEADLESS), true) |
866 # Mac and Windows only use the native AWT lib, do not build libawt_headless |
724 # Mac and Windows only use the native AWT lib, do not build libawt_headless |
867 ifeq ($(findstring $(OPENJDK_TARGET_OS), windows macosx),) |
725 ifeq ($(findstring $(OPENJDK_TARGET_OS), windows macosx),) |
868 |
726 |
1039 $(BUILD_LIBSPLASHSCREEN): $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)osxapp$(SHARED_LIBRARY_SUFFIX) |
897 $(BUILD_LIBSPLASHSCREEN): $(INSTALL_LIBRARIES_HERE)/$(LIBRARY_PREFIX)osxapp$(SHARED_LIBRARY_SUFFIX) |
1040 endif |
898 endif |
1041 |
899 |
1042 endif |
900 endif |
1043 |
901 |
1044 ########################################################################################## |
902 ################################################################################ |
1045 |
|
1046 ifndef OPENJDK |
|
1047 |
|
1048 LIBDCPR_SRC_DIRS := $(JDK_TOPDIR)/src/closed/java.desktop/share/native/libdcpr |
|
1049 LIBDCPR_CFLAGS := $(addprefix -I, $(shell $(FIND) $(LIBDCPR_SRC_DIRS) -type d)) \ |
|
1050 -I$(JDK_TOPDIR)/src/java.desktop/share/native/libawt/sun/java2d/pipe \ |
|
1051 -I$(JDK_TOPDIR)/src/java.base/share/native/libjava \ |
|
1052 -I$(JDK_TOPDIR)/src/java.base/$(OPENJDK_TARGET_OS_API_DIR)/native/libjava \ |
|
1053 -I$(JDK_OUTPUTDIR)/gensrc_headers/java.desktop \ |
|
1054 # |
|
1055 |
|
1056 $(eval $(call SetupNativeCompilation,BUILD_LIBDCPR, \ |
|
1057 LIBRARY := dcpr, \ |
|
1058 OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ |
|
1059 SRC := $(LIBDCPR_SRC_DIRS), \ |
|
1060 LANG := C, \ |
|
1061 OPTIMIZATION := LOW, \ |
|
1062 CFLAGS := $(CFLAGS_JDKLIB) \ |
|
1063 $(LIBDCPR_CFLAGS), \ |
|
1064 MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libdcpr/mapfile-vers, \ |
|
1065 LDFLAGS := $(LDFLAGS_JDKLIB) \ |
|
1066 $(call SET_SHARED_LIBRARY_ORIGIN), \ |
|
1067 LDFLAGS_SUFFIX := $(LIBM) $(LDFLAGS_JDKLIB_SUFFIX), \ |
|
1068 LDFLAGS_SUFFIX_windows := $(WIN_JAVA_LIB), \ |
|
1069 LDFLAGS_SUFFIX_posix := -lm, \ |
|
1070 VERSIONINFO_RESOURCE := $(GLOBAL_VERSION_INFO_RESOURCE), \ |
|
1071 RC_FLAGS := $(RC_FLAGS) \ |
|
1072 -D "JDK_FNAME=dcpr.dll" \ |
|
1073 -D "JDK_INTERNAL_NAME=dcpr" \ |
|
1074 -D "JDK_FTYPE=0x2L", \ |
|
1075 OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libdcpr, \ |
|
1076 DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) |
|
1077 |
|
1078 $(BUILD_LIBDCPR): $(BUILD_LIBJAVA) |
|
1079 |
|
1080 DESKTOP_LIBRARIES += $(BUILD_LIBDCPR) |
|
1081 |
|
1082 endif |
|
1083 |
|
1084 ########################################################################################## |
|
1085 |
903 |
1086 ifeq ($(OPENJDK_TARGET_OS), macosx) |
904 ifeq ($(OPENJDK_TARGET_OS), macosx) |
1087 |
905 |
1088 LIBAWT_LWAWT_DIRS := \ |
906 LIBAWT_LWAWT_DIRS := \ |
1089 $(JDK_TOPDIR)/src/java.desktop/macosx/native/libawt_lwawt \ |
907 $(JDK_TOPDIR)/src/java.desktop/macosx/native/libawt_lwawt \ |