Skip to content

Commit

Permalink
Merge pull request #2808 from pygame/ankith26-m1-mac-portmidi-fix
Browse files Browse the repository at this point in the history
Fix portmidi building for wrong arch on m1 mac
  • Loading branch information
illume committed Oct 31, 2021
2 parents 0a238d2 + 8bf4ba7 commit d3c65e7
Show file tree
Hide file tree
Showing 2 changed files with 53 additions and 9 deletions.
23 changes: 14 additions & 9 deletions buildconfig/manylinux-build/docker_base/portmidi/build-portmidi.sh
Expand Up @@ -10,13 +10,13 @@ curl -sL http://downloads.sourceforge.net/project/portmedia/portmidi/217/${SRC_Z
sha512sum -c portmidi.sha512
unzip $SRC_ZIP

if [ "$(uname -i)" = "x86_64" ]; then
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk.x86_64
JRE_LIB_DIR=amd64
else
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk
JRE_LIB_DIR=i386
fi
# if [ "$(uname -i)" = "x86_64" ]; then
# export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk.x86_64
# JRE_LIB_DIR=amd64
# else
# export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk
# JRE_LIB_DIR=i386
# fi
# ls ${JAVA_HOME}
# ls ${JAVA_HOME}/jre
# ls ${JAVA_HOME}/jre/lib
Expand All @@ -25,8 +25,13 @@ fi

cd portmidi/
patch -p1 < ../no-java.patch
patch -p1 < ../mac.patch
#cmake -DJAVA_JVM_LIBRARY=${JAVA_HOME}/jre/lib/${JRE_LIB_DIR}/server/libjvm.so .
if [[ "$MAC_ARCH" == "arm64" ]]; then
patch -p1 < ../mac_arm64.patch
elif [[ "$MAC_ARCH" == "x86_64" ]]; then
patch -p1 < ../mac.patch
fi

# cmake -DJAVA_JVM_LIBRARY=${JAVA_HOME}/jre/lib/${JRE_LIB_DIR}/server/libjvm.so .
mkdir buildportmidi
cd buildportmidi

Expand Down
39 changes: 39 additions & 0 deletions buildconfig/manylinux-build/docker_base/portmidi/mac_arm64.patch
@@ -0,0 +1,39 @@
diff -crB portmidi/CMakeLists.txt portmidi-mac/CMakeLists.txt
*** portmidi/CMakeLists.txt 2010-09-20 21:57:48.000000000 +0200
--- portmidi-mac/CMakeLists.txt 2021-10-03 12:36:41.000000000 +0200
***************
*** 36,42 ****
set(CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO "" CACHE INTERNAL "Unused")
set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "" CACHE INTERNAL "Unused")

! set(CMAKE_OSX_ARCHITECTURES i386 ppc x86_64 CACHE STRING "change to needed architecture for a smaller library" FORCE)

PROJECT(portmidi)

--- 36,42 ----
set(CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO "" CACHE INTERNAL "Unused")
set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "" CACHE INTERNAL "Unused")

! set(CMAKE_OSX_ARCHITECTURES arm64 CACHE STRING "change to needed architecture for a smaller library" FORCE)

PROJECT(portmidi)

diff -crB portmidi/pm_common/CMakeLists.txt portmidi-mac/pm_common/CMakeLists.txt
*** portmidi/pm_common/CMakeLists.txt 2010-09-20 21:57:48.000000000 +0200
--- portmidi-mac/pm_common/CMakeLists.txt 2021-10-03 12:36:46.000000000 +0200
***************
*** 21,33 ****
set(LINUX_FLAGS "-DPMALSA")
endif(APPLE OR WIN32)

- if(APPLE)
- set(CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX10.5.sdk CACHE
- PATH "-isysroot parameter for compiler" FORCE)
- set(CMAKE_C_FLAGS "-mmacosx-version-min=10.5" CACHE
- STRING "needed in conjunction with CMAKE_OSX_SYSROOT" FORCE)
- endif(APPLE)
-
macro(prepend_path RESULT PATH)
set(${RESULT})
foreach(FILE ${ARGN})
--- 21,26 ----

0 comments on commit d3c65e7

Please sign in to comment.