1 | # Wedge definition for zsh
|
2 | #
|
3 | # Loaded by deps/wedge.sh.
|
4 |
|
5 | set -o nounset
|
6 | set -o pipefail
|
7 | set -o errexit
|
8 |
|
9 | # sourced
|
10 | WEDGE_NAME='zsh'
|
11 | WEDGE_VERSION='5.1.1'
|
12 |
|
13 | wedge-make() {
|
14 | local src_dir=$1
|
15 | local build_dir=$2
|
16 | local install_dir=$3
|
17 |
|
18 | # FIX for Github Actions, there's "no controlling tty", so add --with-tcsetpgrp
|
19 | # https://www.linuxfromscratch.org/blfs/view/7.5/postlfs/zsh.html
|
20 |
|
21 | # Fedora has a conflict with zsh/Src/Modules/termcap.c and
|
22 | # /usr/include/term.h
|
23 | # Happens from zsh 5.1.1 all the way to zsh 5.9.
|
24 | # This doesn't happen on Debian/Ubuntu.
|
25 |
|
26 | # This creates config.modules
|
27 | time $src_dir/configure \
|
28 | --disable-dynamic --with-tcsetpgrp \
|
29 | --prefix=$install_dir
|
30 |
|
31 | # For some reason the regex module isn't included if we --disable-dynamic?
|
32 | # name=zsh/regex modfile=Src/Modules/regex.mdd link=no
|
33 | # ->
|
34 | # name=zsh/regex modfile=Src/Modules/regex.mdd link=static
|
35 |
|
36 | # INSTALL says I need this after editing config.modules.
|
37 | sed -i 's/regex.mdd link=no/regex.mdd link=static/' config.modules
|
38 | make prep
|
39 |
|
40 | time make
|
41 | # make test?
|
42 | }
|
43 |
|
44 | wedge-install() {
|
45 | local build_dir=$1
|
46 |
|
47 | pushd $build_dir
|
48 |
|
49 | #time make install-strip
|
50 | time make install
|
51 |
|
52 | popd
|
53 | }
|
54 |
|
55 | wedge-smoke-test() {
|
56 | local install_dir=$1
|
57 |
|
58 | $install_dir/bin/zsh -c 'echo "hi from zsh"'
|
59 | }
|