File tree 4 files changed +37
-2
lines changed
4 files changed +37
-2
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
Original file line number Diff line number Diff line change 38
38
BENCH : ' yes'
39
39
SECP256K1_BENCH_ITERS : 2
40
40
CTIMETESTS : ' yes'
41
+ SYMBOL_CHECK : ' yes'
41
42
# Compile and run the examples.
42
43
EXAMPLES : ' yes'
43
44
@@ -445,6 +446,7 @@ jobs:
445
446
ASAN_OPTIONS : ' strict_string_checks=1:detect_stack_use_after_return=1:detect_leaks=1'
446
447
LSAN_OPTIONS : ' use_unaligned=1'
447
448
SECP256K1_TEST_ITERS : 32
449
+ SYMBOL_CHECK : ' no'
448
450
449
451
steps :
450
452
- name : Checkout
@@ -501,6 +503,7 @@ jobs:
501
503
SECP256K1_TEST_ITERS : 32
502
504
ASM : ' no'
503
505
WITH_VALGRIND : ' no'
506
+ SYMBOL_CHECK : ' no'
504
507
505
508
steps :
506
509
- name : Checkout
@@ -594,6 +597,7 @@ jobs:
594
597
CC : ' clang'
595
598
HOMEBREW_NO_AUTO_UPDATE : 1
596
599
HOMEBREW_NO_INSTALL_CLEANUP : 1
600
+ SYMBOL_CHECK : ' no'
597
601
598
602
strategy :
599
603
fail-fast : false
@@ -626,6 +630,11 @@ jobs:
626
630
env : ${{ matrix.env_vars }}
627
631
run : ./ci/ci.sh
628
632
633
+ - name : Symbol check
634
+ run : |
635
+ python3 -m pip install lief
636
+ python3 ./tools/symbol-check.py .libs/libsecp256k1.dylib
637
+
629
638
- run : cat tests.log || true
630
639
if : ${{ always() }}
631
640
- run : cat noverify_tests.log || true
@@ -681,6 +690,14 @@ jobs:
681
690
run : |
682
691
cd build/src/RelWithDebInfo && file *tests.exe bench*.exe libsecp256k1-*.dll || true
683
692
693
+ - name : Symbol check
694
+ if : ${{ matrix.configuration.cmake_options != '-A x64 -DBUILD_SHARED_LIBS=OFF' }}
695
+ run : |
696
+ choco install --yes --no-progress python3
697
+ refreshenv
698
+ python -m pip install lief
699
+ python .\tools\symbol-check.py build\src\RelWithDebInfo\libsecp256k1-2.dll
700
+
684
701
- name : Check
685
702
run : |
686
703
ctest -C RelWithDebInfo --test-dir build -j ([int]$env:NUMBER_OF_PROCESSORS + 1)
Original file line number Diff line number Diff line change @@ -14,7 +14,7 @@ print_environment() {
14
14
for var in WERROR_CFLAGS MAKEFLAGS BUILD \
15
15
ECMULTWINDOW ECMULTGENPRECISION ASM WIDEMUL WITH_VALGRIND EXTRAFLAGS \
16
16
EXPERIMENTAL ECDH RECOVERY SCHNORRSIG ELLSWIFT \
17
- SECP256K1_TEST_ITERS BENCH SECP256K1_BENCH_ITERS CTIMETESTS\
17
+ SECP256K1_TEST_ITERS BENCH SECP256K1_BENCH_ITERS CTIMETESTS SYMBOL_CHECK \
18
18
EXAMPLES \
19
19
HOST WRAPPER_CMD \
20
20
CC CFLAGS CPPFLAGS AR NM
@@ -104,6 +104,19 @@ file *tests* || true
104
104
file bench* || true
105
105
file .libs/* || true
106
106
107
+ if [ " $SYMBOL_CHECK " = " yes" ]
108
+ then
109
+ case " $HOST " in
110
+ * mingw* )
111
+ ls -l .libs
112
+ python3 ./tools/symbol-check.py .libs/libsecp256k1-2.dll
113
+ ;;
114
+ * )
115
+ python3 ./tools/symbol-check.py .libs/libsecp256k1.so
116
+ ;;
117
+ esac
118
+ fi
119
+
107
120
# This tells `make check` to wrap test invocations.
108
121
export LOG_COMPILER=" $WRAPPER_CMD "
109
122
Original file line number Diff line number Diff line change @@ -32,7 +32,7 @@ RUN apt-get update && apt-get install --no-install-recommends -y \
32
32
gcc-powerpc64le-linux-gnu libc6-dev-ppc64el-cross libc6-dbg:ppc64el \
33
33
gcc-mingw-w64-x86-64-win32 wine64 wine \
34
34
gcc-mingw-w64-i686-win32 wine32 \
35
- python3 && \
35
+ python3-full && \
36
36
if ! ( dpkg --print-architecture | grep --quiet "arm64" ) ; then \
37
37
apt-get install --no-install-recommends -y \
38
38
gcc-aarch64-linux-gnu libc6-dev-arm64-cross libc6-dbg:arm64 ;\
77
77
apt-get autoremove -y wget && \
78
78
apt-get clean && rm -rf /var/lib/apt/lists/*
79
79
80
+ ENV VIRTUAL_ENV=/root/venv
81
+ RUN python3 -m venv $VIRTUAL_ENV
82
+ ENV PATH="$VIRTUAL_ENV/bin:$PATH"
83
+ RUN pip install lief
You can’t perform that action at this time.
0 commit comments