summaryrefslogtreecommitdiff
path: root/ycurses/Dockerfile
blob: c27b45c844ee5583d2eca9e9a16f08555252424f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# ycurses — Docker build verification
#
# ycurses is a standalone ncurses C++ toolkit (windows/menus/attributes/
# color), demoed by an interactive full-screen menu (src/main.cpp) - there
# is no server/service to run, so unlike ../yhttpd this image is a build
# check, not a deployable runtime.
#
# Builds entirely in a container on Rocky Linux 9, whose GCC 11 accepts the
# legacy C++ this ~2005 codebase uses once the fixes below are applied.

FROM rockylinux:9 AS builder

RUN dnf -y install \
        gcc-c++ \
        make \
        perl \
        which \
        ncurses-devel \
    && dnf clean all

WORKDIR /build/ycurses
COPY . .
RUN rm -rf obj bin backuped g++.version make.version src/Makefile src/includes.add src/libs.add

# config.pl is interactive (asks yes/no); "yes" = use default before-compile
# options.
RUN echo yes | ./configure \
    && make

ENTRYPOINT ["/build/ycurses/bin"]