build:archlinux:
  image: archlinux:base
  before_script:
    - >
       pacman -Syu --needed --noconfirm
       alure autoconf automake bzip2 zstd coreutils curl dbus gcc gdk-pixbuf2 git
       glew glib2 gmime gsl gst-plugins-base gstreamer gtk2 gtk3 gtkglext imlib2
       intltool libffi libgl libgnome-keyring libmariadbclient librsvg libsm
       libxcursor libxml2 libxslt libxtst mariadb make mesa ncurses pcre
    - >
       pacman -Syu --needed --noconfirm
       pkg-config poppler poppler-glib postgresql postgresql-libs qt5-svg
       qt5-webkit qt5-x11extras sdl2 sdl2_gfx sdl2_image sdl2_mixer sdl2_net
       sdl2_ttf sdl_mixer sdl_ttf smpeg sqlite unixodbc v4l-utils xdg-utils
       zlib gettext qt5-webengine webkit2gtk
  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C --disable-sqlite2 --disable-qt4
    - make -j$(nproc)
    - make install


build:archlinux-clang:
  image: archlinux:base
  before_script:
    - >
       pacman -Syu --needed --noconfirm
       alure autoconf automake bzip2 zstd coreutils curl dbus clang gdk-pixbuf2 git
       glew glib2 gmime gsl gst-plugins-base gstreamer gtk2 gtk3 gtkglext imlib2
       intltool libffi libgl libgnome-keyring libmariadbclient librsvg libsm
       libxcursor libxml2 libxslt libxtst mariadb make mesa ncurses pcre
    - >
       pacman -Syu --needed --noconfirm
       pkg-config poppler poppler-glib postgresql postgresql-libs qt5-svg
       qt5-webkit qt5-x11extras sdl2 sdl2_gfx sdl2_image sdl2_mixer sdl2_net
       sdl2_ttf sdl_mixer sdl_ttf smpeg sqlite unixodbc v4l-utils xdg-utils
       zlib gettext qt5-webengine webkit2gtk
  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure CC=clang CXX=clang++ -C --disable-sqlite2 --disable-qt4
    - make -j$(nproc)
    - make install


build:debian-oldstable:
  image: debian:oldstable
  before_script:
    - >
       apt-get update && apt-get install -y build-essential g++ automake 
       autoconf libbz2-dev libzstd-dev default-libmysqlclient-dev unixodbc-dev libpq-dev 
       postgresql-server-dev-11 libsqlite0-dev libsqlite3-dev libglib2.0-dev 
       libgtk2.0-dev libcurl4-gnutls-dev libgtkglext1-dev libpcre3-dev 
       libsdl-sound1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libxml2-dev 
       libxslt1-dev librsvg2-dev libpoppler-dev libpoppler-glib-dev 
       libpoppler-private-dev libpoppler-cpp-dev libasound2-dev libdirectfb-dev libxtst-dev 
       libffi-dev libqt4-dev libqtwebkit-dev libqt4-opengl-dev libglew-dev 
       libimlib2-dev libv4l-dev libsdl-ttf2.0-dev libgdk-pixbuf2.0-dev 
       linux-libc-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev 
       libcairo2-dev libgsl-dev libncurses5-dev libgmime-2.6-dev libalure-dev 
       libgmp-dev libgtk-3-dev libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev 
       libsdl2-image-dev sane-utils libdumb1-dev libqt5opengl5-dev 
       libqt5svg5-dev libqt5webkit5-dev libqt5x11extras5-dev qtbase5-dev 
       qtwebengine5-dev libwebkit2gtk-4.0-dev git 
       libssl-dev
  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C --disable-keyring
    - make -j$(nproc)
    - make install

