From 0e187ed9570a9b9afa06d4d3ff034c2a23f0076a Mon Sep 17 00:00:00 2001 From: "Kazunari.sekigawa" Date: Wed, 29 Jul 2026 07:00:28 +0900 Subject: [PATCH] Migrating Python to 3.14 on macOS; Preparing for GoldenGate --- macbuild/ReadMe.md | 89 +++++---- .../Resources/KLayoutDMG-BackQt5-Mx.logoist | Bin 342654 -> 358650 bytes macbuild/Resources/KLayoutDMG-BackQt5-Mx.png | Bin 215555 -> 219324 bytes .../Resources/KLayoutDMG-BackQt5-X86.logoist | Bin 343243 -> 358021 bytes macbuild/Resources/KLayoutDMG-BackQt5-X86.png | Bin 215409 -> 219266 bytes .../Resources/KLayoutDMG-BackQt6-Mx.logoist | Bin 343613 -> 358428 bytes macbuild/Resources/KLayoutDMG-BackQt6-Mx.png | Bin 213724 -> 217487 bytes .../Resources/KLayoutDMG-BackQt6-X86.logoist | Bin 344202 -> 359017 bytes macbuild/Resources/KLayoutDMG-BackQt6-X86.png | Bin 213609 -> 217446 bytes macbuild/Resources/script-bundle-A.zip | Bin 6590444 -> 6590576 bytes macbuild/Resources/script-bundle-B.zip | Bin 6582505 -> 6582644 bytes macbuild/Resources/script-bundle-H.zip | Bin 6582258 -> 6582395 bytes macbuild/Resources/script-bundle-P.zip | Bin 6637748 -> 6639438 bytes macbuild/Resources/script-bundle-S.zip | Bin 6609165 -> 6609297 bytes macbuild/build4mac.py | 184 +++++++++++------- macbuild/build4mac_env.py | 86 ++++---- macbuild/build4mac_util.py | 2 +- macbuild/makeDMG4mac.py | 74 ++++--- macbuild/nightlyBuild.py | 143 +++++++------- macbuild/python3HB.py | 6 +- 20 files changed, 333 insertions(+), 251 deletions(-) diff --git a/macbuild/ReadMe.md b/macbuild/ReadMe.md index 4bf2aeb5b3..f11a326abd 100644 --- a/macbuild/ReadMe.md +++ b/macbuild/ReadMe.md @@ -1,16 +1,17 @@ -Relevant KLayout version: 0.30.5
+Relevant KLayout version: 0.30.9
Author: Kazzz-S
-Last modified: 2025-11-10
+Last modified: 2026-07-26
# 1. Introduction -This directory **`macbuild`** contains various files required for building KLayout (http://www.klayout.de/) version 0.30.5 or later for different 64-bit macOS, including: +This directory **`macbuild`** contains various files required for building KLayout (http://www.klayout.de/) version 0.30.9 or later for different 64-bit macOS, including: +* Golden Gate (27.x) : really experimental (on M4 Mac Mini) * Tahoe (26.x) : really experimental (on M4 Mac Mini) * Sequoia (15.x) : the primary development environment * Sonoma (14.x) : experimental Building KLayout for the previous operating systems listed below has been discontinued.
Pre-built DMG packages are also not provided.
-As of today (November 2025), Homebrew classifies macOS Catalina 10.15 - Ventura 13 as Tier 3. +As of November 2025, Homebrew classifies macOS Catalina 10.15 - Ventura 13 as Tier 3. * Ventura (13.7.8; the build would still be possible) * Monterey (12.7.6; the build would still be possible) * Big Sur (11.7.10) @@ -47,7 +48,7 @@ Then, follow the instructions in Section 6F. The migration work to "Qt6" is ongoing. You can try to use it; however, you might encounter some build or runtime errors.
If you use **Homebrew** to build KLayout >= 0.29.0, you need "Qt6" to address [the compilation issue](https://github.com/KLayout/klayout/issues/1599).
-I have also tried migrating to "Python 3.13.x" (earlier, Python 3.12.x) in this version. +I have also tried migrating to "Python 3.14.x" (earlier, Python 3.13.x) in this version. # 3. Script language support: Ruby and Python @@ -72,7 +73,7 @@ The operating system type is detected automatically. ``` ----------------------------------------------------------------------------------------------------------- << Usage of 'build4mac.py' >> - for building KLayout 0.30.5 or later on different Apple macOS platforms. + for building KLayout 0.30.9 or later on different Apple macOS platforms. $ [python] ./build4mac.py option & argument : descriptions (refer to 'macbuild/build4mac_env.py' for details) | default value @@ -88,27 +89,27 @@ $ [python] ./build4mac.py : (*) migration to Qt6 is ongoing | [-r|--ruby ] : case-insensitive type=['nil', 'Sys', 'MP34', 'HB34', 'Ana3'] | sys : nil: don't bind Ruby | - : Sys: use [Tahoe|Sequoia|Sonoma]-bundled Ruby 2.6 | + : Sys: use [GoldenGate|Tahoe|Sequoia|Sonoma]-bundled Ruby 2.6 | : MP34: use Ruby 3.4 from MacPorts | : HB34: use Ruby 3.4 from Homebrew | : Ana3: use Ruby 3.4 from Anaconda3 | - [-p|--python ] : case-insensitive type=['nil', 'Sys', 'MP313', 'HB313', 'Ana3', | sys - : 'MP312', 'MP312', | - : 'MP311', 'HB311', 'HBAuto'] | + [-p|--python ] : case-insensitive type=['nil', 'Sys', 'MP314', 'HB314', 'Ana3', | sys + : 'MP314', 'HB314', | + : 'HB311', 'HBAuto'] | : nil: don't bind Python | - : Sys: use [Tahoe|Sequoia|Sonoma]-bundled Python 3.9 | - : MP313: use Python 3.13 from MacPorts | - : HB313: use Python 3.13 from Homebrew | - : Ana3: use Python 3.13 from Anaconda3 | - : MP312: use Python 3.12 from MacPorts | - : HB312: use Python 3.12 from Homebrew | - : MP311: use Python 3.11 from MacPorts | + : Sys: use [GoldenGate|Tahoe|Sequoia|Sonoma]-bundled Python 3.9 | + : MP314: use Python 3.14 from MacPorts | + : HB314: use Python 3.14 from Homebrew | + : Ana3: use Python 3.14 from Anaconda3 | + : MP314: use Python 3.14 from MacPorts | + : HB314: use Python 3.14 from Homebrew | : HB311: use Python 3.11 from Homebrew (+) | : (+) required to provide the legacy pip in HW-*.dmg | : HBAuto: use the latest Python 3.x auto-detected from Homebrew | [-P|--buildPymod] : build and deploy Pymod (*.whl) for LW-*.dmg | disabled [-n|--noqtbinding] : don't create Qt bindings for ruby scripts | disabled [-u|--noqtuitools] : don't include uitools in Qt binding | disabled + [-s|--no32bitcoord] : don't use short (32bit) coordinates; use long (64bit) instead | disabled [-g|--nolibgit2] : don't include libgit2 for Git package support | disabled [-m|--make