Files
cproof/Dockerfile.fedora
jabber.developer2 49b552dcb1
All checks were successful
CI Code / Check spelling (pull_request) Successful in 21s
CI Code / Check coding style (pull_request) Successful in 35s
CI Code / Code Coverage (pull_request) Successful in 15m31s
CI Code / Linux (debian) (pull_request) Successful in 16m1s
CI Code / Linux (arch) (pull_request) Successful in 16m11s
CI Code / Linux (ubuntu) (pull_request) Successful in 18m24s
feat: add code coverage with branch coverage
- Add --enable-coverage configure option
- Add lcov targets for generating coverage reports
- Enable branch coverage (--rc branch_coverage=1)
- Install lcov in all Docker images
- Coverage report displayed via lcov --summary (no Codecov - doesn't work with Gitea)
2026-01-19 20:49:37 +03:00

72 lines
1.4 KiB
Docker

# Build the latest Fedora image
FROM fedora:latest
ENV TERM=xterm
ENV CC="ccache gcc"
# libmicrohttpd - for stabber
# glibc-locale - to have en_US locale
RUN dnf install -y \
autoconf \
autoconf-archive \
automake \
awk \
ccache \
gcc \
git \
lcov \
glib2-devel \
glibc-all-langpacks \
gtk2-devel \
libXScrnSaver-devel \
libcmocka-devel \
libcurl-devel \
expat-devel \
libgcrypt-devel \
gpgme-devel \
libmicrohttpd-devel \
libnotify-devel \
libotr-devel \
libsignal-protocol-c-devel \
libtool \
libuuid-devel \
make \
ncurses-devel \
python3 \
python3-devel \
readline-devel \
openssl-devel \
sqlite-devel \
valgrind \
gdk-pixbuf2-devel \
qrencode-devel
# https://github.com/openSUSE/docker-containers-build/issues/26
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
ENV TERM=xterm
RUN mkdir -p /usr/src
WORKDIR /usr/src
RUN git clone --depth 1 -c http.sslverify=false https://git.jabber.space/devs/stabber
WORKDIR /usr/src/stabber
RUN ./bootstrap.sh
RUN ./configure --prefix=/usr --disable-dependency-tracking
RUN make -j$(nproc)
RUN make install
WORKDIR /usr/src
RUN mkdir -p /usr/src/libstrophe
RUN git clone --depth 1 -c http.sslverify=false https://github.com/strophe/libstrophe
WORKDIR /usr/src/libstrophe
RUN ./bootstrap.sh
RUN ./configure --prefix=/usr
RUN make -j$(nproc)
RUN make install
RUN mkdir -p /usr/src/profanity
WORKDIR /usr/src/profanity
COPY . /usr/src/profanity