build:debian-stable:
  image: debian:stable
  before_script:
    - >
       apt-get update && apt-get install -y build-essential g++ automake 
       autoconf libbz2-dev libzstd-dev default-libmysqlclient-dev unixodbc-dev libpq-dev 
       postgresql-server-dev-13 libsqlite3-dev libglib2.0-dev 
       libgtk2.0-dev libcurl4-gnutls-dev libgtkglext1-dev libpcre3-dev 
       libsdl-sound1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libxml2-dev 
       libxslt1-dev librsvg2-dev libpoppler-dev libpoppler-glib-dev 
       libpoppler-private-dev libpoppler-cpp-dev libasound2-dev libdirectfb-dev libxtst-dev 
       libffi-dev libglew-dev 
       libimlib2-dev libv4l-dev libsdl-ttf2.0-dev libgdk-pixbuf2.0-dev 
       linux-libc-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev 
       libcairo2-dev libgsl-dev libncurses5-dev libgmime-3.0-dev libalure-dev 
       libgmp-dev libgtk-3-dev libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev 
       libsdl2-image-dev sane-utils libdumb1-dev libqt5opengl5-dev 
       libqt5svg5-dev libqt5webkit5-dev libqt5x11extras5-dev qtbase5-dev 
       qtwebengine5-dev libwebkit2gtk-4.0-dev git libssl-dev
  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C --disable-keyring --disable-sqlite2 --disable-qt4 --disable-qtwebkit
    - make -j$(nproc)
    - make install

build:debian-testing:
  image: debian:testing
  before_script:
    - >
       apt-get update && apt-get install -y build-essential g++ automake 
       autoconf libbz2-dev libzstd-dev default-libmysqlclient-dev unixodbc-dev libpq-dev 
       postgresql-server-dev-13 libsqlite3-dev libglib2.0-dev 
       libgtk2.0-dev libcurl4-gnutls-dev libgtkglext1-dev libpcre3-dev 
       libsdl-sound1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libxml2-dev 
       libxslt1-dev librsvg2-dev libpoppler-dev libpoppler-glib-dev 
       libpoppler-private-dev libpoppler-cpp-dev libasound2-dev libdirectfb-dev libxtst-dev 
       libffi-dev libglew-dev 
       libimlib2-dev libv4l-dev libsdl-ttf2.0-dev libgdk-pixbuf2.0-dev 
       linux-libc-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev 
       libcairo2-dev libgsl-dev libncurses5-dev libgmime-3.0-dev libalure-dev 
       libgmp-dev libgtk-3-dev libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev 
       libsdl2-image-dev sane-utils libdumb1-dev libqt5opengl5-dev 
       libqt5svg5-dev libqt5webkit5-dev libqt5x11extras5-dev qtbase5-dev 
       qtwebengine5-dev libwebkit2gtk-4.0-dev git libssl-dev
  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C --disable-keyring --disable-sqlite2 --disable-qt4 --disable-qtwebkit
    - make -j$(nproc)
    - make install


build:debian-unstable:
  image: debian:unstable
  before_script:
    - >
       apt-get update && apt-get install -y build-essential g++ automake autoconf libbz2-dev libzstd-dev default-libmysqlclient-dev unixodbc-dev libpq-dev postgresql-server-dev-13 libsqlite0-dev libsqlite3-dev libglib2.0-dev libgtk2.0-dev libcurl4-gnutls-dev libgtkglext1-dev libpcre3-dev libsdl-sound1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libxml2-dev libxslt1-dev librsvg2-dev libpoppler-dev libpoppler-glib-dev libpoppler-private-dev libpoppler-cpp-dev libasound2-dev libdirectfb-dev libxtst-dev libffi-dev libglew-dev libimlib2-dev libv4l-dev libsdl-ttf2.0-dev libgdk-pixbuf2.0-dev linux-libc-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libcairo2-dev libgsl-dev libncurses5-dev libgmime-3.0-dev libalure-dev libgmp-dev libgtk-3-dev libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev libsdl2-image-dev sane-utils libdumb1-dev libqt5opengl5-dev libqt5svg5-dev libqt5webkit5-dev libqt5x11extras5-dev qtbase5-dev qtwebengine5-dev libwebkit2gtk-4.0-dev git libssl-dev
  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C --disable-keyring --disable-qt4
    - make -j$(nproc)
    - make install

