Skip to content

Fix pointer wrap around undefined behavior #219

Fix pointer wrap around undefined behavior

Fix pointer wrap around undefined behavior #219

Workflow file for this run

name: CI
# Should run only on branches and PR, as "on_tag.yml" will handle tags
on:
push:
branches: master test
pull_request:
branches: master
jobs:
#
# Linux
#
Ubuntu:
name: Ubuntu debuild
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- name: prepare
run: |
sudo apt-get update
sudo apt-get install -y autoconf automake autopoint autotools-dev \
gettext libdbus-1-dev pkg-config xmlto \
devscripts build-essential lintian \
debhelper-compat \
dh-exec libdbus-1-dev \
libmagick++-dev libv4l-dev python3-dev \
libgtk-3-dev lftp \
dh-sequence-python3 libgtk2.0-dev \
libqt5x11extras5-dev qtbase5-dev
- name: build
run: |
.github/workflows/debuilder.sh
Ubuntu_Gtk2:
name: Ubuntu with Gtk2
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- name: prepare
run: |
sudo apt update
sudo apt-get install -y autoconf automake autopoint autotools-dev \
gettext libdbus-1-dev libgtk2.0-dev libmagick++-dev \
libqt5x11extras5-dev libv4l-dev libx11-dev openjdk-8-jdk-headless \
perl pkg-config python-all-dev python-all-dbg python-gtk2-dev \
qt5-default xmlto
- name: configure
run: |
autoreconf -vfi
export QT_SELECT=5
./configure
- name: build
run:
make
- name: check
run:
make check-local
- name: install
run:
sudo make install
Ubuntu_Gtk3:
name: Ubuntu with Gtk3
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: prepare
run: |
sudo apt update
sudo apt-get install -y autoconf automake autopoint autotools-dev \
gettext libdbus-1-dev gir1.2-gtk-3.0 libgtk-3-dev \
libgirepository1.0-dev libmagick++-dev libqt5x11extras5-dev \
libv4l-dev libx11-dev openjdk-8-jdk-headless perl \
pkg-config python3-minimal python3-dev python3 python3-gi \
qt5-default xmlto
- name: configure
run: |
autoreconf -vfi
# Let configure get this
unset PYTHON_CFLAGS PYTHON
export QT_SELECT=5
./configure --with-gtk=gtk3 --with-python=python3
- name: build
run:
make
- name: check
run:
make check-local
- name: install
run:
sudo make install
Mingw_w64_VfW:
name: Mingw-w64 VfW
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: prepare
run: |
sudo apt update
sudo apt-get install -y autoconf automake autopoint autotools-dev \
gettext libdbus-1-dev pkg-config win-iconv-mingw-w64-dev \
binutils-mingw-w64-i686 gcc-mingw-w64 mingw-w64-i686-dev \
mingw-w64-common xmlto
- name: configure
run: |
export PKG_CONFIG_PATH=/usr/x86_64-w64-mingw32/lib/pkgconfig
autoreconf -vfi
CC=i686-w64-mingw32-gcc ./configure \
--host=i686-w64-mingw32 --prefix=/usr/local/win32 \
--without-gtk --without-python --without-qt --without-java \
--without-imagemagick --enable-pthread
- name: build
run:
make
- name: install
run:
sudo make install
Mingw_w64_DShow:
name: Mingw-w64 DShow
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: prepare
run: |
sudo apt update
sudo apt-get install -y autoconf automake autopoint autotools-dev \
gettext libdbus-1-dev pkg-config win-iconv-mingw-w64-dev \
binutils-mingw-w64-i686 gcc-mingw-w64 mingw-w64-i686-dev \
mingw-w64-common xmlto
- name: configure
run: |
export PKG_CONFIG_PATH=/usr/x86_64-w64-mingw32/lib/pkgconfig
autoreconf -vfi
CC=i686-w64-mingw32-gcc ./configure \
--host=i686-w64-mingw32 --prefix=/usr/local/win32 \
--without-gtk --without-python --without-qt --without-java \
--without-imagemagick --enable-pthread \
--with-directshow
- name: build
run:
make
- name: install
run:
sudo make install
#
# Mac OS
#
Mac_OS:
name: Mac OS
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: prepare
run: |
brew install gettext autoconf automake libiconv libtool \
gs graphicsmagick python xmlto pkg-config ccache
brew unlink libtool && brew link libtool
brew unlink gettext && brew link gettext
- name: configure
run:
autoreconf -vfi
./configure --disable-video --disable-nls --with-python=python3
- name: build
run: |
make
sudo make install
#
# Windows
#
Windows:
name: Windows
runs-on: windows-latest
strategy:
matrix:
arch: [x86_64, i686]
video: [VfW, DShow]
include:
- arch: x86_64
msystem: MINGW64
grep: x86-64
- arch: i686
msystem: MINGW32
grep: 386
- video: DShow
extra: --with-directshow
- video: VfW
extra:
defaults:
run:
shell: msys2 {0}
env:
CPPFLAGS: -D__USE_MINGW_ANSI_STDIO=1
steps:
- uses: msys2/setup-msys2@v2
with:
msystem: ${{ matrix.msystem }}
update: false
install: >-
mingw-w64-${{ matrix.arch }}-gcc
mingw-w64-${{ matrix.arch }}-iconv
mingw-w64-${{ matrix.arch }}-imagemagick
mingw-w64-${{ matrix.arch }}-python
base-devel git xmlto
autoconf libtool automake gettext make autoconf-archive pkg-config
- uses: actions/checkout@v2
- name: configure
shell: msys2 {0}
run: |
autoreconf -vfi
./configure LDFLAGS="-static" \
--enable-pthread --disable-dependency-tracking \
${{ matrix.extra }}
- name: build
shell: msys2 {0}
run:
make
- name: install
shell: msys2 {0}
run:
make install