mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-10 05:57:59 +01:00
contrib: run test-symbol check for RISCV
Now that we are using Focal for Gitian building (glibc 2.31), we can user a newer introduced symbol, and include RISCV in this test.
This commit is contained in:
@@ -23,29 +23,26 @@ class TestSymbolChecks(unittest.TestCase):
|
||||
executable = 'test1'
|
||||
cc = 'gcc'
|
||||
|
||||
# there's no way to do this test for RISC-V at the moment; bionic's libc is 2.27
|
||||
# and we allow all symbols from 2.27.
|
||||
if 'riscv' in get_machine(cc):
|
||||
self.skipTest("test not available for RISC-V")
|
||||
|
||||
# memfd_create was introduced in GLIBC 2.27, so is newer than the upper limit of
|
||||
# all but RISC-V but still available on bionic
|
||||
# renameat2 was introduced in GLIBC 2.28, so is newer than the upper limit
|
||||
# of glibc for all platforms
|
||||
with open(source, 'w', encoding="utf8") as f:
|
||||
f.write('''
|
||||
#define _GNU_SOURCE
|
||||
#include <sys/mman.h>
|
||||
#include <stdio.h>
|
||||
#include <linux/fs.h>
|
||||
|
||||
int memfd_create(const char *name, unsigned int flags);
|
||||
int renameat2(int olddirfd, const char *oldpath,
|
||||
int newdirfd, const char *newpath, unsigned int flags);
|
||||
|
||||
int main()
|
||||
{
|
||||
memfd_create("test", 0);
|
||||
renameat2(0, "test", 0, "test_", RENAME_EXCHANGE);
|
||||
return 0;
|
||||
}
|
||||
''')
|
||||
|
||||
self.assertEqual(call_symbol_check(cc, source, executable, []),
|
||||
(1, executable + ': symbol memfd_create from unsupported version GLIBC_2.27\n' +
|
||||
(1, executable + ': symbol renameat2 from unsupported version GLIBC_2.28\n' +
|
||||
executable + ': failed IMPORTED_SYMBOLS'))
|
||||
|
||||
# -lutil is part of the libc6 package so a safe bet that it's installed
|
||||
|
||||
Reference in New Issue
Block a user