Skip to content

Commit 7556f42

Browse files
committed
Try a theory in CI: -fvisibility=hidden doesn't do anything
What matters is -Wl,--exclude-libs=ALL for all of our shared objects, of which in the current commit there is only python and libpython, which already uses it.
1 parent 7c96f41 commit 7556f42

File tree

2 files changed

+0
-22
lines changed

2 files changed

+0
-22
lines changed

cpython-unix/build-cpython.sh

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -315,10 +315,6 @@ fi
315315
CFLAGS="${EXTRA_TARGET_CFLAGS} -fPIC -I${TOOLS_PATH}/deps/include -I${TOOLS_PATH}/deps/include/ncursesw"
316316
LDFLAGS="${EXTRA_TARGET_LDFLAGS} -L${TOOLS_PATH}/deps/lib"
317317

318-
# Some target configurations use `-fvisibility=hidden`. Python's configure handles
319-
# symbol visibility properly itself. So let it do its thing.
320-
CFLAGS=${CFLAGS//-fvisibility=hidden/}
321-
322318
# But some symbols from some dependency libraries are still non-hidden for some
323319
# reason. We force the linker to do our bidding.
324320
if [[ "${PYBUILD_PLATFORM}" != macos* ]]; then

cpython-unix/targets.yml

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,6 @@ aarch64-apple-darwin:
9090
# to work with the macOS SDKs out of the box. We work around
9191
# this by undoing the -Werror=undef-prefix in that commit.
9292
- '-Wno-undef-prefix'
93-
- '-fvisibility=hidden'
9493
target_ldflags:
9594
- '-arch'
9695
- 'arm64'
@@ -137,7 +136,6 @@ aarch64-apple-ios:
137136
# to work with the macOS SDKs out of the box. We work around
138137
# this by undoing the -Werror=undef-prefix in that commit.
139138
- '-Wno-undef-prefix'
140-
- '-fvisibility=hidden'
141139
target_ldflags:
142140
- '-arch'
143141
- 'arm64'
@@ -173,7 +171,6 @@ aarch64-unknown-linux-gnu:
173171
target_cc: clang
174172
target_cxx: clang++
175173
target_cflags:
176-
- '-fvisibility=hidden'
177174
# Needed to prevent BOLT from crashing.
178175
- '-fdebug-default-version=4'
179176
needs:
@@ -234,7 +231,6 @@ arm64-apple-tvos:
234231
# to work with the macOS SDKs out of the box. We work around
235232
# this by undoing the -Werror=undef-prefix in that commit.
236233
- '-Wno-undef-prefix'
237-
- '-fvisibility=hidden'
238234
target_ldflags:
239235
- '-arch'
240236
- 'arm64'
@@ -571,7 +567,6 @@ thumb7k-apple-watchos:
571567
# to work with the macOS SDKs out of the box. We work around
572568
# this by undoing the -Werror=undef-prefix in that commit.
573569
- '-Wno-undef-prefix'
574-
- '-fvisibility=hidden'
575570
target_ldflags:
576571
- '-arch'
577572
- 'armv7k'
@@ -623,7 +618,6 @@ x86_64-apple-darwin:
623618
# to work with the macOS SDKs out of the box. We work around
624619
# this by undoing the -Werror=undef-prefix in that commit.
625620
- '-Wno-undef-prefix'
626-
- '-fvisibility=hidden'
627621
target_ldflags:
628622
- '-arch'
629623
- 'x86_64'
@@ -670,7 +664,6 @@ x86_64-apple-ios:
670664
# to work with the macOS SDKs out of the box. We work around
671665
# this by undoing the -Werror=undef-prefix in that commit.
672666
- '-Wno-undef-prefix'
673-
- '-fvisibility=hidden'
674667
target_ldflags:
675668
- '-arch'
676669
- 'x86_64'
@@ -714,7 +707,6 @@ x86_64-apple-tvos:
714707
# to work with the macOS SDKs out of the box. We work around
715708
# this by undoing the -Werror=undef-prefix in that commit.
716709
- '-Wno-undef-prefix'
717-
- '-fvisibility=hidden'
718710
target_ldflags:
719711
- '-arch'
720712
- 'x86_64'
@@ -757,7 +749,6 @@ x86_64-apple-watchos:
757749
# to work with the macOS SDKs out of the box. We work around
758750
# this by undoing the -Werror=undef-prefix in that commit.
759751
- '-Wno-undef-prefix'
760-
- '-fvisibility=hidden'
761752
target_ldflags:
762753
- '-arch'
763754
- 'x86_64'
@@ -790,7 +781,6 @@ x86_64-unknown-linux-gnu:
790781
target_cc: clang
791782
target_cxx: clang++
792783
target_cflags:
793-
- '-fvisibility=hidden'
794784
# Needed to prevent BOLT from crashing.
795785
- '-fdebug-default-version=4'
796786
needs:
@@ -838,7 +828,6 @@ x86_64_v2-unknown-linux-gnu:
838828
target_cxx: clang++
839829
target_cflags:
840830
- '-march=x86-64-v2'
841-
- '-fvisibility=hidden'
842831
# Needed to prevent BOLT from crashing.
843832
- '-fdebug-default-version=4'
844833
needs:
@@ -886,7 +875,6 @@ x86_64_v3-unknown-linux-gnu:
886875
target_cxx: clang++
887876
target_cflags:
888877
- '-march=x86-64-v3'
889-
- '-fvisibility=hidden'
890878
# Needed to prevent BOLT from crashing.
891879
- '-fdebug-default-version=4'
892880
needs:
@@ -934,7 +922,6 @@ x86_64_v4-unknown-linux-gnu:
934922
target_cxx: clang++
935923
target_cflags:
936924
- '-march=x86-64-v4'
937-
- '-fvisibility=hidden'
938925
# Needed to prevent BOLT from crashing.
939926
- '-fdebug-default-version=4'
940927
needs:
@@ -980,8 +967,6 @@ x86_64-unknown-linux-musl:
980967
host_cxx: clang++
981968
target_cc: musl-clang
982969
target_cxx: clang++ # TODO: Explore a musl-clang++ shim?
983-
target_cflags:
984-
- '-fvisibility=hidden'
985970
needs:
986971
- autoconf
987972
- bdb
@@ -1027,7 +1012,6 @@ x86_64_v2-unknown-linux-musl:
10271012
target_cxx: clang++ # TODO: Explore a musl-clang++ shim?
10281013
target_cflags:
10291014
- '-march=x86-64-v2'
1030-
- '-fvisibility=hidden'
10311015
needs:
10321016
- autoconf
10331017
- bdb
@@ -1073,7 +1057,6 @@ x86_64_v3-unknown-linux-musl:
10731057
target_cxx: clang++ # TODO: Explore a musl-clang++ shim?
10741058
target_cflags:
10751059
- '-march=x86-64-v3'
1076-
- '-fvisibility=hidden'
10771060
needs:
10781061
- autoconf
10791062
- bdb
@@ -1119,7 +1102,6 @@ x86_64_v4-unknown-linux-musl:
11191102
target_cxx: clang++ # TODO: Explore a musl-clang++ shim?
11201103
target_cflags:
11211104
- '-march=x86-64-v4'
1122-
- '-fvisibility=hidden'
11231105
needs:
11241106
- autoconf
11251107
- bdb

0 commit comments

Comments
 (0)