33 lines
909 B
Bash
Executable File
33 lines
909 B
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
# Install the kreuzberg PHP extension to the system PHP extension directory
|
|
# Called from the before hook in alef.toml for PHP e2e tests
|
|
|
|
EXTENSION_DIR=$(php -r 'echo ini_get("extension_dir");')
|
|
|
|
# Find the built extension
|
|
for path in target/release/libkreuzberg_php.dylib target/release/libkreuzberg_php.so target/release/kreuzberg_php.dll; do
|
|
if [ -f "$path" ]; then
|
|
EXT_PATH="$path"
|
|
break
|
|
fi
|
|
done
|
|
|
|
if [ -z "$EXT_PATH" ]; then
|
|
echo "Error: PHP extension not found in target/release/" >&2
|
|
exit 1
|
|
fi
|
|
|
|
# Copy to extension directory
|
|
EXT_FILENAME=$(basename "$EXT_PATH")
|
|
cp "$EXT_PATH" "$EXTENSION_DIR/$EXT_FILENAME"
|
|
|
|
# Add to php.ini if not already present
|
|
PHP_INI=$(php -r 'echo php_ini_loaded_file();')
|
|
if ! grep -q "extension=$EXT_FILENAME" "$PHP_INI"; then
|
|
echo "extension=$EXT_FILENAME" >>"$PHP_INI"
|
|
fi
|
|
|
|
echo "Installed PHP extension: $EXT_FILENAME to $EXTENSION_DIR"
|