build:ubuntu-latest:
  image: ubuntu:latest
  before_script:
    - >
       apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential g++ automake autoconf libtool libbz2-dev libzstd-dev libmysqlclient-dev unixodbc-dev libpq-dev postgresql-server-dev-12 libsqlite0-dev libsqlite3-dev libglib2.0-dev libgtk2.0-dev libcurl4-gnutls-dev libgtkglext1-dev libpcre3-dev libsdl-sound1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libxml2-dev libxslt1-dev librsvg2-dev libpoppler-dev libpoppler-private-dev libpoppler-glib-dev libpoppler-cpp-dev libasound2-dev libdirectfb-dev libxtst-dev libffi-dev libglew-dev libimlib2-dev libv4l-dev libsdl-ttf2.0-dev libgdk-pixbuf2.0-dev linux-libc-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libcairo2-dev libgsl-dev libncurses5-dev libgmime-2.6-dev llvm-dev llvm libalure-dev libgmp-dev libgtk-3-dev libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev libsdl2-image-dev sane-utils libdumb1-dev libssl-dev libqt5opengl5-dev libqt5svg5-dev libqt5webkit5-dev libqt5x11extras5-dev qtbase5-dev qtwebengine5-dev libwebkit2gtk-4.0-dev git

  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C --disable-keyring --disable-qt4
    - make -j$(nproc)
    - make install

build:ubuntu-hirsute:
  image: ubuntu:hirsute
  before_script:
    - >
       apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential g++ automake autoconf libtool libbz2-dev libzstd-dev libmysqlclient-dev unixodbc-dev libpq-dev postgresql-server-dev-13 libsqlite0-dev libsqlite3-dev libglib2.0-dev libgtk2.0-dev libcurl4-gnutls-dev libgtkglext1-dev libpcre3-dev libsdl-sound1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libxml2-dev libxslt1-dev librsvg2-dev libpoppler-dev libpoppler-private-dev libpoppler-glib-dev libpoppler-cpp-dev libasound2-dev libdirectfb-dev libxtst-dev libffi-dev libglew-dev libimlib2-dev libv4l-dev libsdl-ttf2.0-dev libgdk-pixbuf2.0-dev linux-libc-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libcairo2-dev libgsl-dev libncurses5-dev libgmime-3.0-dev llvm-dev llvm libalure-dev libgmp-dev libgtk-3-dev libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev libsdl2-image-dev sane-utils libdumb1-dev libssl-dev libqt5opengl5-dev libqt5svg5-dev libqt5webkit5-dev libqt5x11extras5-dev qtbase5-dev qtwebengine5-dev libwebkit2gtk-4.0-dev git

  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C --disable-keyring --disable-qt4
    - make -j$(nproc)
    - make install

build:ubuntu-focal:
  image: ubuntu:focal
  before_script:
    - >
       apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential g++ automake autoconf libtool libbz2-dev libzstd-dev libmysqlclient-dev unixodbc-dev libpq-dev postgresql-server-dev-12 libsqlite0-dev libsqlite3-dev libglib2.0-dev libgtk2.0-dev libcurl4-gnutls-dev libgtkglext1-dev libpcre3-dev libsdl-sound1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libxml2-dev libxslt1-dev librsvg2-dev libpoppler-dev libpoppler-private-dev libpoppler-glib-dev libpoppler-cpp-dev libasound2-dev libdirectfb-dev libxtst-dev libffi-dev libglew-dev libimlib2-dev libv4l-dev libsdl-ttf2.0-dev libgdk-pixbuf2.0-dev linux-libc-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libcairo2-dev libgsl-dev libncurses5-dev libgmime-2.6-dev llvm-dev llvm libalure-dev libgmp-dev libgtk-3-dev libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev libsdl2-image-dev sane-utils libdumb1-dev libssl-dev libqt5opengl5-dev libqt5svg5-dev libqt5webkit5-dev libqt5x11extras5-dev qtbase5-dev qtwebengine5-dev libwebkit2gtk-4.0-dev git

  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C --disable-keyring --disable-qt4
    - make -j$(nproc)
    - make install

