Skip to content

Commit 2aa348b

Browse files
committed
chore(build): Fix parallel build
1 parent 049e2b4 commit 2aa348b

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

sh/build.sh

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,10 @@ rm -rf build
1818
mkdir -p build
1919
echo "" > build/.gdignore
2020

21+
# Settings
22+
THREADS=8
23+
PIDS=()
24+
2125
# Generate variants
2226
CATEGORIES="$(echo icons/*)"
2327
for CATEGORY in $CATEGORIES; do
@@ -35,6 +39,8 @@ for CATEGORY in $CATEGORIES; do
3539
VARIANT_COLOR="${COLORS[$VARIANT_NAME]}"
3640
INPUT="icons/$CATEGORY/$ICON.svg"
3741
OUT="$ICON-$VARIANT_NAME"
42+
43+
PIDS=()
3844

3945
echo "Generating variant $VARIANT_NAME for $CATEGORY/$ICON"
4046

@@ -43,21 +49,32 @@ for CATEGORY in $CATEGORIES; do
4349
rsvg-convert |\
4450
pngquant --strip --posterize 1 --speed 2 - |\
4551
cat > "build/bundle/icons/16x/$CATEGORY/$OUT.png" &
52+
PIDS+=($!);
4653

4754
cat "$INPUT" |\
4855
sed "s/$BASE_COLOR/$VARIANT_COLOR/g" |\
4956
rsvg-convert --zoom 4 |\
5057
pngquant --strip --posterize 1 --speed 2 - |\
5158
cat > "build/bundle/icons/64x-hidpi/$CATEGORY/$OUT.png" &
59+
PIDS+=($!);
5260

5361
cat "$INPUT" |\
5462
sed "s/$BASE_COLOR/$VARIANT_COLOR/g" |\
5563
svgo - |\
5664
cat > "build/site/icons/$CATEGORY/$OUT.svg" &
65+
PIDS+=($!);
5766
done;
67+
68+
if [ "${#PIDS[@]}" -gt "$THREADS" ]; then
69+
wait "${PIDS[@]}"
70+
PIDS=()
71+
fi
5872
done;
5973
done;
6074

75+
# Await any dangling jobs
76+
wait "${PIDS[@]}"
77+
6178
# Prepare addon
6279
version="$(sh/version.sh)"
6380
root="$(pwd)"

0 commit comments

Comments
 (0)