add buildscripts for js deps

This commit is contained in:
ed 2019-06-25 23:04:13 +00:00
parent 9ef3945abf
commit b0c2fc91b2
4 changed files with 80 additions and 0 deletions

3
.gitignore vendored
View file

@ -19,3 +19,6 @@ dist/
# other licenses
contrib/
# deps
copyparty/web/deps

View file

@ -0,0 +1,43 @@
FROM alpine:3.10
WORKDIR /z
ENV ver_forge=0.8.5 \
ver_ogvjs=1.6.1
# download
RUN apk add make g++ git bash npm patch wget tar gzip unzip \
&& wget https://github.com/digitalbazaar/forge/archive/$ver_forge.tar.gz \
&& wget https://github.com/brion/ogv.js/releases/download/$ver_ogvjs/ogvjs-$ver_ogvjs.zip \
&& tar -xf $ver_forge.tar.gz \
&& unzip ogvjs-$ver_ogvjs.zip \
&& cd forge-$ver_forge \
&& npm install
# customize
COPY forge.patch /z
# build forge
RUN cd forge-$ver_forge \
&& patch -p1 < /z/forge.patch \
&& npm run build \
&& mkdir /z/dist \
&& cp -pv dist/forge.sha512.* /z/dist
# build ogvjs
RUN cd ogvjs-$ver_ogvjs \
&& cp -pv \
ogv.js \
ogv-worker-audio.js \
ogv-demuxer-ogg.js \
ogv-demuxer-ogg-wasm.js \
ogv-demuxer-ogg-wasm.wasm \
ogv-demuxer-webm.js \
ogv-demuxer-webm-wasm.js \
ogv-demuxer-webm-wasm.wasm \
ogv-decoder-audio-opus.js \
ogv-decoder-audio-opus-wasm.js \
ogv-decoder-audio-opus-wasm.wasm \
ogv-decoder-audio-vorbis.js \
ogv-decoder-audio-vorbis-wasm.js \
ogv-decoder-audio-vorbis-wasm.wasm \
dynamicaudio.swf \
/z/dist

View file

@ -0,0 +1,20 @@
self := $(dir $(abspath $(lastword $(MAKEFILE_LIST))))
vend := $(self)/../../copyparty/web/deps
all:
service docker start
docker build -t build-copyparty-deps .
rm -rf $(vend)
mkdir $(vend)
echo "tar -cC /z dist" | \
docker run --rm -i build-copyparty-deps:latest | \
tar -xvC $(vend) --strip-components=1
chown -R `stat $(self) -c %u:%g` $(vend)
sh:
@printf "\n\033[1;31mopening a shell in the most recently created docker image\033[0m\n"
docker run --rm -it `docker images -aq | head -n 1` /bin/bash

View file

@ -0,0 +1,14 @@
diff -NarU3 forge-0.8.5/webpack.config.js forge-0.8.5-mod/webpack.config.js
--- forge-0.8.5/webpack.config.js 2019-06-19 03:05:22.000000000 +0200
+++ forge-0.8.5-mod/webpack.config.js 2019-06-26 00:11:42.108019160 +0200
@@ -31,6 +31,10 @@
library: null,
libraryTarget: null
}
+ ,{
+ entry: ['./lib/sha512.js', './lib/forge.js'],
+ filenameBase: 'forge.sha512'
+ }
// Custom builds can be created by specifying the high level files you need
// webpack will pull in dependencies as needed.
//