File tree 3 files changed +32
-1
lines changed
3 files changed +32
-1
lines changed Original file line number Diff line number Diff line change 27
27
BENCH : yes
28
28
SECP256K1_BENCH_ITERS : 2
29
29
CTIMETESTS : yes
30
+ SYMBOL_CHECK : yes
30
31
# Compile and run the tests
31
32
EXAMPLES : yes
32
33
@@ -131,6 +132,7 @@ task:
131
132
ASM : no
132
133
WITH_VALGRIND : no
133
134
CTIMETESTS : no
135
+ SYMBOL_CHECK : no
134
136
matrix :
135
137
- env :
136
138
CC : gcc
@@ -141,6 +143,9 @@ task:
141
143
<< : *MERGE_BASE
142
144
test_script :
143
145
- ./ci/cirrus.sh
146
+ symbol_check_script :
147
+ - python3 -m pip install lief
148
+ - python3 ./tools/symbol-check.py .libs/libsecp256k1.dylib
144
149
<< : *CAT_LOGS
145
150
<< : *CREDITS
146
151
@@ -254,6 +259,7 @@ task:
254
259
SCHNORRSIG : yes
255
260
ELLSWIFT : yes
256
261
CTIMETESTS : no
262
+ SYMBOL_CHECK : no
257
263
# Use a MinGW-w64 host to tell ./configure we're building for Windows.
258
264
# This will detect some MinGW-w64 tools but then make will need only
259
265
# the MSVC tools CC, AR and NM as specified below.
@@ -311,6 +317,7 @@ task:
311
317
ASAN_OPTIONS : " strict_string_checks=1:detect_stack_use_after_return=1:detect_leaks=1"
312
318
LSAN_OPTIONS : " use_unaligned=1"
313
319
SECP256K1_TEST_ITERS : 32
320
+ SYMBOL_CHECK : no
314
321
# Try to cover many configurations with just a tiny matrix.
315
322
matrix :
316
323
- env :
@@ -409,6 +416,11 @@ task:
409
416
build_script :
410
417
- ' %x64_NATIVE_TOOLS%'
411
418
- cmake --build build --config RelWithDebInfo -- -property:UseMultiToolTask=true;CL_MPcount=5
419
+ symbol_check_script :
420
+ - choco install --yes --no-progress python3
421
+ - refreshenv
422
+ - python -m pip install lief
423
+ - python .\tools\symbol-check.py build\src\RelWithDebInfo\libsecp256k1-2.dll
412
424
check_script :
413
425
- ' %x64_NATIVE_TOOLS%'
414
426
- ctest -C RelWithDebInfo --test-dir build -j 5
Original file line number Diff line number Diff line change @@ -13,7 +13,7 @@ print_environment() {
13
13
for var in WERROR_CFLAGS MAKEFLAGS BUILD \
14
14
ECMULTWINDOW ECMULTGENPRECISION ASM WIDEMUL WITH_VALGRIND EXTRAFLAGS \
15
15
EXPERIMENTAL ECDH RECOVERY SCHNORRSIG \
16
- SECP256K1_TEST_ITERS BENCH SECP256K1_BENCH_ITERS CTIMETESTS\
16
+ SECP256K1_TEST_ITERS BENCH SECP256K1_BENCH_ITERS CTIMETESTS SYMBOL_CHECK \
17
17
EXAMPLES \
18
18
HOST WRAPPER_CMD \
19
19
CC CFLAGS CPPFLAGS AR NM
@@ -92,6 +92,19 @@ file *tests* || true
92
92
file bench* || true
93
93
file .libs/* || true
94
94
95
+ if [ " $SYMBOL_CHECK " = " yes" ]
96
+ then
97
+ case " $HOST " in
98
+ * mingw* )
99
+ ls -l .libs
100
+ python3 ./tools/symbol-check.py .libs/libsecp256k1-2.dll
101
+ ;;
102
+ * )
103
+ python3 ./tools/symbol-check.py .libs/libsecp256k1.so
104
+ ;;
105
+ esac
106
+ fi
107
+
95
108
# This tells `make check` to wrap test invocations.
96
109
export LOG_COMPILER=" $WRAPPER_CMD "
97
110
Original file line number Diff line number Diff line change @@ -20,6 +20,7 @@ RUN apt-get update && apt-get install --no-install-recommends -y \
20
20
gcc-powerpc64le-linux-gnu libc6-dev-ppc64el-cross libc6-dbg:ppc64el \
21
21
gcc-mingw-w64-x86-64-win32 wine64 wine \
22
22
gcc-mingw-w64-i686-win32 wine32 \
23
+ python3-full \
23
24
sagemath
24
25
25
26
WORKDIR /root
@@ -39,3 +40,8 @@ RUN apt-get update && apt-get install --no-install-recommends -y \
39
40
# Wait until the wineserver process has exited before closing the session,
40
41
# to avoid corrupting the wine prefix.
41
42
while (ps -A | grep wineserver) > /dev/null; do sleep 1; done
43
+
44
+ ENV VIRTUAL_ENV=/root/venv
45
+ RUN python3 -m venv $VIRTUAL_ENV
46
+ ENV PATH="$VIRTUAL_ENV/bin:$PATH"
47
+ RUN pip install lief
You can’t perform that action at this time.
0 commit comments