@@ -13,21 +13,23 @@ BUILD_NUMBER=custom
13
13
14
14
# Version of packages that will be compiled by this meta-package
15
15
# PYTHON_VERSION is the full version number (e.g., 3.10.0b3)
16
+ # PYTHON_PKG_VERSION is the version number with binary package releases to use
17
+ # for macOS binaries. This will be less than PYTHON_VERSION towards the end
18
+ # of a release cycle, as official binaries won't be published.
16
19
# PYTHON_MICRO_VERSION is the full version number, without any alpha/beta/rc suffix. (e.g., 3.10.0)
17
20
# PYTHON_VER is the major/minor version (e.g., 3.10)
18
21
PYTHON_VERSION =3.11.9
22
+ PYTHON_PKG_VERSION =$(PYTHON_VERSION )
19
23
PYTHON_MICRO_VERSION =$(shell echo $(PYTHON_VERSION ) | grep -Eo "\d+\.\d+\.\d+")
24
+ PYTHON_PKG_MICRO_VERSION =$(shell echo $(PYTHON_PKG_VERSION ) | grep -Eo "\d+\.\d+\.\d+")
20
25
PYTHON_VER =$(basename $(PYTHON_VERSION ) )
21
26
22
27
# The binary releases of dependencies, published at:
23
- # macOS:
24
- # https://github.com/beeware/cpython-macOS-source-deps/releases
25
- # iOS, tvOS, watchOS:
26
- # https://github.com/beeware/cpython-apple-source-deps/releases
28
+ # https://github.com/beeware/cpython-apple-source-deps/releases
27
29
BZIP2_VERSION =1.0.8-1
30
+ LIBFFI_VERSION =3.4.6-1
28
31
MPDECIMAL_VERSION =4.0.0-1
29
32
OPENSSL_VERSION =3.0.14-1
30
- LIBFFI_VERSION =3.4.6-1
31
33
XZ_VERSION =5.4.7-1
32
34
33
35
# Supported OS
@@ -105,11 +107,11 @@ downloads/Python-$(PYTHON_VERSION).tar.gz:
105
107
curl $(CURL_FLAGS ) -o $@ \
106
108
https://www.python.org/ftp/python/$(PYTHON_MICRO_VERSION ) /Python-$(PYTHON_VERSION ) .tgz
107
109
108
- downloads/python-$(PYTHON_VERSION ) -macos11.pkg :
110
+ downloads/python-$(PYTHON_PKG_VERSION ) -macos11.pkg :
109
111
@echo " >>> Download macOS Python package"
110
112
mkdir -p downloads
111
113
curl $(CURL_FLAGS ) -o $@ \
112
- https://www.python.org/ftp/python/$(PYTHON_MICRO_VERSION ) /python-$(PYTHON_VERSION ) -macos11.pkg
114
+ https://www.python.org/ftp/python/$(PYTHON_PKG_MICRO_VERSION ) /python-$(PYTHON_PKG_VERSION ) -macos11.pkg
113
115
114
116
# ##########################################################################
115
117
# Build for specified target (from $(TARGETS-*))
@@ -267,10 +269,10 @@ PYTHON_STDLIB-$(target)=$$(PYTHON_INSTALL-$(target))/lib/python$(PYTHON_VER)
267
269
$$(PYTHON_SRCDIR-$(target ) ) /configure : \
268
270
downloads/Python-$(PYTHON_VERSION ) .tar.gz \
269
271
$$(BZIP2_LIB-$(target ) ) \
270
- $$(XZ_LIB-$(target ) ) \
271
- $$(OPENSSL_SSL_LIB-$(target ) ) \
272
+ $$(LIBFFI_LIB-$(target ) ) \
272
273
$$(MPDECIMAL_LIB-$(target ) ) \
273
- $$(LIBFFI_LIB-$(target ) )
274
+ $$(OPENSSL_SSL_LIB-$(target ) ) \
275
+ $$(XZ_LIB-$(target ) )
274
276
@echo " >>> Unpack and configure Python for $( target) "
275
277
mkdir -p $$(PYTHON_SRCDIR-$(target ) )
276
278
tar zxf downloads/Python-$(PYTHON_VERSION ) .tar.gz --strip-components 1 -C $$(PYTHON_SRCDIR-$(target ) )
@@ -345,14 +347,14 @@ vars-$(target):
345
347
@echo "SDK_ROOT-$(target ) : $$(SDK_ROOT-$(target ) ) "
346
348
@echo "BZIP2_INSTALL-$(target ) : $$(BZIP2_INSTALL-$(target ) ) "
347
349
@echo "BZIP2_LIB-$(target ) : $$(BZIP2_LIB-$(target ) ) "
348
- @echo "XZ_INSTALL-$(target ) : $$(XZ_INSTALL-$(target ) ) "
349
- @echo "XZ_LIB-$(target ) : $$(XZ_LIB-$(target ) ) "
350
- @echo "OPENSSL_INSTALL-$(target ) : $$(OPENSSL_INSTALL-$(target ) ) "
351
- @echo "OPENSSL_SSL_LIB-$(target ) : $$(OPENSSL_SSL_LIB-$(target ) ) "
352
- @echo "MPDECIMAL_INSTALL-$(target ) : $$(MPDECIMAL_INSTALL-$(target ) ) "
353
- @echo "MPDECIMAL_LIB-$(target ) : $$(MPDECIMAL_LIB-$(target ) ) "
354
350
@echo "LIBFFI_INSTALL-$(target ) : $$(LIBFFI_INSTALL-$(target ) ) "
355
351
@echo "LIBFFI_LIB-$(target ) : $$(LIBFFI_LIB-$(target ) ) "
352
+ @echo "MPDECIMAL_INSTALL-$(target ) : $$(MPDECIMAL_INSTALL-$(target ) ) "
353
+ @echo "MPDECIMAL_LIB-$(target ) : $$(MPDECIMAL_LIB-$(target ) ) "
354
+ @echo "OPENSSL_INSTALL-$(target ) : $$(OPENSSL_INSTALL-$(target ) ) "
355
+ @echo "OPENSSL_SSL_LIB-$(target ) : $$(OPENSSL_SSL_LIB-$(target ) ) "
356
+ @echo "XZ_INSTALL-$(target ) : $$(XZ_INSTALL-$(target ) ) "
357
+ @echo "XZ_LIB-$(target ) : $$(XZ_LIB-$(target ) ) "
356
358
@echo "PYTHON_SRCDIR-$(target ) : $$(PYTHON_SRCDIR-$(target ) ) "
357
359
@echo "PYTHON_INSTALL-$(target ) : $$(PYTHON_INSTALL-$(target ) ) "
358
360
@echo "PYTHON_FRAMEWORK-$(target ) : $$(PYTHON_FRAMEWORK-$(target ) ) "
@@ -531,15 +533,15 @@ ifeq ($(os),macOS)
531
533
PYTHON_FRAMEWORK-$(os) =$$(PYTHON_INSTALL-$(sdk ) ) /Python.framework
532
534
533
535
$$(PYTHON_XCFRAMEWORK-$(os ) ) /Info.plist : \
534
- downloads/python-$(PYTHON_VERSION ) -macos11.pkg
536
+ downloads/python-$(PYTHON_PKG_VERSION ) -macos11.pkg
535
537
@echo " >>> Repackage macOS package as XCFramework"
536
538
537
539
# Unpack .pkg file. It turns out .pkg files are readable by tar... although
538
540
# their internal format is a bit of a mess. From tar's perspective, the .pkg
539
541
# is a tarball that contains additional tarballs; the inner tarball has the
540
542
# "payload" that is the framework.
541
543
mkdir -p build/macOS/macosx/python-$(PYTHON_VERSION)
542
- tar zxf downloads/python-$(PYTHON_VERSION )-macos11.pkg -C build/macOS/macosx/python-$(PYTHON_VERSION)
544
+ tar zxf downloads/python-$(PYTHON_PKG_VERSION )-macos11.pkg -C build/macOS/macosx/python-$(PYTHON_VERSION)
543
545
544
546
# Unpack payload inside .pkg file
545
547
mkdir -p $$(PYTHON_FRAMEWORK-macosx)
@@ -604,10 +606,10 @@ $$(PYTHON_XCFRAMEWORK-$(os))/Info.plist: \
604
606
echo "Build: $(BUILD_NUMBER)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
605
607
echo "Min $(os) version: $$(VERSION_MIN-$(os))" >> support/$(PYTHON_VER)/$(os)/VERSIONS
606
608
echo "---------------------" >> support/$(PYTHON_VER)/$(os)/VERSIONS
607
- echo "libFFI: $(LIBFFI_VERSION)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
608
609
echo "BZip2: $(BZIP2_VERSION)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
609
- echo "OpenSSL : $(OPENSSL_VERSION )" >> support/$(PYTHON_VER)/$(os)/VERSIONS
610
+ echo "libFFI : $(LIBFFI_VERSION )" >> support/$(PYTHON_VER)/$(os)/VERSIONS
610
611
echo "mpdecimal: $(MPDECIMAL_VERSION)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
612
+ echo "OpenSSL: $(OPENSSL_VERSION)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
611
613
echo "XZ: $(XZ_VERSION)" >> support/$(PYTHON_VER)/$(os)/VERSIONS
612
614
613
615
dist/Python-$(PYTHON_VER ) -$(os ) -support.$(BUILD_NUMBER ) .tar.gz : \
0 commit comments