-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
e4916a0
commit c5ed5d5
Showing
5 changed files
with
126 additions
and
56 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
name: Linux daily check | ||
name: Linux | ||
|
||
on: | ||
schedule: | ||
|
@@ -7,34 +7,58 @@ on: | |
|
||
jobs: | ||
update: | ||
name: Linux daily check | ||
runs-on: ubuntu-latest | ||
strategy: | ||
matrix: | ||
arch: [amd64, arm64] | ||
include: | ||
- arch: arm64 | ||
is_arm: true | ||
docker_container: null | ||
- arch: amd64 | ||
docker_container: ubuntu:devel | ||
container: | ||
image: ${{ matrix.docker_container }} | ||
steps: | ||
- name: Update system | ||
run: sudo apt-get update && sudo apt-get --yes upgrade | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Install Nodejs 21 repo | ||
run: sudo apt-get install --yes ca-certificates curl gnupg && curl -sL https://deb.nodesource.com/setup_21.x | sudo bash - && sudo apt-get update | ||
- name: Setup ccache | ||
uses: actions/cache@v4 | ||
with: | ||
key: ${{ github.workflow }}-${{ matrix.arch }} | ||
path: .ccache | ||
|
||
- name: Install building tools | ||
run: sudo apt-get install --yes git python3 python3-pip gcc g++ make ninja-build nodejs sudo | ||
- if: ${{ matrix.is_arm }} | ||
uses: pguyot/arm-runner-action@v2 | ||
with: | ||
base_image: https://dietpi.com/downloads/images/testing/DietPi_RPi5-ARMv8-Bookworm.img.xz | ||
image_additional_mb: 10240 | ||
commands: | | ||
export ARCH="arm64" | ||
export CC="ccache gcc" | ||
export CXX="ccache g++" | ||
sudo apt-get update | ||
sudo apt-get install --yes ca-certificates curl gnupg && curl -sL https://deb.nodesource.com/setup_21.x | sudo bash - && sudo apt-get update | ||
sudo apt-get install --yes git nodejs python3 python3-pip gcc g++ make nasm ccache linux-headers-generic | ||
node index.js | ||
ls node/out/Release | ||
- name: Clone the repo | ||
run: git clone https://github.com/devraymondsh/libnode-distributable | ||
- if: ${{ ! matrix.is_arm }} | ||
name: Install building tools | ||
run: | | ||
apt-get install --yes ca-certificates curl gnupg && curl -sL https://deb.nodesource.com/setup_21.x | bash - | ||
apt-get update | ||
apt-get install --yes git nodejs python3 python3-pip gcc g++ make nasm ccache linux-headers-generic | ||
- name: Run sccache-cache | ||
uses: mozilla-actions/[email protected] | ||
|
||
- name: Run the script | ||
- if: ${{ ! matrix.is_arm }} | ||
name: Run the script | ||
env: | ||
CC: "sccache gcc" | ||
CXX: "sccache g++" | ||
CC: "ccache gcc" | ||
CXX: "ccache g++" | ||
CCACHE_DIR: ".ccache" | ||
ARCH: ${{ matrix.arch }} | ||
SCCACHE_GHA_ENABLED: "true" | ||
run: cd libnode-distributable && node index.js | ||
run: node index.js | ||
|
||
- name: Find the shared library | ||
run: find libnode-distributable/node -name libnode.so\* -not -name '*.TOC' -not -name '*.toc' -exec ls {} \; | ||
- if: ${{ ! matrix.is_arm }} | ||
name: Find the shared library | ||
run: ls /node/out/Release |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
name: Macos daily check | ||
name: Macos | ||
|
||
on: | ||
schedule: | ||
|
@@ -7,28 +7,35 @@ on: | |
|
||
jobs: | ||
update: | ||
name: Macos daily check | ||
runs-on: macos-latest | ||
strategy: | ||
matrix: | ||
arch: [amd64, arm64] | ||
include: | ||
- arch: arm64 | ||
os: macos-14 | ||
is_arm: true | ||
- arch: amd64 | ||
os: macos-13 | ||
runs-on: ${{ matrix.os }} | ||
steps: | ||
- name: Install building tools | ||
run: brew install node python ninja nasm git | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Clone the repo | ||
run: git clone https://github.com/devraymondsh/libnode-distributable | ||
- name: Install building tools | ||
run: brew install --force git node python ninja nasm ccache | ||
|
||
- name: Run sccache-cache | ||
uses: mozilla-actions/[email protected] | ||
- name: Setup ccache | ||
uses: actions/cache@v4 | ||
with: | ||
key: ${{ github.workflow }}-${{ matrix.arch }} | ||
path: .ccache | ||
|
||
- name: Run the script | ||
env: | ||
CC: "sccache cc" | ||
CXX: "sccache c++" | ||
CC: "ccache gcc" | ||
CXX: "ccache g++" | ||
CCACHE_DIR: ".ccache" | ||
ARCH: ${{ matrix.arch }} | ||
SCCACHE_GHA_ENABLED: "true" | ||
run: cd libnode-distributable && node index.js | ||
run: node index.js | ||
|
||
- name: Find the shared library | ||
run: find libnode-distributable/node -name libnode.so\* -not -name '*.TOC' -not -name '*.toc' -exec ls {} \; | ||
run: ls node/out/Release |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
name: Windows daily check | ||
name: Windows | ||
|
||
on: | ||
schedule: | ||
|
@@ -7,37 +7,37 @@ on: | |
|
||
jobs: | ||
update: | ||
name: Windows daily check | ||
name: Windows | ||
runs-on: windows-latest | ||
strategy: | ||
matrix: | ||
arch: [amd64, amd64_arm64] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- uses: ilammy/msvc-dev-cmd@v1 | ||
with: | ||
arch: ${{ matrix.arch }} | ||
|
||
- uses: MinoruSekine/setup-scoop@v3 | ||
with: | ||
buckets: extras | ||
update_path: true | ||
run_as_admin: true | ||
scoop_update: true | ||
|
||
- name: Install building tools | ||
run: scoop install nodejs python ninja nasm git | ||
|
||
- name: Clone the repo | ||
run: git clone https://github.com/devraymondsh/libnode-distributable | ||
run: scoop install git nodejs python ninja nasm | ||
|
||
- name: Run sccache-cache | ||
uses: mozilla-actions/[email protected] | ||
- name: Run ccache-cache | ||
uses: hendrikmuhs/[email protected] | ||
with: | ||
# create-symlink: true | ||
key: ${{ github.workflow }}-${{ matrix.arch }} | ||
|
||
- name: Run the script | ||
env: | ||
ARCH: ${{ matrix.arch }} | ||
SCCACHE_GHA_ENABLED: "true" | ||
run: cd libnode-distributable ; node index.js | ||
run: node index.js | ||
|
||
- name: Find the shared library | ||
run: dir libnode-distributable\node\out\Release\libnode.dll | ||
run: dir out\Release\libnode.dll |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
// From https://wiki.gentoo.org/wiki/Embedded_Handbook/General/Compiling_with_qemu_user_chroot | ||
/* | ||
* pass arguments to qemu binary | ||
* QEMU_CPU environment variable can be unset | ||
*/ | ||
|
||
#include <string.h> | ||
#include <unistd.h> | ||
|
||
#define XSTR(cpu) STR(cpu) | ||
#define STR(cpu) #cpu | ||
|
||
int main(int argc, char **argv, char **envp) { | ||
int this_len = strlen(argv[0]); | ||
char staticpath[this_len]; | ||
char *newargv[argc + 3]; | ||
|
||
newargv[0] = argv[0]; | ||
newargv[1] = "-cpu"; | ||
newargv[2] = XSTR(QEMU_CPU); | ||
|
||
memcpy(&newargv[3], &argv[1], sizeof(*argv) * (argc -1)); | ||
newargv[argc + 2] = NULL; | ||
memcpy(staticpath, argv[0], this_len - 1); | ||
staticpath[this_len - 1] = 0; | ||
return execve(staticpath, newargv, envp); | ||
} |