From f344f4065946ef87c77d1238b31ffabaccea5b86 Mon Sep 17 00:00:00 2001 From: Atul R Date: Sat, 12 Jun 2021 19:36:50 +0200 Subject: [PATCH] Adds apple silicon support (#32) * add m1 instructions; * Update to node v14.17.0 + apple silicon support * bump version --- .github/FUNDING.yml | 2 +- .github/workflows/linux.yml | 2 +- .github/workflows/mac.yml | 2 +- .github/workflows/windows.yml | 2 +- README.md | 33 ++++++++++++++++++++++++--------- node | 2 +- npm/package-lock.json | 2 +- npm/package.json | 2 +- src/qode.cc | 2 +- 9 files changed, 32 insertions(+), 17 deletions(-) diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 6fc205f..f0442c9 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1,6 +1,6 @@ # These are supported funding model platforms -# github: [master-atul] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] +# github: [a7ul] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] patreon: # Replace with a single Patreon username open_collective: # Replace with a single Open Collective username ko_fi: atul94 # Replace with a single Ko-fi username diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 90818ef..153f572 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -25,7 +25,7 @@ jobs: SYNC_GIT_SUBMODULE: 1 - name: Compress files - uses: master-atul/tar-action@v1.0.2 + uses: a7ul/tar-action@v1.0.2 with: command: c cwd: ./node/out/Release diff --git a/.github/workflows/mac.yml b/.github/workflows/mac.yml index 5edf195..5a8d1e8 100644 --- a/.github/workflows/mac.yml +++ b/.github/workflows/mac.yml @@ -22,7 +22,7 @@ jobs: SYNC_GIT_SUBMODULE: 1 - name: Compress files - uses: master-atul/tar-action@v1.0.2 + uses: a7ul/tar-action@v1.0.2 with: command: c cwd: ./node/out/Release diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 597f3ac..48a71ed 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -25,7 +25,7 @@ jobs: SYNC_GIT_SUBMODULE: 1 - name: Compress files - uses: master-atul/tar-action@v1.0.2 + uses: a7ul/tar-action@v1.0.2 id: compress with: command: c diff --git a/README.md b/README.md index aba3c7d..7aadc41 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,6 @@ It is designed to be used together with `@nodegui/nodegui`. Qode achieves this b logo - ## Changes in v2.0 > In version 2.0, Qode no longer depends on Qt as a dependency. @@ -16,8 +15,6 @@ It is designed to be used together with `@nodegui/nodegui`. Qode achieves this b > > Now, Qode essentially becomes nodejs + `` - - ### Note: Qode is published as a NPM module as `@nodegui/qode`. @@ -66,6 +63,13 @@ sudo apt install libgtk-3-dev patchelf 2. Building Qode. Run `node build.js` +> If you want to build for Apple Silicon Macs +> Make sure you have python 3.8.10 installed +> +> ``` +> SYNC_GIT_SUBMODULE=true HOST_ARCH=arm64 TARGET_ARCH=arm64 node build.js +> ``` + ### Common build errors: 1. if you get an error similar to: @@ -111,7 +115,7 @@ or _PS: I havent tested ia32 builds_ -The output of the build will be present at node/out/Release/qode +The output of the build will be present at node/out/Release/qode ## Configurations (Available from qode v1.0.3) @@ -121,7 +125,7 @@ Additional configurations can be done via a qode.json file in the same directory ```javascript { - distPath: "./dist/index.js" // This will try to load the index.js inside dist folder when qode.exe is run. + distPath: "./dist/index.js"; // This will try to load the index.js inside dist folder when qode.exe is run. } ``` @@ -146,6 +150,18 @@ namespace qode { } // namespace qode ``` +## Building for M1 Mac + +In order to build for M1 mac + +Make sure you have python 3.8.10 installed + +and then do: + +``` +SYNC_GIT_SUBMODULE=true HOST_ARCH=arm64 TARGET_ARCH=arm64 node build.js +``` + ## License The MIT license. @@ -165,7 +181,6 @@ The idea of Qode is derived from [yode][yode] and [electron](https://github.com/ ## Qode - Node version table -| Qode | Node | -| ------------- |:-------------:| -| v2.1.0 | v14.2.0 | - +| Qode | Node | +| ------ | :-----: | +| v2.1.0 | v14.2.0 | diff --git a/node b/node index 338581c..14c93bd 160000 --- a/node +++ b/node @@ -1 +1 @@ -Subproject commit 338581cc59123656a5c3e52b658efa4133b8db94 +Subproject commit 14c93bd1393fef2e76a1166b0e25009bc2dd1ee6 diff --git a/npm/package-lock.json b/npm/package-lock.json index 9e5adaf..b7d0ee0 100644 --- a/npm/package-lock.json +++ b/npm/package-lock.json @@ -1,6 +1,6 @@ { "name": "@nodegui/qode", - "version": "2.1.0", + "version": "2.1.1", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/npm/package.json b/npm/package.json index 26a4e8a..af5fdd0 100644 --- a/npm/package.json +++ b/npm/package.json @@ -1,6 +1,6 @@ { "name": "@nodegui/qode", - "version": "2.1.0", + "version": "2.1.1", "description": "Qode is a lightly modified fork of Node.js that merges Node's event loop with Qt's event loop. It is designed to be used together with `@nodegui/nodegui`", "main": "index.js", "files": [ diff --git a/src/qode.cc b/src/qode.cc index a90cb4a..2450f80 100644 --- a/src/qode.cc +++ b/src/qode.cc @@ -8,7 +8,7 @@ #include "src/integration/node_integration.h" #include "src/helpers/qode_helper.h" -std::string qodeVersion = "2.1.0"; +std::string qodeVersion = "2.1.1"; namespace qode {