Skip to content

Commit 243e8af

Browse files
committed
wip
1 parent 1ec4c8e commit 243e8af

File tree

1 file changed

+52
-9
lines changed

1 file changed

+52
-9
lines changed

.github/workflows/build.yml

Lines changed: 52 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -82,12 +82,32 @@ jobs:
8282
exit 1
8383
fi
8484
85-
# Verify libraries exist at expected paths
86-
if [ ! -f "/opt/homebrew/opt/mariadb-connector-c/lib/mariadb/libmariadb.a" ]; then
85+
# Get the actual prefix for mariadb-connector-c (handles keg-only formulas)
86+
MARIADB_PREFIX=$(brew --prefix mariadb-connector-c)
87+
echo "MariaDB Connector/C prefix: $MARIADB_PREFIX"
88+
89+
# Find the library file (may be in lib/ or lib/mariadb/)
90+
MARIADB_LIB=""
91+
for path in "$MARIADB_PREFIX/lib/mariadb/libmariadb.a" "$MARIADB_PREFIX/lib/libmariadb.a"; do
92+
if [ -f "$path" ]; then
93+
MARIADB_LIB="$path"
94+
break
95+
fi
96+
done
97+
98+
if [ -z "$MARIADB_LIB" ]; then
8799
echo "❌ ERROR: mariadb-connector-c installed but library file not found"
100+
echo "Searched in:"
101+
echo " - $MARIADB_PREFIX/lib/mariadb/libmariadb.a"
102+
echo " - $MARIADB_PREFIX/lib/libmariadb.a"
103+
echo ""
104+
echo "Contents of $MARIADB_PREFIX/lib/:"
105+
ls -la "$MARIADB_PREFIX/lib/" || echo "Directory not found"
88106
exit 1
89107
fi
90108
109+
echo "✅ Found ARM64 MariaDB library at: $MARIADB_LIB"
110+
echo "ARM64_MARIADB_LIB=$MARIADB_LIB" >> $GITHUB_ENV
91111
echo "✅ All ARM64 dependencies installed successfully"
92112
93113
- name: Install x86_64 Homebrew
@@ -161,30 +181,53 @@ jobs:
161181
exit 1
162182
fi
163183
164-
# Verify libraries exist at expected paths
165-
if [ ! -f "/usr/local/opt/mariadb-connector-c/lib/mariadb/libmariadb.a" ]; then
184+
# Get the actual prefix for mariadb-connector-c (handles keg-only formulas)
185+
X86_MARIADB_PREFIX=$(arch -x86_64 /usr/local/bin/brew --prefix mariadb-connector-c)
186+
echo "x86_64 MariaDB Connector/C prefix: $X86_MARIADB_PREFIX"
187+
188+
# Find the library file (may be in lib/ or lib/mariadb/)
189+
X86_MARIADB_LIB=""
190+
for path in "$X86_MARIADB_PREFIX/lib/mariadb/libmariadb.a" "$X86_MARIADB_PREFIX/lib/libmariadb.a"; do
191+
if [ -f "$path" ]; then
192+
X86_MARIADB_LIB="$path"
193+
break
194+
fi
195+
done
196+
197+
if [ -z "$X86_MARIADB_LIB" ]; then
166198
echo "❌ ERROR: mariadb-connector-c installed but library file not found"
199+
echo "Searched in:"
200+
echo " - $X86_MARIADB_PREFIX/lib/mariadb/libmariadb.a"
201+
echo " - $X86_MARIADB_PREFIX/lib/libmariadb.a"
202+
echo ""
203+
echo "Contents of $X86_MARIADB_PREFIX/lib/:"
204+
ls -la "$X86_MARIADB_PREFIX/lib/" || echo "Directory not found"
167205
exit 1
168206
fi
169207
208+
echo "✅ Found x86_64 MariaDB library at: $X86_MARIADB_LIB"
209+
echo "X86_MARIADB_LIB=$X86_MARIADB_LIB" >> $GITHUB_ENV
170210
echo "✅ All x86_64 dependencies installed successfully"
171211
172212
- name: Create universal libmariadb library
173213
run: |
174214
echo "Creating universal libmariadb.a..."
175215
176-
# Define library paths
177-
ARM64_LIB="/opt/homebrew/opt/mariadb-connector-c/lib/mariadb/libmariadb.a"
178-
X86_LIB="/usr/local/opt/mariadb-connector-c/lib/mariadb/libmariadb.a"
216+
# Use library paths from environment (set by previous steps)
217+
ARM64_LIB="${ARM64_MARIADB_LIB}"
218+
X86_LIB="${X86_MARIADB_LIB}"
219+
220+
echo "ARM64 library path: $ARM64_LIB"
221+
echo "x86_64 library path: $X86_LIB"
179222
180223
# Verify input files exist
181-
if [ ! -f "$ARM64_LIB" ]; then
224+
if [ -z "$ARM64_LIB" ] || [ ! -f "$ARM64_LIB" ]; then
182225
echo "❌ ERROR: ARM64 library not found at: $ARM64_LIB"
183226
echo "ARM64 Homebrew installation may have failed"
184227
exit 1
185228
fi
186229
187-
if [ ! -f "$X86_LIB" ]; then
230+
if [ -z "$X86_LIB" ] || [ ! -f "$X86_LIB" ]; then
188231
echo "❌ ERROR: x86_64 library not found at: $X86_LIB"
189232
echo "x86_64 Homebrew installation may have failed"
190233
exit 1

0 commit comments

Comments
 (0)