diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 71a78e2..9d2cea2 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -69,18 +69,6 @@ jobs: env: BUILD_NUMBER: ${{ env.BUILD_NUMBER }} run: | - # 2020-05-29: The iOS 13.4 SDK changed the implementation of FD_SET - # to use a weak linked symbol (__darwin_check_fd_set_overflow). - # This means any support package built against that SDK is incompatible - # with linking against an earlier SDK. - # However, you can't get the iOS 13.4 SDK on macOS Mojave (10.14), - # because the latest XCode supported on Mojave (11.3.1) only provided - # SDK 13.2. - # So: We force the use of XCode 11.3.1, which ships with the 13.2 SDK. - # For a list of SDKs available on Github Actions, see: - # https://github.com/actions/virtual-environments/blob/master/images/macos/macos-10.15-Readme.md - sudo xcode-select --switch /Applications/Xcode_11.3.1.app - # 2020-06-24: The Homebrew copy of gettext leaks into the macOS build # if it is present. Uninstall gettext to make sure that doesn't happen. # 2021-01-02: Uninstall curl as well. We need curl to download the diff --git a/Makefile b/Makefile index 2ec505d..c181862 100644 --- a/Makefile +++ b/Makefile @@ -345,7 +345,7 @@ dist/Python-$(PYTHON_VER)-$1-support.$(BUILD_NUMBER).tar.gz: $$(BZIP2_FRAMEWORK- # Build a "full" tarball with all content for test purposes tar zcvf dist/Python-$(PYTHON_VER)-$1-support.test-$(BUILD_NUMBER).tar.gz -X patch/Python/test.exclude -C build/$1/Support `ls -A build/$1/Support` # Build a distributable tarball - tar zcvf $$@ -X patch/Python/release.exclude -C build/$1/Support `ls -A build/$1/Support` + tar zcvf $$@ -X patch/Python/release.common.exclude -X patch/Python/release.$1.exclude -C build/$1/Support `ls -A build/$1/Support` # Build OpenSSL OpenSSL-$1: $$(OPENSSL_FRAMEWORK-$1) diff --git a/patch/Python/release.exclude b/patch/Python/release.common.exclude similarity index 88% rename from patch/Python/release.exclude rename to patch/Python/release.common.exclude index 97aa1a8..0d8339c 100644 --- a/patch/Python/release.exclude +++ b/patch/Python/release.common.exclude @@ -1,5 +1,5 @@ -# This is a list of Python standard library path patterns -# we exclude from the embedded device Python-Apple-support tarballs. +# This is a list of support package path patterns that we exclude +# from all Python-Apple-support tarballs. # It is used by `tar -X` during the Makefile build. # # Remove binaries; not needed for embedded builds @@ -25,9 +25,6 @@ Python/Resources/lib/python*/lib-dynload/_xx*.so # Remove wsgiref web app module; it's unusual that mobile apps would # start a web app server with it. Python/Resources/lib/python*/wsgiref -# Remove command-line curses toolkit. -Python/Resources/lib/python*/curses -Python/Resources/lib/python*/lib-dynload/_curses*.so # Remove config-* directory, which is used for compiling C extension modules. Python/Resources/lib/python*/config-* # Remove ensurepip. If user code needs pip, it can add it to diff --git a/patch/Python/release.iOS.exclude b/patch/Python/release.iOS.exclude new file mode 100644 index 0000000..93cbae6 --- /dev/null +++ b/patch/Python/release.iOS.exclude @@ -0,0 +1,7 @@ +# This is a list of support package path patterns that we exclude +# from iOS Python-Apple-support tarballs. +# It is used by `tar -X` during the Makefile build. +# +# Remove command-line curses toolkit. +Python/Resources/lib/python*/curses +Python/Resources/lib/python*/lib-dynload/_curses*.so diff --git a/patch/Python/release.macOS.exclude b/patch/Python/release.macOS.exclude new file mode 100644 index 0000000..20009bb --- /dev/null +++ b/patch/Python/release.macOS.exclude @@ -0,0 +1,4 @@ +# This is a list of support package path patterns that we exclude +# from macOS Python-Apple-support tarballs. +# It is used by `tar -X` during the Makefile build. +# diff --git a/patch/Python/release.tvOS.exclude b/patch/Python/release.tvOS.exclude new file mode 100644 index 0000000..f8ec11f --- /dev/null +++ b/patch/Python/release.tvOS.exclude @@ -0,0 +1,7 @@ +# This is a list of support package path patterns that we exclude +# from tvOS Python-Apple-support tarballs. +# It is used by `tar -X` during the Makefile build. +# +# Remove command-line curses toolkit. +Python/Resources/lib/python*/curses +Python/Resources/lib/python*/lib-dynload/_curses*.so diff --git a/patch/Python/release.watchOS.exclude b/patch/Python/release.watchOS.exclude new file mode 100644 index 0000000..4e0e512 --- /dev/null +++ b/patch/Python/release.watchOS.exclude @@ -0,0 +1,7 @@ +# This is a list of support package path patterns that we exclude +# from watchOS Python-Apple-support tarballs. +# It is used by `tar -X` during the Makefile build. +# +# Remove command-line curses toolkit. +Python/Resources/lib/python*/curses +Python/Resources/lib/python*/lib-dynload/_curses*.so