diff --git a/.github/workflows/rolling-release.yml b/.github/workflows/rolling-release.yml
index a7fe7af5a..6334a4724 100644
--- a/.github/workflows/rolling-release.yml
+++ b/.github/workflows/rolling-release.yml
@@ -250,18 +250,14 @@ jobs:
       run: |
         git clone https://github.com/stenzek/duckstation-ext-mac.git dep/mac
 
-    - name: Compile build
+    - name: Compile and zip .app
       shell: bash
       run: |
         mkdir build
         cd build
         cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_SDL_FRONTEND=OFF -DBUILD_QT_FRONTEND=ON -DUSE_SDL2=ON -DQt5_DIR=/usr/local/opt/qt/lib/cmake/Qt5 ..
         cmake --build . --parallel 2
-
-    - name: Zip macOS .app
-      shell: bash
-      run: |
-        cd build/bin
+        cd bin
         zip -r duckstation-mac-release.zip DuckStation.app/
 
     - name: Upload macOS .app
@@ -270,6 +266,21 @@ jobs:
         name: "macos-x64"
         path: "build/bin/duckstation-mac-release.zip"
 
+    - name: Compile libretro core and zip
+      shell: bash
+      run: |
+        mkdir build-libretro
+        cd build-libretro
+        cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release -DBUILD_LIBRETRO_CORE=ON  ..
+        cmake --build . --parallel 2
+        zip -j duckstation_libretro_mac.dylib.zip duckstation_libretro.dylib
+
+    - name: Upload macOS libretro core
+      uses: actions/upload-artifact@v1
+      with:
+        name: "macos-x64"
+        path: "build-libretro/duckstation_libretro_mac.dylib.zip"
+
 
   create-release:
     needs: [windows-build, windows-libretro-build, linux-build, linux-libretro-build, android-build, macos-build]
@@ -339,4 +350,5 @@ jobs:
             linux-libretro/duckstation_libretro_android_aarch64.so.zip
             android/duckstation-android-aarch64.apk
             macos-x64/duckstation-mac-release.zip
+            macos-x64/duckstation_libretro_mac.dylib.zip