From d61f73f54e3218163192cba3965feb10d69fd0d4 Mon Sep 17 00:00:00 2001 From: Guillaume Nodet Date: Tue, 5 Oct 2021 11:54:15 +0200 Subject: [PATCH] Support Mac-arm64 target, fixes #218 --- Makefile | 3 +++ Makefile.common | 10 +++++++++- .../internal/native/Mac/arm64/libjansi.jnilib | Bin 0 -> 18696 bytes 3 files changed, 12 insertions(+), 1 deletion(-) create mode 100755 src/main/resources/org/fusesource/jansi/internal/native/Mac/arm64/libjansi.jnilib diff --git a/Makefile b/Makefile index 2ed46976..d2a7b8f6 100644 --- a/Makefile +++ b/Makefile @@ -71,6 +71,9 @@ mac-x86: mac-x86_64: docker run -it --rm -v $$PWD:/workdir -e CROSS_TRIPLE=x86_64-apple-darwin multiarch/crossbuild make clean-native native OS_NAME=Mac OS_ARCH=x86_64 +mac-arm64: + docker run -it --rm -v $$PWD:/src -e TARGET=arm64-apple-darwin mcandre/snek:darwin sh -c "make clean-native native OS_NAME=Mac OS_ARCH=arm64" + freebsd-x86: docker run -it --rm -v $$PWD:/workdir empterdose/freebsd-cross-build:9.3 make clean-native native CROSS_PREFIX=i386-freebsd9- OS_NAME=FreeBSD OS_ARCH=x86 diff --git a/Makefile.common b/Makefile.common index cee5d933..3a60b5ff 100644 --- a/Makefile.common +++ b/Makefile.common @@ -1,6 +1,6 @@ # os=Default is meant to be generic unix/linux -known_targets := Linux-x86 Linux-x86_64 Linux-arm Linux-armv6 Linux-armv7 Linux-android-arm Linux-ppc64 Mac-x86 Mac-x86_64 DragonFly-x86_64 FreeBSD-x86_64 OpenBSD-x86_64 Windows-x86 Windows-x86_64 SunOS-sparcv9 HPUX-ia64_32 +known_targets := Linux-x86 Linux-x86_64 Linux-arm Linux-armv6 Linux-armv7 Linux-android-arm Linux-ppc64 Mac-x86 Mac-x86_64 Mac-arm64 DragonFly-x86_64 FreeBSD-x86_64 OpenBSD-x86_64 Windows-x86 Windows-x86_64 SunOS-sparcv9 HPUX-ia64_32 target := $(OS_NAME)-$(OS_ARCH) ifeq (,$(findstring $(strip $(target)),$(known_targets))) @@ -126,6 +126,14 @@ Mac-x86_64_LINKFLAGS := -dynamiclib Mac-x86_64_LIBNAME := libjansi.jnilib Mac-x86_64_JANSI_FLAGS := +Mac-arm64_CC := clang +Mac-arm64_STRIP := strip -x +MAC_SDK := /usr/local/osxcross/SDK/MacOSX11.3.sdk/ +Mac-arm64_CCFLAGS := -I$(MAC_SDK)/System/Library/Frameworks/JavaVM.framework/Headers -Isrc/main/lib/inc_mac -Os -fPIC -mmacosx-version-min=11.0 -fvisibility=hidden +Mac-arm64_LINKFLAGS := -shared +Mac-arm64_LIBNAME := libjansi.jnilib +Mac-arm64_JANSI_FLAGS := + Windows-x86_CC := $(CROSS_PREFIX)gcc Windows-x86_STRIP := $(CROSS_PREFIX)strip Windows-x86_CCFLAGS := -D_JNI_IMPLEMENTATION_ -Isrc/main/lib/inc_win -Os diff --git a/src/main/resources/org/fusesource/jansi/internal/native/Mac/arm64/libjansi.jnilib b/src/main/resources/org/fusesource/jansi/internal/native/Mac/arm64/libjansi.jnilib new file mode 100755 index 0000000000000000000000000000000000000000..6b5ea87335d0a2c3d52e4117881322279de3dc6f GIT binary patch literal 18696 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