# Host packages the components need, by logical name.
#
# Columns: logical-name  apt-packages  dnf-packages
# Several packages are comma-separated; "-" means the family has no package
# for it (the component must then build it itself or cannot be installed).
# Components list logical names in compHostDeps; `install.sh deps` maps
# them through this table.

# ---- basics every setup needs
build-tools     build-essential          gcc,gcc-c++,make
make            make                     make
git             git                      git
git-lfs         git-lfs                  git-lfs
curl            curl,ca-certificates     curl,ca-certificates
tar             tar                      tar
xz              xz-utils                 xz
bzip2           bzip2                    bzip2
unzip           unzip                    unzip
wget            wget                     wget
lhasa           lhasa                    lhasa
python3         python3                  python3
python3-pil     python3-pil              python3-pillow
php-cli         php-cli                  php-cli
patch           patch                    patch

# ---- runtime libraries the prebuilt toolchains link against
libfl           libfl2                   libfl2
# elf2x68k's gcc converts strings to cp932 (Shift-JIS) through iconv;
# Debian ships every converter in libc6, Fedora splits most of them off.
gconv-cp932     libc6                    glibc-gconv-extra

# ---- GNU toolchain builds (amiga-gcc)
bison           bison                    bison
flex            flex                     flex
m4              m4                       m4
texinfo         texinfo                  texinfo
autoconf        autoconf                 autoconf
automake        automake                 automake
gettext         gettext                  gettext
rsync           rsync                    rsync
procps          procps                   procps-ng
which           debianutils              which
diffutils       diffutils                diffutils
gmp-dev         libgmp-dev               gmp-devel
mpfr-dev        libmpfr-dev              mpfr-devel
mpc-dev         libmpc-dev               libmpc-devel
ncurses-dev     libncurses-dev           ncurses-devel
readline-dev    libreadline-dev          readline-devel

# ---- LLVM builds (llvm816)
cmake           cmake                    cmake
ninja           ninja-build              ninja-build
lld             lld                      lld
zlib-dev        zlib1g-dev               zlib-devel
zstd-dev        libzstd-dev              libzstd-devel
libedit-dev     libedit-dev              libedit-devel
libxml2-dev     libxml2-dev              libxml2-devel

# ---- assemblers
nasm            nasm                     nasm

# ---- MAME build
sdl2-dev        libsdl2-dev              SDL2-devel
sdl2-ttf-dev    libsdl2-ttf-dev          SDL2_ttf-devel
fontconfig-dev  libfontconfig-dev        fontconfig-devel
pulse-dev       libpulse-dev             pulseaudio-libs-devel
asound-dev      libasound2-dev           alsa-lib-devel
x11-dev         libx11-dev               libX11-devel
xi-dev          libxi-dev                libXi-devel
xext-dev        libxext-dev              libXext-devel
xinerama-dev    libxinerama-dev          libXinerama-devel
gl-dev          libgl-dev                mesa-libGL-devel

# ---- emulators packaged by the distribution
hatari          hatari                   hatari
fs-uae          fs-uae                   -

# ---- running emulators headless (the test gates)
xvfb            xvfb                     xorg-x11-server-Xvfb
xdotool         xdotool                  xdotool
imagemagick     imagemagick              ImageMagick
pulse-utils     pulseaudio-utils         pulseaudio-utils

# ---- FS-UAE source build (dnf systems, which do not package it)
pkg-config      pkg-config               pkgconf-pkg-config
zip             zip                      zip
glib-dev        libglib2.0-dev           glib2-devel
openal-dev      libopenal-dev            openal-soft-devel
png-dev         libpng-dev               libpng-devel
