ref(build): convert to POSIX, support BSD sed, stylistic cleanup, pin versions

This commit is contained in:
AJ ONeal 2024-08-28 20:49:23 -06:00
parent 8a01d683df
commit 2f4cf87a3e
Signed by: coolaj86
GPG Key ID: F1D692A76F70CF98

View File

@ -1,28 +1,42 @@
#!/bin/bash
#!/bin/sh
set -e
set -u
# TODO convert to JS
cat parser.js packer.js > all.tmp.js
sed -i '/use strict/d' all.tmp.js
sed -i '/require/d' all.tmp.js
sed -i '/exports/d' all.tmp.js
# TODO have GPT rewrite this script in JS for running on Windows
echo ';(function () {' > dist/asn1.js
echo "'use strict';" >> dist/asn1.js
echo "var ASN1 = window.ASN1 = {};" >> dist/asn1.js
echo "var Enc = window.Encoding;" >> dist/asn1.js
cat all.tmp.js >> dist/asn1.js
rm all.tmp.js
echo '}());' >> dist/asn1.js
fn_sed_i() { (
b_pattern="${1}"
b_path="${2}"
if sed --version 2>&1 | grep -q -F GNU; then
sed -i "${b_pattern}" "${b_path}"
else
sed -i '' "${b_pattern}" "${b_path}"
fi
); }
rm dist/*.gz
cat parser.js packer.js > ./all.tmp.js
fn_sed_i '/use strict/d' ./all.tmp.js
fn_sed_i '/require/d' ./all.tmp.js
fn_sed_i '/exports/d' ./all.tmp.js
cat node_modules/@root/encoding/dist/encoding.all.js > all.js
cat dist/asn1.js >> all.js
uglifyjs dist/asn1.js > dist/asn1.min.js
gzip dist/asn1.min.js
uglifyjs dist/asn1.js > dist/asn1.min.js
{
echo ';(function () {'
echo "'use strict';"
echo "var ASN1 = window.ASN1 = {};"
echo "var Enc = window.Encoding;"
cat ./all.tmp.js
} > ./dist/asn1.js
rm ./all.tmp.js
echo '}());' >> ./dist/asn1.js
mv all.js dist/asn1.all.js
uglifyjs dist/asn1.all.js > dist/asn1.all.min.js
gzip dist/asn1.all.min.js
uglifyjs dist/asn1.all.js > dist/asn1.all.min.js
rm -f ./dist/*.gz
npm clean-install
cat ./node_modules/@root/encoding/dist/encoding.all.js > ./all.js
cat ./dist/asn1.js >> ./all.js
npx -p uglify-js@3.19.2 uglifyjs ./dist/asn1.js -o ./dist/asn1.min.js
gzip -k ./dist/asn1.min.js
mv ./all.js ./dist/asn1.all.js
npx -p uglify-js@3.19.2 uglifyjs ./dist/asn1.all.js -o ./dist/asn1.all.min.js
gzip -k ./dist/asn1.all.min.js