mirror of
https://git.freebsd.org/ports.git
synced 2025-07-04 02:49:14 -04:00
121 lines
4.4 KiB
Text
121 lines
4.4 KiB
Text
--- common/autoconf/jdk-options.m4
|
|
+++ common/autoconf/jdk-options.m4
|
|
@@ -407,6 +407,20 @@
|
|
|
|
###############################################################################
|
|
#
|
|
+ # Enable or disable static linking of libjli on bsd only
|
|
+ #
|
|
+ AC_ARG_ENABLE(static-libjli, [AS_HELP_STRING([--enable-static-libjli],
|
|
+ [Enable staticly linking libjli on bsd @<:@disabled@:>@])],,
|
|
+ [enable_static_libjli=no])
|
|
+ if test "x$OPENJDK_TARGET_OS" = "xbsd" && test "x$enable_static_libjli" = "xyes"; then
|
|
+ BSD_STATIC_LIBJLI=bsd
|
|
+ else
|
|
+ BSD_STATIC_LIBJLI=
|
|
+ fi
|
|
+ AC_SUBST(BSD_STATIC_LIBJLI)
|
|
+
|
|
+ ###############################################################################
|
|
+ #
|
|
# Enable or disable the elliptic curve crypto implementation
|
|
#
|
|
AC_DEFUN_ONCE([JDKOPT_DETECT_INTREE_EC],
|
|
--- common/autoconf/spec.gmk.in
|
|
+++ common/autoconf/spec.gmk.in
|
|
@@ -283,6 +283,9 @@
|
|
# Enable unlimited crypto policy
|
|
UNLIMITED_CRYPTO=@UNLIMITED_CRYPTO@
|
|
|
|
+# Build static libjli on bsd
|
|
+BSD_STATIC_LIBJLI=@BSD_STATIC_LIBJLI@
|
|
+
|
|
# Necessary additional compiler flags to compile X11
|
|
X_CFLAGS:=@X_CFLAGS@
|
|
X_LIBS:=@X_LIBS@
|
|
--- jdk/make/CompileLaunchers.gmk
|
|
+++ jdk/make/CompileLaunchers.gmk
|
|
@@ -49,7 +49,7 @@
|
|
ORIGIN_ROOT := /..
|
|
endif
|
|
|
|
-ifneq ($(findstring $(OPENJDK_TARGET_OS), bsd macosx), )
|
|
+ifneq ($(findstring $(OPENJDK_TARGET_OS), $(BSD_STATIC_LIBJLI) macosx), )
|
|
ORIGIN_ARG := $(call SET_EXECUTABLE_ORIGIN)
|
|
else
|
|
ORIGIN_ARG := $(call SET_EXECUTABLE_ORIGIN,$(ORIGIN_ROOT)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/jli)
|
|
@@ -90,9 +90,15 @@
|
|
$1_LDFLAGS := $3
|
|
$1_LDFLAGS_SUFFIX :=
|
|
ifeq ($(OPENJDK_TARGET_OS), bsd)
|
|
- $1_LDFLAGS += -Wl,--whole-archive $(JDK_OUTPUTDIR)/objs/libjli_static.a \
|
|
- -Wl,--no-whole-archive
|
|
- $1_LDFLAGS_SUFFIX += -pthread
|
|
+ ifeq ($(BSD_STATIC_LIBJLI), bsd)
|
|
+ $1_LDFLAGS += -Wl,--whole-archive $(JDK_OUTPUTDIR)/objs/libjli_static.a \
|
|
+ -Wl,--no-whole-archive
|
|
+ $1_LDFLAGS_SUFFIX += -pthread
|
|
+ else
|
|
+ $1_LDFLAGS += \
|
|
+ $(call SET_SHARED_LIBRARY_NAME,$(LIBRARY_PREFIX)$(SHARED_LIBRARY_SUFFIX))
|
|
+ $1_LDFLAGS_SUFFIX += -L$(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/jli -ljli -pthread
|
|
+ endif
|
|
endif
|
|
|
|
ifeq ($(OPENJDK_TARGET_OS), macosx)
|
|
@@ -203,7 +209,7 @@
|
|
|
|
BUILD_LAUNCHERS += $$(BUILD_LAUNCHER_$1)
|
|
|
|
- ifneq (,$(filter $(OPENJDK_TARGET_OS), bsd macosx aix))
|
|
+ ifneq (,$(filter $(OPENJDK_TARGET_OS), $(BSD_STATIC_LIBJLI) macosx aix))
|
|
$$(BUILD_LAUNCHER_$1): $(JDK_OUTPUTDIR)/objs/libjli_static.a
|
|
endif
|
|
|
|
--- jdk/make/lib/CoreLibraries.gmk
|
|
+++ jdk/make/lib/CoreLibraries.gmk
|
|
@@ -466,7 +466,7 @@
|
|
|
|
BUILD_LIBRARIES += $(BUILD_LIBJLI_STATIC)
|
|
|
|
-else ifneq ($(findstring $(OPENJDK_TARGET_OS), bsd macosx), )
|
|
+else ifneq ($(findstring $(OPENJDK_TARGET_OS), $(BSD_STATIC_LIBJLI) macosx), )
|
|
#
|
|
# On BSD they do partial (incremental) linking of libjli_static.a
|
|
# code it here...rather than add support to NativeCompilation
|
|
--- jdk/make/lib/ServiceabilityLibraries.gmk
|
|
+++ jdk/make/lib/ServiceabilityLibraries.gmk
|
|
@@ -246,6 +246,15 @@
|
|
LIBINSTRUMENT_CFLAGS += -Dstrcasecmp=stricmp
|
|
endif
|
|
|
|
+ifeq ($(OPENJDK_TARGET_OS), bsd)
|
|
+ ifeq ($(BSD_STATIC_LIBJLI), bsd)
|
|
+ LIBINSTRUMENT_LDFLAGS += -Xlinker --whole-archive $(JDK_OUTPUTDIR)/objs/libjli_static.a \
|
|
+ -Xlinker --no-whole-archive
|
|
+ else
|
|
+ LIBINSTRUMENT_LDFLAGS += $(call SET_SHARED_LIBRARY_ORIGIN,/jli)
|
|
+ endif
|
|
+endif
|
|
+
|
|
$(eval $(call SetupNativeCompilation,BUILD_LIBINSTRUMENT, \
|
|
LIBRARY := instrument, \
|
|
OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
|
|
@@ -263,8 +272,6 @@
|
|
$(LIBINSTRUMENT_LDFLAGS), \
|
|
LDFLAGS_linux := $(call SET_SHARED_LIBRARY_ORIGIN,/jli), \
|
|
LDFLAGS_solaris := $(call SET_SHARED_LIBRARY_ORIGIN,/jli), \
|
|
- LDFLAGS_bsd := -Xlinker --whole-archive $(JDK_OUTPUTDIR)/objs/libjli_static.a \
|
|
- -Xlinker --no-whole-archive, \
|
|
LDFLAGS_macosx := -Xlinker -all_load $(JDK_OUTPUTDIR)/objs/libjli_static.a \
|
|
-framework Cocoa -framework Security -framework ApplicationServices, \
|
|
LDFLAGS_SUFFIX := $(LIBINSTRUMENT_LDFLAGS_SUFFIX), \
|
|
@@ -281,7 +288,7 @@
|
|
OBJECT_DIR := $(LIBINSTRUMENT_DIR), \
|
|
DEBUG_SYMBOLS := true))
|
|
|
|
-ifneq (, $(findstring $(OPENJDK_TARGET_OS), bsd macosx windows aix))
|
|
+ifneq (, $(findstring $(OPENJDK_TARGET_OS), $(BSD_STATIC_LIBJLI) macosx windows aix))
|
|
$(BUILD_LIBINSTRUMENT): $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli_static$(STATIC_LIBRARY_SUFFIX)
|
|
else
|
|
$(BUILD_LIBINSTRUMENT): $(INSTALL_LIBRARIES_HERE)/jli/$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX)
|