diff --git a/.github/workflows/cpython.yml b/.github/workflows/cpython.yml
index ca3961363ce..91e844ba7a3 100644
--- a/.github/workflows/cpython.yml
+++ b/.github/workflows/cpython.yml
@@ -37,6 +37,10 @@ jobs:
runs-on: ubuntu-20.04
steps:
- uses: bytedeco/javacpp-presets/.github/actions/deploy-ubuntu@actions
+ macosx-arm64:
+ runs-on: macos-11
+ steps:
+ - uses: bytedeco/javacpp-presets/.github/actions/deploy-macosx@actions
macosx-x86_64:
runs-on: macos-11
steps:
@@ -50,7 +54,7 @@ jobs:
steps:
- uses: bytedeco/javacpp-presets/.github/actions/deploy-windows@actions
redeploy:
- needs: [linux-x86_64, macosx-x86_64, windows-x86_64]
+ needs: [linux-x86_64, macosx-arm64, macosx-x86_64, windows-x86_64]
# needs: [linux-armhf, linux-arm64, linux-ppc64le, linux-x86, linux-x86_64, macosx-x86_64, windows-x86, windows-x86_64]
runs-on: ubuntu-20.04
steps:
diff --git a/cpython/cppbuild.sh b/cpython/cppbuild.sh
index ac7412f1ffb..ad3bb934849 100755
--- a/cpython/cppbuild.sh
+++ b/cpython/cppbuild.sh
@@ -124,7 +124,20 @@ case $PLATFORM in
make -j $MAKEJ
make install
;;
- macosx-*)
+ macosx-arm64)
+ cd ../$OPENSSL
+ ./Configure enable-rc5 zlib darwin64-arm64-cc no-asm -fPIC no-shared --prefix=$INSTALL_PATH --libdir=lib
+ make -s -j $MAKEJ
+ make install_sw
+ cd ../Python-$CPYTHON_VERSION
+ sedinplace 's/libintl.h//g' configure
+ sedinplace 's/ac_cv_lib_intl_textdomain=yes/ac_cv_lib_intl_textdomain=no/g' configure
+ ./configure --prefix=$INSTALL_PATH --enable-shared --with-openssl=$INSTALL_PATH LDFLAGS='-s -Wl,-rpath,@loader_path/,-rpath,@loader_path/../,-rpath,@loader_path/../lib/' ac_cv_working_openssl_hashlib=yes ac_cv_working_openssl_ssl=yes
+ sedinplace 's:-install_name,$(prefix)/lib/:-install_name,@rpath/:g' Makefile
+ make -j $MAKEJ
+ make install
+ ;;
+ macosx-x86_64)
cd ../$OPENSSL
./Configure darwin64-x86_64-cc -fPIC no-shared --prefix=$INSTALL_PATH --libdir=lib
make -s -j $MAKEJ
diff --git a/cpython/platform/pom.xml b/cpython/platform/pom.xml
index a736cea0cd5..2780040f332 100644
--- a/cpython/platform/pom.xml
+++ b/cpython/platform/pom.xml
@@ -60,6 +60,12 @@
${project.version}
${javacpp.platform.linux-x86_64}
+
+ ${project.groupId}
+ ${javacpp.moduleId}
+ ${project.version}
+ ${javacpp.platform.macosx-arm64}
+
${project.groupId}
${javacpp.moduleId}
@@ -90,7 +96,7 @@
- ${javacpp.moduleId}.jar ${javacpp.moduleId}-linux-armhf.jar ${javacpp.moduleId}-linux-arm64.jar ${javacpp.moduleId}-linux-ppc64le.jar ${javacpp.moduleId}-linux-x86.jar ${javacpp.moduleId}-linux-x86_64.jar ${javacpp.moduleId}-macosx-x86_64.jar ${javacpp.moduleId}-windows-x86.jar ${javacpp.moduleId}-windows-x86_64.jar
+ ${javacpp.moduleId}.jar ${javacpp.moduleId}-linux-armhf.jar ${javacpp.moduleId}-linux-arm64.jar ${javacpp.moduleId}-linux-ppc64le.jar ${javacpp.moduleId}-linux-x86.jar ${javacpp.moduleId}-linux-x86_64.jar ${javacpp.moduleId}-macosx-arm64.jar ${javacpp.moduleId}-macosx-x86_64.jar ${javacpp.moduleId}-windows-x86.jar ${javacpp.moduleId}-windows-x86_64.jar
@@ -140,6 +146,7 @@
// requires static org.bytedeco.${javacpp.moduleId}.linux.ppc64le;
// requires static org.bytedeco.${javacpp.moduleId}.linux.x86;
requires static org.bytedeco.${javacpp.moduleId}.linux.x86_64;
+ requires static org.bytedeco.${javacpp.moduleId}.macosx.arm64;
requires static org.bytedeco.${javacpp.moduleId}.macosx.x86_64;
// requires static org.bytedeco.${javacpp.moduleId}.windows.x86;
requires static org.bytedeco.${javacpp.moduleId}.windows.x86_64;
diff --git a/pom.xml b/pom.xml
index f3d05cc6724..0f3a10fa66e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1454,6 +1454,7 @@
ffmpeg
lz4
openblas
+ cpython
llvm
libffi
libpostal