Preschool Read Aloud Books

Coming Soon Social Stories

history and meaning of the bratz logo

:
How To Hyperlink In Instagram Post
CI (macOS): build architecture-specific dependencies
Stop building universal OpenSSL/libssh2/libgit2 binaries for macOS wheels. Each runner already targets a single architecture, so build only for the host arch. This makes wheels smaller and simplifies build.sh. Assisted-by: Kimi Code
1 parent Invitation For Relaunch commit 6a4b8ab

Process Flow Chart Template 3 files changed A Alpha B Beta

Lines changed: 26 additions & 38 deletions

Aesthetic Story Ideas Coming Soon Social Stories

AGENTS.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,8 +139,8 @@ Variables consumed by `build.sh`:
139139

140140
- `LIBGIT2_VERSION` — If set, download and build this libgit2 version.
141141
- `LIBSSH2_VERSION` — If set, download and build libssh2 with SSH support.
142-
- `OPENSSL_VERSION` — If set, download and build OpenSSL (mainly used for
143-
macOS universal builds on CI).
142+
- `OPENSSL_VERSION` — If set, download and build OpenSSL (used on Linux and
143+
macOS CI builds).
144144
- `ZLIB_VERSION` — If set, download and build zlib.
145145
- `BUILD_TYPE` — CMake build type (default: `Debug`).
146146
- `PYTHON` — Python interpreter to use (default: `python3`).

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
# 1.20.1 (UNRELEASED)
22

3+
- CI (macOS): build architecture-specific OpenSSL/libssh2/libgit2
4+
dependencies instead of universal binaries, producing smaller wheels.
5+
36
- New exception hierarchy: `AlreadyExistsError`, `InvalidSpecError`,
47
`InvalidError`, `NotFoundError`, `AmbiguousError`, `AuthError`, and
58
`CertificateError` all inherit from `GitError` and the appropriate Python

build.sh

Lines changed: 21 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
# LIBSSH2_VERSION=<Version> - Build the given version of libssh2
1515
# LIBGIT2_VERSION=<Version> - Build the given version of libgit2
1616
# OPENSSL_VERSION=<Version> - Build the given version of OpenSSL
17-
# (only needed for Mac universal on CI)
17+
# (used on Linux and macOS CI builds)
1818
#
1919
# Examples.
2020
#
@@ -110,31 +110,24 @@ if [ -n "$OPENSSL_VERSION" ]; then
110110
wget https://www.openssl.org/source/$FILENAME.tar.gz -N --no-check-certificate
111111