build:ubuntu-bionic:
  image: ubuntu:bionic
  before_script:
    - >
       apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential g++ automake autoconf libtool libbz2-dev libzstd-dev libmysqlclient-dev unixodbc-dev libpq-dev postgresql-server-dev-10 libsqlite0-dev libsqlite3-dev libglib2.0-dev libgtk2.0-dev libcurl4-gnutls-dev libgtkglext1-dev libpcre3-dev libsdl-sound1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libxml2-dev libxslt1-dev librsvg2-dev libpoppler-dev libpoppler-private-dev libpoppler-glib-dev libpoppler-cpp-dev libasound2-dev libdirectfb-dev libxtst-dev libffi-dev libqt4-dev libqtwebkit-dev libqt4-opengl-dev libglew-dev libimlib2-dev libv4l-dev libsdl-ttf2.0-dev libgdk-pixbuf2.0-dev linux-libc-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libcairo2-dev libgsl-dev libncurses5-dev libgmime-2.6-dev llvm-dev llvm libalure-dev libgmp-dev libgtk-3-dev libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev libsdl2-image-dev sane-utils libdumb1-dev libssl-dev libqt5opengl5-dev libqt5svg5-dev libqt5webkit5-dev libqt5x11extras5-dev qtbase5-dev qtwebengine5-dev libwebkit2gtk-4.0-dev git

  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C --disable-keyring
    - make -j$(nproc)
    - make install

build:ubuntu-xenial:
  image: ubuntu:xenial
  before_script:
    - >
       apt-get update && apt-get install -y build-essential g++ automake autoconf libtool libbz2-dev libmysqlclient-dev unixodbc-dev libpq-dev postgresql-server-dev-9.5 libsqlite0-dev libsqlite3-dev libglib2.0-dev libgtk2.0-dev libcurl4-gnutls-dev libgtkglext1-dev libpcre3-dev libsdl-sound1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libxml2-dev libxslt1-dev librsvg2-dev libpoppler-dev libpoppler-glib-dev libpoppler-private-dev libpoppler-cpp-dev libasound2-dev libdirectfb-dev libxtst-dev libffi-dev libqt4-dev libqtwebkit-dev libqt4-opengl-dev libglew-dev libimlib2-dev libv4l-dev libsdl-ttf2.0-dev libgnome-keyring-dev libgdk-pixbuf2.0-dev linux-libc-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libcairo2-dev libgsl-dev libncurses5-dev libgmime-2.6-dev llvm-dev llvm libalure-dev libgmp-dev libgtk-3-dev libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev libsdl2-image-dev sane-utils libdumb1-dev libssl-dev libqt5opengl5-dev libqt5svg5-dev libqt5webkit5-dev libqt5x11extras5-dev qtbase5-dev libwebkit2gtk-3.0-dev git

  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C --disable-gtk3webview --disable-qt5webview --disable-zstd
    - make -j$(nproc)
    - make install

build:ubuntu-trusty:
  image: ubuntu:trusty
  before_script:
    - >
       apt-get update && apt-get install -y build-essential g++ automake autoconf libtool libbz2-dev libmysqlclient-dev unixodbc-dev libpq-dev postgresql-server-dev-9.3 libsqlite0-dev libsqlite3-dev libglib2.0-dev libgtk2.0-dev libcurl4-gnutls-dev libgtkglext1-dev libpcre3-dev libsdl-sound1.2-dev libsdl-mixer1.2-dev libsdl-image1.2-dev libxml2-dev libxslt1-dev librsvg2-dev libpoppler-dev libpoppler-glib-dev libpoppler-private-dev libpoppler-cpp-dev libasound2-dev libdirectfb-dev libxtst-dev libffi-dev libqt4-dev libqtwebkit-dev libqt4-opengl-dev libglew-dev libimlib2-dev libv4l-dev libsdl-ttf2.0-dev libgnome-keyring-dev libgdk-pixbuf2.0-dev linux-libc-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libcairo2-dev libgsl0-dev libncurses5-dev libgmime-2.6-dev llvm-dev llvm libalure-dev libgmp-dev libgtk-3-dev libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev libsdl2-image-dev sane-utils libdumb1-dev libssl-dev git libglu1-mesa-dev libglu1-mesa-dev libglew1.10 libglu1-mesa libgles2-mesa-dev libwebkit2gtk-3.0-dev

  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C --disable-qt5 --disable-gtk3webview --disable-gtk3opengl --disable-zstd
    - make -j$(nproc)
    - make install

