Skip to content

Commit

Permalink
Refactor build system to use CMake only
Browse files Browse the repository at this point in the history
  • Loading branch information
saghul committed Nov 17, 2023
1 parent f162a18 commit 54a4f29
Show file tree
Hide file tree
Showing 6 changed files with 85 additions and 975 deletions.
159 changes: 30 additions & 129 deletions .github/workflows/ci.yml
Expand Up @@ -27,38 +27,24 @@ jobs:
submodules: true
- name: build
run: |
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=${{matrix.buildType}} ..
cd ..
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
make BUILD_TYPE=${{matrix.buildType}}
- name: stats
run: |
./build/qjs -qd
make stats
- name: test
run: |
./build/qjs tests/test_bigint.js
./build/qjs tests/test_closure.js
./build/qjs tests/test_language.js
./build/qjs tests/test_builtin.js
./build/qjs tests/test_loop.js
./build/qjs tests/test_std.js
./build/qjs tests/test_worker.js
make test
- name: test 262
if: ${{ matrix.buildType == 'Release' }}
run: |
time ./build/run-test262 -m -c test262.conf -a
time make test262
linux-examples:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: build
run: |
mkdir build
cd build
cmake -DBUILD_EXAMPLES=ON -DCMAKE_VERBOSE_MAKEFILE=ON ..
cd ..
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
make BUILD_EXAMPLES=ON
- name: test
run: |
ldd build/hello
Expand All @@ -79,15 +65,11 @@ jobs:
- uses: actions/checkout@v3
- name: build
run: |
mkdir build
cd build
cmake -DBUILD_SHARED_LIBS=ON ..
cd ..
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
make BUILD_SHARED_LIBS=ON
ldd build/qjs
- name: stats
run: |
./build/qjs -qd
make stats
linux-asan:
runs-on: ubuntu-latest
steps:
Expand All @@ -96,27 +78,17 @@ jobs:
submodules: true
- name: build
run: |
mkdir build
cd build
cmake -DCONFIG_ASAN=ON ..
cd ..
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
make CONFIG_ASAN=ON
- name: test
env:
ASAN_OPTIONS: halt_on_error=1
run: |
./build/qjs tests/test_bigint.js
./build/qjs tests/test_closure.js
./build/qjs tests/test_language.js
./build/qjs tests/test_builtin.js
./build/qjs tests/test_loop.js
./build/qjs tests/test_std.js
./build/qjs tests/test_worker.js
make test
- name: test 262
env:
ASAN_OPTIONS: halt_on_error=1
run: |
time ./build/run-test262 -m -c test262.conf -a
time make test262
linux-msan:
runs-on: ubuntu-latest
steps:
Expand All @@ -127,22 +99,12 @@ jobs:
env:
CC: clang
run: |
mkdir build
cd build
cmake -DCONFIG_MSAN=ON ..
cd ..
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
make CONFIG_MSAN=ON
- name: test
env:
MSAN_OPTIONS: halt_on_error=1
run: |
./build/qjs tests/test_bigint.js
./build/qjs tests/test_closure.js
./build/qjs tests/test_language.js
./build/qjs tests/test_builtin.js
./build/qjs tests/test_loop.js
./build/qjs tests/test_std.js
./build/qjs tests/test_worker.js
make test
linux-ubsan:
runs-on: ubuntu-latest
steps:
Expand All @@ -151,27 +113,17 @@ jobs:
submodules: true
- name: build
run: |
mkdir build
cd build
cmake -DCONFIG_UBSAN=ON ..
cd ..
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
make CONFIG_UBSAN=ON
- name: test
env:
UBSAN_OPTIONS: halt_on_error=1
run: |
./build/qjs tests/test_bigint.js
./build/qjs tests/test_closure.js
./build/qjs tests/test_language.js
./build/qjs tests/test_builtin.js
./build/qjs tests/test_loop.js
./build/qjs tests/test_std.js
./build/qjs tests/test_worker.js
make test
- name: test 262
env:
UBSAN_OPTIONS: halt_on_error=1
run: |
time ./build/run-test262 -m -c test262.conf -a
time make test262
macos:
runs-on: macos-latest
Expand All @@ -183,34 +135,20 @@ jobs:
- uses: actions/checkout@v3
- name: build
run: |
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=${{matrix.buildType}} ..
cd ..
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
make BUILD_TYPE=${{matrix.buildType}}
- name: stats
run: |
./build/qjs -qd
make stats
- name: test
run: |
./build/qjs tests/test_bigint.js
./build/qjs tests/test_closure.js
./build/qjs tests/test_language.js
./build/qjs tests/test_builtin.js
./build/qjs tests/test_loop.js
./build/qjs tests/test_std.js
./build/qjs tests/test_worker.js
make test
macos-examples:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: build
run: |
mkdir build
cd build
cmake -DBUILD_EXAMPLES=ON ..
cd ..
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
make BUILD_EXAMPLES=ON
- name: test
run: |
otool -L build/hello
Expand All @@ -231,59 +169,35 @@ jobs:
- uses: actions/checkout@v3
- name: build
run: |
mkdir build
cd build
cmake -DBUILD_SHARED_LIBS=ON ..
cd ..
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
make BUILD_SHARED_LIBS=ON
otool -L build/qjs
- name: stats
run: |
./build/qjs -qd
make stats
macos-asan:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: build
run: |
mkdir build
cd build
cmake -DCONFIG_ASAN=ON ..
cd ..
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
make CONFIG_ASAN=ON
- name: test
env:
ASAN_OPTIONS: halt_on_error=1
run: |
./build/qjs tests/test_bigint.js
./build/qjs tests/test_closure.js
./build/qjs tests/test_language.js
./build/qjs tests/test_builtin.js
./build/qjs tests/test_loop.js
./build/qjs tests/test_std.js
./build/qjs tests/test_worker.js
make test
macos-ubsan:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: build
run: |
mkdir build
cd build
cmake -DCONFIG_UBSAN=ON ..
cd ..
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
make CONFIG_UBSAN=ON
- name: test
env:
UBSAN_OPTIONS: halt_on_error=1
run: |
./build/qjs tests/test_bigint.js
./build/qjs tests/test_closure.js
./build/qjs tests/test_language.js
./build/qjs tests/test_builtin.js
./build/qjs tests/test_loop.js
./build/qjs tests/test_std.js
./build/qjs tests/test_worker.js
make test
windows-mingw:
runs-on: windows-latest
Expand Down Expand Up @@ -312,22 +226,13 @@ jobs:
toolchain:p
- name: build
run: |
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=${{matrix.buildType}} ..
cd ..
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
make BUILD_TYPE=${{matrix.buildType}}
- name: stats
run: |
./build/qjs -qd
make stats
- name: test
run: |
./build/qjs tests/test_bigint.js
./build/qjs tests/test_closure.js
./build/qjs tests/test_language.js
./build/qjs tests/test_builtin.js
./build/qjs tests/test_loop.js
./build/qjs tests/test_std.js
make test
windows-mingw-shared:
runs-on: windows-latest
defaults:
Expand All @@ -347,12 +252,8 @@ jobs:
toolchain:p
- name: build
run: |
mkdir build
cd build
cmake -DBUILD_SHARED_LIBS=ON ..
cd ..
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
make BUILD_SHARED_LIBS=ON
ldd build/qjs
- name: stats
run: |
./build/qjs -qd
make stats
11 changes: 11 additions & 0 deletions CMakeLists.txt
Expand Up @@ -191,6 +191,17 @@ target_compile_definitions(run-test262 PRIVATE ${qjs_defines})
target_link_libraries(run-test262 ${qjs_libs})


# Unicode generator
#

add_executable(unicode_gen EXCLUDE_FROM_ALL
cutils.c
libunicode.c
unicode_gen.c
)
target_compile_definitions(unicode_gen PRIVATE ${qjs_defines})


# Examples
#

Expand Down

0 comments on commit 54a4f29

Please sign in to comment.