112112
if [ "$KERNEL" = "Darwin" ]; then
113+
# Build OpenSSL for the host architecture only.
113114
tar xf $FILENAME.tar.gz
114-
mv $FILENAME openssl-x86
115-
116-
tar xf $FILENAME.tar.gz
117-
mv $FILENAME openssl-arm
118-
119-
cd openssl-x86
120-
./Configure darwin64-x86_64-cc shared
121-
make
122-
cd ../openssl-arm
123-
./Configure enable-rc5 zlib darwin64-arm64-cc no-asm
115+
cd $FILENAME
116+
if [ "$ARCH" = "arm64" ]; then
117+
./Configure enable-rc5 zlib darwin64-arm64-cc no-asm shared --prefix=$PREFIX --libdir=$PREFIX/lib
118+
else
119+
./Configure darwin64-x86_64-cc shared --prefix=$PREFIX --libdir=$PREFIX/lib
120+
fi
124121
make
125-
cd ..
126-
127-
mkdir openssl-universal
128-
129-
LIBSSL=$(basename openssl-x86/libssl.*.dylib)
130-
lipo -create openssl-x86/libssl.*.dylib openssl-arm/libssl.*.dylib -output openssl-universal/$LIBSSL
131-
LIBCRYPTO=$(basename openssl-x86/libcrypto.*.dylib)
132-
lipo -create openssl-x86/libcrypto.*.dylib openssl-arm/libcrypto.*.dylib -output openssl-universal/$LIBCRYPTO
133-
cd openssl-universal
134-
install_name_tool -id "@rpath/$LIBSSL" $LIBSSL
135-
install_name_tool -id "@rpath/$LIBCRYPTO" $LIBCRYPTO
136-
OPENSSL_PREFIX=$(pwd)
137-
cd ..
122+
make install
123+
OPENSSL_PREFIX=$PREFIX
124+
# Set install names so delocate can bundle the libraries.
125+
cd $PREFIX/lib
126+
LIBSSL=$(find . -maxdepth 1 -name 'libssl.*.dylib' -type f | head -n1 | sed 's|^\./||')
127+
LIBCRYPTO=$(find . -maxdepth 1 -name 'libcrypto.*.dylib' -type f | head -n1 | sed 's|^\./||')
128+
install_name_tool -id "@rpath/$LIBSSL" "$LIBSSL"
129+
install_name_tool -id "@rpath/$LIBCRYPTO" "$LIBCRYPTO"
130+
cd ../..
138131
else
139132
# Linux
140133
tar xf $FILENAME.tar.gz
@@ -154,14 +147,11 @@ if [ -n "$LIBSSH2_VERSION" ]; then
154147
tar xf $FILENAME.tar.gz
155148
cd $FILENAME
156149
if [ "$KERNEL" = "Darwin" ] && [ "$CIBUILDWHEEL" = "1" ]; then
157-
cmake . \
150+
CMAKE_PREFIX_PATH=$PREFIX cmake . \
158151
-DCMAKE_INSTALL_PREFIX=$PREFIX \
159152
-DBUILD_SHARED_LIBS=ON \
160153
-DBUILD_EXAMPLES=OFF \
161-
-DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" \
162-
-DOPENSSL_CRYPTO_LIBRARY="../openssl-universal/$LIBCRYPTO" \
163-
-DOPENSSL_SSL_LIBRARY="../openssl-universal/$LIBSSL" \
164-
-DOPENSSL_INCLUDE_DIR="../openssl-x86/include" \
154+
-DCMAKE_OSX_ARCHITECTURES="$ARCH" \
165155
-DBUILD_TESTING=OFF
166156
else
167157
cmake . \
@@ -186,14 +176,11 @@ if [ -n "$LIBGIT2_VERSION" ]; then
186176
mkdir -p build
187177
cd build
188178
if [ "$KERNEL" = "Darwin" ] && [ "$CIBUILDWHEEL" = "1" ]; then
189-
CMAKE_PREFIX_PATH=$OPENSSL_PREFIX:$PREFIX cmake .. \
179+
CMAKE_PREFIX_PATH=$PREFIX cmake .. \
190180
-DBUILD_SHARED_LIBS=ON \
191181
-DBUILD_TESTS=OFF \
192182
-DCMAKE_BUILD_TYPE=$BUILD_TYPE \
193-
-DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" \
194-
-DOPENSSL_CRYPTO_LIBRARY="../openssl-universal/$LIBCRYPTO" \
195-
-DOPENSSL_SSL_LIBRARY="../openssl-universal/$LIBSSL" \
196-
-DOPENSSL_INCLUDE_DIR="../openssl-x86/include" \
183+
-DCMAKE_OSX_ARCHITECTURES="$ARCH" \
197184
-DCMAKE_INSTALL_PREFIX=$PREFIX \
198185
-DUSE_SSH=$USE_SSH
199186
else
@@ -213,8 +200,6 @@ fi
213200

214201
if [ "$CIBUILDWHEEL" = "1" ]; then
215202
if [ "$KERNEL" = "Darwin" ]; then
216-
cp $OPENSSL_PREFIX/*.dylib $PREFIX/lib/
217-
cp $OPENSSL_PREFIX/*.dylib $PREFIX/lib/
218203
echo "PREFIX " $PREFIX
219204
echo "OPENSSL_PREFIX" $OPENSSL_PREFIX
220205
ls -l $PREFIX

Saved Credit Cards Coming Soon Social Stories

Comments
 (0)