build:alpine:
  image: alpine
  before_script:
    - >
       apk add --no-progress -q
       autoconf automake libtool curl-dev dbus-dev g++ gdk-pixbuf-dev git gmp-dev
       glew-dev glib-dev gmime-dev gsl-dev gst-plugins-base-dev gstreamer-dev gtk+2.0-dev gtk+3.0-dev
       imlib2-dev gettext-dev libffi-dev mesa-dev libgnome-keyring-dev mariadb-dev librsvg-dev
       libsm-dev libxcursor-dev libxml2-dev libxslt-dev libxtst-dev make ncurses-dev pcre-dev pkgconf
       poppler-dev postgresql-dev qt5-qtsvg-dev qt5-qtwebkit-dev qt5-qtx11extras-dev qt5-qtwebengine-dev 
       sdl2-dev sdl2_image-dev sdl2_mixer-dev sdl2_ttf-dev sdl_mixer-dev sqlite-dev unixodbc-dev xdg-utils 
       zlib-dev webkit2gtk-dev
  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C --disable-openal --disable-qt4 --disable-sdl --disable-sqlite2 --disable-v4l --disable-gtkopengl --disable-zstd
    - make -j$(nproc)
    - make install

build:fedora-latest:
  image: fedora:latest
  before_script:
    - >
       dnf install -y libtool libtool-ltdl-devel gcc make autoconf dumb-devel gmime-devel gmime30-devel libffi-devel mariadb-devel postgresql-devel unixODBC-devel sqlite2-devel libsqlite3x-devel libxslt-devel libv4l-devel glew-devel poppler-devel poppler-glib-devel poppler-cpp-devel qt-devel qt5-qtbase-devel qt5-qtbase-private-devel qt5-qtwebengine-devel qt5-qtx11extras-devel qt5-qtsvg-devel SDL_ttf-devel SDL_mixer-devel SDL-devel SDL2_ttf-devel SDL2_mixer-devel SDL2_image-devel SDL2-devel cairo-devel gtk2-devel gtk3-devel imlib2-devel librsvg2-devel qt-webkit-devel qt5-qtwebkit qt5-qtwebkit-devel openal-soft-devel libjpeg-turbo-devel gtkglext-devel gmp-devel libxml2-devel libXtst-devel gsl-devel pcre-devel dbus-devel libcurl-devel alure-devel gstreamermm-devel libgnome-keyring-devel bzip2-devel libzstd-devel postgresql-server-devel webkit2gtk3-devel ncurses-devel
  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C
    - make -j$(nproc)
    - make install

build:opensuse-tumbleweed:
  image: opensuse/tumbleweed
  before_script:
    - >
       zypper update -y && zypper install -y libtool gcc glew-devel gmime-devel gtk2-devel gtk3-devel libQt5WebKit5-devel libqt5-qtx11extras-devel libQt5WebKit5 libQt5WebKitWidgets-devel libqt5-qtwebengine-devel libQt5Xml-devel libQt5Sql-devel libqt5-qtsvg-devel libQt5Gui-devel libQt5Core-devel libQt5Sql5-postgresql libQt5Sql5-unixODBC libQt5Sql5-mysql libQt5Sql5-sqlite webkit2gtk3-devel libICE-devel libSM-devel unixODBC-devel libzip-devel libzstd-devel libmariadb-devel gsl-devel libopenssl-devel alure-devel postgresql-devel postgresql-server-devel libcurl-devel libSDL_ttf-devel libSDL_mixer-devel libSDL-devel libSDL2_ttf-devel libSDL2_mixer-devel libSDL2_image-devel libSDL2-devel libxslt-devel libv4l-devel librsvg-devel gtkglext-devel libgnome-keyring-devel libjpeg62-devel libpoppler-devel libpoppler-glib-devel imlib2-devel gmp-devel gstreamermm-devel
  script:
    - ./reconf-all
    - GAMBAS_CONFIG_FAILURE=1 ./configure -C --disable-qt4 --disable-sqlite2
    - make -j$(nproc)
    - make install
