Skip to content

Commit 0fd0690

Browse files
committed
build: check if binary is exists
1 parent c3740cf commit 0fd0690

File tree

1 file changed

+34
-14
lines changed

1 file changed

+34
-14
lines changed

.github/workflows/cross-compile.yml

+34-14
Original file line numberDiff line numberDiff line change
@@ -350,35 +350,55 @@ jobs:
350350
run: |
351351
# Replace with the name of your binary
352352
binary_name="libsql_php"
353-
354353
str_version=${{ env.VERSION }}
355354
version=${str_version#turso-php-extension/}
355+
dirname="$binary_name-$version-php-${{ matrix.php-versions }}-${{ matrix.phpts }}-${{ matrix.build }}"
356356
357-
dirname="$binary_name-$version-php-${{ matrix.php-versions }}-${{ matrix.phpts }}-${{ matrix.target }}"
358-
mkdir "$dirname"
357+
mkdir -p "$dirname"
359358
360-
if [ "${{ matrix.os }}" == *"macos"* ]; then
361-
cp "target/${{ matrix.target }}/release/lib${binary_name}.dylib" "target/${{ matrix.target }}/release/lib${binary_name}.so"
362-
mv "target/${{ matrix.target }}/release/lib${binary_name}.dylib" "$dirname"
363-
mv "target/${{ matrix.target }}/release/lib${binary_name}.so" "$dirname"
364-
mv "libsql_php_extension.stubs.php" "$dirname"
365-
elif [ "${{ matrix.os }}" = "windows-2019" ]; then
366-
mv "target/${{ matrix.target }}/release/${binary_name}.dll" "$dirname"
367-
mv "libsql_php_extension.stubs.php" "$dirname"
368-
ls "target/${{ matrix.target }}/release"
359+
# Check if we are on macOS
360+
if [[ "${{ matrix.os }}" == *"macos"* ]]; then
361+
if [[ -f "target/${{ matrix.target }}/release/lib${binary_name}.dylib" ]]; then
362+
cp "target/${{ matrix.target }}/release/lib${binary_name}.dylib" "target/${{ matrix.target }}/release/lib${binary_name}.so"
363+
mv "target/${{ matrix.target }}/release/lib${binary_name}.dylib" "$dirname"
364+
mv "target/${{ matrix.target }}/release/lib${binary_name}.so" "$dirname"
365+
else
366+
echo "Error: lib${binary_name}.dylib not found in target/${{ matrix.target }}/release/"
367+
exit 1
368+
fi
369+
elif [[ "${{ matrix.os }}" == "windows-2019" ]]; then
370+
if [[ -f "target/${{ matrix.target }}/release/${binary_name}.dll" ]]; then
371+
mv "target/${{ matrix.target }}/release/${binary_name}.dll" "$dirname"
372+
else
373+
echo "Error: ${binary_name}.dll not found in target/${{ matrix.target }}/release/"
374+
exit 1
375+
fi
369376
else
370-
mv "target/${{ matrix.target }}/release/lib${binary_name}.so" "$dirname"
377+
if [[ -f "target/${{ matrix.target }}/release/lib${binary_name}.so" ]]; then
378+
mv "target/${{ matrix.target }}/release/lib${binary_name}.so" "$dirname"
379+
else
380+
echo "Error: lib${binary_name}.so not found in target/${{ matrix.target }}/release/"
381+
exit 1
382+
fi
383+
fi
384+
385+
# Move stubs file if it exists
386+
if [[ -f "libsql_php_extension.stubs.php" ]]; then
371387
mv "libsql_php_extension.stubs.php" "$dirname"
388+
else
389+
echo "Warning: libsql_php_extension.stubs.php not found."
372390
fi
373391
374-
if [ "${{ matrix.os }}" = "windows-2019" ]; then
392+
# Archive the build
393+
if [[ "${{ matrix.os }}" == "windows-2019" ]]; then
375394
7z a "$dirname.zip" "$dirname"
376395
echo "ASSET=$dirname.zip" >> $GITHUB_ENV
377396
else
378397
tar -czf "$dirname.tar.gz" "$dirname"
379398
echo "ASSET=$dirname.tar.gz" >> $GITHUB_ENV
380399
fi
381400
401+
382402
- name: Release
383403
uses: softprops/action-gh-release@v1
384404
with:

0 commit comments

Comments
 (0)