8328680: Introduce JDK_LIB, and clean up module native compilation

Reviewed-by: erikj, jwaters
This commit is contained in:
Magnus Ihse Bursie 2024-03-22 14:12:26 +00:00
parent 638708cad8
commit e80619a032
41 changed files with 345 additions and 207 deletions

View file

@ -1,5 +1,5 @@
#
# Copyright (c) 2011, 2019, Oracle and/or its affiliates. All rights reserved.
# Copyright (c) 2011, 2024, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@ -26,14 +26,26 @@
include LauncherCommon.gmk
ifeq ($(call isTargetOs, windows), true)
##############################################################################
## Build kinit
##############################################################################
$(eval $(call SetupBuildLauncher, kinit, \
MAIN_CLASS := sun.security.krb5.internal.tools.Kinit, \
))
##############################################################################
## Build klist
##############################################################################
$(eval $(call SetupBuildLauncher, klist, \
MAIN_CLASS := sun.security.krb5.internal.tools.Klist, \
))
##############################################################################
## Build ktab
##############################################################################
$(eval $(call SetupBuildLauncher, ktab, \
MAIN_CLASS := sun.security.krb5.internal.tools.Ktab, \
))

View file

@ -25,57 +25,67 @@
include LibCommon.gmk
################################################################################
## Build libj2gss
################################################################################
$(eval $(call SetupJdkLibrary, BUILD_LIBJ2GSS, \
NAME := j2gss, \
OPTIMIZATION := LOW, \
DISABLED_WARNINGS_gcc := undef, \
DISABLED_WARNINGS_clang_aix := undef, \
DISABLED_WARNINGS_clang := undef, \
LIBS := $(LIBDL), \
LIBS_unix := $(LIBDL), \
))
TARGETS += $(BUILD_LIBJ2GSS)
ifeq ($(call isTargetOs, windows), true)
##############################################################################
## Build libsspi_bridge
##############################################################################
$(eval $(call SetupJdkLibrary, BUILD_LIBSSPI_BRIDGE, \
NAME := sspi_bridge, \
OPTIMIZATION := LOW, \
EXTRA_HEADER_DIRS := libj2gss, \
LIBS := Secur32.lib, \
LIBS_windows := secur32.lib, \
))
TARGETS += $(BUILD_LIBSSPI_BRIDGE)
endif
################################################################################
ifneq ($(BUILD_CRYPTO), false)
ifeq ($(call isTargetOs, windows), true)
############################################################################
## Build libw2k_lsa_auth
############################################################################
$(eval $(call SetupJdkLibrary, BUILD_LIBW2K_LSA_AUTH, \
NAME := w2k_lsa_auth, \
OPTIMIZATION := LOW, \
LIBS := advapi32.lib Secur32.lib kernel32.lib ws2_32.lib, \
LIBS_windows := advapi32.lib kernel32.lib secur32.lib ws2_32.lib, \
))
TARGETS += $(BUILD_LIBW2K_LSA_AUTH)
endif
ifeq ($(call isTargetOs, macosx), true)
############################################################################
## Build libosxkrb5
############################################################################
# libosxkrb5 needs to call deprecated krb5 APIs so that java
# can use the native credentials cache.
$(eval $(call SetupJdkLibrary, BUILD_LIBOSXKRB5, \
NAME := osxkrb5, \
OPTIMIZATION := LOW, \
DISABLED_WARNINGS_clang_nativeccache.c := deprecated-declarations, \
LIBS := -framework Cocoa -framework SystemConfiguration \
-framework Kerberos, \
LIBS_macosx := \
-framework Cocoa \
-framework Kerberos \
-framework SystemConfiguration, \
))
TARGETS += $(BUILD_LIBOSXKRB5)
endif
endif
################################################################################