Skip to content

Commit 782c630

Browse files
committed
Make dedicated build dependencies function per variant
This is a small refactoring step towards re-parallelizing the build process.
1 parent b3ddd20 commit 782c630

14 files changed

Lines changed: 157 additions & 69 deletions

File tree

variants/ash.sh

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,9 @@ shvr_download_ash ()
2828
shvr_build_ash ()
2929
{
3030
shvr_versioninfo_ash "$1"
31+
shvr_deps_ash "$1"
3132

3233
mkdir -p "${build_srcdir}"
33-
34-
apt-get -y install \
35-
wget bzip2 gcc make
36-
3734
mkdir -p /usr/src/busybox
3835
tar --extract \
3936
--file="${build_srcdir}.tar.bz2" \
@@ -108,4 +105,11 @@ shvr_build_ash ()
108105

109106
# Test the built shell
110107
"${SHVR_DIR_OUT}/ash_${version}/bin/ash" -c "echo busybox ash version $version"
108+
}
109+
110+
shvr_deps_ash ()
111+
{
112+
shvr_versioninfo_ash "$1"
113+
apt-get -y install \
114+
wget bzip2 gcc make
111115
}

variants/bash.sh

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -83,18 +83,7 @@ shvr_build_bash ()
8383
build_srcdir="${SHVR_DIR_SRC}/bash/${version_baseline}"
8484
mkdir -p "${build_srcdir}"
8585

86-
if test "$version_baseline" = "4.0"
87-
then apt-get -y install \
88-
wget patch gcc bison make autoconf
89-
elif test "$version_baseline" = "3.0"
90-
then apt-get -y install \
91-
wget patch gcc bison make ncurses-dev
92-
elif test "$version_baseline" = "2.05b"
93-
then apt-get -y install \
94-
wget patch gcc bison make autoconf
95-
else apt-get -y install \
96-
wget patch gcc bison make
97-
fi
86+
shvr_deps_bash "$1"
9887

9988
tar --extract \
10089
--file="${build_srcdir}.tar.gz" \
@@ -134,3 +123,20 @@ shvr_build_bash ()
134123

135124
"${SHVR_DIR_OUT}/bash_${version}/bin/bash" --version
136125
}
126+
127+
shvr_deps_bash ()
128+
{
129+
shvr_versioninfo_bash "$1"
130+
if test "$version_baseline" = "4.0"
131+
then apt-get -y install \
132+
wget patch gcc bison make autoconf
133+
elif test "$version_baseline" = "3.0"
134+
then apt-get -y install \
135+
wget patch gcc bison make ncurses-dev
136+
elif test "$version_baseline" = "2.05b"
137+
then apt-get -y install \
138+
wget patch gcc bison make autoconf
139+
else apt-get -y install \
140+
wget patch gcc bison make
141+
fi
142+
}

variants/brush.sh

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -50,15 +50,7 @@ shvr_build_brush ()
5050

5151
mkdir -p "${build_srcdir}"
5252

53-
apt-get -y install \
54-
curl wget gcc
55-
56-
if ! test -f "$HOME/.cargo/env"
57-
then
58-
sh "${SHVR_DIR_SRC}/rustup-init-1.28.2.sh" -y
59-
fi
60-
61-
. "$HOME/.cargo/env"
53+
shvr_deps_brush "$1"
6254

6355
tar --extract \
6456
--file="${build_srcdir}.tar.gz" \
@@ -74,3 +66,17 @@ shvr_build_brush ()
7466

7567
"${SHVR_DIR_OUT}/brush_${version}/bin/brush" -c "echo brush version $version"
7668
}
69+
70+
shvr_deps_brush ()
71+
{
72+
shvr_versioninfo_brush "$1"
73+
apt-get -y install \
74+
curl wget gcc
75+
76+
if ! test -f "$HOME/.cargo/env"
77+
then
78+
sh "${SHVR_DIR_SRC}/rustup-init-1.28.2.sh" -y
79+
fi
80+
81+
. "$HOME/.cargo/env"
82+
}

variants/dash.sh

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,7 @@ shvr_build_dash ()
5050

5151
mkdir -p "${build_srcdir}"
5252

53-
apt-get -y install \
54-
wget gcc automake autoconf dpkg-dev
53+
shvr_deps_dash "$1"
5554

5655
tar --extract \
5756
--file="${build_srcdir}.tar.gz" \
@@ -83,3 +82,10 @@ shvr_build_dash ()
8382

8483
"${SHVR_DIR_OUT}/dash_${version}/bin/dash" -c "echo dash version $version"
8584
}
85+
86+
shvr_deps_dash ()
87+
{
88+
shvr_versioninfo_dash "$1"
89+
apt-get -y install \
90+
wget gcc automake autoconf dpkg-dev
91+
}

variants/hush.sh

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,7 @@ shvr_build_hush ()
3131

3232
mkdir -p "${build_srcdir}"
3333

