.build_definition: &build_definition
  except:
    - main
  before_script:
    - apt-get update -qq && apt-get install -y
        autoconf
        bison
        build-essential
        docbook-xsl-ns
        flex
        libcunit1
        libcunit1-dev
        libgdal-dev
        libgeos-dev
        libjson-c-dev
        libproj-dev
        libprotobuf-c1
        libprotobuf-c-dev
        libtool
        libxml2-utils
        postgresql-15
        postgresql-server-dev-15
        protobuf-c-compiler
        xsltproc
    - service postgresql start
    - su -l postgres -c "createuser -s `whoami`"
  script:
    - ./autogen.sh
    - ./configure
    - make maintainer-clean
    - ./autogen.sh
    - chattr -R +i . # mark source tree as immutable
    - export SRCDIR="${PWD}"
    - echo "SRCDIR is ${SRCDIR}"
    - mkdir /tmp/build && cd /tmp/build
    - echo "Build dir is ${PWD}"
    - ${SRCDIR}/configure --without-raster CFLAGS="-Wall -fno-omit-frame-pointer -Werror"
    - make
    - make -C liblwgeom check
    - su -c 'make' postgres # idempotence test, see #5099
    - RUNTESTFLAGS="-v --dumprestore" make check-regress
    - make install
    - RUNTESTFLAGS="-v --dumprestore" make installcheck
    - make distclean
    - ${SRCDIR}/utils/check_distclean.sh

test:
  image: debian:bookworm
  <<: *build_definition
#test32:
#  image: i386/debian:bookworm
#  <<: *build_definition
