pantry/projects/fishshell.com/package.yml
Max Howell 4d915a219a
fish: tests must specify they want tea in the PATH now (#838)
* tests must specify they want tea in the PATH now
* This is more proper. One can imagine a future where tools alter their behavior if `tea` is available because we are useful. So one should opt into testing that.
* test fails on GHA ubuntu-latest and I cannot figure out why
2023-04-10 09:06:40 -04:00

75 lines
1.7 KiB
YAML

distributable:
url: https://github.com/fish-shell/fish-shell/archive/refs/tags/{{version}}.tar.gz
strip-components: 1
versions:
github: fish-shell/fish-shell/releases/tags
dependencies:
gnu.org/gettext: '*'
invisible-island.net/ncurses: '>=6.0'
build:
dependencies:
tea.xyz/gx/cc: c99
tea.xyz/gx/make: '*'
cmake.org: '>=3.5'
freedesktop.org/pkg-config: '*'
git-scm.org: '*'
script: |
# By default, fish's fish_command_not_found handler will redirect to stderr,
# return an exit code of 127. Always. This patch fixes it. Hopefully, it will
# be merged upstream soon. https://github.com/fish-shell/fish-shell/pull/9517
git apply props/command_not_found_handler.diff
echo {{version}} >version
mkdir build
cd build
cmake .. $ARGS
make install
cd {{prefix}}/share/fish
sed -i.bak -e "s| $TEA_PREFIX/| (tea --prefix)/|g" __fish_build_paths.fish
rm __fish_build_paths.fish.bak
env:
ARGS:
- -DCMAKE_BUILD_TYPE=Release
- -DCMAKE_INSTALL_PREFIX="{{prefix}}"
- -DCURSES_INCLUDE_PATH="{{deps.invisible-island.net/ncurses.prefix}}/include/ncursesw"
test:
dependencies:
tea.xyz: '*'
script:
fish $FIXTURE | grep "variable1variable2variable3variable4variable5variable6variable7variable8variable9variable10go version go"
fixture: |
#!/usr/bin/env fish
set -lx V variable
for x in (seq 1 10)
echo -n $V$x
end
begin
if which go
exit 2
end
tea --magic=fish | source
go version
#FIXME https://github.com/teaxyz/pantry/issues/861
# go version > go.out
# if ! grep go go.out
# exit 3
# end
end
provides:
- bin/fish
- bin/fish_indent
- bin/fish_key_reader