@@ -108,6 +108,33 @@ jobs:
108108 name : armv7a-linux-androideabi
109109 path : artifacts/libmonero_libwallet2_api_c.so
110110
111+ build-x86_64-w64-mingw32 :
112+ name : Build x86_64-w64-mingw32
113+ runs-on : ubuntu-latest
114+ container :
115+ image : debian:bookworm
116+ steps :
117+ - name : Checkout repository
118+ uses : actions/checkout@v4
119+
120+ - name : Build monero_c
121+ env :
122+ TARGET_ARCH : x86_64-w64-mingw32
123+ run : scripts/build-moneroc.sh
124+
125+ - name : Copy built libraries
126+ run : |
127+ mkdir -p artifacts
128+ cp monero_c/monero_libwallet2_api_c/build/x86_64-w64-mingw32/libwallet2_api_c.dll artifacts/monero_libwallet2_api_c.dll
129+ cp monero_c/release/monero/x86_64-w64-mingw32_libwinpthread-1.dll artifacts/libwinpthread-1.dll
130+ cp monero_c/release/monero/x86_64-w64-mingw32_libssp-0.dll artifacts/libssp-0.dll
131+
132+ - name : Upload artifact
133+ uses : actions/upload-artifact@v4
134+ with :
135+ name : x86_64-w64-mingw32
136+ path : artifacts/
137+
111138 build-ios-targets :
112139 name : Build ${{ matrix.target }}
113140 runs-on : macos-15
@@ -232,6 +259,7 @@ jobs:
232259 - build-x86_64-linux-android
233260 - build-aarch64-linux-android
234261 - build-armv7a-linux-androideabi
262+ - build-x86_64-w64-mingw32
235263 - create-ios-xcframework
236264 steps :
237265 - name : Checkout repository
@@ -267,6 +295,12 @@ jobs:
267295 name : MoneroWallet-xcframework
268296 path : artifacts/MoneroWallet.xcframework
269297
298+ - name : Download x86_64-w64-mingw32 artifact
299+ uses : actions/download-artifact@v4
300+ with :
301+ name : x86_64-w64-mingw32
302+ path : artifacts/x86_64-w64-mingw32
303+
270304 - name : Place libraries in correct locations
271305 run : |
272306 # Linux x86_64
@@ -285,6 +319,11 @@ jobs:
285319 rm -rf ios/Frameworks/MoneroWallet.xcframework
286320 cp -R artifacts/MoneroWallet.xcframework ios/Frameworks/MoneroWallet.xcframework
287321
322+ # Windows x86_64
323+ cp artifacts/x86_64-w64-mingw32/monero_libwallet2_api_c.dll windows/monero_libwallet2_api_c.dll
324+ cp artifacts/x86_64-w64-mingw32/libwinpthread-1.dll windows/libwinpthread-1.dll
325+ cp artifacts/x86_64-w64-mingw32/libssp-0.dll windows/libssp-0.dll
326+
288327 - name : Fix Linux library executable stack
289328 run : scripts/fix-linux-moneroc-execstack.sh
290329
@@ -309,6 +348,9 @@ jobs:
309348 - `android/app/src/main/jniLibs/x86_64/libmonero_libwallet2_api_c.so` (x86_64-linux-android)
310349 - `android/app/src/main/jniLibs/arm64-v8a/libmonero_libwallet2_api_c.so` (aarch64-linux-android)
311350 - `android/app/src/main/jniLibs/armeabi-v7a/libmonero_libwallet2_api_c.so` (armv7a-linux-androideabi)
351+ - `windows/monero_libwallet2_api_c.dll` (x86_64-w64-mingw32)
352+ - `windows/libwinpthread-1.dll` (x86_64-w64-mingw32)
353+ - `windows/libssp-0.dll` (x86_64-w64-mingw32)
312354 - `ios/Frameworks/MoneroWallet.xcframework` (aarch64-apple-ios + aarch64-apple-iossimulator)
313355
314356 Built from [monero_c](https://github.com/vtnerd/monero_c) branch `lwsf`.
0 commit comments