docs.sheetjs.com/tests/engines/duktape-php.sh
2026-01-22 01:59:11 -05:00

37 lines
929 B
Bash
Executable File

#!/bin/bash
# https://docs.sheetjs.com/docs/demos/engines/duktape#php-demo
cd /tmp
rm -rf sheetjs-duk-php
mkdir sheetjs-duk-php
cd sheetjs-duk-php
curl -LO https://duktape.org/duktape-2.7.0.tar.xz
tar -xJf duktape-2.7.0.tar.xz
cd duktape-2.7.0
make -f Makefile.sharedlibrary
cd ..
OS="$(uname -s)"
case "$OS" in
Darwin) LIB_NAME="libduktape.207.20700.so" ;;
Linux) LIB_NAME="libduktape.so.207.20700" ;;
*) echo "Unsupported OS: $OS"; exit 1 ;;
esac
cp "duktape-2.7.0/$LIB_NAME" .
curl -LO https://cdn.sheetjs.com/xlsx-0.20.3/package/dist/shim.min.js
curl -LO https://cdn.sheetjs.com/xlsx-0.20.3/package/dist/xlsx.full.min.js
curl -LO https://docs.sheetjs.com/pres.numbers
curl -LO https://docs.sheetjs.com/duk/SheetJSDuk.php
sed "s#libduktape.207.20700.so#$LIB_NAME#g" SheetJSDuk.php > SheetJSDuk.php.tmp
mv SheetJSDuk.php.tmp SheetJSDuk.php
php SheetJSDuk.php pres.numbers; echo $?
npx -y xlsx-cli sheetjsw.xlsb