51 endif
52 endif
53
54 LIBFDLIBM_SRC := $(TOPDIR)/src/java.base/share/native/libfdlibm
55 LIBFDLIBM_CFLAGS := -I$(LIBFDLIBM_SRC)
56
57 ifneq ($(OPENJDK_TARGET_OS), macosx)
58 $(eval $(call SetupNativeCompilation, BUILD_LIBFDLIBM, \
59 NAME := fdlibm, \
60 TYPE := STATIC_LIBRARY, \
61 OUTPUT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE), \
62 SRC := $(LIBFDLIBM_SRC), \
63 OPTIMIZATION := $(BUILD_LIBFDLIBM_OPTIMIZATION), \
64 CFLAGS := $(CFLAGS_JDKLIB) $(LIBFDLIBM_CFLAGS), \
65 CFLAGS_windows_debug := -DLOGGING, \
66 CFLAGS_aix := -qfloat=nomaf, \
67 CFLAGS_linux_ppc64 := -ffp-contract=off, \
68 CFLAGS_linux_ppc64le := -ffp-contract=off, \
69 CFLAGS_linux_s390x := -ffp-contract=off, \
70 CFLAGS_linux_aarch64 := -ffp-contract=off, \
71 DISABLED_WARNINGS_gcc := sign-compare misleading-indentation, \
72 DISABLED_WARNINGS_microsoft := 4146 4244 4018, \
73 ARFLAGS := $(ARFLAGS), \
74 OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfdlibm, \
75 ))
76
77 else
78
79 # On macosx the old build does partial (incremental) linking of fdlibm instead of
80 # a plain static library.
81 $(eval $(call SetupNativeCompilation, BUILD_LIBFDLIBM_MAC, \
82 NAME := fdlibm, \
83 OUTPUT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfdlibm, \
84 SRC := $(LIBFDLIBM_SRC), \
85 CFLAGS := $(CFLAGS_JDKLIB) $(LIBFDLIBM_CFLAGS), \
86 LDFLAGS := -nostdlib $(ARFLAGS), \
87 OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfdlibm, \
88 ))
89
90 BUILD_LIBFDLIBM := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/$(LIBRARY_PREFIX)fdlibm$(STATIC_LIBRARY_SUFFIX)
91 $(BUILD_LIBFDLIBM): $(BUILD_LIBFDLIBM_MAC)
|
51 endif
52 endif
53
54 LIBFDLIBM_SRC := $(TOPDIR)/src/java.base/share/native/libfdlibm
55 LIBFDLIBM_CFLAGS := -I$(LIBFDLIBM_SRC)
56
57 ifneq ($(OPENJDK_TARGET_OS), macosx)
58 $(eval $(call SetupNativeCompilation, BUILD_LIBFDLIBM, \
59 NAME := fdlibm, \
60 TYPE := STATIC_LIBRARY, \
61 OUTPUT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE), \
62 SRC := $(LIBFDLIBM_SRC), \
63 OPTIMIZATION := $(BUILD_LIBFDLIBM_OPTIMIZATION), \
64 CFLAGS := $(CFLAGS_JDKLIB) $(LIBFDLIBM_CFLAGS), \
65 CFLAGS_windows_debug := -DLOGGING, \
66 CFLAGS_aix := -qfloat=nomaf, \
67 CFLAGS_linux_ppc64 := -ffp-contract=off, \
68 CFLAGS_linux_ppc64le := -ffp-contract=off, \
69 CFLAGS_linux_s390x := -ffp-contract=off, \
70 CFLAGS_linux_aarch64 := -ffp-contract=off, \
71 DISABLED_WARNINGS_gcc := sign-compare misleading-indentation array-bounds, \
72 DISABLED_WARNINGS_microsoft := 4146 4244 4018, \
73 ARFLAGS := $(ARFLAGS), \
74 OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfdlibm, \
75 ))
76
77 else
78
79 # On macosx the old build does partial (incremental) linking of fdlibm instead of
80 # a plain static library.
81 $(eval $(call SetupNativeCompilation, BUILD_LIBFDLIBM_MAC, \
82 NAME := fdlibm, \
83 OUTPUT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfdlibm, \
84 SRC := $(LIBFDLIBM_SRC), \
85 CFLAGS := $(CFLAGS_JDKLIB) $(LIBFDLIBM_CFLAGS), \
86 LDFLAGS := -nostdlib $(ARFLAGS), \
87 OBJECT_DIR := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfdlibm, \
88 ))
89
90 BUILD_LIBFDLIBM := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/$(LIBRARY_PREFIX)fdlibm$(STATIC_LIBRARY_SUFFIX)
91 $(BUILD_LIBFDLIBM): $(BUILD_LIBFDLIBM_MAC)
|