Skip to content

Commit ebd34e8

Browse files
committed
Bump Python to 3.14.0
Bump Pillow to 12.0.0 Add new dependency zstd 1.5.7 Bump xz to 5.8.1 Bump libffi to 3.4.4
1 parent 1adac77 commit ebd34e8

File tree

5 files changed

+119
-267
lines changed

5 files changed

+119
-267
lines changed

BuildAllPlatforms.ps1

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ Param(
6464
'winflexbison',
6565
'xz',
6666
'zlib',
67+
'zstd',
6768
'uwp_compat',
6869
'DependenciesRequired',
6970
'DependenciesRequiredDebug'

CMakeLists.txt

Lines changed: 32 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -197,14 +197,19 @@ add_dependency_project_package(zlib 1.3.1)
197197

198198
ExternalProject_Add(xz
199199
DOWNLOAD_DIR ${CMAKE_SOURCE_DIR}/downloads
200-
URL https://netix.dl.sourceforge.net/project/lzmautils/xz-5.2.5.tar.gz
201-
URL_HASH SHA256=f6f4910fd033078738bd82bfba4f49219d03b17eb0794eb91efbae419f4aba10
200+
URL https://github.com/tukaani-project/xz/releases/download/v5.8.1/xz-5.8.1.tar.gz
201+
URL_HASH SHA256=507825b599356c10dca1cd720c9d0d0c9d5400b9de300af00e4d1ea150795543
202202
PATCH_COMMAND ${PATCH} -p1 -i ${CMAKE_SOURCE_DIR}/patches/$(TargetName).diff
203203
CMAKE_ARGS
204204
${ADDITIONAL_ARGS}
205205
-DCMAKE_INSTALL_PREFIX:PATH=${INSTALL_PREFIX}
206+
-DXZ_TOOL_XZ:BOOL=OFF
207+
-DXZ_TOOL_LZMAINFO:BOOL=OFF
208+
-DXZ_TOOL_XZDEC:BOOL=OFF
209+
-DXZ_TOOL_LZMADEC:BOOL=OFF
210+
-DXZ_DOC:BOOL=OFF
206211
)
207-
add_dependency_project_package(xz 5.2.5)
212+
add_dependency_project_package(xz 5.8.1)
208213

209214
ExternalProject_Add(miniwdk
210215
GIT_REPOSITORY https://github.com/Paxxi/miniwdk
@@ -546,26 +551,40 @@ add_dependency_project_package(mariadb-connector-c 3.3.17)
546551

547552
ExternalProject_Add(libffi
548553
DOWNLOAD_DIR ${CMAKE_SOURCE_DIR}/downloads
549-
URL https://github.com/libffi/libffi/archive/refs/tags/v3.3-rc1.tar.gz
550-
URL_HASH SHA256=87cbd612fa20f8eb7b91a3e996c5032b813644deee6c2d96724b50752296737e
554+
URL https://github.com/libffi/libffi/archive/refs/tags/v3.4.4.tar.gz
555+
URL_HASH SHA256=828639972716ed18833df7b659b32060591fe0eb625a8d34078920d33c2dc867
551556
PATCH_COMMAND ${PATCH} -p1 -i ${CMAKE_SOURCE_DIR}/patches/$(TargetName).diff
552557
CMAKE_ARGS
553558
${ADDITIONAL_ARGS}
554559
-DCMAKE_INSTALL_PREFIX:PATH=${INSTALL_PREFIX}
555560
)
556-
add_dependency_project_package(libffi 3.3.0)
561+
add_dependency_project_package(libffi 3.4.4)
562+
563+
ExternalProject_Add(zstd
564+
DOWNLOAD_DIR ${CMAKE_SOURCE_DIR}/downloads
565+
URL https://github.com/facebook/zstd/releases/download/v1.5.7/zstd-1.5.7.tar.gz
566+
URL_HASH SHA256=eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3
567+
PATCH_COMMAND ${PATCH} -p1 -i ${CMAKE_SOURCE_DIR}/patches/$(TargetName).diff
568+
SOURCE_SUBDIR build/cmake
569+
CMAKE_ARGS
570+
${ADDITIONAL_ARGS}
571+
-DCMAKE_INSTALL_PREFIX:PATH=${INSTALL_PREFIX}
572+
-DZSTD_BUILD_STATIC:BOOL=ON
573+
-DZSTD_BUILD_DYNAMIC:BOOL=OFF
574+
)
575+
add_dependency_project_package(zstd 1.5.7)
557576

558577
ExternalProject_Add(python
559-
DEPENDS bzip2 openssl sqlite zlib expat libffi xz
578+
DEPENDS bzip2 openssl sqlite zlib expat libffi xz zstd
560579
GIT_REPOSITORY https://github.com/thexai/cpython
561-
GIT_TAG 09051503302b44a5df9f174154b98c5607542719
580+
GIT_TAG 5d8155aa5f859020b52ca35d2b47be20b64399ec
562581
GIT_SHALLOW ON
563582
CMAKE_ARGS
564583
${ADDITIONAL_ARGS}
565584
-DCMAKE_INSTALL_PREFIX:PATH=${INSTALL_PREFIX}
566-
-DCMAKE_PREFIX_PATH:PATH=${PREFIX}%3B%3B${PREFIX}/bzip2%3B%3B${PREFIX}/openssl%3B%3B${PREFIX}/sqlite%3B%3B${PREFIX}/zlib%3B%3B${PREFIX}/libffi%3B%3B${PREFIX}/xz%3B%3B${PREFIX}/expat
585+
-DCMAKE_PREFIX_PATH:PATH=${PREFIX}%3B%3B${PREFIX}/bzip2%3B%3B${PREFIX}/openssl%3B%3B${PREFIX}/sqlite%3B%3B${PREFIX}/zlib%3B%3B${PREFIX}/libffi%3B%3B${PREFIX}/xz%3B%3B${PREFIX}/expat%3B%3B${PREFIX}/zstd
567586
)
568-
add_dependency_project_package(python 3.13.9)
587+
add_dependency_project_package(python 3.14.0)
569588

570589
ExternalProject_Add(libjpeg-turbo
571590
GIT_REPOSITORY https://github.com/Paxxi/libjpeg-turbo
@@ -585,14 +604,14 @@ add_dependency_project_package(libjpeg-turbo 2.0.3)
585604
ExternalProject_Add(pillow
586605
DEPENDS freetype libjpeg-turbo python zlib
587606
GIT_REPOSITORY https://github.com/thexai/Pillow
588-
GIT_TAG dbde60e30ffc8bfe8c461b576d41343f46e9553e
607+
GIT_TAG 31fd143d0e8338a0c226321cd18f00bec3cbeaf1
589608
GIT_SHALLOW ON
590609
CMAKE_ARGS
591610
${ADDITIONAL_ARGS}
592611
-DCMAKE_INSTALL_PREFIX:PATH=${INSTALL_PREFIX}
593612
-DCMAKE_PREFIX_PATH:PATH=${PREFIX}%3B%3B${PREFIX}/freetype%3B%3B${PREFIX}/libjpeg-turbo%3B%3B${PREFIX}/python%3B%3B${PREFIX}/zlib
594613
)
595-
add_dependency_project_package(pillow 11.2.1)
614+
add_dependency_project_package(pillow 12.0.0)
596615

597616
ExternalProject_Add(pycryptodome
598617
DEPENDS python
@@ -729,6 +748,7 @@ add_custom_target(DependenciesRequired
729748
winflexbison
730749
xz
731750
zlib
751+
zstd
732752
uwp_compat
733753
)
734754

patches/libffi.diff

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@ index 0000000..9d0f169
55
+++ b/CMakeLists.txt
66
@@ -0,0 +1,209 @@
77
+cmake_minimum_required(VERSION 3.9)
8-
+project(libffi VERSION 3.3 LANGUAGES C ASM)
8+
+project(libffi VERSION 3.4.4 LANGUAGES C ASM)
99
+
1010
+set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
1111
+
1212
+
1313
+# config variables for ffi.h.in
14-
+set(VERSION 3.3)
14+
+set(VERSION 3.4.4)
1515
+
1616
+
1717
+set(HAVE_LONG_DOUBLE 0)
@@ -243,6 +243,23 @@ index 0000000..5e58503
243243
+include(CMakeASMInformation)
244244
+set(ASM_DIALECT)
245245
\ No newline at end of file
246+
diff --git a/cmake/modules/CMakeASM_ARMASMLinkerInformation.cmake b/cmake/modules/CMakeASM_ARMASMLinkerInformation.cmake
247+
new file mode 100644
248+
index 0000000..7049623
249+
--- /dev/null
250+
+++ b/cmake/modules/CMakeASM_ARMASMLinkerInformation.cmake
251+
@@ -0,0 +1,10 @@
252+
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
253+
+# file LICENSE.rst or https://cmake.org/licensing for details.
254+
+
255+
+
256+
+# support for the MS assembler, masm and masm64
257+
+
258+
+# Load the generic ASMInformation file:
259+
+set(ASM_DIALECT "_MASM")
260+
+include(Internal/CMakeASMLinkerInformation)
261+
+set(ASM_DIALECT)
262+
\ No newline at end of file
246263
diff --git a/cmake/modules/CMakeDetermineASM_ARMASMCompiler.cmake b/cmake/modules/CMakeDetermineASM_ARMASMCompiler.cmake
247264
new file mode 100644
248265
index 0000000..9ba81be
@@ -321,10 +338,10 @@ index 0000000..8461c3b
321338
+#define PACKAGE "libffi"
322339
+#define PACKAGE_BUGREPORT "http://github.com/atgreen/libffi/issues"
323340
+#define PACKAGE_NAME "libffi"
324-
+#define PACKAGE_STRING "libffi 3.3"
341+
+#define PACKAGE_STRING "libffi 3.4.4"
325342
+#define PACKAGE_TARNAME "libffi"
326343
+#define PACKAGE_URL ""
327-
+#define PACKAGE_VERSION "3.3"
344+
+#define PACKAGE_VERSION "3.4.4"
328345
+#define SIZEOF_DOUBLE 8
329346
+#define SIZEOF_LONG_DOUBLE 8
330347
+#ifndef _WIN64
@@ -338,7 +355,7 @@ index 0000000..8461c3b
338355
+#define SYMBOL_UNDERSCORE 1
339356
+#endif
340357
+#endif
341-
+#define VERSION "3.3"
358+
+#define VERSION "3.4.4"
342359
+#if defined AC_APPLE_UNIVERSAL_BUILD
343360
+# if defined __BIG_ENDIAN__
344361
+# define WORDS_BIGENDIAN 1

0 commit comments

Comments
 (0)