More webpack dep tweaks

This commit is contained in:
Tony Garnock-Jones 2018-11-21 17:02:05 +00:00
parent 6359295dd7
commit 30fed9d0f6
2 changed files with 24 additions and 24 deletions

View File

@ -4,30 +4,6 @@ case "$1" in
for d in src/*.js; do [ -f "$d" ] && echo lib/$(basename "$d"); done | xargs redo-ifchange
for d in *.webpack.config.js
do
depifchange=''
depifcreate=''
for dep in $(cat package.json | \
jq -r '.dependencies | to_entries[].key' | \
fgrep '@syndicate-lang/' | \
sed -e 's:^@syndicate-lang/::' | \
fgrep -v 'core') ## core doesn't have any compilation step
do
for srcfile in ../$dep/src/*.js
do
if [ -f $srcfile ]
then
libfile=$(echo $srcfile | sed -e 's:/src/:/lib/:')
if [ -f $libfile ]
then
depifchange="$depifchange $libfile"
else
depifcreate="$depifcreate $libfile"
fi
fi
done
done
redo-ifchange $depifchange
redo-ifchange $depifcreate
[ -f "$d" ] && echo dist/$(basename "$d" .webpack.config.js).js
done | xargs redo-ifchange
[ -f _all.do ] && redo-ifchange _all || true

View File

@ -21,6 +21,30 @@ case "$1" in
npx syndicate-babel "src/$file"
;;
*/dist/*)
# Conservatively assume the distribution depends on ALL the
# local source files PLUS the lib/*.js of dependent syndicate
# packages, other than core which has src/*.js files instead.
#
for d in src/*.js; do echo lib/$(basename $d); done | xargs redo-ifchange
for dep in $(cat package.json | \
jq -r '.dependencies | to_entries[].key' | \
fgrep '@syndicate-lang/' | \
sed -e 's:^@syndicate-lang/::')
do
for srcfile in ../$dep/src/*.js
do
if [ -f $srcfile ]
then
if [ "$dep" = "core" ]
then
echo $srcfile
else
libfile=$(echo $srcfile | sed -e 's:/src/:/lib/:')
echo $libfile
fi
fi
done
done | redo-ifchange
configfile=$(basename "$1" .js).webpack.config.js
redo-ifchange $configfile
for maybedep in $(npx webpack --config "$configfile" --json -o "$targettempfile" | jq -r '.modules[].identifier')