|
4 | 4 | # file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
5 | 5 | '''
|
6 | 6 | A script to check that the (Linux) executables produced by gitian only contain
|
7 |
| -allowed gcc, glibc and libstdc++ version symbols. This makes sure they are |
8 |
| -still compatible with the minimum supported Linux distribution versions. |
| 7 | +allowed gcc and glibc version symbols. This makes sure they are still compatible |
| 8 | +with the minimum supported Linux distribution versions. |
9 | 9 |
|
10 | 10 | Example usage:
|
11 | 11 |
|
|
16 | 16 | import sys
|
17 | 17 | import os
|
18 | 18 |
|
19 |
| -# Debian 6.0.9 (Squeeze) has: |
| 19 | +# Debian 8 (Jessie) EOL: 2020. https://wiki.debian.org/DebianReleases#Production_Releases |
20 | 20 | #
|
21 |
| -# - g++ version 4.4.5 (https://packages.debian.org/search?suite=default§ion=all&arch=any&searchon=names&keywords=g%2B%2B) |
22 |
| -# - libc version 2.11.3 (https://packages.debian.org/search?suite=default§ion=all&arch=any&searchon=names&keywords=libc6) |
23 |
| -# - libstdc++ version 4.4.5 (https://packages.debian.org/search?suite=default§ion=all&arch=any&searchon=names&keywords=libstdc%2B%2B6) |
| 21 | +# - g++ version 4.9.2 (https://packages.debian.org/search?suite=jessie&arch=any&searchon=names&keywords=g%2B%2B) |
| 22 | +# - libc version 2.19 (https://packages.debian.org/search?suite=jessie&arch=any&searchon=names&keywords=libc6) |
24 | 23 | #
|
25 |
| -# Ubuntu 10.04.4 (Lucid Lynx) has: |
| 24 | +# Ubuntu 16.04 (Xenial) EOL: 2024. https://wiki.ubuntu.com/Releases |
26 | 25 | #
|
27 |
| -# - g++ version 4.4.3 (http://packages.ubuntu.com/search?keywords=g%2B%2B&searchon=names&suite=lucid§ion=all) |
28 |
| -# - libc version 2.11.1 (http://packages.ubuntu.com/search?keywords=libc6&searchon=names&suite=lucid§ion=all) |
29 |
| -# - libstdc++ version 4.4.3 (http://packages.ubuntu.com/search?suite=lucid§ion=all&arch=any&keywords=libstdc%2B%2B&searchon=names) |
| 26 | +# - g++ version 5.3.1 (https://packages.ubuntu.com/search?keywords=g%2B%2B&searchon=names&suite=xenial§ion=all) |
| 27 | +# - libc version 2.23.0 (https://packages.ubuntu.com/search?keywords=libc6&searchon=names&suite=xenial§ion=all) |
| 28 | +# |
| 29 | +# CentOS 7 EOL: 2024. https://wiki.centos.org/FAQ/General |
| 30 | +# |
| 31 | +# - g++ version 4.8.5 (http://mirror.centos.org/centos/7/os/x86_64/Packages/) |
| 32 | +# - libc version 2.17 (http://mirror.centos.org/centos/7/os/x86_64/Packages/) |
30 | 33 | #
|
31 | 34 | # Taking the minimum of these as our target.
|
32 | 35 | #
|
33 |
| -# According to GNU ABI document (http://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html) this corresponds to: |
34 |
| -# GCC 4.4.0: GCC_4.4.0 |
35 |
| -# GCC 4.4.2: GLIBCXX_3.4.13, CXXABI_1.3.3 |
36 |
| -# (glibc) GLIBC_2_11 |
| 36 | +# According to GNU ABI document (https://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html) this corresponds to: |
| 37 | +# GCC 4.8.5: GCC_4.8.0 |
| 38 | +# (glibc) GLIBC_2_17 |
37 | 39 | #
|
38 | 40 | MAX_VERSIONS = {
|
39 |
| -'GCC': (4,4,0), |
40 |
| -'CXXABI': (1,3,3), |
41 |
| -'GLIBCXX': (3,4,13), |
42 |
| -'GLIBC': (2,11), |
| 41 | +'GCC': (4,8,0), |
| 42 | +'GLIBC': (2,17), |
43 | 43 | 'LIBATOMIC': (1,0)
|
44 | 44 | }
|
45 | 45 | # See here for a description of _IO_stdin_used:
|
|
0 commit comments