Skip to content

Commit 54a4f29

Browse files
committed
Refactor build system to use CMake only
1 parent f162a18 commit 54a4f29

File tree

6 files changed

+85
-975
lines changed

6 files changed

+85
-975
lines changed

.github/workflows/ci.yml

+30-129
Original file line numberDiff line numberDiff line change
@@ -27,38 +27,24 @@ jobs:
2727
submodules: true
2828
- name: build
2929
run: |
30-
mkdir build
31-
cd build
32-
cmake -DCMAKE_BUILD_TYPE=${{matrix.buildType}} ..
33-
cd ..
34-
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
30+
make BUILD_TYPE=${{matrix.buildType}}
3531
- name: stats
3632
run: |
37-
./build/qjs -qd
33+
make stats
3834
- name: test
3935
run: |
40-
./build/qjs tests/test_bigint.js
41-
./build/qjs tests/test_closure.js
42-
./build/qjs tests/test_language.js
43-
./build/qjs tests/test_builtin.js
44-
./build/qjs tests/test_loop.js
45-
./build/qjs tests/test_std.js
46-
./build/qjs tests/test_worker.js
36+
make test
4737
- name: test 262
4838
if: ${{ matrix.buildType == 'Release' }}
4939
run: |
50-
time ./build/run-test262 -m -c test262.conf -a
40+
time make test262
5141
linux-examples:
5242
runs-on: ubuntu-latest
5343
steps:
5444
- uses: actions/checkout@v3
5545
- name: build
5646
run: |
57-
mkdir build
58-
cd build
59-
cmake -DBUILD_EXAMPLES=ON -DCMAKE_VERBOSE_MAKEFILE=ON ..
60-
cd ..
61-
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
47+
make BUILD_EXAMPLES=ON
6248
- name: test
6349
run: |
6450
ldd build/hello
@@ -79,15 +65,11 @@ jobs:
7965
- uses: actions/checkout@v3
8066
- name: build
8167
run: |
82-
mkdir build
83-
cd build
84-
cmake -DBUILD_SHARED_LIBS=ON ..
85-
cd ..
86-
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
68+
make BUILD_SHARED_LIBS=ON
8769
ldd build/qjs
8870
- name: stats
8971
run: |
90-
./build/qjs -qd
72+
make stats
9173
linux-asan:
9274
runs-on: ubuntu-latest
9375
steps:
@@ -96,27 +78,17 @@ jobs:
9678
submodules: true
9779
- name: build
9880
run: |
99-
mkdir build
100-
cd build
101-
cmake -DCONFIG_ASAN=ON ..
102-
cd ..
103-
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
81+
make CONFIG_ASAN=ON
10482
- name: test
10583
env:
10684
ASAN_OPTIONS: halt_on_error=1
10785
run: |
108-
./build/qjs tests/test_bigint.js
109-
./build/qjs tests/test_closure.js
110-
./build/qjs tests/test_language.js
111-
./build/qjs tests/test_builtin.js
112-
./build/qjs tests/test_loop.js
113-
./build/qjs tests/test_std.js
114-
./build/qjs tests/test_worker.js
86+
make test
11587
- name: test 262
11688
env:
11789
ASAN_OPTIONS: halt_on_error=1
11890
run: |
119-
time ./build/run-test262 -m -c test262.conf -a
91+
time make test262
12092
linux-msan:
12193
runs-on: ubuntu-latest
12294
steps:
@@ -127,22 +99,12 @@ jobs:
12799
env:
128100
CC: clang
129101
run: |
130-
mkdir build
131-
cd build
132-
cmake -DCONFIG_MSAN=ON ..
133-
cd ..
134-
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
102+
make CONFIG_MSAN=ON
135103
- name: test
136104
env:
137105
MSAN_OPTIONS: halt_on_error=1
138106
run: |
139-
./build/qjs tests/test_bigint.js
140-
./build/qjs tests/test_closure.js
141-
./build/qjs tests/test_language.js
142-
./build/qjs tests/test_builtin.js
143-
./build/qjs tests/test_loop.js
144-
./build/qjs tests/test_std.js
145-
./build/qjs tests/test_worker.js
107+
make test
146108
linux-ubsan:
147109
runs-on: ubuntu-latest
148110
steps:
@@ -151,27 +113,17 @@ jobs:
151113
submodules: true
152114
- name: build
153115
run: |
154-
mkdir build
155-
cd build
156-
cmake -DCONFIG_UBSAN=ON ..
157-
cd ..
158-
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
116+
make CONFIG_UBSAN=ON
159117
- name: test
160118
env:
161119
UBSAN_OPTIONS: halt_on_error=1
162120
run: |
163-
./build/qjs tests/test_bigint.js
164-
./build/qjs tests/test_closure.js
165-
./build/qjs tests/test_language.js
166-
./build/qjs tests/test_builtin.js
167-
./build/qjs tests/test_loop.js
168-
./build/qjs tests/test_std.js
169-
./build/qjs tests/test_worker.js
121+
make test
170122
- name: test 262
171123
env:
172124
UBSAN_OPTIONS: halt_on_error=1
173125
run: |
174-
time ./build/run-test262 -m -c test262.conf -a
126+
time make test262
175127
176128
macos:
177129
runs-on: macos-latest
@@ -183,34 +135,20 @@ jobs:
183135
- uses: actions/checkout@v3
184136
- name: build
185137
run: |
186-
mkdir build
187-
cd build
188-
cmake -DCMAKE_BUILD_TYPE=${{matrix.buildType}} ..
189-
cd ..
190-
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
138+
make BUILD_TYPE=${{matrix.buildType}}
191139
- name: stats
192140
run: |
193-
./build/qjs -qd
141+
make stats
194142
- name: test
195143
run: |
196-
./build/qjs tests/test_bigint.js
197-
./build/qjs tests/test_closure.js
198-
./build/qjs tests/test_language.js
199-
./build/qjs tests/test_builtin.js
200-
./build/qjs tests/test_loop.js
201-
./build/qjs tests/test_std.js
202-
./build/qjs tests/test_worker.js
144+
make test
203145
macos-examples:
204146
runs-on: macos-latest
205147
steps:
206148
- uses: actions/checkout@v3
207149
- name: build
208150
run: |
209-
mkdir build
210-
cd build
211-
cmake -DBUILD_EXAMPLES=ON ..
212-
cd ..
213-
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
151+
make BUILD_EXAMPLES=ON
214152
- name: test
215153
run: |
216154
otool -L build/hello
@@ -231,59 +169,35 @@ jobs:
231169
- uses: actions/checkout@v3
232170
- name: build
233171
run: |
234-
mkdir build
235-
cd build
236-
cmake -DBUILD_SHARED_LIBS=ON ..
237-
cd ..
238-
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
172+
make BUILD_SHARED_LIBS=ON
239173
otool -L build/qjs
240174
- name: stats
241175
run: |
242-
./build/qjs -qd
176+
make stats
243177
macos-asan:
244178
runs-on: macos-latest
245179
steps:
246180
- uses: actions/checkout@v3
247181
- name: build
248182
run: |
249-
mkdir build
250-
cd build
251-
cmake -DCONFIG_ASAN=ON ..
252-
cd ..
253-
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
183+
make CONFIG_ASAN=ON
254184
- name: test
255185
env:
256186
ASAN_OPTIONS: halt_on_error=1
257187
run: |
258-
./build/qjs tests/test_bigint.js
259-
./build/qjs tests/test_closure.js
260-
./build/qjs tests/test_language.js
261-
./build/qjs tests/test_builtin.js
262-
./build/qjs tests/test_loop.js
263-
./build/qjs tests/test_std.js
264-
./build/qjs tests/test_worker.js
188+
make test
265189
macos-ubsan:
266190
runs-on: macos-latest
267191
steps:
268192
- uses: actions/checkout@v3
269193
- name: build
270194
run: |
271-
mkdir build
272-
cd build
273-
cmake -DCONFIG_UBSAN=ON ..
274-
cd ..
275-
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
195+
make CONFIG_UBSAN=ON
276196
- name: test
277197
env:
278198
UBSAN_OPTIONS: halt_on_error=1
279199
run: |
280-
./build/qjs tests/test_bigint.js
281-
./build/qjs tests/test_closure.js
282-
./build/qjs tests/test_language.js
283-
./build/qjs tests/test_builtin.js
284-
./build/qjs tests/test_loop.js
285-
./build/qjs tests/test_std.js
286-
./build/qjs tests/test_worker.js
200+
make test
287201
288202
windows-mingw:
289203
runs-on: windows-latest
@@ -312,22 +226,13 @@ jobs:
312226
toolchain:p
313227
- name: build
314228
run: |
315-
mkdir build
316-
cd build
317-
cmake -DCMAKE_BUILD_TYPE=${{matrix.buildType}} ..
318-
cd ..
319-
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
229+
make BUILD_TYPE=${{matrix.buildType}}
320230
- name: stats
321231
run: |
322-
./build/qjs -qd
232+
make stats
323233
- name: test
324234
run: |
325-
./build/qjs tests/test_bigint.js
326-
./build/qjs tests/test_closure.js
327-
./build/qjs tests/test_language.js
328-
./build/qjs tests/test_builtin.js
329-
./build/qjs tests/test_loop.js
330-
./build/qjs tests/test_std.js
235+
make test
331236
windows-mingw-shared:
332237
runs-on: windows-latest
333238
defaults:
@@ -347,12 +252,8 @@ jobs:
347252
toolchain:p
348253
- name: build
349254
run: |
350-
mkdir build
351-
cd build
352-
cmake -DBUILD_SHARED_LIBS=ON ..
353-
cd ..
354-
cmake --build build -j$(getconf _NPROCESSORS_ONLN)
255+
make BUILD_SHARED_LIBS=ON
355256
ldd build/qjs
356257
- name: stats
357258
run: |
358-
./build/qjs -qd
259+
make stats

CMakeLists.txt

+11
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,17 @@ target_compile_definitions(run-test262 PRIVATE ${qjs_defines})
191191
target_link_libraries(run-test262 ${qjs_libs})
192192

193193

194+
# Unicode generator
195+
#
196+
197+
add_executable(unicode_gen EXCLUDE_FROM_ALL
198+
cutils.c
199+
libunicode.c
200+
unicode_gen.c
201+
)
202+
target_compile_definitions(unicode_gen PRIVATE ${qjs_defines})
203+
204+
194205
# Examples
195206
#
196207

0 commit comments

Comments
 (0)