Initial import of Dillo
This commit is contained in:
273
.github/workflows/build.yml
vendored
Normal file
273
.github/workflows/build.yml
vendored
Normal file
@ -0,0 +1,273 @@
|
||||
name: CI
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches: master
|
||||
|
||||
jobs:
|
||||
ubuntu-latest-html-tests:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
- name: Install dependencies
|
||||
run: sudo apt install -y libfltk1.3-dev libssl-dev libpng-dev libjpeg-dev libwebp-dev xvfb x11-apps x11-utils imagemagick
|
||||
|
||||
- name: autogen
|
||||
run: ./autogen.sh
|
||||
- name: Make install dir
|
||||
run: mkdir install build
|
||||
- name: configure
|
||||
run: cd build && ../configure --prefix=$(readlink -f ../install) --enable-html-tests
|
||||
- name: make
|
||||
run: cd build && make
|
||||
- name: make install
|
||||
run: cd build && make install
|
||||
- name: Copy config to .dillo
|
||||
run: |
|
||||
mkdir -p ~/.dillo/
|
||||
cp install/etc/dillo/* ~/.dillo/
|
||||
- name: make check
|
||||
run: |
|
||||
export DILLOBIN=$(readlink -f install/bin/dillo)
|
||||
cd build && make check || (cat test/html/test-suite.log; false)
|
||||
export DILLOBIN=
|
||||
- name: Check release fits in a floppy disk of 1.44 MB
|
||||
run: |
|
||||
cd build
|
||||
make dist-gzip
|
||||
size=$(stat -c %s dillo-*.tar.gz)
|
||||
floppy=$((1474560 - 32*1024)) # Leave room for FAT table
|
||||
echo "Floppy occupation: $(($size * 100 / $floppy)) %"
|
||||
if [ $size -lt $floppy ]; then
|
||||
echo 'OK: Fits in floopy disk'
|
||||
else
|
||||
echo "FAIL: Release size too big: $size / $floppy"
|
||||
exit 1
|
||||
fi
|
||||
- name: make distcheck (with HTML tests)
|
||||
run: |
|
||||
export DILLOBIN=
|
||||
mkdir build-distcheck install-distcheck
|
||||
cd build-distcheck && ../configure --prefix=$(readlink -f ../install-distcheck) --enable-html-tests
|
||||
make distcheck DISTCHECK_CONFIGURE_FLAGS=--enable-html-tests
|
||||
# - name: Remove pipes
|
||||
# run: find test/html -type p -delete || true
|
||||
# - name: Archive production artifacts
|
||||
# uses: actions/upload-artifact@v3
|
||||
# with:
|
||||
# name: upload-html-test-results
|
||||
# path: |
|
||||
# build/test/html
|
||||
ubuntu-latest-no-tls:
|
||||
needs: ubuntu-latest-html-tests
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
- name: Install dependencies
|
||||
run: sudo apt install -y libfltk1.3-dev
|
||||
- name: autogen
|
||||
run: ./autogen.sh
|
||||
- name: configure
|
||||
run: ./configure --disable-tls
|
||||
- name: make
|
||||
run: make
|
||||
- name: make check
|
||||
run: make check
|
||||
- name: make distcheck
|
||||
run: make distcheck
|
||||
ubuntu-latest-mbedtls2:
|
||||
needs: ubuntu-latest-html-tests
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
- name: Install dependencies
|
||||
run: sudo apt install -y libfltk1.3-dev libmbedtls-dev
|
||||
- name: autogen
|
||||
run: ./autogen.sh
|
||||
- name: configure
|
||||
run: ./configure --disable-openssl
|
||||
- name: make
|
||||
run: make
|
||||
- name: make check
|
||||
run: make check
|
||||
- name: make distcheck
|
||||
run: make distcheck
|
||||
ubuntu-latest-openssl-3:
|
||||
needs: ubuntu-latest-html-tests
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
- name: Install dependencies
|
||||
run: sudo apt install -y libfltk1.3-dev libssl-dev
|
||||
- name: autogen
|
||||
run: ./autogen.sh
|
||||
- name: configure
|
||||
run: ./configure --disable-mbedtls
|
||||
- name: make
|
||||
run: make
|
||||
- name: make check
|
||||
run: make check
|
||||
- name: make distcheck
|
||||
run: make distcheck
|
||||
ubuntu-latest-with-old-std:
|
||||
needs: ubuntu-latest-html-tests
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
- name: Install dependencies
|
||||
run: sudo apt install -y libfltk1.3-dev libssl-dev
|
||||
- name: autogen
|
||||
run: ./autogen.sh
|
||||
- name: configure
|
||||
# Make sure we build with the C++11 standard, so we fail to build on newer
|
||||
# features.
|
||||
run: ./configure --disable-mbedtls CFLAGS="-Werror" CXXFLAGS="-Werror -std=c++11"
|
||||
- name: make
|
||||
run: make
|
||||
- name: make check
|
||||
run: make check
|
||||
ubuntu-20-04-openssl-1-1:
|
||||
needs: ubuntu-latest-html-tests
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
- name: Install dependencies
|
||||
run: sudo apt install -y libfltk1.3-dev libssl-dev
|
||||
- name: autogen
|
||||
run: ./autogen.sh
|
||||
- name: configure
|
||||
run: ./configure --disable-mbedtls
|
||||
- name: make
|
||||
run: make
|
||||
- name: make check
|
||||
run: make check
|
||||
- name: make distcheck
|
||||
run: make distcheck
|
||||
alpine-mbedtls-3_6_0:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: jirutka/setup-alpine@v1
|
||||
with:
|
||||
packages: >
|
||||
build-base
|
||||
autoconf
|
||||
automake
|
||||
fltk-dev
|
||||
libpng-dev
|
||||
libjpeg-turbo-dev
|
||||
libwebp-dev
|
||||
mbedtls-dev
|
||||
- run: |
|
||||
./autogen.sh
|
||||
./configure
|
||||
make
|
||||
make check
|
||||
shell: alpine.sh {0}
|
||||
macOS-13-openssl-1-1:
|
||||
needs: ubuntu-latest-html-tests
|
||||
runs-on: macos-13
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
- name: Install dependencies
|
||||
run: brew install autoconf automake fltk@1.3
|
||||
- name: autogen
|
||||
run: ./autogen.sh
|
||||
- name: configure
|
||||
run: |
|
||||
export PATH="/usr/local/opt/fltk@1.3/bin:$PATH"
|
||||
./configure --disable-mbedtls
|
||||
- name: make
|
||||
run: make
|
||||
- name: make check
|
||||
run: make check
|
||||
- name: make distcheck
|
||||
run: |
|
||||
export PATH="/usr/local/opt/fltk@1.3/bin:$PATH"
|
||||
make distcheck
|
||||
macOS-13-openssl-3:
|
||||
needs: ubuntu-latest-html-tests
|
||||
runs-on: macos-13
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
with:
|
||||
fetch-depth: 1
|
||||
- name: Remove old OpenSSL 1.1
|
||||
run: brew uninstall openssl@1.1
|
||||
- name: Install dependencies
|
||||
run: brew install autoconf automake fltk@1.3 openssl@3
|
||||
- name: autogen
|
||||
run: ./autogen.sh
|
||||
- name: configure
|
||||
run: |
|
||||
export PATH="/usr/local/opt/fltk@1.3/bin:$PATH"
|
||||
./configure --disable-mbedtls
|
||||
- name: make
|
||||
run: make
|
||||
- name: make check
|
||||
run: make check
|
||||
- name: make distcheck
|
||||
run: |
|
||||
export PATH="/usr/local/opt/fltk@1.3/bin:$PATH"
|
||||
make distcheck
|
||||
freebsd-14-openssl-3:
|
||||
needs: ubuntu-latest-html-tests
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: FreeBSD VM build
|
||||
id: test
|
||||
uses: vmactions/freebsd-vm@v1
|
||||
with:
|
||||
release: "14.0"
|
||||
usesh: true
|
||||
prepare: |
|
||||
set -x
|
||||
pkg install -y automake fltk
|
||||
run: |
|
||||
set -x
|
||||
pwd
|
||||
freebsd-version
|
||||
./autogen.sh
|
||||
./configure CPPFLAGS='-I/usr/local/include' LDFLAGS='-L/usr/local/lib'
|
||||
cat config.log
|
||||
make
|
||||
make check
|
||||
ldd src/dillo
|
||||
windows-mbedtls:
|
||||
needs: ubuntu-latest-html-tests
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- run: git config --global core.autocrlf input
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 1
|
||||
- uses: cygwin/cygwin-install-action@master
|
||||
with:
|
||||
packages: gcc-core gcc-g++ autoconf automake make zlib-devel mbedtls-devel libfltk-devel libiconv-devel libpng-devel libjpeg-devel libwebp-devel libgif-devel
|
||||
- shell: C:\cygwin\bin\bash.exe --login --norc -eo pipefail -o igncr '{0}'
|
||||
run: |
|
||||
set -x
|
||||
cd ${GITHUB_WORKSPACE}
|
||||
pwd
|
||||
ls -l
|
||||
./autogen.sh
|
||||
./configure
|
||||
make
|
||||
make check
|
||||
ls -l src/dillo
|
Reference in New Issue
Block a user