Skip to content

Commit 4d98f7c

Browse files
committed
chore: wip
1 parent c9e05f0 commit 4d98f7c

File tree

1 file changed

+39
-20
lines changed

1 file changed

+39
-20
lines changed

.github/workflows/precompile-php.yml

Lines changed: 39 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -224,63 +224,82 @@ jobs:
224224
./packages/launchpad/bin/cli.ts install php.net --verbose
225225
226226
echo "✅ PHP dependencies installed successfully via Launchpad"
227-
echo "🔧 ICU installation complete"
228227
229-
# Find pkgx installation directory and ICU version
230-
PKGX_DIR="$HOME/.local"
231-
ICU_DIR=$(find $PKGX_DIR -name "unicode.org" -type d | head -1)
228+
# Find Launchpad installation directory and ICU version
229+
LAUNCHPAD_DIR="$HOME/.local"
230+
echo "🔍 Searching for ICU installation..."
231+
232+
# ICU might be installed as unicode.org
233+
ICU_DIR=$(find $LAUNCHPAD_DIR -name "unicode.org" -type d | head -1)
232234
if [[ -d "$ICU_DIR" ]]; then
233235
ICU_VERSION_DIR=$(ls -1 $ICU_DIR | grep "^v" | sort -V | tail -1)
234236
ICU_FULL_VER=$(echo "$ICU_VERSION_DIR" | sed 's/^v//')
235237
ICU_VER=$(echo "$ICU_FULL_VER" | cut -d. -f1)
236238
237-
echo "✅ Using ICU v$ICU_VER (full version: $ICU_FULL_VER) - from pkgx"
239+
echo "✅ Found ICU v$ICU_VER (full version: $ICU_FULL_VER) at unicode.org"
238240
echo "ICU_VERSION=$ICU_VER" >> $GITHUB_ENV
239241
echo "ICU_FULL_VERSION=$ICU_FULL_VER" >> $GITHUB_ENV
240242
echo "ICU_PREFIX=$ICU_DIR/$ICU_VERSION_DIR" >> $GITHUB_ENV
241243
242244
# Verify ICU installation
243245
echo "🔍 ICU installation details:"
244246
echo "ICU_PREFIX: $ICU_DIR/$ICU_VERSION_DIR"
245-
ls -la $ICU_DIR/$ICU_VERSION_DIR/lib/libicu*.dylib | head -5
247+
ls -la $ICU_DIR/$ICU_VERSION_DIR/lib/libicu*.dylib 2>/dev/null | head -5 || echo "ICU libraries not found in expected location"
246248
else
247-
echo "❌ ICU installation not found in pkgx"
248-
exit 1
249+
# Try alternative ICU locations that might be used by Launchpad
250+
echo "🔍 ICU not found at unicode.org, checking alternative locations..."
251+
252+
# Check if ICU is available via pkg-config (installed as dependency)
253+
if pkg-config --exists icu-uc icu-i18n 2>/dev/null; then
254+
ICU_PREFIX=$(pkg-config --variable=prefix icu-uc)
255+
ICU_VER=$(pkg-config --modversion icu-uc | cut -d. -f1)
256+
ICU_FULL_VER=$(pkg-config --modversion icu-uc)
257+
258+
echo "✅ Found ICU v$ICU_VER (full version: $ICU_FULL_VER) via pkg-config"
259+
echo "ICU_VERSION=$ICU_VER" >> $GITHUB_ENV
260+
echo "ICU_FULL_VERSION=$ICU_FULL_VER" >> $GITHUB_ENV
261+
echo "ICU_PREFIX=$ICU_PREFIX" >> $GITHUB_ENV
262+
else
263+
echo "⚠️ ICU not found, will disable intl extension for PHP build"
264+
echo "ICU_VERSION=" >> $GITHUB_ENV
265+
echo "ICU_FULL_VERSION=" >> $GITHUB_ENV
266+
echo "ICU_PREFIX=" >> $GITHUB_ENV
267+
fi
249268
fi
250269
251-
# Verify pkgx installations
252-
echo "Checking pkgx installations:"
270+
# Verify Launchpad installations
271+
echo "🔍 Checking Launchpad dependency installations:"
253272
254273
# Find and verify readline
255-
READLINE_DIR=$(find $PKGX_DIR -name "gnu.org" -type d)/readline
274+
READLINE_DIR=$(find $LAUNCHPAD_DIR -name "gnu.org" -type d)/readline
256275
if [[ -d "$READLINE_DIR" ]]; then
257276
READLINE_VER=$(ls -1 $READLINE_DIR | grep "^v" | sort -V | tail -1)
258277
echo "✅ Readline: $READLINE_DIR/$READLINE_VER"
259-
ls -la $READLINE_DIR/$READLINE_VER/include/readline/readline.h || echo "readline.h not found"
260-
ls -la $READLINE_DIR/$READLINE_VER/lib/libreadline.* || echo "libreadline not found"
278+
ls -la $READLINE_DIR/$READLINE_VER/include/readline/readline.h 2>/dev/null || echo "readline.h not found"
279+
ls -la $READLINE_DIR/$READLINE_VER/lib/libreadline.* 2>/dev/null || echo "libreadline not found"
261280
fi
262281
263282
# Find and verify PostgreSQL
264-
PGSQL_DIR=$(find $PKGX_DIR -name "postgresql.org" -type d)
283+
PGSQL_DIR=$(find $LAUNCHPAD_DIR -name "postgresql.org" -type d)
265284
if [[ -d "$PGSQL_DIR" ]]; then
266285
PGSQL_VER=$(ls -1 $PGSQL_DIR | grep "^v" | sort -V | tail -1)
267286
echo "✅ PostgreSQL: $PGSQL_DIR/$PGSQL_VER"
268-
ls -la $PGSQL_DIR/$PGSQL_VER/include/libpq-fe.h || echo "libpq-fe.h not found"
269-
ls -la $PGSQL_DIR/$PGSQL_VER/lib/libpq.* || echo "libpq not found"
287+
ls -la $PGSQL_DIR/$PGSQL_VER/include/libpq-fe.h 2>/dev/null || echo "libpq-fe.h not found"
288+
ls -la $PGSQL_DIR/$PGSQL_VER/lib/libpq.* 2>/dev/null || echo "libpq not found"
270289
fi
271290
272291
# Find and verify OpenSSL
273-
OPENSSL_DIR=$(find $PKGX_DIR -name "openssl.org" -type d)
292+
OPENSSL_DIR=$(find $LAUNCHPAD_DIR -name "openssl.org" -type d)
274293
if [[ -d "$OPENSSL_DIR" ]]; then
275294
OPENSSL_VER=$(ls -1 $OPENSSL_DIR | grep "^v" | sort -V | tail -1)
276295
echo "✅ OpenSSL: $OPENSSL_DIR/$OPENSSL_VER"
277-
ls -la $OPENSSL_DIR/$OPENSSL_VER/include/openssl/ssl.h || echo "ssl.h not found"
278-
ls -la $OPENSSL_DIR/$OPENSSL_VER/lib/libssl.* || echo "libssl not found"
296+
ls -la $OPENSSL_DIR/$OPENSSL_VER/include/openssl/ssl.h 2>/dev/null || echo "ssl.h not found"
297+
ls -la $OPENSSL_DIR/$OPENSSL_VER/lib/libssl.* 2>/dev/null || echo "libssl not found"
279298
fi
280299
281300
# Find and verify other dependencies
282301
for dep in "gnu.org/gettext" "sourceware.org/bzip2" "openldap.org"; do
283-
DEP_DIR=$(find $PKGX_DIR -path "*/$dep" -type d | head -1)
302+
DEP_DIR=$(find $LAUNCHPAD_DIR -path "*/$dep" -type d | head -1)
284303
if [[ -d "$DEP_DIR" ]]; then
285304
DEP_VER=$(ls -1 $DEP_DIR | grep "^v" | sort -V | tail -1)
286305
echo "✅ $dep: $DEP_DIR/$DEP_VER"

0 commit comments

Comments
 (0)