all dependencies required by actflow https://github.com/asyncvlsi/actflow
Built with MPI enabled from the main branch, in 3 portable variants that only depend on libc and work with any linux/gnu OS with kernel version newer than:
- x86-64-v2 kernel version 3.10 or higher
- x86-64-v3 kernel version 5.14 or higher
- x86-64-v4 kernel version 5.14 or higher
the builds are tested to work with prestine versions (no extra packages installed) of x86-64-v2: the oldest release of each distro, proving the compatibility floor, plus the newer ones that still get security updates
- centos:7.2+ # kernel 3.10, oldest RHEL
- RHEL 8 (or derivats RockyLinux, AlmaLinux, ...) # kernel 4.18
- opensuse leap 15 # 15.6, kernel 6.4
- Ubuntu LTS 16.04 # kernel 4.4, oldest ubuntu
- Ubuntu LTS 22.04 # kernel 5.15
- Debian 11 # bullseye, kernel 5.10, oldest debian
- Debian 12 # bookworm, kernel 6.1
- Fedora 25 # kernel 4.8
x86-64-v3 and x86-64-v4: only releases still in their normal support cycle, once one drops to LTS/ESM or goes EOL it is only covered by the v2 list above
- RHEL 9 (or derivats RockyLinux, AlmaLinux, ...) # kernel 5.14
- RHEL 10 (or derivats RockyLinux, AlmaLinux, ...) # kernel 6.12
- debian stable # trixie, kernel 6.12
- debian testing # rolling
- ubuntu LTS 24.04 # kernel 6.8
- ubuntu LTS 26.04 # kernel 6.14
- opensuse leap 16 # 16.0, kernel 6.12
- archlinux latest # rolling
- fedora latest # rolling
if you build on an older OS your package is compatible with more target platforms, thats why the v2 variant builds on centos7.2
you need gcc 11+, m4, make, autoconf, automake, bison, flex, libtool, python3, csh, patch, texinfo
(see packaging/centos7_install_build_system.sh for centos7/v2, packaging/alma9_install_build_system.sh for alma9/v3+v4)
$ACT_HOME is pointing to the install path
$EDA_SRC is pointing to the folder containing the sources
$ARCH_LEVEL selects the microarchitecture level to build for (x86-64-v2/v3/v4), injected into CFLAGS/CXXFLAGS/FFLAGS/FCFLAGS
on centos7 run source packaging/centos7_ci_build_environment.sh, on alma9 run source packaging/alma9_ci_build_environment.sh,
from the repository root to get them set up with act home in /opt/act.
./build should do the trick after you have your buildsystem setup properly
./test runs the linker tests after the build+install
for running all the packaging steps in order simply execute on the root of the repo
for script in packaging/0*.sh; do bash $script; done
or run all the 00X-*****.sh script in assending order
the scripts in packaging actually run the top level sripts for you
srccontains all dependency sourcestestscontains all linkage test scripts and some application testspackagingcontains the scripts for CI and packagingbuild_scriptscontains all the build scripts for the dependencies (scripts prefixeddisabled-are kept for reference but are not run - see the comment at the top of each for why, e.g.abc/yosys/magic/irsim/tkwere removed as unneeded)
Builds on GitLab CI (.gitlab-ci.yml): each of the 3 variants builds and packages in its own job, then gets
tested against a matrix of clean-OS containers (rhel8, debian, ubuntu, opensuse, archlinux, fedora, ...) to
verify it only depends on libc. Releases (source + all 3 packaged tarballs) are published as GitLab Releases
on main.