mirror of https://github.com/xzeldon/htop.git
156 lines
6.3 KiB
YAML
156 lines
6.3 KiB
YAML
name: CI
|
|
|
|
on: [ push, pull_request ]
|
|
|
|
env:
|
|
# Enable format attributes in ncurses headers
|
|
# Enable fortified memory/string handling
|
|
CPPFLAGS: -DGCC_PRINTF -DGCC_SCANF -D_FORTIFY_SOURCE=2
|
|
|
|
jobs:
|
|
build-ubuntu-latest-minimal-gcc:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Install Dependencies
|
|
run: sudo apt-get install libncursesw5-dev
|
|
- name: Bootstrap
|
|
run: ./autogen.sh
|
|
- name: Configure
|
|
run: ./configure --enable-werror --enable-linux-affinity --disable-unicode --disable-sensors
|
|
- name: Enable compatibility modes
|
|
run: |
|
|
sed -i 's/#define HAVE_FSTATAT 1/#undef HAVE_FSTATAT/g' config.h
|
|
sed -i 's/#define HAVE_OPENAT 1/#undef HAVE_OPENAT/g' config.h
|
|
sed -i 's/#define HAVE_READLINKAT 1/#undef HAVE_READLINKAT/g' config.h
|
|
- name: Build
|
|
run: make -k
|
|
- name: Distcheck
|
|
run: make distcheck DISTCHECK_CONFIGURE_FLAGS="--enable-werror --enable-linux-affinity --disable-unicode --disable-sensors"
|
|
|
|
build-ubuntu-latest-minimal-clang:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
CC: clang-12
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: install clang repo
|
|
run: |
|
|
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key 2>/dev/null | sudo apt-key add -
|
|
sudo add-apt-repository 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-12 main' -y
|
|
sudo apt-get update -q
|
|
- name: Install Dependencies
|
|
run: sudo apt-get install clang-12 libncursesw5-dev
|
|
- name: Bootstrap
|
|
run: ./autogen.sh
|
|
- name: Configure
|
|
run: ./configure --enable-werror --enable-linux-affinity --disable-unicode --disable-sensors
|
|
- name: Build
|
|
run: make -k
|
|
- name: Distcheck
|
|
run: make distcheck DISTCHECK_CONFIGURE_FLAGS="--enable-werror --enable-linux-affinity --disable-unicode --disable-sensors"
|
|
|
|
build-ubuntu-latest-full-featured-gcc:
|
|
runs-on: ubuntu-latest
|
|
# Enable LTO, might trigger additional warnings on advanced inlining
|
|
env:
|
|
CFLAGS: -O3 -g -flto
|
|
LDFLAGS: -O3 -g -flto -Wl,--as-needed
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Install Dependencies
|
|
run: sudo apt-get install libncursesw5-dev libhwloc-dev libnl-3-dev libnl-genl-3-dev libsensors4-dev libcap-dev
|
|
- name: Bootstrap
|
|
run: ./autogen.sh
|
|
- name: Configure
|
|
run: ./configure --enable-werror --enable-openvz --enable-vserver --enable-ancient-vserver --enable-unicode --enable-hwloc --enable-delayacct --enable-sensors --enable-capabilities
|
|
- name: Build
|
|
run: make -k
|
|
- name: Distcheck
|
|
run: make distcheck DISTCHECK_CONFIGURE_FLAGS='--enable-werror --enable-openvz --enable-vserver --enable-ancient-vserver --enable-unicode --enable-hwloc --enable-delayacct --enable-sensors --enable-capabilities'
|
|
|
|
build-ubuntu-latest-full-featured-clang:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
CC: clang-12
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: install clang repo
|
|
run: |
|
|
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key 2>/dev/null | sudo apt-key add -
|
|
sudo add-apt-repository 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-12 main' -y
|
|
sudo apt-get update -q
|
|
- name: Install Dependencies
|
|
run: sudo apt-get install clang-12 libncursesw5-dev libhwloc-dev libnl-3-dev libnl-genl-3-dev libsensors4-dev libcap-dev
|
|
- name: Bootstrap
|
|
run: ./autogen.sh
|
|
- name: Configure
|
|
run: ./configure --enable-werror --enable-openvz --enable-vserver --enable-ancient-vserver --enable-unicode --enable-hwloc --enable-delayacct --enable-sensors --enable-capabilities
|
|
- name: Build
|
|
run: make -k
|
|
- name: Distcheck
|
|
run: make distcheck DISTCHECK_CONFIGURE_FLAGS='--enable-werror --enable-openvz --enable-vserver --enable-ancient-vserver --enable-unicode --enable-hwloc --enable-delayacct --enable-sensors --enable-capabilities'
|
|
|
|
build-ubuntu-latest-gcc-static:
|
|
runs-on: ubuntu-latest
|
|
# Enable LTO, might trigger additional warnings on advanced inlining
|
|
env:
|
|
CFLAGS: -O3 -g -flto
|
|
LDFLAGS: -O3 -g -flto
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Install Dependencies
|
|
run: sudo apt-get install libncursesw5-dev libtinfo-dev libgpm-dev libsensors4-dev libcap-dev
|
|
- name: Bootstrap
|
|
run: ./autogen.sh
|
|
- name: Configure
|
|
run: ./configure --enable-static --enable-werror --enable-openvz --enable-vserver --enable-ancient-vserver --enable-unicode --disable-hwloc --disable-delayacct --enable-sensors --enable-capabilities
|
|
- name: Build
|
|
run: make -k
|
|
- name: Distcheck
|
|
run: make distcheck DISTCHECK_CONFIGURE_FLAGS='--enable-static --enable-werror --enable-openvz --enable-vserver --enable-ancient-vserver --enable-unicode --disable-hwloc --disable-delayacct --enable-sensors --enable-capabilities'
|
|
|
|
build-ubuntu-latest-clang-analyzer:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
CC: clang-12
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: install clang repo
|
|
run: |
|
|
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key 2>/dev/null | sudo apt-key add -
|
|
sudo add-apt-repository 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-12 main' -y
|
|
sudo apt-get update -q
|
|
- name: Install Dependencies
|
|
run: sudo apt-get install clang-12 clang-tools-12 libncursesw5-dev libhwloc-dev libnl-3-dev libnl-genl-3-dev libsensors4-dev libcap-dev
|
|
- name: Bootstrap
|
|
run: ./autogen.sh
|
|
- name: Configure
|
|
run: scan-build-12 -analyze-headers --status-bugs ./configure --enable-debug --enable-werror --enable-openvz --enable-vserver --enable-ancient-vserver --enable-unicode --enable-hwloc --enable-delayacct --enable-sensors --enable-capabilities
|
|
- name: Build
|
|
run: scan-build-12 -analyze-headers --status-bugs make -j"$(nproc)"
|
|
|
|
build-macos-latest-clang:
|
|
runs-on: macOS-latest
|
|
env:
|
|
CC: clang
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Install Dependencies
|
|
run: brew install automake
|
|
- name: Bootstrap
|
|
run: ./autogen.sh
|
|
- name: Configure
|
|
run: ./configure --enable-werror
|
|
- name: Build
|
|
run: make -k
|
|
- name: Distcheck
|
|
run: make distcheck DISTCHECK_CONFIGURE_FLAGS="--enable-werror"
|
|
|
|
whitespace_check:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: check-whitespaces
|
|
run: git diff-tree --check $(git hash-object -t tree /dev/null) HEAD
|