34-
# Install build dependencies
35-
apt-get -y install \
36-
wget bzip2 gcc make
34+
shvr_deps_hush "$1"
3735

3836
mkdir -p /usr/src/busybox
3937
tar --extract \
@@ -111,4 +109,12 @@ shvr_build_hush ()
111109

112110
# Test the built shell
113111
"${SHVR_DIR_OUT}/hush_${version}/bin/hush" -c "echo busybox hush version $version"
112+
}
113+
114+
shvr_deps_hush ()
115+
{
116+
shvr_versioninfo_hush "$1"
117+
# Install build dependencies
118+
apt-get -y install \
119+
wget bzip2 gcc make
114120
}

variants/ksh.sh

Lines changed: 20 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -72,20 +72,7 @@ shvr_build_ksh ()
7272

7373
mkdir -p "${build_srcdir}"
7474

75-
case "$fork_name" in
76-
*'93uplusm')
77-
apt-get -y install \
78-
wget gcc
79-
;;
80-
*'2020')
81-
apt-get -y install \
82-
wget gcc meson
83-
;;
84-
*'history')
85-
apt-get -y install \
86-
wget gcc patch
87-
;;
88-
esac
75+
shvr_deps_ksh "$1"
8976

9077
tar --extract \
9178
--file="${build_srcdir}.tar.gz" \
@@ -122,3 +109,22 @@ shvr_build_ksh ()
122109

123110
"${SHVR_DIR_OUT}/ksh_${version}/bin/ksh" -c "echo ksh version $version"
124111
}
112+
113+
shvr_deps_ksh ()
114+
{
115+
shvr_versioninfo_ksh "$1"
116+
case "$fork_name" in
117+
*'93uplusm')
118+
apt-get -y install \
119+
wget gcc
120+
;;
121+
*'2020')
122+
apt-get -y install \
123+
wget gcc meson
124+
;;
125+
*'history')
126+
apt-get -y install \
127+
wget gcc patch
128+
;;
129+
esac
130+
}

variants/loksh.sh

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,7 @@ shvr_build_loksh ()
5252

5353
mkdir -p "${build_srcdir}"
5454

55-
apt-get -y install \
56-
wget gcc meson ninja-build xz-utils
55+
shvr_deps_loksh "$1"
5756

5857
tar --extract \
5958
--file="${build_srcdir}.tar.xz" \
@@ -73,3 +72,10 @@ shvr_build_loksh ()
7372

7473
"${SHVR_DIR_OUT}/loksh_${version}/bin/loksh" -c "echo loksh version $version"
7574
}
75+
76+
shvr_deps_loksh ()
77+
{
78+
shvr_versioninfo_loksh "$1"
79+
apt-get -y install \
80+
wget gcc meson ninja-build xz-utils
81+
}

variants/mksh.sh

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,7 @@ shvr_build_mksh ()
5656

5757
mkdir -p "${build_srcdir}"
5858

59-
apt-get -y install \
60-
wget gcc make
59+
shvr_deps_mksh "$1"
6160

6261
tar --extract \
6362
--file="${build_srcdir}.tar.gz" \
@@ -73,3 +72,10 @@ shvr_build_mksh ()
7372

7473
"${SHVR_DIR_OUT}/mksh_${version}/bin/mksh" -c "echo mksh version $version"
7574
}
75+
76+
shvr_deps_mksh ()
77+
{
78+
shvr_versioninfo_mksh "$1"
79+
apt-get -y install \
80+
wget gcc make
81+
}

variants/oksh.sh

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,7 @@ shvr_build_oksh ()
5555

5656
mkdir -p "${build_srcdir}"
5757

58-
apt-get -y install \
59-
wget gcc make
58+
shvr_deps_oksh "$1"
6059

6160
tar --extract \
6261
--file="${build_srcdir}.tar.gz" \
@@ -75,3 +74,10 @@ shvr_build_oksh ()
7574

7675
"${SHVR_DIR_OUT}/oksh_${version}/bin/oksh" -c "echo oksh version $version"
7776
}
77+
78+
shvr_deps_oksh ()
79+
{
80+
shvr_versioninfo_oksh "$1"
81+
apt-get -y install \
82+
wget gcc make
83+
}

variants/osh.sh

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,7 @@ shvr_build_osh ()
5353

5454
mkdir -p "${build_srcdir}"
5555

56-
apt-get -y install \
57-
wget gcc g++ make
56+
shvr_deps_osh "$1"
5857

5958
tar --extract \
6059
--file="${build_srcdir}.tar.gz" \
@@ -73,3 +72,10 @@ shvr_build_osh ()
7372

7473
"${SHVR_DIR_OUT}/osh_${version}/bin/osh" -c "echo osh version $version"
7574
}
75+
76+
shvr_deps_osh ()
77+
{
78+
shvr_versioninfo_osh "$1"
79+
apt-get -y install \
80+
wget gcc g++ make
81+
}

0 commit comments

Comments
 (0)