diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 2753024..d6fad72 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -4,13 +4,9 @@ on: push: branches: - "*" - paths-ignore: - - "**.md" pull_request: branches: - "*" - paths-ignore: - - "**.md" workflow_dispatch: jobs: @@ -79,6 +75,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "no", fmt_arg: "", raylib: "no", @@ -98,6 +96,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "no", fmt_arg: "", raylib: "no", @@ -117,6 +117,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "no", fmt_arg: "", raylib: "no", @@ -136,6 +138,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "no", fmt_arg: "", raylib: "no", @@ -154,8 +158,10 @@ jobs: openssl_arg: "linux-aarch64", C: "yes", C_arg: "", - C-Plus-Plus: "yes", + C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "yes", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -175,6 +181,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -194,6 +202,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -213,6 +223,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -233,6 +245,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -253,6 +267,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -272,6 +288,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -291,6 +309,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -311,6 +331,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -330,6 +352,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -349,6 +373,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -369,6 +395,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -388,6 +416,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -407,6 +437,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -426,6 +458,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -445,6 +479,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -465,6 +501,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -485,6 +523,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -505,6 +545,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -524,6 +566,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -543,6 +587,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -562,6 +608,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -582,6 +630,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -601,6 +651,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -621,6 +673,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -641,6 +695,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -660,6 +716,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -680,6 +738,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -700,6 +760,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -720,6 +782,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -740,6 +804,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "no", fmt_arg: "", raylib: "no", @@ -760,6 +826,8 @@ jobs: C_arg: "", C-Plus-Plus: "yes", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "no", fmt_arg: "", raylib: "no", @@ -780,6 +848,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -799,6 +869,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -818,6 +890,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -837,6 +911,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -857,6 +933,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -876,6 +954,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "no", fmt_arg: "", raylib: "no", @@ -896,6 +976,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "yes", @@ -915,6 +997,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "yes", @@ -935,6 +1019,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -955,6 +1041,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -974,6 +1062,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "yes", fmt_arg: "", raylib: "no", @@ -993,6 +1083,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "no", fmt_arg: "", raylib: "no", @@ -1013,6 +1105,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "no", fmt_arg: "", raylib: "yes", @@ -1032,6 +1126,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "no", fmt_arg: "", raylib: "no", @@ -1051,6 +1147,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "no", fmt_arg: "", raylib: "no", @@ -1071,6 +1169,8 @@ jobs: C_arg: "", C-Plus-Plus: "no", C-Plus-Plus_arg: "", + llama_cpp: "no", + llama_cpp_arg: "", fmt: "no", fmt_arg: "", raylib: "no", @@ -1148,7 +1248,7 @@ jobs: cd .. rm -rf C - # Updated on 12/09/2022 + # Updated on 12/09/2022 No longer maintained - name: C-Plus-Plus build test if: ${{ matrix.arch_name.C-Plus-Plus == 'yes' }} run: | @@ -1159,6 +1259,17 @@ jobs: cd .. rm -rf C-Plus-Plus + # Updated on 03/08/2024 + - name: llama.cpp build test + if: ${{ matrix.arch_name.llama_cpp == 'yes' }} + run: | + git clone https://github.com/ggerganov/llama.cpp.git + cd llama.cpp + git checkout 76614f352e94d25659306d9e97321f204e5de0d3 + ./../tools/dockcross-cmake-builder.sh ${{ matrix.arch_name.image }} ${{ matrix.arch_name.llama_cpp_arg }} + cd .. + rm -rf llama.cpp + # Updated on 12/09/2022 - name: fmt build test if: ${{ matrix.arch_name.fmt == 'yes' }} diff --git a/README.md b/README.md index 18ee932..a4072d4 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Cross compiling toolchains in Docker images. - Most images also contain an emulator for the target system. - Clean separation of build tools, source code, and build artifacts. - Commands in the container are run as the calling user, so that any created files have the expected ownership, (i.e. not root). -- Make variables **CC**, **CXX**, **LD**, **AS** etc) are set to point to the appropriate tools in the container. +- Make variables (**CC**, **CXX**, **LD**, **AS** etc) are set to point to the appropriate tools in the container. - Recent [CMake](https://cmake.org) and ninja are precompiled. - [Meson](https://mesonbuild.com) is pre-installed. - [Conan.io](https://www.conan.io) can be used as a package manager. diff --git a/common/common.debian b/common/common.debian index 341c1c7..7e4be5f 100644 --- a/common/common.debian +++ b/common/common.debian @@ -11,6 +11,7 @@ RUN \ build-essential \ bzip2 \ ca-certificates \ + ccache \ curl \ dirmngr \ file \ diff --git a/linux-arm64/Dockerfile.in b/linux-arm64/Dockerfile.in index 5e7ab4f..bcf22f1 100644 --- a/linux-arm64/Dockerfile.in +++ b/linux-arm64/Dockerfile.in @@ -5,8 +5,8 @@ LABEL maintainer="Matt McCormick matt.mccormick@kitware.com" # This is for 64-bit ARM Linux machine -# Crosstool-ng version 2022-05-19 -ENV CT_VERSION crosstool-ng-1.25.0 +# Crosstool-ng version 2024-05-04 +ENV CT_VERSION crosstool-ng-1.26.0 #include "common.crosstool" diff --git a/linux-arm64/crosstool-ng.config b/linux-arm64/crosstool-ng.config index 47bbaff..d2b36d9 100644 --- a/linux-arm64/crosstool-ng.config +++ b/linux-arm64/crosstool-ng.config @@ -1,16 +1,16 @@ # # Automatically generated file; DO NOT EDIT. -# crosstool-NG 1.25.0.26_db6f703 Configuration +# crosstool-NG 1.26.0 Configuration # CT_CONFIGURE_has_static_link=y CT_CONFIGURE_has_cxx11=y CT_CONFIGURE_has_wget=y CT_CONFIGURE_has_curl=y -CT_CONFIGURE_has_meson=y CT_CONFIGURE_has_ninja=y CT_CONFIGURE_has_rsync=y CT_CONFIGURE_has_make_3_81_or_newer=y CT_CONFIGURE_has_make_4_0_or_newer=y +CT_CONFIGURE_has_make_4_4_or_newer=y CT_CONFIGURE_has_libtool_2_4_or_newer=y CT_CONFIGURE_has_libtoolize_2_4_or_newer=y CT_CONFIGURE_has_autoconf_2_65_or_newer=y @@ -19,6 +19,7 @@ CT_CONFIGURE_has_automake_1_15_or_newer=y CT_CONFIGURE_has_gnu_m4_1_4_12_or_newer=y CT_CONFIGURE_has_python_3_4_or_newer=y CT_CONFIGURE_has_bison_2_7_or_newer=y +CT_CONFIGURE_has_bison_3_0_4_or_newer=y CT_CONFIGURE_has_python=y CT_CONFIGURE_has_dtc=y CT_CONFIGURE_has_git=y @@ -27,7 +28,7 @@ CT_CONFIGURE_has_sha1sum=y CT_CONFIGURE_has_sha256sum=y CT_CONFIGURE_has_sha512sum=y CT_CONFIGURE_has_install_with_strip_program=y -CT_VERSION="1.25.0.26_db6f703" +CT_VERSION="1.26.0" CT_VCHECK="" CT_CONFIG_VERSION_ENV="4" CT_CONFIG_VERSION_CURRENT="4" @@ -71,7 +72,7 @@ CT_DOWNLOAD_AGENT_WGET=y # CT_FORBID_DOWNLOAD is not set # CT_FORCE_DOWNLOAD is not set CT_CONNECT_TIMEOUT=10 -CT_DOWNLOAD_WGET_OPTIONS="--passive-ftp --tries=3 -nc --progress=dot:binary" +CT_DOWNLOAD_WGET_OPTIONS="--passive-ftp --tries=5 -nc --progress=dot:binary" # CT_ONLY_DOWNLOAD is not set # CT_USE_MIRROR is not set CT_VERIFY_DOWNLOAD_DIGEST=y @@ -132,6 +133,7 @@ CT_LOG_FILE_COMPRESS=y # CT_ARCH_ARC is not set CT_ARCH_ARM=y # CT_ARCH_AVR is not set +# CT_ARCH_BPF is not set # CT_ARCH_M68K is not set # CT_ARCH_MIPS is not set # CT_ARCH_NIOS2 is not set @@ -145,14 +147,14 @@ CT_ARCH_ARM=y CT_ARCH="arm" CT_ARCH_CHOICE_KSYM="ARM" CT_ARCH_CPU="" -CT_ARCH_TUNE="" +CT_ARCH_TUNE="cortex-a72" CT_ARCH_ARM_SHOW=y # # Options for arm # CT_ARCH_ARM_PKG_KSYM="" -CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR C6X M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 POWERPC PRU RISCV S390 SH SPARC X86 XTENSA" +CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR BPF C6X LOONGARCH M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 POWERPC PRU RISCV S390 SH SPARC X86 XTENSA" CT_ARCH_SUFFIX="" # CT_OMIT_TARGET_VENDOR is not set @@ -165,6 +167,7 @@ CT_ARCH_SUPPORTS_BOTH_MMU=y CT_ARCH_DEFAULT_HAS_MMU=y CT_ARCH_USE_MMU=y CT_ARCH_SUPPORTS_FLAT_FORMAT=y +CT_ARCH_SUPPORTS_LIBSANITIZER=y CT_ARCH_SUPPORTS_EITHER_ENDIAN=y CT_ARCH_DEFAULT_LE=y # CT_ARCH_BE is not set @@ -256,10 +259,17 @@ CT_LINUX_PKG_NAME="linux" CT_LINUX_SRC_RELEASE=y # CT_LINUX_SRC_DEVEL is not set CT_LINUX_PATCH_ORDER="global" +# CT_LINUX_V_6_4 is not set +# CT_LINUX_V_6_3 is not set +# CT_LINUX_V_6_2 is not set +CT_LINUX_V_6_1=y +# CT_LINUX_V_6_0 is not set +# CT_LINUX_V_5_19 is not set +# CT_LINUX_V_5_18 is not set # CT_LINUX_V_5_17 is not set # CT_LINUX_V_5_16 is not set # CT_LINUX_V_5_15 is not set -CT_LINUX_V_5_14=y +# CT_LINUX_V_5_14 is not set # CT_LINUX_V_5_13 is not set # CT_LINUX_V_5_12 is not set # CT_LINUX_V_5_11 is not set @@ -290,12 +300,14 @@ CT_LINUX_V_5_14=y # CT_LINUX_V_3_13 is not set # CT_LINUX_V_3_12 is not set # CT_LINUX_V_3_10 is not set -CT_LINUX_VERSION="5.14.18" +CT_LINUX_VERSION="6.1.35" CT_LINUX_MIRRORS="$(CT_Mirrors kernel.org linux ${CT_LINUX_VERSION})" CT_LINUX_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_LINUX_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_LINUX_ARCHIVE_FORMATS=".tar.xz .tar.gz" CT_LINUX_SIGNATURE_FORMAT="unpacked/.sign" +CT_LINUX_later_than_5_19=y +CT_LINUX_5_19_or_later=y CT_LINUX_later_than_5_12=y CT_LINUX_5_12_or_later=y CT_LINUX_later_than_5_5=y @@ -344,6 +356,8 @@ CT_BINUTILS_PKG_NAME="binutils" CT_BINUTILS_SRC_RELEASE=y # CT_BINUTILS_SRC_DEVEL is not set CT_BINUTILS_PATCH_ORDER="global" +# CT_BINUTILS_V_2_40 is not set +# CT_BINUTILS_V_2_39 is not set # CT_BINUTILS_V_2_38 is not set CT_BINUTILS_V_2_37=y # CT_BINUTILS_V_2_36 is not set @@ -363,6 +377,8 @@ CT_BINUTILS_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_BINUTILS_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_BINUTILS_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz" CT_BINUTILS_SIGNATURE_FORMAT="packed/.sig" +CT_BINUTILS_2_39_or_older=y +CT_BINUTILS_older_than_2_39=y CT_BINUTILS_later_than_2_30=y CT_BINUTILS_2_30_or_later=y CT_BINUTILS_later_than_2_27=y @@ -413,8 +429,11 @@ CT_GLIBC_PKG_NAME="glibc" CT_GLIBC_SRC_RELEASE=y # CT_GLIBC_SRC_DEVEL is not set CT_GLIBC_PATCH_ORDER="global" +# CT_GLIBC_V_2_38 is not set +# CT_GLIBC_V_2_37 is not set +CT_GLIBC_V_2_36=y # CT_GLIBC_V_2_35 is not set -CT_GLIBC_V_2_34=y +# CT_GLIBC_V_2_34 is not set # CT_GLIBC_V_2_33 is not set # CT_GLIBC_V_2_32 is not set # CT_GLIBC_V_2_31 is not set @@ -428,14 +447,20 @@ CT_GLIBC_V_2_34=y # CT_GLIBC_V_2_23 is not set # CT_GLIBC_V_2_19 is not set # CT_GLIBC_V_2_17 is not set -CT_GLIBC_VERSION="2.34" +CT_GLIBC_VERSION="2.36" CT_GLIBC_MIRRORS="$(CT_Mirrors GNU glibc)" CT_GLIBC_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_GLIBC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_GLIBC_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz" CT_GLIBC_SIGNATURE_FORMAT="packed/.sig" +CT_GLIBC_2_38_or_older=y +CT_GLIBC_older_than_2_38=y +CT_GLIBC_2_37_or_older=y +CT_GLIBC_older_than_2_37=y +CT_GLIBC_2_36_or_later=y +CT_GLIBC_2_36_or_older=y +CT_GLIBC_later_than_2_34=y CT_GLIBC_2_34_or_later=y -CT_GLIBC_2_34_or_older=y CT_GLIBC_later_than_2_32=y CT_GLIBC_2_32_or_later=y CT_GLIBC_later_than_2_31=y @@ -469,28 +494,28 @@ CT_GLIBC_DEP_PYTHON=y CT_THREADS="nptl" CT_GLIBC_BUILD_SSP=y CT_GLIBC_HAS_LIBIDN_ADDON=y -# CT_GLIBC_USE_LIBIDN_ADDON is not set +CT_GLIBC_USE_LIBIDN_ADDON=y CT_GLIBC_NO_SPARC_V8=y CT_GLIBC_EXTRA_CONFIG_ARRAY="" CT_GLIBC_CONFIGPARMS="" +CT_GLIBC_ENABLE_DEBUG=y CT_GLIBC_EXTRA_CFLAGS="" # CT_GLIBC_DISABLE_VERSIONING is not set CT_GLIBC_OLDEST_ABI="" CT_GLIBC_FORCE_UNWIND=y # CT_GLIBC_LOCALES is not set # CT_GLIBC_KERNEL_VERSION_NONE is not set -# CT_GLIBC_KERNEL_VERSION_AS_HEADERS is not set -CT_GLIBC_KERNEL_VERSION_CHOSEN=y -CT_GLIBC_MIN_KERNEL_VERSION="5.4.0" -CT_GLIBC_MIN_KERNEL="5.4.0" +CT_GLIBC_KERNEL_VERSION_AS_HEADERS=y +# CT_GLIBC_KERNEL_VERSION_CHOSEN is not set +CT_GLIBC_MIN_KERNEL="6.1.35" CT_GLIBC_SSP_DEFAULT=y # CT_GLIBC_SSP_NO is not set # CT_GLIBC_SSP_YES is not set # CT_GLIBC_SSP_ALL is not set # CT_GLIBC_SSP_STRONG is not set -# CT_GLIBC_ENABLE_WERROR is not set +CT_GLIBC_ENABLE_WERROR=y # CT_GLIBC_ENABLE_COMMON_FLAG is not set -CT_ALL_LIBC_CHOICES="AVR_LIBC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE UCLIBC_NG" +CT_ALL_LIBC_CHOICES="AVR_LIBC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE PICOLIBC UCLIBC_NG" CT_LIBC_SUPPORT_THREADS_ANY=y CT_LIBC_SUPPORT_THREADS_NATIVE=y @@ -509,6 +534,8 @@ CT_CC_CORE_NEEDED=y CT_CC_SUPPORT_CXX=y CT_CC_SUPPORT_FORTRAN=y CT_CC_SUPPORT_ADA=y +CT_CC_SUPPORT_D=y +CT_CC_SUPPORT_JIT=y CT_CC_SUPPORT_OBJC=y CT_CC_SUPPORT_OBJCXX=y CT_CC_SUPPORT_GOLANG=y @@ -523,26 +550,30 @@ CT_CC_GCC_SHOW=y CT_CC_GCC_PKG_KSYM="GCC" CT_GCC_DIR_NAME="gcc" CT_GCC_USE_GNU=y +# CT_GCC_USE_ORACLE is not set CT_GCC_USE="GCC" CT_GCC_PKG_NAME="gcc" CT_GCC_SRC_RELEASE=y # CT_GCC_SRC_DEVEL is not set CT_GCC_PATCH_ORDER="global" -# CT_GCC_V_12 is not set -CT_GCC_V_11=y +# CT_GCC_V_13 is not set +CT_GCC_V_12=y +# CT_GCC_V_11 is not set # CT_GCC_V_10 is not set # CT_GCC_V_9 is not set # CT_GCC_V_8 is not set # CT_GCC_V_7 is not set # CT_GCC_V_6 is not set -CT_GCC_VERSION="11.3.0" +CT_GCC_VERSION="12.3.0" CT_GCC_MIRRORS="$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})" CT_GCC_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz" CT_GCC_SIGNATURE_FORMAT="" -CT_GCC_12_or_older=y -CT_GCC_older_than_12=y +CT_GCC_13_or_older=y +CT_GCC_older_than_13=y +CT_GCC_later_than_12=y +CT_GCC_12_or_later=y CT_GCC_later_than_11=y CT_GCC_11_or_later=y CT_GCC_later_than_10=y @@ -569,7 +600,7 @@ CT_CC_GCC_ENABLE_CXX_FLAGS="" CT_CC_GCC_CORE_EXTRA_CONFIG_ARRAY="" CT_CC_GCC_EXTRA_CONFIG_ARRAY="" CT_CC_GCC_STATIC_LIBSTDCXX=y -CT_CC_GCC_SYSTEM_ZLIB=y +# CT_CC_GCC_SYSTEM_ZLIB is not set CT_CC_GCC_CONFIG_TLS=m # @@ -582,12 +613,14 @@ CT_CC_GCC_LTO_ZSTD=m # # Settings for libraries running on target # +# CT_CC_GCC_ENABLE_DEFAULT_PIE is not set CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y CT_CC_GCC_LIBMUDFLAP=y CT_CC_GCC_LIBGOMP=y CT_CC_GCC_LIBSSP=m -CT_CC_GCC_LIBQUADMATH=y -CT_CC_GCC_LIBSANITIZER=y +# CT_CC_GCC_LIBQUADMATH is not set +# CT_CC_GCC_LIBSANITIZER is not set +CT_CC_GCC_LIBSTDCXX_VERBOSE=m # # Misc. obscure options. @@ -628,17 +661,20 @@ CT_GDB_PKG_NAME="gdb" CT_GDB_SRC_RELEASE=y # CT_GDB_SRC_DEVEL is not set CT_GDB_PATCH_ORDER="global" -CT_GDB_V_12=y +CT_GDB_V_13=y +# CT_GDB_V_12 is not set # CT_GDB_V_11 is not set # CT_GDB_V_10 is not set # CT_GDB_V_9 is not set # CT_GDB_V_8_3 is not set -CT_GDB_VERSION="12.1" +CT_GDB_VERSION="13.2" CT_GDB_MIRRORS="$(CT_Mirrors GNU gdb) $(CT_Mirrors sourceware gdb/releases)" CT_GDB_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_GDB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_GDB_ARCHIVE_FORMATS=".tar.xz .tar.gz" CT_GDB_SIGNATURE_FORMAT="" +CT_GDB_later_than_13=y +CT_GDB_13_or_later=y CT_GDB_later_than_12=y CT_GDB_12_or_later=y CT_GDB_later_than_11=y @@ -650,7 +686,8 @@ CT_GDB_8_3_or_later=y CT_GDB_CROSS=y # CT_GDB_CROSS_STATIC is not set # CT_GDB_CROSS_SIM is not set -# CT_GDB_CROSS_PYTHON is not set +CT_GDB_CROSS_PYTHON=y +CT_GDB_CROSS_PYTHON_BINARY="" CT_GDB_CROSS_EXTRA_CONFIG_ARRAY="" # CT_GDB_NATIVE is not set CT_GDB_GDBSERVER=y @@ -658,7 +695,20 @@ CT_GDB_GDBSERVER=y # CT_GDB_NATIVE_STATIC_LIBSTDCXX is not set CT_GDB_GDBSERVER_TOPLEVEL=y # CT_DEBUG_LTRACE is not set -# CT_DEBUG_STRACE is not set +CT_DEBUG_STRACE=y +CT_DEBUG_STRACE_PKG_KSYM="STRACE" +CT_STRACE_DIR_NAME="strace" +CT_STRACE_PKG_NAME="strace" +CT_STRACE_SRC_RELEASE=y +# CT_STRACE_SRC_DEVEL is not set +CT_STRACE_PATCH_ORDER="global" +CT_STRACE_V_6_4=y +CT_STRACE_VERSION="6.4" +CT_STRACE_MIRRORS="https://strace.io/files/${CT_STRACE_VERSION} https://github.com/strace/strace/releases/download/v${CT_STRACE_VERSION}" +CT_STRACE_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_STRACE_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_STRACE_ARCHIVE_FORMATS=".tar.xz" +CT_STRACE_SIGNATURE_FORMAT="" CT_ALL_DEBUG_CHOICES="DUMA GDB LTRACE STRACE" # end of Debug facilities @@ -666,20 +716,7 @@ CT_ALL_DEBUG_CHOICES="DUMA GDB LTRACE STRACE" # Companion libraries # # CT_COMPLIBS_CHECK is not set -CT_COMP_LIBS_CLOOG=y -CT_COMP_LIBS_CLOOG_PKG_KSYM="CLOOG" -CT_CLOOG_DIR_NAME="cloog" -CT_CLOOG_PKG_NAME="cloog" -CT_CLOOG_SRC_RELEASE=y -# CT_CLOOG_SRC_DEVEL is not set -CT_CLOOG_PATCH_ORDER="global" -CT_CLOOG_V_0_18_4=y -CT_CLOOG_VERSION="0.18.4" -CT_CLOOG_MIRRORS="http://www.bastoul.net/cloog/pages/download" -CT_CLOOG_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_CLOOG_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_CLOOG_ARCHIVE_FORMATS=".tar.gz" -CT_CLOOG_SIGNATURE_FORMAT="" +# CT_COMP_LIBS_CLOOG is not set CT_COMP_LIBS_EXPAT=y CT_COMP_LIBS_EXPAT_PKG_KSYM="EXPAT" CT_EXPAT_DIR_NAME="expat" @@ -687,8 +724,8 @@ CT_EXPAT_PKG_NAME="expat" CT_EXPAT_SRC_RELEASE=y # CT_EXPAT_SRC_DEVEL is not set CT_EXPAT_PATCH_ORDER="global" -CT_EXPAT_V_2_4=y -CT_EXPAT_VERSION="2.4.1" +CT_EXPAT_V_2_5=y +CT_EXPAT_VERSION="2.5.0" CT_EXPAT_MIRRORS="http://downloads.sourceforge.net/project/expat/expat/${CT_EXPAT_VERSION} https://github.com/libexpat/libexpat/releases/download/R_${CT_EXPAT_VERSION//./_}" CT_EXPAT_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_EXPAT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" @@ -701,17 +738,30 @@ CT_GETTEXT_PKG_NAME="gettext" CT_GETTEXT_SRC_RELEASE=y # CT_GETTEXT_SRC_DEVEL is not set CT_GETTEXT_PATCH_ORDER="global" -# CT_GETTEXT_V_0_21 is not set -CT_GETTEXT_V_0_20_1=y +CT_GETTEXT_V_0_21=y +# CT_GETTEXT_V_0_20_1 is not set # CT_GETTEXT_V_0_19_8_1 is not set -CT_GETTEXT_VERSION="0.20.1" +CT_GETTEXT_VERSION="0.21" CT_GETTEXT_MIRRORS="$(CT_Mirrors GNU gettext)" CT_GETTEXT_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_GETTEXT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_GETTEXT_ARCHIVE_FORMATS=".tar.xz .tar.gz" CT_GETTEXT_SIGNATURE_FORMAT="packed/.sig" +CT_GETTEXT_0_21_or_later=y CT_GETTEXT_0_21_or_older=y -CT_GETTEXT_older_than_0_21=y +CT_GETTEXT_INCOMPATIBLE_WITH_UCLIBC_NG=y + +# +# This version of gettext is not compatible with uClibc-NG. Select +# + +# +# a different version if uClibc-NG is used on the target or (in a +# + +# +# Canadian cross build) on the host. +# CT_COMP_LIBS_GMP=y CT_COMP_LIBS_GMP_PKG_KSYM="GMP" CT_GMP_DIR_NAME="gmp" @@ -734,7 +784,9 @@ CT_ISL_PKG_NAME="isl" CT_ISL_SRC_RELEASE=y # CT_ISL_SRC_DEVEL is not set CT_ISL_PATCH_ORDER="global" -CT_ISL_V_0_24=y +CT_ISL_V_0_26=y +# CT_ISL_V_0_25 is not set +# CT_ISL_V_0_24 is not set # CT_ISL_V_0_23 is not set # CT_ISL_V_0_22 is not set # CT_ISL_V_0_21 is not set @@ -744,7 +796,7 @@ CT_ISL_V_0_24=y # CT_ISL_V_0_17 is not set # CT_ISL_V_0_16 is not set # CT_ISL_V_0_15 is not set -CT_ISL_VERSION="0.24" +CT_ISL_VERSION="0.26" CT_ISL_MIRRORS="https://libisl.sourceforge.io" CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" @@ -754,7 +806,20 @@ CT_ISL_later_than_0_18=y CT_ISL_0_18_or_later=y CT_ISL_later_than_0_15=y CT_ISL_0_15_or_later=y -# CT_COMP_LIBS_LIBELF is not set +CT_COMP_LIBS_LIBELF=y +CT_COMP_LIBS_LIBELF_PKG_KSYM="LIBELF" +CT_LIBELF_DIR_NAME="libelf" +CT_LIBELF_PKG_NAME="libelf" +CT_LIBELF_SRC_RELEASE=y +# CT_LIBELF_SRC_DEVEL is not set +CT_LIBELF_PATCH_ORDER="global" +CT_LIBELF_V_0_8=y +CT_LIBELF_VERSION="0.8.13" +CT_LIBELF_MIRRORS="https://fossies.org/linux/misc/old http://oe-lite.org/mirror/libelf/ http://ftp.osuosl.org/pub/blfs/conglomeration/libelf/" +CT_LIBELF_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_LIBELF_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_LIBELF_ARCHIVE_FORMATS=".tar.gz" +CT_LIBELF_SIGNATURE_FORMAT="" CT_COMP_LIBS_LIBICONV=y CT_COMP_LIBS_LIBICONV_PKG_KSYM="LIBICONV" CT_LIBICONV_DIR_NAME="libiconv" @@ -778,10 +843,8 @@ CT_MPC_SRC_RELEASE=y # CT_MPC_SRC_DEVEL is not set CT_MPC_PATCH_ORDER="global" CT_MPC_V_1_2=y -# CT_MPC_V_1_1 is not set -# CT_MPC_V_1_0 is not set CT_MPC_VERSION="1.2.1" -CT_MPC_MIRRORS="http://www.multiprecision.org/downloads $(CT_Mirrors GNU mpc)" +CT_MPC_MIRRORS="https://www.multiprecision.org/downloads $(CT_Mirrors GNU mpc)" CT_MPC_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_MPC_ARCHIVE_FORMATS=".tar.gz" @@ -795,11 +858,9 @@ CT_MPFR_PKG_NAME="mpfr" CT_MPFR_SRC_RELEASE=y # CT_MPFR_SRC_DEVEL is not set CT_MPFR_PATCH_ORDER="global" -CT_MPFR_V_4_1=y -# CT_MPFR_V_4_0 is not set -# CT_MPFR_V_3_1 is not set -CT_MPFR_VERSION="4.1.0" -CT_MPFR_MIRRORS="http://www.mpfr.org/mpfr-${CT_MPFR_VERSION} $(CT_Mirrors GNU mpfr)" +CT_MPFR_V_4_2=y +CT_MPFR_VERSION="4.2.1" +CT_MPFR_MIRRORS="https://www.mpfr.org/mpfr-${CT_MPFR_VERSION} $(CT_Mirrors GNU mpfr)" CT_MPFR_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_MPFR_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_MPFR_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz .zip" @@ -813,10 +874,11 @@ CT_NCURSES_PKG_NAME="ncurses" CT_NCURSES_SRC_RELEASE=y # CT_NCURSES_SRC_DEVEL is not set CT_NCURSES_PATCH_ORDER="global" -CT_NCURSES_V_6_2=y +CT_NCURSES_V_6_4=y +# CT_NCURSES_V_6_2 is not set # CT_NCURSES_V_6_1 is not set # CT_NCURSES_V_6_0 is not set -CT_NCURSES_VERSION="6.2" +CT_NCURSES_VERSION="6.4" CT_NCURSES_MIRRORS="https://invisible-mirror.net/archives/ncurses $(CT_Mirrors GNU ncurses)" CT_NCURSES_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_NCURSES_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" @@ -836,14 +898,29 @@ CT_ZLIB_PKG_NAME="zlib" CT_ZLIB_SRC_RELEASE=y # CT_ZLIB_SRC_DEVEL is not set CT_ZLIB_PATCH_ORDER="global" -CT_ZLIB_V_1_2_12=y -CT_ZLIB_VERSION="1.2.12" -CT_ZLIB_MIRRORS="http://downloads.sourceforge.net/project/libpng/zlib/${CT_ZLIB_VERSION} https://www.zlib.net/ https://www.zlib.net/fossils" +CT_ZLIB_V_1_2_13=y +CT_ZLIB_VERSION="1.2.13" +CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION} https://www.zlib.net/" CT_ZLIB_ARCHIVE_FILENAME="@{pkg_name}-@{version}" CT_ZLIB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" CT_ZLIB_ARCHIVE_FORMATS=".tar.xz .tar.gz" CT_ZLIB_SIGNATURE_FORMAT="packed/.asc" -CT_ALL_COMP_LIBS_CHOICES="CLOOG EXPAT GETTEXT GMP GNUPRUMCU ISL LIBELF LIBICONV MPC MPFR NCURSES NEWLIB_NANO PICOLIBC ZLIB" +CT_COMP_LIBS_ZSTD=y +CT_COMP_LIBS_ZSTD_PKG_KSYM="ZSTD" +CT_ZSTD_DIR_NAME="zstd" +CT_ZSTD_PKG_NAME="zstd" +CT_ZSTD_SRC_RELEASE=y +# CT_ZSTD_SRC_DEVEL is not set +CT_ZSTD_PATCH_ORDER="global" +CT_ZSTD_V_1_5_5=y +# CT_ZSTD_V_1_5_2 is not set +CT_ZSTD_VERSION="1.5.5" +CT_ZSTD_MIRRORS="https://github.com/facebook/zstd/releases/download/v${CT_ZSTD_VERSION} https://www.zstd.net/" +CT_ZSTD_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_ZSTD_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_ZSTD_ARCHIVE_FORMATS=".tar.gz" +CT_ZSTD_SIGNATURE_FORMAT="packed/.sig" +CT_ALL_COMP_LIBS_CHOICES="CLOOG EXPAT GETTEXT GMP GNUPRUMCU ISL LIBELF LIBICONV MPC MPFR NCURSES NEWLIB_NANO PICOLIBC ZLIB ZSTD" CT_LIBICONV_NEEDED=y CT_GETTEXT_NEEDED=y CT_GMP_NEEDED=y @@ -853,6 +930,7 @@ CT_MPC_NEEDED=y CT_EXPAT_NEEDED=y CT_NCURSES_NEEDED=y CT_ZLIB_NEEDED=y +CT_ZSTD_NEEDED=y CT_LIBICONV=y CT_GETTEXT=y CT_GMP=y @@ -862,6 +940,7 @@ CT_MPC=y CT_EXPAT=y CT_NCURSES=y CT_ZLIB=y +CT_ZSTD=y # end of Companion libraries # diff --git a/test/run.py b/test/run.py index fb61fc7..9959b37 100755 --- a/test/run.py +++ b/test/run.py @@ -44,7 +44,7 @@ def test_cmake_build_system(build_dir, language, source, emulator, linker_flags, print('Building ' + source + ' with CMake...') with open('CMakeLists.txt', 'w') as fp: - fp.write('cmake_minimum_required(VERSION 3.0)\n') + fp.write('cmake_minimum_required(VERSION 3.16)\n') fp.write('project(test-compiler)\n') fp.write('add_executable(a.out ' + os.path.basename(source) + ')\n') if emulator: diff --git a/web-wasm/Dockerfile.in b/web-wasm/Dockerfile.in index a30b8d7..7dcb178 100644 --- a/web-wasm/Dockerfile.in +++ b/web-wasm/Dockerfile.in @@ -1,4 +1,4 @@ -ARG DOCKER_IMAGE_VERSION=3.1.60 +ARG DOCKER_IMAGE_VERSION=3.1.64 FROM emscripten/emsdk:$DOCKER_IMAGE_VERSION LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"