aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
authorWaluigiWare64 <68647953+WaluigiWare64@users.noreply.github.com>2020-11-29 08:11:33 -0800
committerGitHub <noreply@github.com>2020-11-29 17:11:33 +0100
commit7da4550eea43a5ec83d1afc88022aaa62827febc (patch)
treecbc1f372a00f00f62e2877aef86244ae023f4d3a /.github/workflows
parent14be591ab8e769457678d5cac8536b2abfb3a94f (diff)
Add support for macOS (#771)
* use shm_open() instead of memfd_create() on macOS malloc.h isn't a header on macOS * Change OpenGL headers + create ifdef for DO_PROCLIST macOS seems to already have the OpenGL functions defined, without the ifdef, it gives "ambiguous references" errors. * macOS doesn't have ->gregs in uc_mcontext and it doesn't have REG_RIP either https://github.com/gperftools/gperftools/blob/master/m4/pc_from_ucontext.m4 * use getpid() to make memory file name unique * #ifndef __APPLE__ for AF_PACKET and linux/if_packet.h * Add include and link directories for macOS and link the OpenGL framework * Add macOS CI * Use newly added libslirp package from Homebrew https://github.com/Homebrew/homebrew-core/pull/63412 * Use Apple's Clang instead of GNU GCC on macOS * Add macOS build instructions to README * Try to fix macOS undefined symbol * snprintf doesn't take null terminator into account * Map new memory on macOS for JIT * Only use gcc-ar if using GNU Compiler * re-add fastmem code - whoops! * Fix style issue - use camelCase not snake_case * Set Minimum macOS version * Switch Minimum OS X version to 10.9 * Add macOS libpcap library name * fix memory leak * Fix binding keys in macOS * Allow getting MAC address on macOS melonDS on Linux uses AF_PACKET, which doesn't exist on macOS. Instead, this commit uses AF_LINK on macOS to get the MAC address. * Remove unneeded macOS CI dependencies * Build melonDS app bundle on macOS Now it is no longer required to install the libraries on macOS, they come with the app bundle. * fix macOS CI not being able to find macdeployqt * copy melonDS.app with recursive because it's a folder * Disable fastmem checkbox on macOS * Disable fastmem by default in config * forgot a semicolon * Don't bundle libraries, causes issues on macOS <10.15 * Update README + allow finding version in Finder on macOS * Make sure fastmem checkbox stays uncheckable
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/build-macos.yml39
1 files changed, 39 insertions, 0 deletions
diff --git a/.github/workflows/build-macos.yml b/.github/workflows/build-macos.yml
new file mode 100644
index 0000000..e2b942a
--- /dev/null
+++ b/.github/workflows/build-macos.yml
@@ -0,0 +1,39 @@
+name: CMake Build (macOS x86-64)
+
+on:
+ push:
+ branches:
+ - master
+ pull_request:
+ branches:
+ - master
+
+env:
+ BUILD_TYPE: Release
+
+jobs:
+ build:
+
+ runs-on: macos-latest
+
+ steps:
+ - uses: actions/checkout@v1
+ - name: Install dependencies
+ working-directory: ${{runner.workspace}}
+ run: |
+ brew install cmake sdl2 qt5 libslirp
+ - name: Create build environment
+ run: mkdir ${{runner.workspace}}/build
+ - name: Configure
+ working-directory: ${{runner.workspace}}/build
+ run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DQt5_DIR=$(brew --prefix qt5)/lib/cmake/Qt5
+ - name: Make
+ working-directory: ${{runner.workspace}}/build
+ run: |
+ make -j$(sysctl -n hw.ncpu)
+ mkdir dist
+ cp -r melonDS.app dist
+ - uses: actions/upload-artifact@v1
+ with:
+ name: melonDS.app
+ path: ${{runner.workspace}}/build/dist