From 1464ede7079dcc8c3543cd0c8b028cdded5b638f Mon Sep 17 00:00:00 2001 From: Kazunari Sekigawa Date: Fri, 6 May 2022 05:01:40 +0900 Subject: [PATCH] Updated the build system for Mac (#1073) * WIP: add "pymod" * To fix the issue reported by GitHub ticket No.1040 * WIP: To build "pymod" * Updated the build system for Mac. * Updated the build system for Mac. --- macbuild/ReadMe.md | 74 ++-- macbuild/Resources/script-bundle-A.zip | Bin 4440184 -> 4441255 bytes macbuild/Resources/script-bundle-B.zip | Bin 4441504 -> 4442749 bytes macbuild/Resources/script-bundle-P.zip | Bin 4463962 -> 4465202 bytes macbuild/build4mac.py | 449 ++++++++++++++++++------- 5 files changed, 368 insertions(+), 155 deletions(-) diff --git a/macbuild/ReadMe.md b/macbuild/ReadMe.md index cb9e98f62..b0918d249 100644 --- a/macbuild/ReadMe.md +++ b/macbuild/ReadMe.md @@ -1,9 +1,9 @@ -Relevant KLayout version: 0.27.4
+Relevant KLayout version: 0.27.9
Author: Kazzz-S
-Last modified: 2021-11-07
+Last modified: 2022-04-30
# 1. Introduction -This directory **`macbuild`** contains different files required for building KLayout (http://www.klayout.de/) version 0.27.4 or later for different 64-bit macOS, including: +This directory **`macbuild`** contains different files required for building KLayout (http://www.klayout.de/) version 0.27.9 or later for different 64-bit macOS, including: * Catalina (10.15.7) : the primary development environment * Big Sur (11.x) : experimental; Apple M1 chip is not tested since the author does not own an M1 Mac * Monterey (12.x) : -- ditto -- @@ -53,8 +53,9 @@ $ /usr/bin/python --version Python 2.7.16 ``` -Big Sur (11.x) and Monterey (12.x) still provide the Python 2.7 binaries to run various legacy applications.
+Big Sur (11.x) and Monterey (< 12.3) still provide the Python 2.7 binaries to run various legacy applications.
However, the latest Xcode 13.1 does not allow us to link the legacy Python 2.7 library with the newly compiled KLayout binaries.
+Moreover, Monterey (12.3.1) finally eliminated the Python 2.7 binaries.
Therefore, Homebrew is adopted as the default environment for Big Sur and Monterey. The build script **`build4mac.py`** provides several possible combinations of Qt5, Ruy, and Python modules to accommodate such a slightly complex environment.
@@ -72,9 +73,9 @@ You need to have: ``` --------------------------------------------------------------------------------------------------------- << Usage of 'build4mac.py' >> - for building KLayout 0.27.4 or later on different Apple macOS / Mac OSX platforms. + for building KLayout 0.27.9 or later on different Apple macOS / Mac OSX platforms. -$ [python] ./build4mac.py +$ [python] ./build4mac.py option & argument : descriptions (refer to 'macbuild/build4mac_env.py' for details)| default value --------------------------------------------------------------------------------------+--------------- [-q|--qt ] : case-insensitive type=['Qt5MacPorts', 'Qt5Brew', 'Qt5Ana3'] | qt5macports @@ -95,23 +96,24 @@ $ [python] ./build4mac.py : HB38: use Python 3.8 from Homebrew | : Ana3: use Python 3.8 from Anaconda3 | : HBAuto: use the latest Python 3.x auto-detected from Homebrew | - [-n|--noqtbinding] : don't create Qt bindings for ruby scripts | disabled - [-u|--noqtuitools] : don't include uitools in Qt binding | disabled - [-m|--make