--- /dev/null
+name: debian-build-tests
+
+on:
+ pull_request:
+ types: [opened, synchronized, reopened]
+
+jobs:
+ check:
+ runs-on: sourceware-debian-runner
+ steps:
+ - name: setup packages
+ run: |
+ apt-get update
+ apt-get upgrade -y -q
+ apt-get -y -q=2 install binutils tar xz-utils make libc6-dev gcc g++ coreutils git autoconf automake autopoint lsb-release bzip2 zlib1g-dev zlib1g-dev:native libbz2-dev liblzma-dev libzstd-dev zstd m4 gettext gawk gcc-multilib flex bison pkgconf procps libarchive-tools curl cpio rpm2cpio iproute2 socat jq fish libarchive-dev libjson-c-dev libmicrohttpd-dev libcurl4-gnutls-dev libsqlite3-dev valgrind libubsan1
+
+ - name: checkout git
+ run: |
+ git clone ${FORGEJO_SERVER_URL}/${FORGEJO_REPOSITORY} .
+ git fetch origin ${FORGEJO_REF}:${FORGEJO_REF}
+ git checkout ${FORGEJO_REF}
+
+ - name: autoreconf and configure
+ run: |
+ autoreconf -f -i
+ ./configure --enable-maintainer-mode
+
+ - name: make
+ run: make -j$(nproc)
+
+ - name: make check
+ run: make check -j$(nproc) || (cat tests/test-suite.log; false)
+
+ - name: make distcheck
+ run: make distcheck -j$(nproc)
+
+ - name: valgrind and undefined sanitizer
+ run: |
+ make clean
+ ./configure --enable-maintainer-mode --enable-valgrind --enable-sanitize-undefined
+ make -j$(nproc)
+ make check -j$(nproc) || (cat tests/test-suite.log; false)
--- /dev/null
+name: fedora-build-tests
+
+on:
+ pull_request:
+ types: [opened, synchronized, reopened]
+
+jobs:
+ check:
+ runs-on: sourceware-fedora-runner
+ steps:
+ - name: setup packages
+ run: |
+ yum upgrade -y
+ yum install -y binutils file tar xz-devel make gcc gcc-g++ coreutils git autoconf automake gettext-devel lsb-release bzip2 zlib-devel bzip2-devel libzstd-devel zstd m4 gettext gawk flex bison pkgconf procps bsdtar curl cpio rpm rpm-devel ima-evm-utils-devel openssl-devel rpm-sign rpm-build iproute socat jq fish sysprof-capture-devel libarchive-devel json-c-devel libmicrohttpd-devel libcurl-devel sqlite-devel valgrind valgrind-devel libubsan systemd
+
+ - name: checkout git
+ run: |
+ git clone ${FORGEJO_SERVER_URL}/${FORGEJO_REPOSITORY} .
+ git fetch origin ${FORGEJO_REF}:${FORGEJO_REF}
+ git checkout ${FORGEJO_REF}
+
+ - name: autoreconf and configure
+ run: |
+ autoreconf -f -i
+ ./configure --enable-maintainer-mode
+
+ - name: make
+ run: make -j$(nproc)
+
+ - name: make check
+ run: make check -j$(nproc) || (cat tests/test-suite.log; false)
+
+ - name: rpmbuild
+ run: make rpmbuild
+
+ # Disabled for now.
+ # Inside the container helgrind gives two unexpected failures.
+ # run-native-test.sh and run-srcfiles-self.sh
+ # Failures cannot be replicated outside the container.
+ # Without helgrind there is a failure in run-eu-search-die.sh
+ # which can be replicated outside the container.
+ # - name: helgrind and thread-safety
+ # run: |
+ # make clean
+ # ./configure --enable-maintainer-mode --enable-helgrind --enable-valgrind-annotations --enable-thread-safety
+ # make -j$(nproc)
+ # make check -j$(nproc) || (cat tests/test-suite.log; false)
Please supply patches using git format-patch or using git send-email.
+Or look at https://forge.sourceware.org/elfutils/
+If you create an account there please send email to elfutils-devel
+to ask for a mentor who can make you an Collaborator so you can create
+a merge request against the elfutils project there. This will run
+various checks. And your mentor can help you create an email to sent
+to the mailinglist.
+
Sign your work
To facilitate tracking of who did what, we've adopted a "sign-off"