M4,bash,bzip2,perl (#57) (#59)

This commit is contained in:
Max Howell 2022-08-01 21:08:18 -04:00 committed by GitHub
parent 3fe324a9ef
commit b4f0306e97
4 changed files with 158 additions and 0 deletions

View file

@ -0,0 +1,28 @@
distributable:
url: https://ftp.gnu.org/gnu/bash/bash-{{ version.raw }}.tar.gz
strip-components: 1
versions:
#TODO possibly, `github: bminor/bash/tags` though doesnt know patch releases
#TODO HTML listing: https://ftp.gnu.org/gnu/bash/
- 5.1.16
provides:
- bin/bash
- bin/bashbug
build:
dependencies:
tea.xyz/gx/make: '*'
tea.xyz/gx/cc: c99
script: |
./configure --prefix={{ prefix }}
make --jobs {{ hw.concurrency }} install
env:
# causes bash to source ~/.bashrc when instantiated
# non-interactively from sshd. macOSs bash does this so users expect it.
CFLAGS: -DSSH_SOURCE_BASHRC
test:
script: |
bash -c "set -o pipefail"

View file

@ -0,0 +1,24 @@
distributable:
url: https://ftp.gnu.org/gnu/m4/m4-{{ version }}.tar.xz
strip-components: 1
versions:
github: autotools-mirror/m4/tags
build:
dependencies:
tea.xyz/gx/make: '*'
tea.xyz/gx/cc: c99
script: |
./configure --prefix="{{ prefix }}"
make --jobs {{ hw.concurrency }} install
test:
script: |
OUTPUT=$(cat $FIXTURE | m4)
test $OUTPUT = tea.xyz
fixture: |
define(TEST, tea.xyz)TEST
provides:
- bin/m4

View file

@ -0,0 +1,66 @@
distributable:
url: https://www.cpan.org/src/{{ version.major }}.0/perl-{{ version }}.tar.xz
strip-components: 1
versions:
github: perl/perl5/tags
ignore: /^v\d+\.\d*[13579]\.\d+$/
# ^^ perl considers odd minor versions “dev” releases
build:
dependencies:
tea.xyz/gx/make: '*'
tea.xyz/gx/cc: c99
script: |
./Configure $ARGS
make --jobs {{ hw.concurrency }} install
env:
ARGS:
- -d # use defaults
- -e # non interactive
- -Dprefix={{prefix}}
- -Duseshrplib
- -Duselargefiles
- -Dusethreads
# we dont want versioned, platformed prefixes
#NOTE maybe this will break something though…
- -Dprivlib={{prefix}}/lib
- -Darchlib={{prefix}}/lib
test:
script: |
perl $FIXTURE
fixture: |
print 'Perl is not an acronym, but JAPH is a Perl acronym!'
provides:
- bin/corelist
- bin/cpan
- bin/enc2xs
- bin/encguess
- bin/h2ph
- bin/h2xs
- bin/instmodsh
- bin/json_pp
- bin/libnetcfg
- bin/perl
- bin/perlbug
- bin/perldoc
- bin/perlivp
- bin/perlthanks
- bin/piconv
- bin/pl2pm
- bin/pod2html
- bin/pod2man
- bin/pod2text
- bin/pod2usage
- bin/podchecker
- bin/prove
- bin/ptar
- bin/ptardiff
- bin/ptargrep
- bin/shasum
- bin/splain
- bin/streamzip
- bin/xsubpp
- bin/zipdetails

View file

@ -0,0 +1,40 @@
distributable:
url: https://sourceware.org/pub/bzip2/bzip2-{{ version }}.tar.gz
strip-components: 1
versions:
github: libarchive/bzip2/tags
strip: /^bzip2-/
provides:
- bin/bunzip2
- bin/bzcat
- bin/bzcmp
- bin/bzdiff
- bin/bzegrep
- bin/bzfgrep
- bin/bzgrep
- bin/bzip2
- bin/bzip2recover
- bin/bzless
- bin/bzmore
build:
dependencies:
tea.xyz/gx/make: '*'
tea.xyz/gx/cc: c99
script: |
make \
--environment-overrides \
--jobs {{ hw.concurrency }} \
install
env:
CC: clang
PREFIX: ${{ prefix }}
test:
script: |
OUT=$(echo "$INPUT" | bzip2 | bunzip2)
test "$OUT" = "$INPUT"
env:
INPUT: tea.xyz