Merge pull request #2559 from liuxiang88/master #646
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
name: Build | |
on: [push, pull_request] | |
jobs: | |
build_duk_ubuntu: | |
name: Duk Ubuntu 22.04 | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Install packages | |
run: | | |
sudo apt -qqy update | |
sudo apt -qqy install build-essential make python3 python3-yaml bc git | |
- name: Install Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 16 | |
- name: Build | |
run: | | |
make build/duk build/dukd build/duk-g++ build/duk-clang build/duk-fuzzilli | |
- name: Test | |
run: | | |
build/duk -e "print(Duktape.env); print('Hello world!');" | |
build/duk dist-files/mandel.js | |
build/duk-g++ dist-files/mandel.js | |
build_duk_macos: | |
name: Duk macOS 12 | |
runs-on: macos-12 | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Install packages | |
run: | | |
python -m pip install PyYAML | |
- name: Install Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 16 | |
- name: Build | |
run: | | |
make build/duk | |
- name: Test | |
run: | | |
build/duk -e "print(Duktape.env); print('Hello world!');" | |
build/duk dist-files/mandel.js | |
# build_duk_macos_arm64: | |
# name: Duk macOS 13 ARM64 | |
# runs-on: macos-13-arm64 | |
# steps: | |
# - name: Checkout code | |
# uses: actions/checkout@v2 | |
# - name: Install packages | |
# run: | | |
# python -m pip install PyYAML | |
# - name: Install Node.js | |
# uses: actions/setup-node@v3 | |
# with: | |
# node-version: 16 | |
# - name: Build | |
# run: | | |
# make build/duk | |
# - name: Test | |
# run: | | |
# build/duk -e "print(Duktape.env); print('Hello world!');" | |
# build/duk dist-files/mandel.js | |
build_duk_windows: | |
name: Duk VS2022 | |
runs-on: windows-2022 | |
strategy: | |
matrix: | |
architecture: [ 'x86', 'amd64' ] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Build | |
shell: cmd | |
run: | | |
REM call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat" | |
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" ${{matrix.architecture}} | |
REM cl /? | |
REM python2 -m pip install PyYAML | |
REM python2 tools\configure.py --line-directives --output-directory prep-nondll --source-directory src-input --config-metadata config | |
cd src-tools && make && cd .. | |
node.exe src-tools\index.js configure --output-directory prep-nondll --source-directory src-input | |
cl /W3 /O2 /DDUK_CMDLINE_PRINTALERT_SUPPORT /DDUK_CMDLINE_PRINTALERT_SUPPORT /Iprep-nondll /Iexamples\cmdline /Iextras\print-alert prep-nondll\duktape.c examples\cmdline\duk_cmdline.c extras\print-alert\duk_print_alert.c /Feduk.exe | |
dir duk.exe | |
- name: Test | |
shell: cmd | |
run: | | |
duk.exe -e "print(Duktape.env); print('Hello world!');" | |
duk.exe dist-files\mandel.js |