diff --git a/.github/workflows/build-cross-action.yml b/.github/workflows/build-cross-action.yml index cc8b51db..34ebf235 100644 --- a/.github/workflows/build-cross-action.yml +++ b/.github/workflows/build-cross-action.yml @@ -55,7 +55,7 @@ jobs: sudo apt-get update sudo apt-get install -y build-essential bison python3-all patchelf swig python3-virtualenv virtualenv venv - venv/bin/pip3 install nox + env/bin/python3 -m pip install nox ppbt - name: Python Version run: | diff --git a/.github/workflows/build-native-action.yml b/.github/workflows/build-native-action.yml index f0ac238b..9966d7d8 100644 --- a/.github/workflows/build-native-action.yml +++ b/.github/workflows/build-native-action.yml @@ -50,27 +50,16 @@ jobs: sudo apt-get update sudo apt-get install -y build-essential bison python3-all patchelf swig cmake libldap2-dev libsasl2-dev ldap-utils libssl-dev pkg-config libvirt-dev default-libmysqlclient-dev python3-virtualenv virtualenv venv - venv/bin/pip3 install nox + venv/bin/python3 -m pip install nox ppbt - name: Python Version run: | venv/bin/python3 --version venv/bin/python3 -c 'import os; print(os.name)' - - name: Download Toolchain Artifact - uses: actions/download-artifact@v4 - with: - name: toolchain-${{ matrix.host }}-${{ matrix.target }}-linux-gnu.tar.xz - path: . - - - name: Extract Toolchain Artifact - run: | - mkdir -p toolchain - tar -C toolchain -xvf toolchain-${{ matrix.host }}-${{ matrix.target }}-linux-gnu.tar.xz - - name: Build run: | - venv/bin/python3 -m relenv build --arch=${{ matrix.target }} --python=${{ matrix.version }} + venv/bin/python3 -m relenv build --no-pretty --arch=${{ matrix.target }} --python=${{ matrix.version }} - name: Verify Build if: ${{ matrix.host == matrix.target }} @@ -87,7 +76,7 @@ jobs: - name: "Upload artifact: build/${{ matrix.version }}-${{ matrix.target }}-linux-gnu.tar.xz" uses: actions/upload-artifact@v4 - if: ${{ matrix.host == matrix.target && always()}} + if: ${{ matrix.host == matrix.target && always() }} with: name: ${{ matrix.version }}-${{ matrix.target }}-linux-gnu.tar.xz path: build/${{ matrix.version }}-${{ matrix.target }}-linux-gnu.tar.xz @@ -130,7 +119,7 @@ jobs: - name: Build run: | - python3 -m relenv build --python=${{ matrix.version }} + python3 -m relenv build --no-pretty --python=${{ matrix.version }} - name: Verify Build run: | @@ -188,7 +177,7 @@ jobs: - name: Build run: | - python3 -m relenv build --python=${{ matrix.version }} + python3 -m relenv build --no-pretty --python=${{ matrix.version }} - name: Verify Build run: | diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bff42d4c..cff68cb7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -55,12 +55,6 @@ jobs: deleted: - deleted: - '**' - toolchain: - - added|modified: - - '.github/workflows/*toolchain*.yml' - - 'relenv/toolchain.py' - - 'relenv/_toolchain/**' - pre-commit: name: Pre-Commit uses: ./.github/workflows/pre-commit-action.yml @@ -79,20 +73,11 @@ jobs: kind: "${{ inputs.kind }}" cmd: "${{ inputs.package_command }}" - toolchain: - name: Toolchain Builds - uses: ./.github/workflows/toolchain-action.yml - needs: - - get-changed-files - with: - changed-files: ${{ needs.get-changed-files.outputs.changed-files }} - build-native: name: Python Native Builds uses: ./.github/workflows/build-native-action.yml needs: - get-changed-files - - toolchain with: changed-files: ${{ needs.get-changed-files.outputs.changed-files }} @@ -103,17 +88,6 @@ jobs: - get-changed-files uses: ./.github/workflows/test-fips-action.yml - #build-cross: - # name: Python Cross Builds - # uses: ./.github/workflows/build-action.yml - # needs: - # - get-changed-files - # - toolchain - # - build-native - # with: - # changed-files: ${{ needs.get-changed-files.outputs.changed-files }} - # kind: "cross" - test: name: Test needs: @@ -142,6 +116,18 @@ jobs: # - test-fips # secrets: # PYPI_API_TOKEN: "${{ secrets.PYPI_API_TOKEN }}" + # + upload-build-artifacts: + name: Deploy Prebuilt Python Builds + if: ${{ inputs.kind == 'release' && success() }} + uses: ./.github/workflows/deploy-build-action.yml + needs: + - build-python-package + - build-native + - test-fips + #- build-cross + with: + version: "${{ needs.build-python-package.outputs.version }}" deploy-python-package: name: "Deploy python package" @@ -153,6 +139,7 @@ jobs: - docs - build-python-package - test-fips + - upload-build-artifacts steps: - uses: actions/create-github-app-token@v1 id: app-token @@ -185,14 +172,15 @@ jobs: if: always() needs: - pre-commit - - toolchain - build-native #- build-cross - test - docs + - upload-build-artifacts - deploy-python-package - create-release steps: + - name: Get workflow information id: get-workflow-info uses: technote-space/workflow-conclusion-action@v3 diff --git a/.github/workflows/test-fips-action.yml b/.github/workflows/test-fips-action.yml index 2454a7ee..97b10a7c 100644 --- a/.github/workflows/test-fips-action.yml +++ b/.github/workflows/test-fips-action.yml @@ -27,7 +27,7 @@ jobs: - name: Install System Dependencies run: | - yum install -y openssl-fips-provider python3 python3-virtualenv git gcc + yum install -y openssl-fips-provider python3 python3-devel python3-virtualenv git gcc binutils glibc-devel linux-api-headers libffi-devel - uses: actions/checkout@v3 @@ -41,6 +41,12 @@ jobs: run: | virtualenv venv + - name: Pip debug + run: | + ./venv/bin/python3 -m pip install --upgrade pip + ./venv/bin/python3 -c 'import platform; print(platform.libc_ver())' + ./venv/bin/pip3 debug --verbose + - name: Install Virtual Environment Dependencies run: | ./venv/bin/pip3 install -r requirements/tests.txt diff --git a/noxfile.py b/noxfile.py index 86f8e1ec..587d5b0b 100644 --- a/noxfile.py +++ b/noxfile.py @@ -47,12 +47,6 @@ def build(session, arch): invoke_relenv(session, "build", f"--arch={arch}") -@nox.session -@nox.parametrize("arch", ("x86_64", "aarch64")) -def toolchain(session, arch): - invoke_relenv(session, "toolchain", "build", f"--arch={arch}") - - # Convenience sessions @nox.session def build_x86_64(session): diff --git a/relenv/__main__.py b/relenv/__main__.py index 50757d0f..c40fd31c 100644 --- a/relenv/__main__.py +++ b/relenv/__main__.py @@ -6,7 +6,7 @@ from argparse import ArgumentParser -from . import build, buildenv, check, create, fetch, toolchain +from . import build, buildenv, check, create, fetch, pyversions, toolchain from .common import __version__ @@ -34,6 +34,7 @@ def setup_cli(): fetch, check, buildenv, + pyversions, ] for mod in modules_to_setup: mod.setup_parser(subparsers) @@ -47,10 +48,9 @@ def main(): """ parser = setup_cli() args = parser.parse_args() - # args.func(args) - try: + if hasattr(args, "func"): args.func(args) - except AttributeError: + else: parser.print_help() parser.exit(1, "\nNo subcommand given...\n\n") diff --git a/relenv/_toolchain/aarch64/aarch64-linux-gnu-ct-ng.config b/relenv/_toolchain/aarch64/aarch64-linux-gnu-ct-ng.config deleted file mode 100644 index ffd43142..00000000 --- a/relenv/_toolchain/aarch64/aarch64-linux-gnu-ct-ng.config +++ /dev/null @@ -1,798 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# crosstool-NG 1.25.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_rsync=y -CT_CONFIGURE_has_make_3_81_or_newer=y -CT_CONFIGURE_has_make_4_0_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 -CT_CONFIGURE_has_autoreconf_2_65_or_newer=y -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_python=y -CT_CONFIGURE_has_dtc=y -CT_CONFIGURE_has_git=y -CT_CONFIGURE_has_md5sum=y -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" -CT_VCHECK="" -CT_CONFIG_VERSION_ENV="4" -CT_CONFIG_VERSION_CURRENT="4" -CT_CONFIG_VERSION="4" -CT_MODULES=y - -# -# Paths and misc options -# - -# -# crosstool-NG behavior -# -# CT_OBSOLETE is not set -# CT_EXPERIMENTAL is not set -# CT_DEBUG_CT is not set - -# -# Paths -# -CT_LOCAL_TARBALLS_DIR="${HOME}/src" -CT_SAVE_TARBALLS=y -# CT_TARBALLS_BUILDROOT_LAYOUT is not set -CT_WORK_DIR="${CT_TOP_DIR}/.build" -CT_BUILD_TOP_DIR="${CT_WORK_DIR:-${CT_TOP_DIR}/.build}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}" -CT_BUILD_DIR="${CT_BUILD_TOP_DIR}/build" -CT_PREFIX_DIR="${CT_PREFIX:-${HOME}/x-tools}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}" -CT_RM_RF_PREFIX_DIR=y -CT_REMOVE_DOCS=y -CT_INSTALL_LICENSES=y -# CT_PREFIX_DIR_RO is not set -CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES=y -# CT_STRIP_TARGET_TOOLCHAIN_EXECUTABLES is not set - -# -# Downloading -# -CT_DOWNLOAD_AGENT_WGET=y -# CT_DOWNLOAD_AGENT_CURL is not set -# CT_DOWNLOAD_AGENT_NONE is not set -# 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_ONLY_DOWNLOAD is not set -# CT_USE_MIRROR is not set -CT_VERIFY_DOWNLOAD_DIGEST=y -CT_VERIFY_DOWNLOAD_DIGEST_SHA512=y -# CT_VERIFY_DOWNLOAD_DIGEST_SHA256 is not set -# CT_VERIFY_DOWNLOAD_DIGEST_SHA1 is not set -# CT_VERIFY_DOWNLOAD_DIGEST_MD5 is not set -CT_VERIFY_DOWNLOAD_DIGEST_ALG="sha512" -# CT_VERIFY_DOWNLOAD_SIGNATURE is not set - -# -# Extracting -# -# CT_FORCE_EXTRACT is not set -CT_OVERRIDE_CONFIG_GUESS_SUB=y -# CT_ONLY_EXTRACT is not set -CT_PATCH_BUNDLED=y -# CT_PATCH_BUNDLED_LOCAL is not set -CT_PATCH_ORDER="bundled" - -# -# Build behavior -# -CT_PARALLEL_JOBS=0 -CT_LOAD="" -CT_USE_PIPES=y -CT_EXTRA_CFLAGS_FOR_BUILD="" -CT_EXTRA_CXXFLAGS_FOR_BUILD="" -CT_EXTRA_LDFLAGS_FOR_BUILD="" -CT_EXTRA_CFLAGS_FOR_HOST="" -CT_EXTRA_LDFLAGS_FOR_HOST="" -# CT_CONFIG_SHELL_SH is not set -# CT_CONFIG_SHELL_ASH is not set -CT_CONFIG_SHELL_BASH=y -# CT_CONFIG_SHELL_CUSTOM is not set -CT_CONFIG_SHELL="${bash}" - -# -# Logging -# -# CT_LOG_ERROR is not set -# CT_LOG_WARN is not set -# CT_LOG_INFO is not set -CT_LOG_EXTRA=y -# CT_LOG_ALL is not set -# CT_LOG_DEBUG is not set -CT_LOG_LEVEL_MAX="EXTRA" -# CT_LOG_SEE_TOOLS_WARN is not set -CT_LOG_PROGRESS_BAR=y -CT_LOG_TO_FILE=y -CT_LOG_FILE_COMPRESS=y -# end of Paths and misc options - -# -# Target options -# -# CT_ARCH_ALPHA is not set -# CT_ARCH_ARC is not set -CT_ARCH_ARM=y -# CT_ARCH_AVR is not set -# CT_ARCH_M68K is not set -# CT_ARCH_MIPS is not set -# CT_ARCH_NIOS2 is not set -# CT_ARCH_POWERPC is not set -# CT_ARCH_PRU is not set -# CT_ARCH_S390 is not set -# CT_ARCH_SH is not set -# CT_ARCH_SPARC is not set -# CT_ARCH_X86 is not set -# CT_ARCH_XTENSA is not set -CT_ARCH="arm" -CT_ARCH_CHOICE_KSYM="ARM" -CT_ARCH_CPU="" -CT_ARCH_TUNE="" -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_ARCH_SUFFIX="" -CT_OMIT_TARGET_VENDOR=y - -# -# Generic target options -# -# CT_MULTILIB is not set -CT_DEMULTILIB=y -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_EITHER_ENDIAN=y -CT_ARCH_DEFAULT_LE=y -# CT_ARCH_BE is not set -CT_ARCH_LE=y -CT_ARCH_ENDIAN="little" -CT_ARCH_SUPPORTS_32=y -CT_ARCH_SUPPORTS_64=y -CT_ARCH_DEFAULT_32=y -CT_ARCH_BITNESS=64 -# CT_ARCH_32 is not set -CT_ARCH_64=y - -# -# Target optimisations -# -CT_ARCH_SUPPORTS_WITH_ARCH=y -CT_ARCH_SUPPORTS_WITH_CPU=y -CT_ARCH_SUPPORTS_WITH_TUNE=y -CT_ARCH_EXCLUSIVE_WITH_CPU=y -CT_ARCH_ARCH="" -CT_TARGET_CFLAGS="" -CT_TARGET_LDFLAGS="" -# end of Target options - -# -# Toolchain options -# - -# -# General toolchain options -# -CT_FORCE_SYSROOT=y -CT_USE_SYSROOT=y -CT_SYSROOT_NAME="sysroot" -CT_SYSROOT_DIR_PREFIX="" -CT_WANTS_STATIC_LINK=y -CT_WANTS_STATIC_LINK_CXX=y -CT_STATIC_TOOLCHAIN=y -CT_SHOW_CT_VERSION=y -CT_TOOLCHAIN_PKGVERSION="" -CT_TOOLCHAIN_BUGURL="" - -# -# Tuple completion and aliasing -# -CT_TARGET_ALIAS_SED_EXPR="" -CT_TARGET_ALIAS="" - -# -# Toolchain type -# -CT_CROSS=y -# CT_CANADIAN is not set -CT_TOOLCHAIN_TYPE="cross" - -# -# Build system -# -CT_BUILD="" -CT_BUILD_PREFIX="" -CT_BUILD_SUFFIX="" - -# -# Misc options -# -# CT_TOOLCHAIN_ENABLE_NLS is not set -# end of Toolchain options - -# -# Operating System -# -CT_KERNEL_SUPPORTS_SHARED_LIBS=y -# CT_KERNEL_BARE_METAL is not set -CT_KERNEL_LINUX=y -CT_KERNEL="linux" -CT_KERNEL_CHOICE_KSYM="LINUX" -CT_KERNEL_LINUX_SHOW=y - -# -# Options for linux -# -CT_KERNEL_LINUX_PKG_KSYM="LINUX" -CT_LINUX_DIR_NAME="linux" -CT_LINUX_USE_WWW_KERNEL_ORG=y -# CT_LINUX_USE_ORACLE is not set -CT_LINUX_USE="LINUX" -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_5_16=y -# CT_LINUX_V_5_15 is not set -# 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 -# CT_LINUX_V_5_10 is not set -# CT_LINUX_V_5_9 is not set -# CT_LINUX_V_5_8 is not set -# CT_LINUX_V_5_7 is not set -# CT_LINUX_V_5_4 is not set -# CT_LINUX_V_5_3 is not set -# CT_LINUX_V_5_2 is not set -# CT_LINUX_V_5_1 is not set -# CT_LINUX_V_5_0 is not set -# CT_LINUX_V_4_20 is not set -# CT_LINUX_V_4_19 is not set -# CT_LINUX_V_4_18 is not set -# CT_LINUX_V_4_17 is not set -# CT_LINUX_V_4_16 is not set -# CT_LINUX_V_4_15 is not set -# CT_LINUX_V_4_14 is not set -# CT_LINUX_V_4_13 is not set -# CT_LINUX_V_4_12 is not set -# CT_LINUX_V_4_11 is not set -# CT_LINUX_V_4_10 is not set -# CT_LINUX_V_4_9 is not set -# CT_LINUX_V_4_4 is not set -# CT_LINUX_V_4_1 is not set -# CT_LINUX_V_3_16 is not set -# 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.16.9" -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_12=y -CT_LINUX_5_12_or_later=y -CT_LINUX_later_than_5_3=y -CT_LINUX_5_3_or_later=y -CT_LINUX_later_than_4_8=y -CT_LINUX_4_8_or_later=y -CT_LINUX_later_than_3_7=y -CT_LINUX_3_7_or_later=y -CT_LINUX_REQUIRE_3_7_or_later=y -CT_LINUX_later_than_3_2=y -CT_LINUX_3_2_or_later=y -CT_KERNEL_DEP_RSYNC=y -CT_KERNEL_LINUX_VERBOSITY_0=y -# CT_KERNEL_LINUX_VERBOSITY_1 is not set -# CT_KERNEL_LINUX_VERBOSITY_2 is not set -CT_KERNEL_LINUX_VERBOSE_LEVEL=0 -CT_KERNEL_LINUX_INSTALL_CHECK=y -CT_ALL_KERNEL_CHOICES="BARE_METAL LINUX WINDOWS" - -# -# Common kernel options -# -CT_SHARED_LIBS=y -# end of Operating System - -# -# Binary utilities -# -CT_ARCH_BINFMT_ELF=y -CT_BINUTILS_BINUTILS=y -CT_BINUTILS="binutils" -CT_BINUTILS_CHOICE_KSYM="BINUTILS" -CT_BINUTILS_BINUTILS_SHOW=y - -# -# Options for binutils -# -CT_BINUTILS_BINUTILS_PKG_KSYM="BINUTILS" -CT_BINUTILS_DIR_NAME="binutils" -CT_BINUTILS_USE_GNU=y -# CT_BINUTILS_USE_ORACLE is not set -CT_BINUTILS_USE="BINUTILS" -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_29=y -# CT_BINUTILS_V_2_28 is not set -# CT_BINUTILS_V_2_27 is not set -# CT_BINUTILS_V_2_26 is not set -CT_BINUTILS_VERSION="2.29.1" -CT_BINUTILS_MIRRORS="$(CT_Mirrors GNU binutils) $(CT_Mirrors sourceware binutils/releases)" -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_30_or_older=y -CT_BINUTILS_older_than_2_30=y -CT_BINUTILS_REQUIRE_older_than_2_30=y -CT_BINUTILS_later_than_2_27=y -CT_BINUTILS_2_27_or_later=y -CT_BINUTILS_later_than_2_26=y -CT_BINUTILS_2_26_or_later=y - -# -# GNU binutils -# -CT_BINUTILS_GOLD_SUPPORTS_ARCH=y -CT_BINUTILS_FORCE_LD_BFD_DEFAULT=y -CT_BINUTILS_LINKER_LD=y -CT_BINUTILS_LINKERS_LIST="ld" -CT_BINUTILS_LINKER_DEFAULT="bfd" -CT_BINUTILS_RELRO=m -CT_BINUTILS_DETERMINISTIC_ARCHIVES=y -CT_BINUTILS_EXTRA_CONFIG_ARRAY="" -# CT_BINUTILS_FOR_TARGET is not set -CT_ALL_BINUTILS_CHOICES="BINUTILS" -# end of Binary utilities - -# -# C-library -# -CT_LIBC_GLIBC=y -# CT_LIBC_UCLIBC_NG is not set -CT_LIBC="glibc" -CT_LIBC_CHOICE_KSYM="GLIBC" -CT_THREADS="nptl" -CT_LIBC_GLIBC_SHOW=y - -# -# Options for glibc -# -CT_LIBC_GLIBC_PKG_KSYM="GLIBC" -CT_GLIBC_DIR_NAME="glibc" -CT_GLIBC_USE_GNU=y -# CT_GLIBC_USE_ORACLE is not set -CT_GLIBC_USE="GLIBC" -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_35 is not set -# 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 -# CT_GLIBC_V_2_30 is not set -# CT_GLIBC_V_2_29 is not set -# CT_GLIBC_V_2_28 is not set -# CT_GLIBC_V_2_27 is not set -# CT_GLIBC_V_2_26 is not set -# CT_GLIBC_V_2_25 is not set -# CT_GLIBC_V_2_24 is not set -# CT_GLIBC_V_2_23 is not set -# CT_GLIBC_V_2_19 is not set -CT_GLIBC_V_2_17=y -CT_GLIBC_VERSION="2.17" -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_34_or_older=y -CT_GLIBC_older_than_2_34=y -CT_GLIBC_2_32_or_older=y -CT_GLIBC_older_than_2_32=y -CT_GLIBC_2_31_or_older=y -CT_GLIBC_older_than_2_31=y -CT_GLIBC_2_30_or_older=y -CT_GLIBC_older_than_2_30=y -CT_GLIBC_2_29_or_older=y -CT_GLIBC_older_than_2_29=y -CT_GLIBC_2_28_or_older=y -CT_GLIBC_older_than_2_28=y -CT_GLIBC_2_27_or_older=y -CT_GLIBC_older_than_2_27=y -CT_GLIBC_2_26_or_older=y -CT_GLIBC_older_than_2_26=y -CT_GLIBC_2_25_or_older=y -CT_GLIBC_older_than_2_25=y -CT_GLIBC_2_24_or_older=y -CT_GLIBC_older_than_2_24=y -CT_GLIBC_2_23_or_older=y -CT_GLIBC_older_than_2_23=y -CT_GLIBC_2_20_or_older=y -CT_GLIBC_older_than_2_20=y -CT_GLIBC_2_17_or_later=y -CT_GLIBC_2_17_or_older=y -CT_GLIBC_later_than_2_14=y -CT_GLIBC_2_14_or_later=y -CT_GLIBC_DEP_KERNEL_HEADERS_VERSION=y -CT_GLIBC_DEP_BINUTILS=y -CT_GLIBC_DEP_GCC=y -CT_GLIBC_DEP_PYTHON=y -CT_GLIBC_SPARC_ALLOW_V7=y -CT_GLIBC_HAS_NPTL_ADDON=y -CT_GLIBC_HAS_PORTS_ADDON=y -CT_GLIBC_HAS_LIBIDN_ADDON=y -CT_GLIBC_USE_PORTS_ADDON=y -CT_GLIBC_USE_NPTL_ADDON=y -# CT_GLIBC_USE_LIBIDN_ADDON is not set -CT_GLIBC_HAS_OBSOLETE_RPC=y -CT_GLIBC_EXTRA_CONFIG_ARRAY="" -CT_GLIBC_CONFIGPARMS="" -CT_GLIBC_EXTRA_CFLAGS="-Wno-missing-attributes -Wno-array-bounds -Wno-array-parameter -Wno-stringop-overflow -Wno-maybe-uninitialized" -CT_GLIBC_ENABLE_OBSOLETE_RPC=y -# CT_GLIBC_DISABLE_VERSIONING is not set -CT_GLIBC_OLDEST_ABI="glibc-2.17" -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=y -# CT_GLIBC_KERNEL_VERSION_CHOSEN is not set -CT_GLIBC_MIN_KERNEL="5.16.9" -CT_GLIBC_ENABLE_COMMON_FLAG=y -CT_ALL_LIBC_CHOICES="AVR_LIBC BIONIC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE UCLIBC_NG" -CT_LIBC_SUPPORT_THREADS_ANY=y -CT_LIBC_SUPPORT_THREADS_NATIVE=y - -# -# Common C library options -# -CT_THREADS_NATIVE=y -# CT_CREATE_LDSO_CONF is not set -# CT_LIBC_XLDD is not set -# end of C-library - -# -# C compiler -# -CT_CC_CORE_NEEDED=y -CT_CC_SUPPORT_CXX=y -CT_CC_SUPPORT_FORTRAN=y -CT_CC_SUPPORT_ADA=y -CT_CC_SUPPORT_OBJC=y -CT_CC_SUPPORT_OBJCXX=y -CT_CC_SUPPORT_GOLANG=y -CT_CC_GCC=y -CT_CC="gcc" -CT_CC_CHOICE_KSYM="GCC" -CT_CC_GCC_SHOW=y - -# -# Options for gcc -# -CT_CC_GCC_PKG_KSYM="GCC" -CT_GCC_DIR_NAME="gcc" -CT_GCC_USE_GNU=y -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_11=y -# 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_V_5 is not set -# CT_GCC_V_4_9 is not set -CT_GCC_VERSION="11.2.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_later_than_11=y -CT_GCC_11_or_later=y -CT_GCC_later_than_10=y -CT_GCC_10_or_later=y -CT_GCC_later_than_9=y -CT_GCC_9_or_later=y -CT_GCC_later_than_8=y -CT_GCC_8_or_later=y -CT_GCC_later_than_7=y -CT_GCC_7_or_later=y -CT_GCC_later_than_6=y -CT_GCC_6_or_later=y -CT_GCC_later_than_5=y -CT_GCC_5_or_later=y -CT_GCC_later_than_4_9=y -CT_GCC_4_9_or_later=y -CT_CC_GCC_HAS_LIBMPX=y -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 is not set -CT_CC_GCC_CONFIG_TLS=m - -# -# Optimisation features -# -CT_CC_GCC_USE_GRAPHITE=y - -# -# Settings for libraries running on target -# -CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y -# CT_CC_GCC_LIBMUDFLAP is not set -# CT_CC_GCC_LIBGOMP is not set -# CT_CC_GCC_LIBSSP is not set -# CT_CC_GCC_LIBQUADMATH is not set -# CT_CC_GCC_LIBSANITIZER is not set - -# -# Misc. obscure options. -# -CT_CC_CXA_ATEXIT=y -CT_CC_GCC_TM_CLONE_REGISTRY=m -# CT_CC_GCC_DISABLE_PCH is not set -CT_CC_GCC_SJLJ_EXCEPTIONS=m -CT_CC_GCC_LDBL_128=m -# CT_CC_GCC_BUILD_ID is not set -CT_CC_GCC_LNK_HASH_STYLE_DEFAULT=y -# CT_CC_GCC_LNK_HASH_STYLE_SYSV is not set -# CT_CC_GCC_LNK_HASH_STYLE_GNU is not set -# CT_CC_GCC_LNK_HASH_STYLE_BOTH is not set -CT_CC_GCC_LNK_HASH_STYLE="" -CT_CC_GCC_DEC_FLOATS_AUTO=y -# CT_CC_GCC_DEC_FLOATS_BID is not set -# CT_CC_GCC_DEC_FLOATS_DPD is not set -# CT_CC_GCC_DEC_FLOATS_NO is not set -CT_CC_GCC_DEC_FLOATS="" -CT_ALL_CC_CHOICES="GCC" - -# -# Additional supported languages: -# -CT_CC_LANG_CXX=y -# CT_CC_LANG_FORTRAN is not set -# end of C compiler - -# -# Debug facilities -# -# CT_DEBUG_DUMA is not set -# CT_DEBUG_GDB is not set -# CT_DEBUG_LTRACE is not set -# CT_DEBUG_STRACE is not set -CT_ALL_DEBUG_CHOICES="DUMA GDB LTRACE STRACE" -# end of Debug facilities - -# -# Companion libraries -# -# CT_COMPLIBS_CHECK is not set -# CT_COMP_LIBS_CLOOG is not set -# CT_COMP_LIBS_EXPAT is not set -CT_COMP_LIBS_GETTEXT=y -CT_COMP_LIBS_GETTEXT_PKG_KSYM="GETTEXT" -CT_GETTEXT_DIR_NAME="gettext" -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=y -# CT_GETTEXT_V_0_20_1 is not set -# CT_GETTEXT_V_0_19_8_1 is not set -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_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" -CT_GMP_PKG_NAME="gmp" -CT_GMP_SRC_RELEASE=y -# CT_GMP_SRC_DEVEL is not set -CT_GMP_PATCH_ORDER="global" -CT_GMP_V_6_2=y -# CT_GMP_V_6_1 is not set -CT_GMP_VERSION="6.2.1" -CT_GMP_MIRRORS="https://gmplib.org/download/gmp https://gmplib.org/download/gmp/archive $(CT_Mirrors GNU gmp)" -CT_GMP_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_GMP_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_GMP_ARCHIVE_FORMATS=".tar.xz .tar.lz .tar.bz2" -CT_GMP_SIGNATURE_FORMAT="packed/.sig" -CT_COMP_LIBS_ISL=y -CT_COMP_LIBS_ISL_PKG_KSYM="ISL" -CT_ISL_DIR_NAME="isl" -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_23 is not set -# CT_ISL_V_0_22 is not set -# CT_ISL_V_0_21 is not set -# CT_ISL_V_0_20 is not set -# CT_ISL_V_0_19 is not set -# CT_ISL_V_0_18 is not set -# 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_MIRRORS="https://libisl.sourceforge.io" -CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_ISL_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz" -CT_ISL_SIGNATURE_FORMAT="" -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_LIBICONV=y -CT_COMP_LIBS_LIBICONV_PKG_KSYM="LIBICONV" -CT_LIBICONV_DIR_NAME="libiconv" -CT_LIBICONV_PKG_NAME="libiconv" -CT_LIBICONV_SRC_RELEASE=y -# CT_LIBICONV_SRC_DEVEL is not set -CT_LIBICONV_PATCH_ORDER="global" -CT_LIBICONV_V_1_16=y -# CT_LIBICONV_V_1_15 is not set -CT_LIBICONV_VERSION="1.16" -CT_LIBICONV_MIRRORS="$(CT_Mirrors GNU libiconv)" -CT_LIBICONV_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_LIBICONV_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_LIBICONV_ARCHIVE_FORMATS=".tar.gz" -CT_LIBICONV_SIGNATURE_FORMAT="packed/.sig" -CT_COMP_LIBS_MPC=y -CT_COMP_LIBS_MPC_PKG_KSYM="MPC" -CT_MPC_DIR_NAME="mpc" -CT_MPC_PKG_NAME="mpc" -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_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_MPC_ARCHIVE_FORMATS=".tar.gz" -CT_MPC_SIGNATURE_FORMAT="packed/.sig" -CT_MPC_later_than_1_1_0=y -CT_MPC_1_1_0_or_later=y -CT_COMP_LIBS_MPFR=y -CT_COMP_LIBS_MPFR_PKG_KSYM="MPFR" -CT_MPFR_DIR_NAME="mpfr" -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_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_MPFR_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_MPFR_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz .zip" -CT_MPFR_SIGNATURE_FORMAT="packed/.asc" -CT_MPFR_later_than_4_0_0=y -CT_MPFR_4_0_0_or_later=y -CT_COMP_LIBS_NCURSES=y -CT_COMP_LIBS_NCURSES_PKG_KSYM="NCURSES" -CT_NCURSES_DIR_NAME="ncurses" -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_1 is not set -# CT_NCURSES_V_6_0 is not set -CT_NCURSES_VERSION="6.2" -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}" -CT_NCURSES_ARCHIVE_FORMATS=".tar.gz" -CT_NCURSES_SIGNATURE_FORMAT="packed/.sig" -CT_NCURSES_NEW_ABI=y -CT_NCURSES_HOST_CONFIG_ARGS="" -CT_NCURSES_HOST_DISABLE_DB=y -CT_NCURSES_HOST_FALLBACKS="linux,xterm,xterm-color,xterm-256color,vt100" -CT_NCURSES_TARGET_CONFIG_ARGS="" -# CT_NCURSES_TARGET_DISABLE_DB is not set -CT_NCURSES_TARGET_FALLBACKS="" -CT_COMP_LIBS_ZLIB=y -CT_COMP_LIBS_ZLIB_PKG_KSYM="ZLIB" -CT_ZLIB_DIR_NAME="zlib" -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.13" -CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION}/ https://www.zlib.net/ https://www.zlib.net/fossils/" -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_LIBICONV_NEEDED=y -CT_GETTEXT_NEEDED=y -CT_GMP_NEEDED=y -CT_MPFR_NEEDED=y -CT_ISL_NEEDED=y -CT_MPC_NEEDED=y -CT_NCURSES_NEEDED=y -CT_ZLIB_NEEDED=y -CT_LIBICONV=y -CT_GETTEXT=y -CT_GMP=y -CT_MPFR=y -CT_ISL=y -CT_MPC=y -CT_NCURSES=y -CT_ZLIB=y -# end of Companion libraries - -# -# Companion tools -# -# CT_COMP_TOOLS_FOR_HOST is not set -# CT_COMP_TOOLS_AUTOCONF is not set -# CT_COMP_TOOLS_AUTOMAKE is not set -# CT_COMP_TOOLS_BISON is not set -# CT_COMP_TOOLS_DTC is not set -# CT_COMP_TOOLS_LIBTOOL is not set -# CT_COMP_TOOLS_M4 is not set -# CT_COMP_TOOLS_MAKE is not set -CT_ALL_COMP_TOOLS_CHOICES="AUTOCONF AUTOMAKE BISON DTC LIBTOOL M4 MAKE" -# end of Companion tools diff --git a/relenv/_toolchain/aarch64/x86_64-linux-gnu-ct-ng.config b/relenv/_toolchain/aarch64/x86_64-linux-gnu-ct-ng.config deleted file mode 100644 index 4f51dbc5..00000000 --- a/relenv/_toolchain/aarch64/x86_64-linux-gnu-ct-ng.config +++ /dev/null @@ -1,800 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# crosstool-NG 1.25.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_rsync=y -CT_CONFIGURE_has_make_3_81_or_newer=y -CT_CONFIGURE_has_make_4_0_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 -CT_CONFIGURE_has_autoreconf_2_65_or_newer=y -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_python=y -CT_CONFIGURE_has_dtc=y -CT_CONFIGURE_has_git=y -CT_CONFIGURE_has_md5sum=y -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" -CT_VCHECK="" -CT_CONFIG_VERSION_ENV="4" -CT_CONFIG_VERSION_CURRENT="4" -CT_CONFIG_VERSION="4" -CT_MODULES=y - -# -# Paths and misc options -# - -# -# crosstool-NG behavior -# -# CT_OBSOLETE is not set -# CT_EXPERIMENTAL is not set -# CT_DEBUG_CT is not set - -# -# Paths -# -CT_LOCAL_TARBALLS_DIR="${HOME}/src" -CT_SAVE_TARBALLS=y -# CT_TARBALLS_BUILDROOT_LAYOUT is not set -CT_WORK_DIR="${CT_TOP_DIR}/.build" -CT_BUILD_TOP_DIR="${CT_WORK_DIR:-${CT_TOP_DIR}/.build}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}" -CT_BUILD_DIR="${CT_BUILD_TOP_DIR}/build" -CT_PREFIX_DIR="${CT_PREFIX:-${HOME}/x-tools}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}" -CT_RM_RF_PREFIX_DIR=y -CT_REMOVE_DOCS=y -CT_INSTALL_LICENSES=y -# CT_PREFIX_DIR_RO is not set -CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES=y -# CT_STRIP_TARGET_TOOLCHAIN_EXECUTABLES is not set - -# -# Downloading -# -CT_DOWNLOAD_AGENT_WGET=y -# CT_DOWNLOAD_AGENT_CURL is not set -# CT_DOWNLOAD_AGENT_NONE is not set -# 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_ONLY_DOWNLOAD is not set -# CT_USE_MIRROR is not set -CT_VERIFY_DOWNLOAD_DIGEST=y -CT_VERIFY_DOWNLOAD_DIGEST_SHA512=y -# CT_VERIFY_DOWNLOAD_DIGEST_SHA256 is not set -# CT_VERIFY_DOWNLOAD_DIGEST_SHA1 is not set -# CT_VERIFY_DOWNLOAD_DIGEST_MD5 is not set -CT_VERIFY_DOWNLOAD_DIGEST_ALG="sha512" -# CT_VERIFY_DOWNLOAD_SIGNATURE is not set - -# -# Extracting -# -# CT_FORCE_EXTRACT is not set -CT_OVERRIDE_CONFIG_GUESS_SUB=y -# CT_ONLY_EXTRACT is not set -CT_PATCH_BUNDLED=y -# CT_PATCH_BUNDLED_LOCAL is not set -CT_PATCH_ORDER="bundled" - -# -# Build behavior -# -CT_PARALLEL_JOBS=0 -CT_LOAD="" -CT_USE_PIPES=y -CT_EXTRA_CFLAGS_FOR_BUILD="" -CT_EXTRA_CXXFLAGS_FOR_BUILD="" -CT_EXTRA_LDFLAGS_FOR_BUILD="" -CT_EXTRA_CFLAGS_FOR_HOST="" -CT_EXTRA_LDFLAGS_FOR_HOST="" -# CT_CONFIG_SHELL_SH is not set -# CT_CONFIG_SHELL_ASH is not set -CT_CONFIG_SHELL_BASH=y -# CT_CONFIG_SHELL_CUSTOM is not set -CT_CONFIG_SHELL="${bash}" - -# -# Logging -# -# CT_LOG_ERROR is not set -# CT_LOG_WARN is not set -# CT_LOG_INFO is not set -CT_LOG_EXTRA=y -# CT_LOG_ALL is not set -# CT_LOG_DEBUG is not set -CT_LOG_LEVEL_MAX="EXTRA" -# CT_LOG_SEE_TOOLS_WARN is not set -CT_LOG_PROGRESS_BAR=y -CT_LOG_TO_FILE=y -CT_LOG_FILE_COMPRESS=y -# end of Paths and misc options - -# -# Target options -# -# CT_ARCH_ALPHA is not set -# CT_ARCH_ARC is not set -# CT_ARCH_ARM is not set -# CT_ARCH_AVR is not set -# CT_ARCH_M68K is not set -# CT_ARCH_MIPS is not set -# CT_ARCH_NIOS2 is not set -# CT_ARCH_POWERPC is not set -# CT_ARCH_PRU is not set -# CT_ARCH_S390 is not set -# CT_ARCH_SH is not set -# CT_ARCH_SPARC is not set -CT_ARCH_X86=y -# CT_ARCH_XTENSA is not set -CT_ARCH="x86" -CT_ARCH_CHOICE_KSYM="X86" -CT_ARCH_CPU="" -CT_ARCH_TUNE="" -CT_ARCH_X86_SHOW=y - -# -# Options for x86 -# -CT_ARCH_X86_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_ARCH_SUFFIX="" -CT_OMIT_TARGET_VENDOR=y - -# -# Generic target options -# -# CT_MULTILIB is not set -CT_DEMULTILIB=y -CT_ARCH_USE_MMU=y -CT_ARCH_SUPPORTS_32=y -CT_ARCH_SUPPORTS_64=y -CT_ARCH_DEFAULT_32=y -CT_ARCH_BITNESS=64 -# CT_ARCH_32 is not set -CT_ARCH_64=y -CT_ARCH_SUPPORTS_WITH_32_64=y - -# -# Target optimisations -# -CT_ARCH_SUPPORTS_WITH_ARCH=y -CT_ARCH_SUPPORTS_WITH_CPU=y -CT_ARCH_SUPPORTS_WITH_TUNE=y -CT_ARCH_ARCH="" -CT_TARGET_CFLAGS="" -CT_TARGET_LDFLAGS="" -# end of Target options - -# -# Toolchain options -# - -# -# General toolchain options -# -CT_FORCE_SYSROOT=y -CT_USE_SYSROOT=y -CT_SYSROOT_NAME="sysroot" -CT_SYSROOT_DIR_PREFIX="" -CT_WANTS_STATIC_LINK=y -CT_WANTS_STATIC_LINK_CXX=y -CT_STATIC_TOOLCHAIN=y -CT_SHOW_CT_VERSION=y -CT_TOOLCHAIN_PKGVERSION="" -CT_TOOLCHAIN_BUGURL="" - -# -# Tuple completion and aliasing -# -CT_TARGET_ALIAS_SED_EXPR="" -CT_TARGET_ALIAS="" - -# -# Toolchain type -# -CT_CROSS=y -# CT_CANADIAN is not set -CT_TOOLCHAIN_TYPE="cross" - -# -# Build system -# -CT_BUILD="" -CT_BUILD_PREFIX="" -CT_BUILD_SUFFIX="" - -# -# Misc options -# -# CT_TOOLCHAIN_ENABLE_NLS is not set -# end of Toolchain options - -# -# Operating System -# -CT_KERNEL_SUPPORTS_SHARED_LIBS=y -# CT_KERNEL_BARE_METAL is not set -CT_KERNEL_LINUX=y -CT_KERNEL="linux" -CT_KERNEL_CHOICE_KSYM="LINUX" -CT_KERNEL_LINUX_SHOW=y - -# -# Options for linux -# -CT_KERNEL_LINUX_PKG_KSYM="LINUX" -CT_LINUX_DIR_NAME="linux" -CT_LINUX_USE_WWW_KERNEL_ORG=y -# CT_LINUX_USE_ORACLE is not set -CT_LINUX_USE="LINUX" -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_5_16=y -# CT_LINUX_V_5_15 is not set -# 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 -# CT_LINUX_V_5_10 is not set -# CT_LINUX_V_5_9 is not set -# CT_LINUX_V_5_8 is not set -# CT_LINUX_V_5_7 is not set -# CT_LINUX_V_5_4 is not set -# CT_LINUX_V_5_3 is not set -# CT_LINUX_V_5_2 is not set -# CT_LINUX_V_5_1 is not set -# CT_LINUX_V_5_0 is not set -# CT_LINUX_V_4_20 is not set -# CT_LINUX_V_4_19 is not set -# CT_LINUX_V_4_18 is not set -# CT_LINUX_V_4_17 is not set -# CT_LINUX_V_4_16 is not set -# CT_LINUX_V_4_15 is not set -# CT_LINUX_V_4_14 is not set -# CT_LINUX_V_4_13 is not set -# CT_LINUX_V_4_12 is not set -# CT_LINUX_V_4_11 is not set -# CT_LINUX_V_4_10 is not set -# CT_LINUX_V_4_9 is not set -# CT_LINUX_V_4_4 is not set -# CT_LINUX_V_4_1 is not set -# CT_LINUX_V_3_16 is not set -# 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_V_3_4 is not set -# CT_LINUX_V_3_2 is not set -# CT_LINUX_V_2_6_32 is not set -CT_LINUX_VERSION="5.16.9" -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_12=y -CT_LINUX_5_12_or_later=y -CT_LINUX_later_than_5_3=y -CT_LINUX_5_3_or_later=y -CT_LINUX_later_than_4_8=y -CT_LINUX_4_8_or_later=y -CT_LINUX_later_than_3_7=y -CT_LINUX_3_7_or_later=y -CT_LINUX_later_than_3_2=y -CT_LINUX_3_2_or_later=y -CT_KERNEL_DEP_RSYNC=y -CT_KERNEL_LINUX_VERBOSITY_0=y -# CT_KERNEL_LINUX_VERBOSITY_1 is not set -# CT_KERNEL_LINUX_VERBOSITY_2 is not set -CT_KERNEL_LINUX_VERBOSE_LEVEL=0 -CT_KERNEL_LINUX_INSTALL_CHECK=y -CT_ALL_KERNEL_CHOICES="BARE_METAL LINUX WINDOWS" - -# -# Common kernel options -# -CT_SHARED_LIBS=y -# end of Operating System - -# -# Binary utilities -# -CT_ARCH_BINFMT_ELF=y -CT_BINUTILS_BINUTILS=y -CT_BINUTILS="binutils" -CT_BINUTILS_CHOICE_KSYM="BINUTILS" -CT_BINUTILS_BINUTILS_SHOW=y - -# -# Options for binutils -# -CT_BINUTILS_BINUTILS_PKG_KSYM="BINUTILS" -CT_BINUTILS_DIR_NAME="binutils" -CT_BINUTILS_USE_GNU=y -# CT_BINUTILS_USE_ORACLE is not set -CT_BINUTILS_USE="BINUTILS" -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_38 is not set -# CT_BINUTILS_V_2_37 is not set -# CT_BINUTILS_V_2_36 is not set -# CT_BINUTILS_V_2_35 is not set -# CT_BINUTILS_V_2_34 is not set -# CT_BINUTILS_V_2_33 is not set -# CT_BINUTILS_V_2_32 is not set -# CT_BINUTILS_V_2_31 is not set -# CT_BINUTILS_V_2_30 is not set -CT_BINUTILS_V_2_29=y -# CT_BINUTILS_V_2_28 is not set -# CT_BINUTILS_V_2_27 is not set -# CT_BINUTILS_V_2_26 is not set -CT_BINUTILS_VERSION="2.29.1" -CT_BINUTILS_MIRRORS="$(CT_Mirrors GNU binutils) $(CT_Mirrors sourceware binutils/releases)" -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_30_or_older=y -CT_BINUTILS_older_than_2_30=y -CT_BINUTILS_later_than_2_27=y -CT_BINUTILS_2_27_or_later=y -CT_BINUTILS_later_than_2_26=y -CT_BINUTILS_2_26_or_later=y - -# -# GNU binutils -# -CT_BINUTILS_GOLD_SUPPORTS_ARCH=y -CT_BINUTILS_FORCE_LD_BFD_DEFAULT=y -CT_BINUTILS_LINKER_LD=y -CT_BINUTILS_LINKERS_LIST="ld" -CT_BINUTILS_LINKER_DEFAULT="bfd" -CT_BINUTILS_RELRO=m -CT_BINUTILS_DETERMINISTIC_ARCHIVES=y -CT_BINUTILS_EXTRA_CONFIG_ARRAY="" -# CT_BINUTILS_FOR_TARGET is not set -CT_ALL_BINUTILS_CHOICES="BINUTILS" -# end of Binary utilities - -# -# C-library -# -CT_LIBC_GLIBC=y -# CT_LIBC_UCLIBC_NG is not set -CT_LIBC="glibc" -CT_LIBC_CHOICE_KSYM="GLIBC" -CT_THREADS="nptl" -CT_LIBC_GLIBC_SHOW=y - -# -# Options for glibc -# -CT_LIBC_GLIBC_PKG_KSYM="GLIBC" -CT_GLIBC_DIR_NAME="glibc" -CT_GLIBC_USE_GNU=y -# CT_GLIBC_USE_ORACLE is not set -CT_GLIBC_USE="GLIBC" -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_35 is not set -# 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 -# CT_GLIBC_V_2_30 is not set -# CT_GLIBC_V_2_29 is not set -# CT_GLIBC_V_2_28 is not set -# CT_GLIBC_V_2_27 is not set -# CT_GLIBC_V_2_26 is not set -# CT_GLIBC_V_2_25 is not set -# CT_GLIBC_V_2_24 is not set -# CT_GLIBC_V_2_23 is not set -# CT_GLIBC_V_2_19 is not set -CT_GLIBC_V_2_17=y -CT_GLIBC_VERSION="2.17" -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_34_or_older=y -CT_GLIBC_older_than_2_34=y -CT_GLIBC_2_32_or_older=y -CT_GLIBC_older_than_2_32=y -CT_GLIBC_2_31_or_older=y -CT_GLIBC_older_than_2_31=y -CT_GLIBC_2_30_or_older=y -CT_GLIBC_older_than_2_30=y -CT_GLIBC_2_29_or_older=y -CT_GLIBC_older_than_2_29=y -CT_GLIBC_2_28_or_older=y -CT_GLIBC_older_than_2_28=y -CT_GLIBC_2_27_or_older=y -CT_GLIBC_older_than_2_27=y -CT_GLIBC_2_26_or_older=y -CT_GLIBC_older_than_2_26=y -CT_GLIBC_2_25_or_older=y -CT_GLIBC_older_than_2_25=y -CT_GLIBC_2_24_or_older=y -CT_GLIBC_older_than_2_24=y -CT_GLIBC_2_23_or_older=y -CT_GLIBC_older_than_2_23=y -CT_GLIBC_2_20_or_older=y -CT_GLIBC_older_than_2_20=y -CT_GLIBC_2_17_or_later=y -CT_GLIBC_2_17_or_older=y -CT_GLIBC_later_than_2_14=y -CT_GLIBC_2_14_or_later=y -CT_GLIBC_DEP_KERNEL_HEADERS_VERSION=y -CT_GLIBC_DEP_BINUTILS=y -CT_GLIBC_DEP_GCC=y -CT_GLIBC_DEP_PYTHON=y -CT_GLIBC_SPARC_ALLOW_V7=y -CT_GLIBC_HAS_NPTL_ADDON=y -CT_GLIBC_HAS_PORTS_ADDON=y -CT_GLIBC_HAS_LIBIDN_ADDON=y -CT_GLIBC_USE_NPTL_ADDON=y -# CT_GLIBC_USE_LIBIDN_ADDON is not set -CT_GLIBC_HAS_OBSOLETE_RPC=y -CT_GLIBC_EXTRA_CONFIG_ARRAY="" -CT_GLIBC_CONFIGPARMS="" -CT_GLIBC_EXTRA_CFLAGS="-Wno-missing-attributes -Wno-array-bounds -Wno-array-parameter -Wno-stringop-overflow -Wno-maybe-uninitialized" -CT_GLIBC_ENABLE_OBSOLETE_RPC=y -# CT_GLIBC_DISABLE_VERSIONING is not set -CT_GLIBC_OLDEST_ABI="glibc-2.17" -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=y -# CT_GLIBC_KERNEL_VERSION_CHOSEN is not set -CT_GLIBC_MIN_KERNEL="5.16.9" -CT_GLIBC_ENABLE_COMMON_FLAG=y -CT_ALL_LIBC_CHOICES="AVR_LIBC BIONIC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE UCLIBC_NG" -CT_LIBC_SUPPORT_THREADS_ANY=y -CT_LIBC_SUPPORT_THREADS_NATIVE=y - -# -# Common C library options -# -CT_THREADS_NATIVE=y -# CT_CREATE_LDSO_CONF is not set -# CT_LIBC_XLDD is not set -# end of C-library - -# -# C compiler -# -CT_CC_CORE_NEEDED=y -CT_CC_SUPPORT_CXX=y -CT_CC_SUPPORT_FORTRAN=y -CT_CC_SUPPORT_ADA=y -CT_CC_SUPPORT_OBJC=y -CT_CC_SUPPORT_OBJCXX=y -CT_CC_SUPPORT_GOLANG=y -CT_CC_GCC=y -CT_CC="gcc" -CT_CC_CHOICE_KSYM="GCC" -CT_CC_GCC_SHOW=y - -# -# Options for gcc -# -CT_CC_GCC_PKG_KSYM="GCC" -CT_GCC_DIR_NAME="gcc" -CT_GCC_USE_GNU=y -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_11=y -# 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_V_5 is not set -# CT_GCC_V_4_9 is not set -CT_GCC_VERSION="11.2.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_later_than_11=y -CT_GCC_11_or_later=y -CT_GCC_later_than_10=y -CT_GCC_10_or_later=y -CT_GCC_later_than_9=y -CT_GCC_9_or_later=y -CT_GCC_later_than_8=y -CT_GCC_8_or_later=y -CT_GCC_later_than_7=y -CT_GCC_7_or_later=y -CT_GCC_later_than_6=y -CT_GCC_6_or_later=y -CT_GCC_later_than_5=y -CT_GCC_5_or_later=y -CT_GCC_later_than_4_9=y -CT_GCC_4_9_or_later=y -CT_CC_GCC_HAS_LIBMPX=y -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 is not set -CT_CC_GCC_CONFIG_TLS=m - -# -# Optimisation features -# -CT_CC_GCC_USE_GRAPHITE=y - -# -# Settings for libraries running on target -# -CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y -# CT_CC_GCC_LIBMUDFLAP is not set -# CT_CC_GCC_LIBGOMP is not set -# CT_CC_GCC_LIBSSP is not set -# CT_CC_GCC_LIBQUADMATH is not set -# CT_CC_GCC_LIBSANITIZER is not set -# CT_CC_GCC_LIBMPX is not set - -# -# Misc. obscure options. -# -CT_CC_CXA_ATEXIT=y -CT_CC_GCC_TM_CLONE_REGISTRY=m -# CT_CC_GCC_DISABLE_PCH is not set -CT_CC_GCC_SJLJ_EXCEPTIONS=m -CT_CC_GCC_LDBL_128=m -# CT_CC_GCC_BUILD_ID is not set -CT_CC_GCC_LNK_HASH_STYLE_DEFAULT=y -# CT_CC_GCC_LNK_HASH_STYLE_SYSV is not set -# CT_CC_GCC_LNK_HASH_STYLE_GNU is not set -# CT_CC_GCC_LNK_HASH_STYLE_BOTH is not set -CT_CC_GCC_LNK_HASH_STYLE="" -CT_CC_GCC_DEC_FLOATS_AUTO=y -# CT_CC_GCC_DEC_FLOATS_BID is not set -# CT_CC_GCC_DEC_FLOATS_DPD is not set -# CT_CC_GCC_DEC_FLOATS_NO is not set -CT_CC_GCC_DEC_FLOATS="" -CT_ALL_CC_CHOICES="GCC" - -# -# Additional supported languages: -# -CT_CC_LANG_CXX=y -# CT_CC_LANG_FORTRAN is not set -# end of C compiler - -# -# Debug facilities -# -# CT_DEBUG_DUMA is not set -# CT_DEBUG_GDB is not set -# CT_DEBUG_LTRACE is not set -# CT_DEBUG_STRACE is not set -CT_ALL_DEBUG_CHOICES="DUMA GDB LTRACE STRACE" -# end of Debug facilities - -# -# Companion libraries -# -# CT_COMPLIBS_CHECK is not set -# CT_COMP_LIBS_CLOOG is not set -# CT_COMP_LIBS_EXPAT is not set -CT_COMP_LIBS_GETTEXT=y -CT_COMP_LIBS_GETTEXT_PKG_KSYM="GETTEXT" -CT_GETTEXT_DIR_NAME="gettext" -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=y -# CT_GETTEXT_V_0_20_1 is not set -# CT_GETTEXT_V_0_19_8_1 is not set -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_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" -CT_GMP_PKG_NAME="gmp" -CT_GMP_SRC_RELEASE=y -# CT_GMP_SRC_DEVEL is not set -CT_GMP_PATCH_ORDER="global" -CT_GMP_V_6_2=y -# CT_GMP_V_6_1 is not set -CT_GMP_VERSION="6.2.1" -CT_GMP_MIRRORS="https://gmplib.org/download/gmp https://gmplib.org/download/gmp/archive $(CT_Mirrors GNU gmp)" -CT_GMP_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_GMP_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_GMP_ARCHIVE_FORMATS=".tar.xz .tar.lz .tar.bz2" -CT_GMP_SIGNATURE_FORMAT="packed/.sig" -CT_COMP_LIBS_ISL=y -CT_COMP_LIBS_ISL_PKG_KSYM="ISL" -CT_ISL_DIR_NAME="isl" -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_23 is not set -# CT_ISL_V_0_22 is not set -# CT_ISL_V_0_21 is not set -# CT_ISL_V_0_20 is not set -# CT_ISL_V_0_19 is not set -# CT_ISL_V_0_18 is not set -# 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_MIRRORS="https://libisl.sourceforge.io" -CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_ISL_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz" -CT_ISL_SIGNATURE_FORMAT="" -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_LIBICONV=y -CT_COMP_LIBS_LIBICONV_PKG_KSYM="LIBICONV" -CT_LIBICONV_DIR_NAME="libiconv" -CT_LIBICONV_PKG_NAME="libiconv" -CT_LIBICONV_SRC_RELEASE=y -# CT_LIBICONV_SRC_DEVEL is not set -CT_LIBICONV_PATCH_ORDER="global" -CT_LIBICONV_V_1_16=y -# CT_LIBICONV_V_1_15 is not set -CT_LIBICONV_VERSION="1.16" -CT_LIBICONV_MIRRORS="$(CT_Mirrors GNU libiconv)" -CT_LIBICONV_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_LIBICONV_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_LIBICONV_ARCHIVE_FORMATS=".tar.gz" -CT_LIBICONV_SIGNATURE_FORMAT="packed/.sig" -CT_COMP_LIBS_MPC=y -CT_COMP_LIBS_MPC_PKG_KSYM="MPC" -CT_MPC_DIR_NAME="mpc" -CT_MPC_PKG_NAME="mpc" -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_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_MPC_ARCHIVE_FORMATS=".tar.gz" -CT_MPC_SIGNATURE_FORMAT="packed/.sig" -CT_MPC_later_than_1_1_0=y -CT_MPC_1_1_0_or_later=y -CT_COMP_LIBS_MPFR=y -CT_COMP_LIBS_MPFR_PKG_KSYM="MPFR" -CT_MPFR_DIR_NAME="mpfr" -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_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_MPFR_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_MPFR_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz .zip" -CT_MPFR_SIGNATURE_FORMAT="packed/.asc" -CT_MPFR_later_than_4_0_0=y -CT_MPFR_4_0_0_or_later=y -CT_COMP_LIBS_NCURSES=y -CT_COMP_LIBS_NCURSES_PKG_KSYM="NCURSES" -CT_NCURSES_DIR_NAME="ncurses" -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_1 is not set -# CT_NCURSES_V_6_0 is not set -CT_NCURSES_VERSION="6.2" -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}" -CT_NCURSES_ARCHIVE_FORMATS=".tar.gz" -CT_NCURSES_SIGNATURE_FORMAT="packed/.sig" -CT_NCURSES_NEW_ABI=y -CT_NCURSES_HOST_CONFIG_ARGS="" -CT_NCURSES_HOST_DISABLE_DB=y -CT_NCURSES_HOST_FALLBACKS="linux,xterm,xterm-color,xterm-256color,vt100" -CT_NCURSES_TARGET_CONFIG_ARGS="" -# CT_NCURSES_TARGET_DISABLE_DB is not set -CT_NCURSES_TARGET_FALLBACKS="" -CT_COMP_LIBS_ZLIB=y -CT_COMP_LIBS_ZLIB_PKG_KSYM="ZLIB" -CT_ZLIB_DIR_NAME="zlib" -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.13" -CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION}/ https://www.zlib.net/ https://www.zlib.net/fossils/" -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_LIBICONV_NEEDED=y -CT_GETTEXT_NEEDED=y -CT_GMP_NEEDED=y -CT_MPFR_NEEDED=y -CT_ISL_NEEDED=y -CT_MPC_NEEDED=y -CT_NCURSES_NEEDED=y -CT_ZLIB_NEEDED=y -CT_LIBICONV=y -CT_GETTEXT=y -CT_GMP=y -CT_MPFR=y -CT_ISL=y -CT_MPC=y -CT_NCURSES=y -CT_ZLIB=y -# end of Companion libraries - -# -# Companion tools -# -# CT_COMP_TOOLS_FOR_HOST is not set -# CT_COMP_TOOLS_AUTOCONF is not set -# CT_COMP_TOOLS_AUTOMAKE is not set -# CT_COMP_TOOLS_BISON is not set -# CT_COMP_TOOLS_DTC is not set -# CT_COMP_TOOLS_LIBTOOL is not set -# CT_COMP_TOOLS_M4 is not set -# CT_COMP_TOOLS_MAKE is not set -CT_ALL_COMP_TOOLS_CHOICES="AUTOCONF AUTOMAKE BISON DTC LIBTOOL M4 MAKE" -# end of Companion tools diff --git a/relenv/_toolchain/x86_64/aarch64-linux-gnu-ct-ng.config b/relenv/_toolchain/x86_64/aarch64-linux-gnu-ct-ng.config deleted file mode 100644 index 5396025d..00000000 --- a/relenv/_toolchain/x86_64/aarch64-linux-gnu-ct-ng.config +++ /dev/null @@ -1,799 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# crosstool-NG 1.25.0 Configuration -# -CT_CONFIGURE_has_static_link=y -CT_CONFIGURE_has_cxx11=y -CT_CONFIGURE_has_lzip=y -CT_CONFIGURE_has_wget=y -CT_CONFIGURE_has_curl=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_libtool_2_4_or_newer=y -CT_CONFIGURE_has_libtoolize_2_4_or_newer=y -CT_CONFIGURE_has_autoconf_2_65_or_newer=y -CT_CONFIGURE_has_autoreconf_2_65_or_newer=y -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_python=y -CT_CONFIGURE_has_svn=y -CT_CONFIGURE_has_git=y -CT_CONFIGURE_has_md5sum=y -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" -CT_VCHECK="" -CT_CONFIG_VERSION_ENV="4" -CT_CONFIG_VERSION_CURRENT="4" -CT_CONFIG_VERSION="4" -CT_MODULES=y - -# -# Paths and misc options -# - -# -# crosstool-NG behavior -# -# CT_OBSOLETE is not set -# CT_EXPERIMENTAL is not set -# CT_DEBUG_CT is not set - -# -# Paths -# -CT_LOCAL_TARBALLS_DIR="${HOME}/src" -CT_SAVE_TARBALLS=y -# CT_TARBALLS_BUILDROOT_LAYOUT is not set -CT_WORK_DIR="${CT_TOP_DIR}/.build" -CT_BUILD_TOP_DIR="${CT_WORK_DIR:-${CT_TOP_DIR}/.build}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}" -CT_BUILD_DIR="${CT_BUILD_TOP_DIR}/build" -CT_PREFIX_DIR="${CT_PREFIX:-${HOME}/x-tools}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}" -CT_RM_RF_PREFIX_DIR=y -CT_REMOVE_DOCS=y -CT_INSTALL_LICENSES=y -# CT_PREFIX_DIR_RO is not set -CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES=y -# CT_STRIP_TARGET_TOOLCHAIN_EXECUTABLES is not set - -# -# Downloading -# -CT_DOWNLOAD_AGENT_WGET=y -# CT_DOWNLOAD_AGENT_CURL is not set -# CT_DOWNLOAD_AGENT_NONE is not set -# 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_ONLY_DOWNLOAD is not set -# CT_USE_MIRROR is not set -CT_VERIFY_DOWNLOAD_DIGEST=y -CT_VERIFY_DOWNLOAD_DIGEST_SHA512=y -# CT_VERIFY_DOWNLOAD_DIGEST_SHA256 is not set -# CT_VERIFY_DOWNLOAD_DIGEST_SHA1 is not set -# CT_VERIFY_DOWNLOAD_DIGEST_MD5 is not set -CT_VERIFY_DOWNLOAD_DIGEST_ALG="sha512" -# CT_VERIFY_DOWNLOAD_SIGNATURE is not set - -# -# Extracting -# -# CT_FORCE_EXTRACT is not set -CT_OVERRIDE_CONFIG_GUESS_SUB=y -# CT_ONLY_EXTRACT is not set -CT_PATCH_BUNDLED=y -# CT_PATCH_BUNDLED_LOCAL is not set -CT_PATCH_ORDER="bundled" - -# -# Build behavior -# -CT_PARALLEL_JOBS=0 -CT_LOAD="" -CT_USE_PIPES=y -CT_EXTRA_CFLAGS_FOR_BUILD="" -CT_EXTRA_CXXFLAGS_FOR_BUILD="" -CT_EXTRA_LDFLAGS_FOR_BUILD="" -CT_EXTRA_CFLAGS_FOR_HOST="" -CT_EXTRA_LDFLAGS_FOR_HOST="" -# CT_CONFIG_SHELL_SH is not set -# CT_CONFIG_SHELL_ASH is not set -CT_CONFIG_SHELL_BASH=y -# CT_CONFIG_SHELL_CUSTOM is not set -CT_CONFIG_SHELL="${bash}" - -# -# Logging -# -# CT_LOG_ERROR is not set -# CT_LOG_WARN is not set -# CT_LOG_INFO is not set -CT_LOG_EXTRA=y -# CT_LOG_ALL is not set -# CT_LOG_DEBUG is not set -CT_LOG_LEVEL_MAX="EXTRA" -# CT_LOG_SEE_TOOLS_WARN is not set -CT_LOG_PROGRESS_BAR=y -CT_LOG_TO_FILE=y -CT_LOG_FILE_COMPRESS=y -# end of Paths and misc options - -# -# Target options -# -# CT_ARCH_ALPHA is not set -# CT_ARCH_ARC is not set -CT_ARCH_ARM=y -# CT_ARCH_AVR is not set -# CT_ARCH_M68K is not set -# CT_ARCH_MIPS is not set -# CT_ARCH_NIOS2 is not set -# CT_ARCH_POWERPC is not set -# CT_ARCH_PRU is not set -# CT_ARCH_S390 is not set -# CT_ARCH_SH is not set -# CT_ARCH_SPARC is not set -# CT_ARCH_X86 is not set -# CT_ARCH_XTENSA is not set -CT_ARCH="arm" -CT_ARCH_CHOICE_KSYM="ARM" -CT_ARCH_CPU="" -CT_ARCH_TUNE="" -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_ARCH_SUFFIX="" -CT_OMIT_TARGET_VENDOR=y - -# -# Generic target options -# -# CT_MULTILIB is not set -CT_DEMULTILIB=y -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_EITHER_ENDIAN=y -CT_ARCH_DEFAULT_LE=y -# CT_ARCH_BE is not set -CT_ARCH_LE=y -CT_ARCH_ENDIAN="little" -CT_ARCH_SUPPORTS_32=y -CT_ARCH_SUPPORTS_64=y -CT_ARCH_DEFAULT_32=y -CT_ARCH_BITNESS=64 -# CT_ARCH_32 is not set -CT_ARCH_64=y - -# -# Target optimisations -# -CT_ARCH_SUPPORTS_WITH_ARCH=y -CT_ARCH_SUPPORTS_WITH_CPU=y -CT_ARCH_SUPPORTS_WITH_TUNE=y -CT_ARCH_EXCLUSIVE_WITH_CPU=y -CT_ARCH_ARCH="" -CT_TARGET_CFLAGS="" -CT_TARGET_LDFLAGS="" -# end of Target options - -# -# Toolchain options -# - -# -# General toolchain options -# -CT_FORCE_SYSROOT=y -CT_USE_SYSROOT=y -CT_SYSROOT_NAME="sysroot" -CT_SYSROOT_DIR_PREFIX="" -CT_WANTS_STATIC_LINK=y -CT_WANTS_STATIC_LINK_CXX=y -CT_STATIC_TOOLCHAIN=y -CT_SHOW_CT_VERSION=y -CT_TOOLCHAIN_PKGVERSION="" -CT_TOOLCHAIN_BUGURL="" - -# -# Tuple completion and aliasing -# -CT_TARGET_ALIAS_SED_EXPR="" -CT_TARGET_ALIAS="" - -# -# Toolchain type -# -CT_CROSS=y -# CT_CANADIAN is not set -CT_TOOLCHAIN_TYPE="cross" - -# -# Build system -# -CT_BUILD="" -CT_BUILD_PREFIX="" -CT_BUILD_SUFFIX="" - -# -# Misc options -# -# CT_TOOLCHAIN_ENABLE_NLS is not set -# end of Toolchain options - -# -# Operating System -# -CT_KERNEL_SUPPORTS_SHARED_LIBS=y -# CT_KERNEL_BARE_METAL is not set -CT_KERNEL_LINUX=y -CT_KERNEL="linux" -CT_KERNEL_CHOICE_KSYM="LINUX" -CT_KERNEL_LINUX_SHOW=y - -# -# Options for linux -# -CT_KERNEL_LINUX_PKG_KSYM="LINUX" -CT_LINUX_DIR_NAME="linux" -CT_LINUX_USE_WWW_KERNEL_ORG=y -# CT_LINUX_USE_ORACLE is not set -CT_LINUX_USE="LINUX" -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_5_16=y -# CT_LINUX_V_5_15 is not set -# 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 -# CT_LINUX_V_5_10 is not set -# CT_LINUX_V_5_9 is not set -# CT_LINUX_V_5_8 is not set -# CT_LINUX_V_5_7 is not set -# CT_LINUX_V_5_4 is not set -# CT_LINUX_V_5_3 is not set -# CT_LINUX_V_5_2 is not set -# CT_LINUX_V_5_1 is not set -# CT_LINUX_V_5_0 is not set -# CT_LINUX_V_4_20 is not set -# CT_LINUX_V_4_19 is not set -# CT_LINUX_V_4_18 is not set -# CT_LINUX_V_4_17 is not set -# CT_LINUX_V_4_16 is not set -# CT_LINUX_V_4_15 is not set -# CT_LINUX_V_4_14 is not set -# CT_LINUX_V_4_13 is not set -# CT_LINUX_V_4_12 is not set -# CT_LINUX_V_4_11 is not set -# CT_LINUX_V_4_10 is not set -# CT_LINUX_V_4_9 is not set -# CT_LINUX_V_4_4 is not set -# CT_LINUX_V_4_1 is not set -# CT_LINUX_V_3_16 is not set -# 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.16.9" -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_12=y -CT_LINUX_5_12_or_later=y -CT_LINUX_later_than_5_3=y -CT_LINUX_5_3_or_later=y -CT_LINUX_later_than_4_8=y -CT_LINUX_4_8_or_later=y -CT_LINUX_later_than_3_7=y -CT_LINUX_3_7_or_later=y -CT_LINUX_REQUIRE_3_7_or_later=y -CT_LINUX_later_than_3_2=y -CT_LINUX_3_2_or_later=y -CT_KERNEL_DEP_RSYNC=y -CT_KERNEL_LINUX_VERBOSITY_0=y -# CT_KERNEL_LINUX_VERBOSITY_1 is not set -# CT_KERNEL_LINUX_VERBOSITY_2 is not set -CT_KERNEL_LINUX_VERBOSE_LEVEL=0 -CT_KERNEL_LINUX_INSTALL_CHECK=y -CT_ALL_KERNEL_CHOICES="BARE_METAL LINUX WINDOWS" - -# -# Common kernel options -# -CT_SHARED_LIBS=y -# end of Operating System - -# -# Binary utilities -# -CT_ARCH_BINFMT_ELF=y -CT_BINUTILS_BINUTILS=y -CT_BINUTILS="binutils" -CT_BINUTILS_CHOICE_KSYM="BINUTILS" -CT_BINUTILS_BINUTILS_SHOW=y - -# -# Options for binutils -# -CT_BINUTILS_BINUTILS_PKG_KSYM="BINUTILS" -CT_BINUTILS_DIR_NAME="binutils" -CT_BINUTILS_USE_GNU=y -# CT_BINUTILS_USE_ORACLE is not set -CT_BINUTILS_USE="BINUTILS" -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_29=y -# CT_BINUTILS_V_2_28 is not set -# CT_BINUTILS_V_2_27 is not set -# CT_BINUTILS_V_2_26 is not set -CT_BINUTILS_VERSION="2.29.1" -CT_BINUTILS_MIRRORS="$(CT_Mirrors GNU binutils) $(CT_Mirrors sourceware binutils/releases)" -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_30_or_older=y -CT_BINUTILS_older_than_2_30=y -CT_BINUTILS_REQUIRE_older_than_2_30=y -CT_BINUTILS_later_than_2_27=y -CT_BINUTILS_2_27_or_later=y -CT_BINUTILS_later_than_2_26=y -CT_BINUTILS_2_26_or_later=y - -# -# GNU binutils -# -CT_BINUTILS_GOLD_SUPPORTS_ARCH=y -CT_BINUTILS_FORCE_LD_BFD_DEFAULT=y -CT_BINUTILS_LINKER_LD=y -CT_BINUTILS_LINKERS_LIST="ld" -CT_BINUTILS_LINKER_DEFAULT="bfd" -CT_BINUTILS_RELRO=m -CT_BINUTILS_DETERMINISTIC_ARCHIVES=y -CT_BINUTILS_EXTRA_CONFIG_ARRAY="" -# CT_BINUTILS_FOR_TARGET is not set -CT_ALL_BINUTILS_CHOICES="BINUTILS" -# end of Binary utilities - -# -# C-library -# -CT_LIBC_GLIBC=y -# CT_LIBC_UCLIBC_NG is not set -CT_LIBC="glibc" -CT_LIBC_CHOICE_KSYM="GLIBC" -CT_THREADS="nptl" -CT_LIBC_GLIBC_SHOW=y - -# -# Options for glibc -# -CT_LIBC_GLIBC_PKG_KSYM="GLIBC" -CT_GLIBC_DIR_NAME="glibc" -CT_GLIBC_USE_GNU=y -# CT_GLIBC_USE_ORACLE is not set -CT_GLIBC_USE="GLIBC" -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_35 is not set -# 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 -# CT_GLIBC_V_2_30 is not set -# CT_GLIBC_V_2_29 is not set -# CT_GLIBC_V_2_28 is not set -# CT_GLIBC_V_2_27 is not set -# CT_GLIBC_V_2_26 is not set -# CT_GLIBC_V_2_25 is not set -# CT_GLIBC_V_2_24 is not set -# CT_GLIBC_V_2_23 is not set -# CT_GLIBC_V_2_19 is not set -CT_GLIBC_V_2_17=y -CT_GLIBC_VERSION="2.17" -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_34_or_older=y -CT_GLIBC_older_than_2_34=y -CT_GLIBC_2_32_or_older=y -CT_GLIBC_older_than_2_32=y -CT_GLIBC_2_31_or_older=y -CT_GLIBC_older_than_2_31=y -CT_GLIBC_2_30_or_older=y -CT_GLIBC_older_than_2_30=y -CT_GLIBC_2_29_or_older=y -CT_GLIBC_older_than_2_29=y -CT_GLIBC_2_28_or_older=y -CT_GLIBC_older_than_2_28=y -CT_GLIBC_2_27_or_older=y -CT_GLIBC_older_than_2_27=y -CT_GLIBC_2_26_or_older=y -CT_GLIBC_older_than_2_26=y -CT_GLIBC_2_25_or_older=y -CT_GLIBC_older_than_2_25=y -CT_GLIBC_2_24_or_older=y -CT_GLIBC_older_than_2_24=y -CT_GLIBC_2_23_or_older=y -CT_GLIBC_older_than_2_23=y -CT_GLIBC_2_20_or_older=y -CT_GLIBC_older_than_2_20=y -CT_GLIBC_2_17_or_later=y -CT_GLIBC_2_17_or_older=y -CT_GLIBC_later_than_2_14=y -CT_GLIBC_2_14_or_later=y -CT_GLIBC_DEP_KERNEL_HEADERS_VERSION=y -CT_GLIBC_DEP_BINUTILS=y -CT_GLIBC_DEP_GCC=y -CT_GLIBC_DEP_PYTHON=y -CT_GLIBC_SPARC_ALLOW_V7=y -CT_GLIBC_HAS_NPTL_ADDON=y -CT_GLIBC_HAS_PORTS_ADDON=y -CT_GLIBC_HAS_LIBIDN_ADDON=y -CT_GLIBC_USE_PORTS_ADDON=y -CT_GLIBC_USE_NPTL_ADDON=y -# CT_GLIBC_USE_LIBIDN_ADDON is not set -CT_GLIBC_HAS_OBSOLETE_RPC=y -CT_GLIBC_EXTRA_CONFIG_ARRAY="" -CT_GLIBC_CONFIGPARMS="" -CT_GLIBC_EXTRA_CFLAGS="-Wno-missing-attributes -Wno-array-bounds -Wno-array-parameter -Wno-stringop-overflow -Wno-maybe-uninitialized" -CT_GLIBC_ENABLE_OBSOLETE_RPC=y -# CT_GLIBC_DISABLE_VERSIONING is not set -CT_GLIBC_OLDEST_ABI="2.17" -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=y -# CT_GLIBC_KERNEL_VERSION_CHOSEN is not set -CT_GLIBC_MIN_KERNEL="5.16.9" -CT_GLIBC_ENABLE_COMMON_FLAG=y -CT_ALL_LIBC_CHOICES="AVR_LIBC BIONIC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE UCLIBC_NG" -CT_LIBC_SUPPORT_THREADS_ANY=y -CT_LIBC_SUPPORT_THREADS_NATIVE=y - -# -# Common C library options -# -CT_THREADS_NATIVE=y -# CT_CREATE_LDSO_CONF is not set -CT_LIBC_XLDD=y -# end of C-library - -# -# C compiler -# -CT_CC_CORE_NEEDED=y -CT_CC_SUPPORT_CXX=y -CT_CC_SUPPORT_FORTRAN=y -CT_CC_SUPPORT_ADA=y -CT_CC_SUPPORT_OBJC=y -CT_CC_SUPPORT_OBJCXX=y -CT_CC_SUPPORT_GOLANG=y -CT_CC_GCC=y -CT_CC="gcc" -CT_CC_CHOICE_KSYM="GCC" -CT_CC_GCC_SHOW=y - -# -# Options for gcc -# -CT_CC_GCC_PKG_KSYM="GCC" -CT_GCC_DIR_NAME="gcc" -CT_GCC_USE_GNU=y -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_11=y -# 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_V_5 is not set -# CT_GCC_V_4_9 is not set -CT_GCC_VERSION="11.2.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_later_than_11=y -CT_GCC_11_or_later=y -CT_GCC_later_than_10=y -CT_GCC_10_or_later=y -CT_GCC_later_than_9=y -CT_GCC_9_or_later=y -CT_GCC_later_than_8=y -CT_GCC_8_or_later=y -CT_GCC_later_than_7=y -CT_GCC_7_or_later=y -CT_GCC_later_than_6=y -CT_GCC_6_or_later=y -CT_GCC_later_than_5=y -CT_GCC_5_or_later=y -CT_GCC_later_than_4_9=y -CT_GCC_4_9_or_later=y -CT_CC_GCC_HAS_LIBMPX=y -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 is not set -CT_CC_GCC_CONFIG_TLS=m - -# -# Optimisation features -# -CT_CC_GCC_USE_GRAPHITE=y - -# -# Settings for libraries running on target -# -CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y -# CT_CC_GCC_LIBMUDFLAP is not set -# CT_CC_GCC_LIBGOMP is not set -# CT_CC_GCC_LIBSSP is not set -# CT_CC_GCC_LIBQUADMATH is not set -# CT_CC_GCC_LIBSANITIZER is not set - -# -# Misc. obscure options. -# -CT_CC_CXA_ATEXIT=y -CT_CC_GCC_TM_CLONE_REGISTRY=m -# CT_CC_GCC_DISABLE_PCH is not set -CT_CC_GCC_SJLJ_EXCEPTIONS=m -CT_CC_GCC_LDBL_128=m -# CT_CC_GCC_BUILD_ID is not set -CT_CC_GCC_LNK_HASH_STYLE_DEFAULT=y -# CT_CC_GCC_LNK_HASH_STYLE_SYSV is not set -# CT_CC_GCC_LNK_HASH_STYLE_GNU is not set -# CT_CC_GCC_LNK_HASH_STYLE_BOTH is not set -CT_CC_GCC_LNK_HASH_STYLE="" -CT_CC_GCC_DEC_FLOATS_AUTO=y -# CT_CC_GCC_DEC_FLOATS_BID is not set -# CT_CC_GCC_DEC_FLOATS_DPD is not set -# CT_CC_GCC_DEC_FLOATS_NO is not set -CT_CC_GCC_DEC_FLOATS="" -CT_ALL_CC_CHOICES="GCC" - -# -# Additional supported languages: -# -CT_CC_LANG_CXX=y -# CT_CC_LANG_FORTRAN is not set -# end of C compiler - -# -# Debug facilities -# -# CT_DEBUG_DUMA is not set -# CT_DEBUG_GDB is not set -# CT_DEBUG_LTRACE is not set -# CT_DEBUG_STRACE is not set -CT_ALL_DEBUG_CHOICES="DUMA GDB LTRACE STRACE" -# end of Debug facilities - -# -# Companion libraries -# -# CT_COMPLIBS_CHECK is not set -# CT_COMP_LIBS_CLOOG is not set -# CT_COMP_LIBS_EXPAT is not set -CT_COMP_LIBS_GETTEXT=y -CT_COMP_LIBS_GETTEXT_PKG_KSYM="GETTEXT" -CT_GETTEXT_DIR_NAME="gettext" -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=y -# CT_GETTEXT_V_0_20_1 is not set -# CT_GETTEXT_V_0_19_8_1 is not set -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_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" -CT_GMP_PKG_NAME="gmp" -CT_GMP_SRC_RELEASE=y -# CT_GMP_SRC_DEVEL is not set -CT_GMP_PATCH_ORDER="global" -CT_GMP_V_6_2=y -# CT_GMP_V_6_1 is not set -CT_GMP_VERSION="6.2.1" -CT_GMP_MIRRORS="https://gmplib.org/download/gmp https://gmplib.org/download/gmp/archive $(CT_Mirrors GNU gmp)" -CT_GMP_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_GMP_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_GMP_ARCHIVE_FORMATS=".tar.xz .tar.lz .tar.bz2" -CT_GMP_SIGNATURE_FORMAT="packed/.sig" -CT_COMP_LIBS_ISL=y -CT_COMP_LIBS_ISL_PKG_KSYM="ISL" -CT_ISL_DIR_NAME="isl" -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_23 is not set -# CT_ISL_V_0_22 is not set -# CT_ISL_V_0_21 is not set -# CT_ISL_V_0_20 is not set -# CT_ISL_V_0_19 is not set -# CT_ISL_V_0_18 is not set -# 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_MIRRORS="https://libisl.sourceforge.io" -CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_ISL_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz" -CT_ISL_SIGNATURE_FORMAT="" -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_LIBICONV=y -CT_COMP_LIBS_LIBICONV_PKG_KSYM="LIBICONV" -CT_LIBICONV_DIR_NAME="libiconv" -CT_LIBICONV_PKG_NAME="libiconv" -CT_LIBICONV_SRC_RELEASE=y -# CT_LIBICONV_SRC_DEVEL is not set -CT_LIBICONV_PATCH_ORDER="global" -CT_LIBICONV_V_1_16=y -# CT_LIBICONV_V_1_15 is not set -CT_LIBICONV_VERSION="1.16" -CT_LIBICONV_MIRRORS="$(CT_Mirrors GNU libiconv)" -CT_LIBICONV_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_LIBICONV_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_LIBICONV_ARCHIVE_FORMATS=".tar.gz" -CT_LIBICONV_SIGNATURE_FORMAT="packed/.sig" -CT_COMP_LIBS_MPC=y -CT_COMP_LIBS_MPC_PKG_KSYM="MPC" -CT_MPC_DIR_NAME="mpc" -CT_MPC_PKG_NAME="mpc" -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_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_MPC_ARCHIVE_FORMATS=".tar.gz" -CT_MPC_SIGNATURE_FORMAT="packed/.sig" -CT_MPC_later_than_1_1_0=y -CT_MPC_1_1_0_or_later=y -CT_COMP_LIBS_MPFR=y -CT_COMP_LIBS_MPFR_PKG_KSYM="MPFR" -CT_MPFR_DIR_NAME="mpfr" -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_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_MPFR_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_MPFR_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz .zip" -CT_MPFR_SIGNATURE_FORMAT="packed/.asc" -CT_MPFR_later_than_4_0_0=y -CT_MPFR_4_0_0_or_later=y -CT_COMP_LIBS_NCURSES=y -CT_COMP_LIBS_NCURSES_PKG_KSYM="NCURSES" -CT_NCURSES_DIR_NAME="ncurses" -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_1 is not set -# CT_NCURSES_V_6_0 is not set -CT_NCURSES_VERSION="6.2" -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}" -CT_NCURSES_ARCHIVE_FORMATS=".tar.gz" -CT_NCURSES_SIGNATURE_FORMAT="packed/.sig" -CT_NCURSES_NEW_ABI=y -CT_NCURSES_HOST_CONFIG_ARGS="" -CT_NCURSES_HOST_DISABLE_DB=y -CT_NCURSES_HOST_FALLBACKS="linux,xterm,xterm-color,xterm-256color,vt100" -CT_NCURSES_TARGET_CONFIG_ARGS="" -# CT_NCURSES_TARGET_DISABLE_DB is not set -CT_NCURSES_TARGET_FALLBACKS="" -CT_COMP_LIBS_ZLIB=y -CT_COMP_LIBS_ZLIB_PKG_KSYM="ZLIB" -CT_ZLIB_DIR_NAME="zlib" -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.13" -CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION}/ https://www.zlib.net/ https://www.zlib.net/fossils/" -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_LIBICONV_NEEDED=y -CT_GETTEXT_NEEDED=y -CT_GMP_NEEDED=y -CT_MPFR_NEEDED=y -CT_ISL_NEEDED=y -CT_MPC_NEEDED=y -CT_NCURSES_NEEDED=y -CT_ZLIB_NEEDED=y -CT_LIBICONV=y -CT_GETTEXT=y -CT_GMP=y -CT_MPFR=y -CT_ISL=y -CT_MPC=y -CT_NCURSES=y -CT_ZLIB=y -# end of Companion libraries - -# -# Companion tools -# -# CT_COMP_TOOLS_FOR_HOST is not set -# CT_COMP_TOOLS_AUTOCONF is not set -# CT_COMP_TOOLS_AUTOMAKE is not set -# CT_COMP_TOOLS_BISON is not set -# CT_COMP_TOOLS_DTC is not set -# CT_COMP_TOOLS_LIBTOOL is not set -# CT_COMP_TOOLS_M4 is not set -# CT_COMP_TOOLS_MAKE is not set -CT_ALL_COMP_TOOLS_CHOICES="AUTOCONF AUTOMAKE BISON DTC LIBTOOL M4 MAKE" -# end of Companion tools diff --git a/relenv/_toolchain/x86_64/x86_64-linux-gnu-ct-ng.config b/relenv/_toolchain/x86_64/x86_64-linux-gnu-ct-ng.config deleted file mode 100644 index 98e9b281..00000000 --- a/relenv/_toolchain/x86_64/x86_64-linux-gnu-ct-ng.config +++ /dev/null @@ -1,801 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# crosstool-NG 1.25.0 Configuration -# -CT_CONFIGURE_has_static_link=y -CT_CONFIGURE_has_cxx11=y -CT_CONFIGURE_has_lzip=y -CT_CONFIGURE_has_wget=y -CT_CONFIGURE_has_curl=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_libtool_2_4_or_newer=y -CT_CONFIGURE_has_libtoolize_2_4_or_newer=y -CT_CONFIGURE_has_autoconf_2_65_or_newer=y -CT_CONFIGURE_has_autoreconf_2_65_or_newer=y -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_python=y -CT_CONFIGURE_has_svn=y -CT_CONFIGURE_has_git=y -CT_CONFIGURE_has_md5sum=y -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" -CT_VCHECK="" -CT_CONFIG_VERSION_ENV="4" -CT_CONFIG_VERSION_CURRENT="4" -CT_CONFIG_VERSION="4" -CT_MODULES=y - -# -# Paths and misc options -# - -# -# crosstool-NG behavior -# -# CT_OBSOLETE is not set -# CT_EXPERIMENTAL is not set -# CT_DEBUG_CT is not set - -# -# Paths -# -CT_LOCAL_TARBALLS_DIR="/tmp" -CT_SAVE_TARBALLS=y -# CT_TARBALLS_BUILDROOT_LAYOUT is not set -CT_WORK_DIR="${CT_TOP_DIR}/.build" -CT_BUILD_TOP_DIR="${CT_WORK_DIR:-${CT_TOP_DIR}/.build}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}" -CT_BUILD_DIR="${CT_BUILD_TOP_DIR}/build" -CT_PREFIX_DIR="${CT_PREFIX:-${HOME}/x-tools}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}" -CT_RM_RF_PREFIX_DIR=y -CT_REMOVE_DOCS=y -CT_INSTALL_LICENSES=y -# CT_PREFIX_DIR_RO is not set -CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES=y -# CT_STRIP_TARGET_TOOLCHAIN_EXECUTABLES is not set - -# -# Downloading -# -CT_DOWNLOAD_AGENT_WGET=y -# CT_DOWNLOAD_AGENT_CURL is not set -# CT_DOWNLOAD_AGENT_NONE is not set -# 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_ONLY_DOWNLOAD is not set -# CT_USE_MIRROR is not set -CT_VERIFY_DOWNLOAD_DIGEST=y -CT_VERIFY_DOWNLOAD_DIGEST_SHA512=y -# CT_VERIFY_DOWNLOAD_DIGEST_SHA256 is not set -# CT_VERIFY_DOWNLOAD_DIGEST_SHA1 is not set -# CT_VERIFY_DOWNLOAD_DIGEST_MD5 is not set -CT_VERIFY_DOWNLOAD_DIGEST_ALG="sha512" -# CT_VERIFY_DOWNLOAD_SIGNATURE is not set - -# -# Extracting -# -# CT_FORCE_EXTRACT is not set -CT_OVERRIDE_CONFIG_GUESS_SUB=y -# CT_ONLY_EXTRACT is not set -CT_PATCH_BUNDLED=y -# CT_PATCH_BUNDLED_LOCAL is not set -CT_PATCH_ORDER="bundled" - -# -# Build behavior -# -CT_PARALLEL_JOBS=0 -CT_LOAD="" -CT_USE_PIPES=y -CT_EXTRA_CFLAGS_FOR_BUILD="" -CT_EXTRA_CXXFLAGS_FOR_BUILD="" -CT_EXTRA_LDFLAGS_FOR_BUILD="" -CT_EXTRA_CFLAGS_FOR_HOST="" -CT_EXTRA_LDFLAGS_FOR_HOST="" -# CT_CONFIG_SHELL_SH is not set -# CT_CONFIG_SHELL_ASH is not set -CT_CONFIG_SHELL_BASH=y -# CT_CONFIG_SHELL_CUSTOM is not set -CT_CONFIG_SHELL="${bash}" - -# -# Logging -# -# CT_LOG_ERROR is not set -# CT_LOG_WARN is not set -# CT_LOG_INFO is not set -CT_LOG_EXTRA=y -# CT_LOG_ALL is not set -# CT_LOG_DEBUG is not set -CT_LOG_LEVEL_MAX="EXTRA" -# CT_LOG_SEE_TOOLS_WARN is not set -CT_LOG_PROGRESS_BAR=y -CT_LOG_TO_FILE=y -CT_LOG_FILE_COMPRESS=y -# end of Paths and misc options - -# -# Target options -# -# CT_ARCH_ALPHA is not set -# CT_ARCH_ARC is not set -# CT_ARCH_ARM is not set -# CT_ARCH_AVR is not set -# CT_ARCH_M68K is not set -# CT_ARCH_MIPS is not set -# CT_ARCH_NIOS2 is not set -# CT_ARCH_POWERPC is not set -# CT_ARCH_PRU is not set -# CT_ARCH_S390 is not set -# CT_ARCH_SH is not set -# CT_ARCH_SPARC is not set -CT_ARCH_X86=y -# CT_ARCH_XTENSA is not set -CT_ARCH="x86" -CT_ARCH_CHOICE_KSYM="X86" -CT_ARCH_CPU="" -CT_ARCH_TUNE="" -CT_ARCH_X86_SHOW=y - -# -# Options for x86 -# -CT_ARCH_X86_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_ARCH_SUFFIX="" -CT_OMIT_TARGET_VENDOR=y - -# -# Generic target options -# -# CT_MULTILIB is not set -CT_DEMULTILIB=y -CT_ARCH_USE_MMU=y -CT_ARCH_SUPPORTS_32=y -CT_ARCH_SUPPORTS_64=y -CT_ARCH_DEFAULT_32=y -CT_ARCH_BITNESS=64 -# CT_ARCH_32 is not set -CT_ARCH_64=y -CT_ARCH_SUPPORTS_WITH_32_64=y - -# -# Target optimisations -# -CT_ARCH_SUPPORTS_WITH_ARCH=y -CT_ARCH_SUPPORTS_WITH_CPU=y -CT_ARCH_SUPPORTS_WITH_TUNE=y -CT_ARCH_ARCH="" -CT_TARGET_CFLAGS="" -CT_TARGET_LDFLAGS="" -# end of Target options - -# -# Toolchain options -# - -# -# General toolchain options -# -CT_FORCE_SYSROOT=y -CT_USE_SYSROOT=y -CT_SYSROOT_NAME="sysroot" -CT_SYSROOT_DIR_PREFIX="" -CT_WANTS_STATIC_LINK=y -CT_WANTS_STATIC_LINK_CXX=y -CT_STATIC_TOOLCHAIN=y -CT_SHOW_CT_VERSION=y -CT_TOOLCHAIN_PKGVERSION="" -CT_TOOLCHAIN_BUGURL="" - -# -# Tuple completion and aliasing -# -CT_TARGET_ALIAS_SED_EXPR="" -CT_TARGET_ALIAS="" - -# -# Toolchain type -# -CT_CROSS=y -# CT_CANADIAN is not set -CT_TOOLCHAIN_TYPE="cross" - -# -# Build system -# -CT_BUILD="" -CT_BUILD_PREFIX="" -CT_BUILD_SUFFIX="" - -# -# Misc options -# -# CT_TOOLCHAIN_ENABLE_NLS is not set -# end of Toolchain options - -# -# Operating System -# -CT_KERNEL_SUPPORTS_SHARED_LIBS=y -# CT_KERNEL_BARE_METAL is not set -CT_KERNEL_LINUX=y -CT_KERNEL="linux" -CT_KERNEL_CHOICE_KSYM="LINUX" -CT_KERNEL_LINUX_SHOW=y - -# -# Options for linux -# -CT_KERNEL_LINUX_PKG_KSYM="LINUX" -CT_LINUX_DIR_NAME="linux" -CT_LINUX_USE_WWW_KERNEL_ORG=y -# CT_LINUX_USE_ORACLE is not set -CT_LINUX_USE="LINUX" -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_5_16=y -# CT_LINUX_V_5_15 is not set -# 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 -# CT_LINUX_V_5_10 is not set -# CT_LINUX_V_5_9 is not set -# CT_LINUX_V_5_8 is not set -# CT_LINUX_V_5_7 is not set -# CT_LINUX_V_5_4 is not set -# CT_LINUX_V_5_3 is not set -# CT_LINUX_V_5_2 is not set -# CT_LINUX_V_5_1 is not set -# CT_LINUX_V_5_0 is not set -# CT_LINUX_V_4_20 is not set -# CT_LINUX_V_4_19 is not set -# CT_LINUX_V_4_18 is not set -# CT_LINUX_V_4_17 is not set -# CT_LINUX_V_4_16 is not set -# CT_LINUX_V_4_15 is not set -# CT_LINUX_V_4_14 is not set -# CT_LINUX_V_4_13 is not set -# CT_LINUX_V_4_12 is not set -# CT_LINUX_V_4_11 is not set -# CT_LINUX_V_4_10 is not set -# CT_LINUX_V_4_9 is not set -# CT_LINUX_V_4_4 is not set -# CT_LINUX_V_4_1 is not set -# CT_LINUX_V_3_16 is not set -# 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_V_3_4 is not set -# CT_LINUX_V_3_2 is not set -# CT_LINUX_V_2_6_32 is not set -CT_LINUX_VERSION="5.16.9" -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_12=y -CT_LINUX_5_12_or_later=y -CT_LINUX_later_than_5_3=y -CT_LINUX_5_3_or_later=y -CT_LINUX_later_than_4_8=y -CT_LINUX_4_8_or_later=y -CT_LINUX_later_than_3_7=y -CT_LINUX_3_7_or_later=y -CT_LINUX_later_than_3_2=y -CT_LINUX_3_2_or_later=y -CT_KERNEL_DEP_RSYNC=y -CT_KERNEL_LINUX_VERBOSITY_0=y -# CT_KERNEL_LINUX_VERBOSITY_1 is not set -# CT_KERNEL_LINUX_VERBOSITY_2 is not set -CT_KERNEL_LINUX_VERBOSE_LEVEL=0 -CT_KERNEL_LINUX_INSTALL_CHECK=y -CT_ALL_KERNEL_CHOICES="BARE_METAL LINUX WINDOWS" - -# -# Common kernel options -# -CT_SHARED_LIBS=y -# end of Operating System - -# -# Binary utilities -# -CT_ARCH_BINFMT_ELF=y -CT_BINUTILS_BINUTILS=y -CT_BINUTILS="binutils" -CT_BINUTILS_CHOICE_KSYM="BINUTILS" -CT_BINUTILS_BINUTILS_SHOW=y - -# -# Options for binutils -# -CT_BINUTILS_BINUTILS_PKG_KSYM="BINUTILS" -CT_BINUTILS_DIR_NAME="binutils" -CT_BINUTILS_USE_GNU=y -# CT_BINUTILS_USE_ORACLE is not set -CT_BINUTILS_USE="BINUTILS" -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_38 is not set -# CT_BINUTILS_V_2_37 is not set -# CT_BINUTILS_V_2_36 is not set -# CT_BINUTILS_V_2_35 is not set -# CT_BINUTILS_V_2_34 is not set -# CT_BINUTILS_V_2_33 is not set -# CT_BINUTILS_V_2_32 is not set -# CT_BINUTILS_V_2_31 is not set -# CT_BINUTILS_V_2_30 is not set -CT_BINUTILS_V_2_29=y -# CT_BINUTILS_V_2_28 is not set -# CT_BINUTILS_V_2_27 is not set -# CT_BINUTILS_V_2_26 is not set -CT_BINUTILS_VERSION="2.29.1" -CT_BINUTILS_MIRRORS="$(CT_Mirrors GNU binutils) $(CT_Mirrors sourceware binutils/releases)" -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_30_or_older=y -CT_BINUTILS_older_than_2_30=y -CT_BINUTILS_later_than_2_27=y -CT_BINUTILS_2_27_or_later=y -CT_BINUTILS_later_than_2_26=y -CT_BINUTILS_2_26_or_later=y - -# -# GNU binutils -# -CT_BINUTILS_GOLD_SUPPORTS_ARCH=y -CT_BINUTILS_FORCE_LD_BFD_DEFAULT=y -CT_BINUTILS_LINKER_LD=y -CT_BINUTILS_LINKERS_LIST="ld" -CT_BINUTILS_LINKER_DEFAULT="bfd" -CT_BINUTILS_RELRO=m -CT_BINUTILS_DETERMINISTIC_ARCHIVES=y -CT_BINUTILS_EXTRA_CONFIG_ARRAY="" -# CT_BINUTILS_FOR_TARGET is not set -CT_ALL_BINUTILS_CHOICES="BINUTILS" -# end of Binary utilities - -# -# C-library -# -CT_LIBC_GLIBC=y -# CT_LIBC_UCLIBC_NG is not set -CT_LIBC="glibc" -CT_LIBC_CHOICE_KSYM="GLIBC" -CT_THREADS="nptl" -CT_LIBC_GLIBC_SHOW=y - -# -# Options for glibc -# -CT_LIBC_GLIBC_PKG_KSYM="GLIBC" -CT_GLIBC_DIR_NAME="glibc" -CT_GLIBC_USE_GNU=y -# CT_GLIBC_USE_ORACLE is not set -CT_GLIBC_USE="GLIBC" -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_35 is not set -# 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 -# CT_GLIBC_V_2_30 is not set -# CT_GLIBC_V_2_29 is not set -# CT_GLIBC_V_2_28 is not set -# CT_GLIBC_V_2_27 is not set -# CT_GLIBC_V_2_26 is not set -# CT_GLIBC_V_2_25 is not set -# CT_GLIBC_V_2_24 is not set -# CT_GLIBC_V_2_23 is not set -# CT_GLIBC_V_2_19 is not set -CT_GLIBC_V_2_17=y -CT_GLIBC_VERSION="2.17" -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_34_or_older=y -CT_GLIBC_older_than_2_34=y -CT_GLIBC_2_32_or_older=y -CT_GLIBC_older_than_2_32=y -CT_GLIBC_2_31_or_older=y -CT_GLIBC_older_than_2_31=y -CT_GLIBC_2_30_or_older=y -CT_GLIBC_older_than_2_30=y -CT_GLIBC_2_29_or_older=y -CT_GLIBC_older_than_2_29=y -CT_GLIBC_2_28_or_older=y -CT_GLIBC_older_than_2_28=y -CT_GLIBC_2_27_or_older=y -CT_GLIBC_older_than_2_27=y -CT_GLIBC_2_26_or_older=y -CT_GLIBC_older_than_2_26=y -CT_GLIBC_2_25_or_older=y -CT_GLIBC_older_than_2_25=y -CT_GLIBC_2_24_or_older=y -CT_GLIBC_older_than_2_24=y -CT_GLIBC_2_23_or_older=y -CT_GLIBC_older_than_2_23=y -CT_GLIBC_2_20_or_older=y -CT_GLIBC_older_than_2_20=y -CT_GLIBC_2_17_or_later=y -CT_GLIBC_2_17_or_older=y -CT_GLIBC_later_than_2_14=y -CT_GLIBC_2_14_or_later=y -CT_GLIBC_DEP_KERNEL_HEADERS_VERSION=y -CT_GLIBC_DEP_BINUTILS=y -CT_GLIBC_DEP_GCC=y -CT_GLIBC_DEP_PYTHON=y -CT_GLIBC_SPARC_ALLOW_V7=y -CT_GLIBC_HAS_NPTL_ADDON=y -CT_GLIBC_HAS_PORTS_ADDON=y -CT_GLIBC_HAS_LIBIDN_ADDON=y -CT_GLIBC_USE_NPTL_ADDON=y -# CT_GLIBC_USE_LIBIDN_ADDON is not set -CT_GLIBC_HAS_OBSOLETE_RPC=y -CT_GLIBC_EXTRA_CONFIG_ARRAY="" -CT_GLIBC_CONFIGPARMS="" -CT_GLIBC_EXTRA_CFLAGS="-Wno-missing-attributes -Wno-array-bounds -Wno-array-parameter -Wno-stringop-overflow -Wno-maybe-uninitialized" -CT_GLIBC_ENABLE_OBSOLETE_RPC=y -# CT_GLIBC_DISABLE_VERSIONING is not set -CT_GLIBC_OLDEST_ABI="glibc-2.17" -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=y -# CT_GLIBC_KERNEL_VERSION_CHOSEN is not set -CT_GLIBC_MIN_KERNEL="5.16.9" -CT_GLIBC_ENABLE_COMMON_FLAG=y -CT_ALL_LIBC_CHOICES="AVR_LIBC BIONIC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE UCLIBC_NG" -CT_LIBC_SUPPORT_THREADS_ANY=y -CT_LIBC_SUPPORT_THREADS_NATIVE=y - -# -# Common C library options -# -CT_THREADS_NATIVE=y -# CT_CREATE_LDSO_CONF is not set -# CT_LIBC_XLDD is not set -# end of C-library - -# -# C compiler -# -CT_CC_CORE_NEEDED=y -CT_CC_SUPPORT_CXX=y -CT_CC_SUPPORT_FORTRAN=y -CT_CC_SUPPORT_ADA=y -CT_CC_SUPPORT_OBJC=y -CT_CC_SUPPORT_OBJCXX=y -CT_CC_SUPPORT_GOLANG=y -CT_CC_GCC=y -CT_CC="gcc" -CT_CC_CHOICE_KSYM="GCC" -CT_CC_GCC_SHOW=y - -# -# Options for gcc -# -CT_CC_GCC_PKG_KSYM="GCC" -CT_GCC_DIR_NAME="gcc" -CT_GCC_USE_GNU=y -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_11=y -# 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_V_5 is not set -# CT_GCC_V_4_9 is not set -CT_GCC_VERSION="11.2.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_later_than_11=y -CT_GCC_11_or_later=y -CT_GCC_later_than_10=y -CT_GCC_10_or_later=y -CT_GCC_later_than_9=y -CT_GCC_9_or_later=y -CT_GCC_later_than_8=y -CT_GCC_8_or_later=y -CT_GCC_later_than_7=y -CT_GCC_7_or_later=y -CT_GCC_later_than_6=y -CT_GCC_6_or_later=y -CT_GCC_later_than_5=y -CT_GCC_5_or_later=y -CT_GCC_later_than_4_9=y -CT_GCC_4_9_or_later=y -CT_CC_GCC_HAS_LIBMPX=y -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 is not set -CT_CC_GCC_CONFIG_TLS=m - -# -# Optimisation features -# -CT_CC_GCC_USE_GRAPHITE=y - -# -# Settings for libraries running on target -# -CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y -# CT_CC_GCC_LIBMUDFLAP is not set -# CT_CC_GCC_LIBGOMP is not set -# CT_CC_GCC_LIBSSP is not set -# CT_CC_GCC_LIBQUADMATH is not set -# CT_CC_GCC_LIBSANITIZER is not set -# CT_CC_GCC_LIBMPX is not set - -# -# Misc. obscure options. -# -CT_CC_CXA_ATEXIT=y -CT_CC_GCC_TM_CLONE_REGISTRY=m -# CT_CC_GCC_DISABLE_PCH is not set -CT_CC_GCC_SJLJ_EXCEPTIONS=m -CT_CC_GCC_LDBL_128=m -# CT_CC_GCC_BUILD_ID is not set -CT_CC_GCC_LNK_HASH_STYLE_DEFAULT=y -# CT_CC_GCC_LNK_HASH_STYLE_SYSV is not set -# CT_CC_GCC_LNK_HASH_STYLE_GNU is not set -# CT_CC_GCC_LNK_HASH_STYLE_BOTH is not set -CT_CC_GCC_LNK_HASH_STYLE="" -CT_CC_GCC_DEC_FLOATS_AUTO=y -# CT_CC_GCC_DEC_FLOATS_BID is not set -# CT_CC_GCC_DEC_FLOATS_DPD is not set -# CT_CC_GCC_DEC_FLOATS_NO is not set -CT_CC_GCC_DEC_FLOATS="" -CT_ALL_CC_CHOICES="GCC" - -# -# Additional supported languages: -# -CT_CC_LANG_CXX=y -# CT_CC_LANG_FORTRAN is not set -# end of C compiler - -# -# Debug facilities -# -# CT_DEBUG_DUMA is not set -# CT_DEBUG_GDB is not set -# CT_DEBUG_LTRACE is not set -# CT_DEBUG_STRACE is not set -CT_ALL_DEBUG_CHOICES="DUMA GDB LTRACE STRACE" -# end of Debug facilities - -# -# Companion libraries -# -# CT_COMPLIBS_CHECK is not set -# CT_COMP_LIBS_CLOOG is not set -# CT_COMP_LIBS_EXPAT is not set -CT_COMP_LIBS_GETTEXT=y -CT_COMP_LIBS_GETTEXT_PKG_KSYM="GETTEXT" -CT_GETTEXT_DIR_NAME="gettext" -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=y -# CT_GETTEXT_V_0_20_1 is not set -# CT_GETTEXT_V_0_19_8_1 is not set -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_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" -CT_GMP_PKG_NAME="gmp" -CT_GMP_SRC_RELEASE=y -# CT_GMP_SRC_DEVEL is not set -CT_GMP_PATCH_ORDER="global" -CT_GMP_V_6_2=y -# CT_GMP_V_6_1 is not set -CT_GMP_VERSION="6.2.1" -CT_GMP_MIRRORS="https://gmplib.org/download/gmp https://gmplib.org/download/gmp/archive $(CT_Mirrors GNU gmp)" -CT_GMP_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_GMP_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_GMP_ARCHIVE_FORMATS=".tar.xz .tar.lz .tar.bz2" -CT_GMP_SIGNATURE_FORMAT="packed/.sig" -CT_COMP_LIBS_ISL=y -CT_COMP_LIBS_ISL_PKG_KSYM="ISL" -CT_ISL_DIR_NAME="isl" -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_23 is not set -# CT_ISL_V_0_22 is not set -# CT_ISL_V_0_21 is not set -# CT_ISL_V_0_20 is not set -# CT_ISL_V_0_19 is not set -# CT_ISL_V_0_18 is not set -# 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_MIRRORS="https://libisl.sourceforge.io" -CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_ISL_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz" -CT_ISL_SIGNATURE_FORMAT="" -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_LIBICONV=y -CT_COMP_LIBS_LIBICONV_PKG_KSYM="LIBICONV" -CT_LIBICONV_DIR_NAME="libiconv" -CT_LIBICONV_PKG_NAME="libiconv" -CT_LIBICONV_SRC_RELEASE=y -# CT_LIBICONV_SRC_DEVEL is not set -CT_LIBICONV_PATCH_ORDER="global" -CT_LIBICONV_V_1_16=y -# CT_LIBICONV_V_1_15 is not set -CT_LIBICONV_VERSION="1.16" -CT_LIBICONV_MIRRORS="$(CT_Mirrors GNU libiconv)" -CT_LIBICONV_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_LIBICONV_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_LIBICONV_ARCHIVE_FORMATS=".tar.gz" -CT_LIBICONV_SIGNATURE_FORMAT="packed/.sig" -CT_COMP_LIBS_MPC=y -CT_COMP_LIBS_MPC_PKG_KSYM="MPC" -CT_MPC_DIR_NAME="mpc" -CT_MPC_PKG_NAME="mpc" -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_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_MPC_ARCHIVE_FORMATS=".tar.gz" -CT_MPC_SIGNATURE_FORMAT="packed/.sig" -CT_MPC_later_than_1_1_0=y -CT_MPC_1_1_0_or_later=y -CT_COMP_LIBS_MPFR=y -CT_COMP_LIBS_MPFR_PKG_KSYM="MPFR" -CT_MPFR_DIR_NAME="mpfr" -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_ARCHIVE_FILENAME="@{pkg_name}-@{version}" -CT_MPFR_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" -CT_MPFR_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz .zip" -CT_MPFR_SIGNATURE_FORMAT="packed/.asc" -CT_MPFR_later_than_4_0_0=y -CT_MPFR_4_0_0_or_later=y -CT_COMP_LIBS_NCURSES=y -CT_COMP_LIBS_NCURSES_PKG_KSYM="NCURSES" -CT_NCURSES_DIR_NAME="ncurses" -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_1 is not set -# CT_NCURSES_V_6_0 is not set -CT_NCURSES_VERSION="6.2" -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}" -CT_NCURSES_ARCHIVE_FORMATS=".tar.gz" -CT_NCURSES_SIGNATURE_FORMAT="packed/.sig" -CT_NCURSES_NEW_ABI=y -CT_NCURSES_HOST_CONFIG_ARGS="" -CT_NCURSES_HOST_DISABLE_DB=y -CT_NCURSES_HOST_FALLBACKS="linux,xterm,xterm-color,xterm-256color,vt100" -CT_NCURSES_TARGET_CONFIG_ARGS="" -# CT_NCURSES_TARGET_DISABLE_DB is not set -CT_NCURSES_TARGET_FALLBACKS="" -CT_COMP_LIBS_ZLIB=y -CT_COMP_LIBS_ZLIB_PKG_KSYM="ZLIB" -CT_ZLIB_DIR_NAME="zlib" -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.13" -CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION}/ https://www.zlib.net/ https://www.zlib.net/fossils/" -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_LIBICONV_NEEDED=y -CT_GETTEXT_NEEDED=y -CT_GMP_NEEDED=y -CT_MPFR_NEEDED=y -CT_ISL_NEEDED=y -CT_MPC_NEEDED=y -CT_NCURSES_NEEDED=y -CT_ZLIB_NEEDED=y -CT_LIBICONV=y -CT_GETTEXT=y -CT_GMP=y -CT_MPFR=y -CT_ISL=y -CT_MPC=y -CT_NCURSES=y -CT_ZLIB=y -# end of Companion libraries - -# -# Companion tools -# -# CT_COMP_TOOLS_FOR_HOST is not set -# CT_COMP_TOOLS_AUTOCONF is not set -# CT_COMP_TOOLS_AUTOMAKE is not set -# CT_COMP_TOOLS_BISON is not set -# CT_COMP_TOOLS_DTC is not set -# CT_COMP_TOOLS_LIBTOOL is not set -# CT_COMP_TOOLS_M4 is not set -# CT_COMP_TOOLS_MAKE is not set -CT_ALL_COMP_TOOLS_CHOICES="AUTOCONF AUTOMAKE BISON DTC LIBTOOL M4 MAKE" -# end of Companion tools diff --git a/relenv/build/__init__.py b/relenv/build/__init__.py index 828dbf30..098510a5 100644 --- a/relenv/build/__init__.py +++ b/relenv/build/__init__.py @@ -11,6 +11,8 @@ from . import linux, darwin, windows from .common import builds, CHECK_VERSIONS_SUPPORT +from ..pyversions import python_versions, Version + from ..common import build_arch @@ -26,13 +28,6 @@ def platform_module(): return windows -def platform_versions(): - """ - Return the right module based on `sys.platform`. - """ - return list(builds.builds[sys.platform].keys()) - - def setup_parser(subparsers): """ Setup the subparser for the ``build`` command. @@ -63,8 +58,7 @@ def setup_parser(subparsers): ) build_subparser.add_argument( "--python", - default=platform_versions()[0], - choices=platform_versions(), + default="3.10.17", type=str, help="The python version [default: %(default)s]", ) @@ -146,8 +140,34 @@ def main(args): print(f"Unsupported platform: {sys.platform}") sys.exit(1) + requested = Version(args.python) + + if requested.micro: + pyversions = python_versions() + if requested not in pyversions: + print(f"Unknown version {requested}") + strversions = "\n".join([str(_) for _ in pyversions]) + print(f"Known versions are:\n{strversions}") + sys.exit(1) + build_version = requested + else: + pyversions = python_versions(args.python) + build_version = pyversions[0] + + # print(pyversions) + # print(pyversions[0].major) + # print(pyversions[0].minor) + # print(pyversions[0].micro) + # print(pyversions[0].pre) + # print(pyversions[0].post) + # print(pyversions) + print(f"Build Python {build_version}") + # XXX - build = builds.builds[sys.platform][args.python] + build = builds.builds[sys.platform] + build.version = str(build_version) + build.dirs.version = str(build_version) + build.recipies["python"]["download"].version = str(build_version) if args.check_versions: if not CHECK_VERSIONS_SUPPORT: diff --git a/relenv/build/common.py b/relenv/build/common.py index f273087e..e0ba6bfa 100644 --- a/relenv/build/common.py +++ b/relenv/build/common.py @@ -78,7 +78,9 @@ SYSCONFIGDATA = """ -import pathlib, sys, platform, os +import pathlib, sys, platform, os, logging + +log = logging.getLogger(__name__) def build_arch(): machine = platform.machine() @@ -112,7 +114,22 @@ def get_triplet(machine=None, plat=None): DATA_DIR = DEFAULT_DATA_DIR buildroot = pydir.parent.parent -toolchain = DATA_DIR / "toolchain" / get_triplet() + +if sys.platform == "linux": + toolchain = "" + ppbt = None + try: + import ppbt + except ImportError: + pass + if ppbt: + env = ppbt.environ(auto_extract=True) + toolchain = pathlib.Path(env["TOOLCHAIN_PATH"]) + else: + print("ppbt package not installed") +else: + toolchain = DATA_DIR / "toolchain" / get_triplet() + build_time_vars = {} for key in _build_time_vars: val = _build_time_vars[key] @@ -768,9 +785,9 @@ def add(self, platform, *args, **kwargs): else: build = Builder(*args, **kwargs) if platform not in self.builds: - self.builds[platform] = {build.version: build} + self.builds[platform] = build else: - self.builds[platform][build.version] = build + self.builds[platform] = build return build @@ -809,10 +826,6 @@ def __init__( self.build_arch = build_arch() self.build_triplet = get_triplet(self.build_arch) self.arch = arch - self.triplet = get_triplet(self.arch) - self.version = version - # XXX Refactor WorkDirs, Dirs and Builder so as not to duplicate logic - self.prefix = self.dirs.build / f"{self.version}-{self.triplet}" self.sources = self.dirs.src self.downloads = self.dirs.download @@ -823,6 +836,7 @@ def __init__( self.build_default = build_default self.populate_env = populate_env + self.version = version self.toolchains = get_toolchain(root=self.dirs.root) self.set_arch(self.arch) @@ -855,13 +869,19 @@ def set_arch(self, arch): :type arch: str """ self.arch = arch - self.triplet = get_triplet(self.arch) - self.prefix = self.dirs.build / f"{self.version}-{self.triplet}" if sys.platform in ["darwin", "win32"]: self.toolchain = None else: self.toolchain = get_toolchain(self.arch, self.dirs.root) + @property + def triplet(self): + return get_triplet(self.arch) + + @property + def prefix(self): + return self.dirs.build / f"{self.version}-{self.triplet}" + @property def _triplet(self): if sys.platform == "darwin": @@ -974,6 +994,7 @@ def run( env["RELENV_NATIVE_PY"] = str(native_root / "bin" / "python3") self.populate_env(env, dirs) + _ = dirs.to_dict() for k in _: log.info("Directory %s %s", k, _[k]) @@ -1191,10 +1212,11 @@ def check_prereqs(self): :rtype: list """ fail = [] - if self.toolchain and not self.toolchain.exists(): - fail.append( - f"Toolchain for {self.arch} does not exist. Please use relenv toolchain to obtain a toolchain." - ) + if sys.platform == "linux": + if not self.toolchain or not self.toolchain.exists(): + fail.append( + f"Toolchain for {self.arch} does not exist. Please pip install ppbt." + ) return fail def __call__( @@ -1470,6 +1492,9 @@ def find_pythonlib(libdir): env["RELENV_CROSS"] = dirs.prefix python = env["RELENV_NATIVE_PY"] logfp.write("\nRUN ENSURE PIP\n") + + env.pop("RELENV_BUILDENV") + runcmd( [str(python), "-m", "ensurepip"], env=env, @@ -1578,9 +1603,8 @@ def create_archive(tarfp, toarchive, globs, logfp=None): :param logfp: A pointer to the log file :type logfp: file """ - if logfp is None: - log.info("Current directory %s", os.getcwd()) - log.info("Creating archive %s", tarfp.name) + log.debug("Current directory %s", os.getcwd()) + log.debug("Creating archive %s", tarfp.name) for root, _dirs, files in os.walk(toarchive): relroot = pathlib.Path(root).relative_to(toarchive) for f in files: @@ -1591,9 +1615,7 @@ def create_archive(tarfp, toarchive, globs, logfp=None): matches = True break if matches: - if logfp is None: - log.info("Adding %s", relpath) + log.debug("Adding %s", relpath) tarfp.add(relpath, relpath, recursive=False) else: - if logfp is None: - log.info("Skipping %s", relpath) + log.debug("Skipping %s", relpath) diff --git a/relenv/build/darwin.py b/relenv/build/darwin.py index c2e4cb96..c53d7651 100644 --- a/relenv/build/darwin.py +++ b/relenv/build/darwin.py @@ -72,7 +72,7 @@ def build_python(env, dirs, logfp): runcmd(["make", "install"], env=env, stderr=logfp, stdout=logfp) -build = builds.add("darwin", populate_env=populate_env, version="3.10.17") +build = builds.add("darwin", populate_env=populate_env) build.add( "openssl", @@ -128,18 +128,3 @@ def build_python(env, dirs, logfp): "python", ], ) - -build = build.copy( - version="3.11.11", checksum="acf539109b024d3c5f1fc63d6e7f08cd294ba56d" -) -builds.add("darwin", builder=build) - -build = build.copy( - version="3.12.9", checksum="465d8a664e63dc5aa1f0d90cd1d0000a970ee2fb" -) -builds.add("darwin", builder=build) - -build = build.copy( - version="3.13.5", checksum="dbf3aed444cbb2221eabfb52688aa371423aa0ba" -) -builds.add("darwin", builder=build) diff --git a/relenv/build/linux.py b/relenv/build/linux.py index 7f866dec..8ac59f2a 100644 --- a/relenv/build/linux.py +++ b/relenv/build/linux.py @@ -445,7 +445,7 @@ def build_python(env, dirs, logfp): # runcmd([str(python), "-m", "ensurepip", "-U"], env=env, stderr=logfp, stdout=logfp) -build = builds.add("linux", populate_env=populate_env, version="3.10.17") +build = builds.add("linux", populate_env=populate_env) build.add( "openssl", @@ -651,18 +651,3 @@ def build_python(env, dirs, logfp): "openssl-fips-module", ], ) - -build = build.copy( - version="3.11.11", checksum="acf539109b024d3c5f1fc63d6e7f08cd294ba56d" -) -builds.add("linux", builder=build) - -build = build.copy( - version="3.12.9", checksum="465d8a664e63dc5aa1f0d90cd1d0000a970ee2fb" -) -builds.add("linux", builder=build) - -build = build.copy( - version="3.13.5", checksum="dbf3aed444cbb2221eabfb52688aa371423aa0ba" -) -builds.add("linux", builder=build) diff --git a/relenv/build/windows.py b/relenv/build/windows.py index a7dfe74e..4bedaf9c 100644 --- a/relenv/build/windows.py +++ b/relenv/build/windows.py @@ -130,7 +130,7 @@ def build_python(env, dirs, logfp): ) -build = builds.add("win32", populate_env=populate_env, version="3.10.17") +build = builds.add("win32", populate_env=populate_env) build.add( "python", @@ -210,18 +210,3 @@ def runpip(pkg): build_func=finalize, wait_on=["python"], ) - -build = build.copy( - version="3.11.11", checksum="acf539109b024d3c5f1fc63d6e7f08cd294ba56d" -) -builds.add("win32", builder=build) - -build = build.copy( - version="3.12.9", checksum="465d8a664e63dc5aa1f0d90cd1d0000a970ee2fb" -) -builds.add("win32", builder=build) - -build = build.copy( - version="3.13.5", checksum="dbf3aed444cbb2221eabfb52688aa371423aa0ba" -) -builds.add("win32", builder=build) diff --git a/relenv/buildenv.py b/relenv/buildenv.py index 8a28e1d6..0af9a31b 100644 --- a/relenv/buildenv.py +++ b/relenv/buildenv.py @@ -3,10 +3,16 @@ """ Helper for building libraries to install into a relenv environment. """ +import json import logging import sys -from .common import MACOS_DEVELOPMENT_TARGET, RelenvException, get_triplet, work_dirs +from .common import ( + MACOS_DEVELOPMENT_TARGET, + RelenvException, + get_toolchain, + get_triplet, +) log = logging.getLogger() @@ -22,6 +28,12 @@ def setup_parser(subparsers): "buildenv", description="Relenv build environment" ) subparser.set_defaults(func=main) + subparser.add_argument( + "--json", + default=False, + action="store_true", + help=("Output json to stdout instead of export statments"), + ) def is_relenv(): @@ -43,9 +55,11 @@ def buildenv(relenv_path=None): if sys.platform != "linux": raise RelenvException("buildenv is only supported on Linux") - dirs = work_dirs() + toolchain = get_toolchain() + if not toolchain: + raise RelenvException("buildenv is only supported on Linux") + triplet = get_triplet() - toolchain = dirs.toolchain / get_triplet() env = { "RELENV_BUILDENV": "1", "TOOLCHAIN_PATH": f"{toolchain}", @@ -90,12 +104,13 @@ def main(args): if sys.platform != "linux": log.error("buildenv is only supported on Linux.") - # dirs = work_dirs() - # triplet = get_triplet() - # toolchain = dirs.toolchain / get_triplet() + if args.json: + print(json.dumps(buildenv())) + sys.exit(0) script = "" for k, v in buildenv().items(): script += f'export {k}="{v}"\n' print(script) + sys.exit(0) diff --git a/relenv/common.py b/relenv/common.py index 62a9acae..00fae653 100644 --- a/relenv/common.py +++ b/relenv/common.py @@ -28,6 +28,8 @@ MACOS_DEVELOPMENT_TARGET = "10.15" +REQUEST_HEADERS = {"User-Agent": f"relenv {__version__}"} + CHECK_HOSTS = ( "packages.broadcom.com/artifactory/saltproject-generic", "repo.saltproject.io", @@ -160,6 +162,7 @@ class WorkDirs: def __init__(self, root): self.root = root + self.data = DATA_DIR self.toolchain_config = work_dir("toolchain", self.root) self.toolchain = work_dir("toolchain", DATA_DIR) self.build = work_dir("build", DATA_DIR) @@ -224,10 +227,18 @@ def get_toolchain(arch=None, root=None): :return: The directory holding the toolchain :rtype: ``pathlib.Path`` """ - dirs = work_dirs(root) - if arch: - return dirs.toolchain / "{}-linux-gnu".format(arch) - return dirs.toolchain + if sys.platform != "linux": + return DATA_DIR + ppbt = None + + try: + import ppbt + except ImportError: + pass + + if ppbt: + env = ppbt.environ(auto_extract=True) + return pathlib.Path(env["TOOLCHAIN_PATH"]) def get_triplet(machine=None, plat=None): @@ -342,17 +353,30 @@ def get_download_location(url, dest): return os.path.join(dest, os.path.basename(url)) -def check_url(url, timeout=30): +def check_url(url, timestamp=None, timeout=30): """ Check that the url returns a 200. """ # Late import so we do not import hashlib before runtime.bootstrap is called. + import time import urllib.request + headers = dict(REQUEST_HEADERS) + req = urllib.request.Request(url) + + if timestamp: + headers["If-Modified-Since"] = time.strftime( + "%a, %d %b %Y %H:%M:%S GMT", time.gmtime(timestamp) + ) + + for k, v in headers.items(): + req.add_header(k, v) + fin = None try: - fin = urllib.request.urlopen(url, timeout=timeout) - except Exception: + fin = urllib.request.urlopen(req, timeout=timeout) + except Exception as exc: + print(exc) return False finally: if fin: @@ -405,6 +429,62 @@ def fetch_url(url, fp, backoff=3, timeout=30): log.info("Download complete %s", url) +def fetch_url_content(url, backoff=3, timeout=30): + """ + Fetch the contents of a url. + + This method will store the contents in the given file like object. + """ + # Late import so we do not import hashlib before runtime.bootstrap is called. + import gzip + import io + import urllib.error + import urllib.request + + fp = io.BytesIO() + + last = time.time() + if backoff < 1: + backoff = 1 + n = 0 + while n < backoff: + n += 1 + try: + fin = urllib.request.urlopen(url, timeout=timeout) + except ( + urllib.error.HTTPError, + urllib.error.URLError, + http.client.RemoteDisconnected, + ) as exc: + if n >= backoff: + raise RelenvException(f"Error fetching url {url} {exc}") + log.debug("Unable to connect %s", url) + time.sleep(n * 10) + log.info("url opened %s", url) + try: + total = 0 + size = 1024 * 300 + block = fin.read(size) + while block: + total += size + if time.time() - last > 10: + log.info("%s > %d", url, total) + last = time.time() + fp.write(block) + block = fin.read(10240) + finally: + fin.close() + # fp.close() + log.info("Download complete %s", url) + fp.seek(0) + info = fin.info() + if "content-encoding" in info: + if info["content-encoding"] == "gzip": + log.debug("Found gzipped content") + fp = gzip.GzipFile(fileobj=fp) + return fp.read().decode() + + def download_url(url, dest, verbose=True, backoff=3, timeout=60): """ Download the url to the provided destination. diff --git a/relenv/create.py b/relenv/create.py index 1067a776..f80a8167 100644 --- a/relenv/create.py +++ b/relenv/create.py @@ -10,7 +10,6 @@ import sys import tarfile -from .build import platform_versions from .common import RelenvException, arches, archived_build, build_arch @@ -61,8 +60,7 @@ def setup_parser(subparsers): ) subparser.add_argument( "--python", - default=platform_versions()[0], - choices=platform_versions(), + default="3.10.17", type=str, help="The python version [default: %(default)s]", ) @@ -89,7 +87,7 @@ def create(name, dest=None, arch=None, version=None): writeto = pathlib.Path(name).resolve() if version is None: - version = platform_versions()[0] + version = "3.10.17" if pathlib.Path(writeto).exists(): raise CreateException("The requested path already exists.") diff --git a/relenv/fetch.py b/relenv/fetch.py index e40d5f37..a4bb0f6b 100644 --- a/relenv/fetch.py +++ b/relenv/fetch.py @@ -7,7 +7,7 @@ import os import sys -from .build import platform_module, platform_versions +from .build import platform_module from .common import ( CHECK_HOSTS, DATA_DIR, @@ -39,9 +39,7 @@ def setup_parser(subparsers): ) subparser.add_argument( "--python", - default=platform_versions()[0], - # Allow fetching of older versions - # choices=platform_versions(), + default="3.10.17", type=str, help="The python version [default: %(default)s]", ) diff --git a/relenv/manifest.py b/relenv/manifest.py new file mode 100644 index 00000000..17e4ecb4 --- /dev/null +++ b/relenv/manifest.py @@ -0,0 +1,34 @@ +# Copyright 2025 Broadcom. +# SPDX-License-Identifier: Apache-2.0 +# +""" +Relenv manifest. +""" +import hashlib +import os +import sys + + +def manifest(root=None): + """ + List all the file in a relenv and their hashes. + """ + if root is None: + root = getattr(sys, "RELENV", os.getcwd()) + for root, dirs, files in os.walk(root): + for file in files: + hsh = hashlib.sha256() + try: + with open(root + os.path.sep + file, "rb") as fp: + while True: + chunk = fp.read(9062) + if not chunk: + break + hsh.update(chunk) + except OSError: + pass + print(f"{root + os.path.sep + file} => {hsh.hexdigest()}") + + +if __name__ == "__main__": + manifest() diff --git a/relenv/python-versions.json b/relenv/python-versions.json new file mode 100644 index 00000000..b43f5330 --- /dev/null +++ b/relenv/python-versions.json @@ -0,0 +1 @@ +{"versions": ["3.13.5", "3.13.4", "3.13.3", "3.13.2", "3.13.1", "3.13.0", "3.12.11", "3.12.10", "3.12.9", "3.12.8", "3.12.7", "3.12.6", "3.12.5", "3.12.4", "3.12.3", "3.12.2", "3.12.1", "3.12.0", "3.11.13", "3.11.12", "3.11.11", "3.11.10", "3.11.9", "3.11.8", "3.11.7", "3.11.6", "3.11.5", "3.11.4", "3.11.3", "3.11.2", "3.11.1", "3.11.0", "3.10.18", "3.10.17", "3.10.16", "3.10.15", "3.10.14", "3.10.13", "3.10.12", "3.10.11", "3.10.10", "3.10.9", "3.10.8", "3.10.7", "3.10.6", "3.10.5", "3.10.4", "3.10.3", "3.10.2", "3.10.1", "3.10.0", "3.9.23", "3.9.22", "3.9.21", "3.9.20", "3.9.19", "3.9.18", "3.9.17", "3.9.16", "3.9.15", "3.9.14", "3.9.13", "3.9.12", "3.9.11", "3.9.10", "3.9.9", "3.9.8", "3.9.7", "3.9.6", "3.9.5", "3.9.4", "3.9.2", "3.9.1", "3.9.0", "3.8.20", "3.8.19", "3.8.18", "3.8.17", "3.8.16", "3.8.15", "3.8.14", "3.8.13", "3.8.12", "3.8.11", "3.8.10", "3.8.9", "3.8.8", "3.8.7", "3.8.6", "3.8.5", "3.8.4", "3.8.3", "3.8.2", "3.8.1", "3.8.0", "3.7.17", "3.7.16", "3.7.15", "3.7.14", "3.7.13", "3.7.12", "3.7.11", "3.7.10", "3.7.9", "3.7.8", "3.7.7", "3.7.6", "3.7.5", "3.7.4", "3.7.3", "3.7.2", "3.7.1", "3.7.0", "3.6.15", "3.6.14", "3.6.13", "3.6.12", "3.6.11", "3.6.10", "3.6.9", "3.6.8", "3.6.7", "3.6.6", "3.6.5", "3.6.4", "3.6.3", "3.6.2", "3.6.1", "3.6.0", "3.5.10", "3.5.9", "3.5.8", "3.5.7", "3.5.6", "3.5.5", "3.5.4", "3.5.3", "3.5.2", "3.5.1", "3.5.0", "3.4.10", "3.4.9", "3.4.8", "3.4.7", "3.4.6", "3.4.5", "3.4.4", "3.4.3", "3.4.2", "3.4.1", "3.4.0", "3.3.7", "3.3.6", "3.3.5", "3.3.4", "3.3.3", "3.3.2", "3.3.1", "3.3.0", "3.2.6", "3.2.5", "3.2.4", "3.2.3", "3.2.2", "3.2.1", "3.2.0", "3.1.5", "3.1.4", "3.1.3", "3.1.2", "3.1.1", "3.1.0", "3.0.1", "3.0.0"]} \ No newline at end of file diff --git a/relenv/pyversions.py b/relenv/pyversions.py new file mode 100644 index 00000000..d6d4779b --- /dev/null +++ b/relenv/pyversions.py @@ -0,0 +1,411 @@ +# Copyright 2025 Broadcom. +# SPDX-License-Identifier: Apache-2.0 +""" +Versions utility. +""" +# try: +# from packaging.version import Version +# except ImportError: +# raise RuntimeError( +# "Required dependencies not found. Please pip install relenv[pyversions]" +# ) +# + +import hashlib +import json +import logging +import os +import pathlib +import re +import subprocess +import sys +import time + +from relenv.common import check_url, download_url, fetch_url_content + +log = logging.getLogger(__name__) + +KEYSERVERS = [ + "keyserver.ubuntu.com", + "keys.openpgp.org", + "pgp.mit.edu", +] + +ARCHIVE = "https://www.python.org/ftp/python/{version}/Python-{version}.{ext}" + + +def _ref_version(x): + _ = x.split("Python ", 1)[1].split("<", 1)[0] + return Version(_) + + +def _ref_path(x): + return x.split('href="')[1].split('"')[0] + + +class Version: + """ + Version comparrisons. + """ + + def __init__(self, data): + self.major, self.minor, self.micro = self.parse_string(data) + self._data = data + + def __str__(self): + """ + Version as string. + """ + _ = f"{self.major}" + if self.minor is not None: + _ += f".{self.minor}" + if self.micro is not None: + _ += f".{self.micro}" + # XXX What if minor was None but micro was an int. + return _ + + @staticmethod + def parse_string(data): + """ + Parse a version string into major, minor, and micro integers. + """ + parts = data.split(".") + if len(parts) == 1: + return int(parts[0]), None, None + elif len(parts) == 2: + return int(parts[0]), int(parts[1]), None + elif len(parts) == 3: + return int(parts[0]), int(parts[1]), int(parts[2]) + else: + raise RuntimeError("Too many parts to parse") + + def __eq__(self, other): + """ + Equality comparrison. + """ + mymajor = 0 if self.major is None else self.major + myminor = 0 if self.minor is None else self.minor + mymicro = 0 if self.micro is None else self.micro + major = 0 if other.major is None else other.major + minor = 0 if other.minor is None else other.minor + micro = 0 if other.micro is None else other.micro + return mymajor == major and myminor == minor and mymicro == micro + + def __lt__(self, other): + """ + Less than comparrison. + """ + mymajor = 0 if self.major is None else self.major + myminor = 0 if self.minor is None else self.minor + mymicro = 0 if self.micro is None else self.micro + major = 0 if other.major is None else other.major + minor = 0 if other.minor is None else other.minor + micro = 0 if other.micro is None else other.micro + if mymajor < major: + return True + elif mymajor == major: + if myminor < minor: + return True + if myminor == minor and mymicro < micro: + return True + return False + + def __le__(self, other): + """ + Less than or equal to comparrison. + """ + mymajor = 0 if self.major is None else self.major + myminor = 0 if self.minor is None else self.minor + mymicro = 0 if self.micro is None else self.micro + major = 0 if other.major is None else other.major + minor = 0 if other.minor is None else other.minor + micro = 0 if other.micro is None else other.micro + if mymajor <= major: + if myminor <= minor: + if mymicro <= micro: + return True + return False + + def __gt__(self, other): + """ + Greater than comparrison. + """ + return not self.__le__(other) + + def __ge__(self, other): + """ + Greater than or equal to comparrison. + """ + return not self.__lt__(other) + + +def _release_urls(version, gzip=False): + if gzip: + tarball = f"https://www.python.org/ftp/python/{version}/Python-{version}.tgz" + else: + tarball = f"https://www.python.org/ftp/python/{version}/Python-{version}.tar.xz" + # No signatures prior to 2.3 + if version < Version("2.3"): + return tarball, None + return tarball, f"{tarball}.asc" + + +def _receive_key(keyid, server): + proc = subprocess.run( + ["gpg", "--keyserver", server, "--recv-keys", keyid], capture_output=True + ) + if proc.returncode == 0: + return True + return False + + +def _get_keyid(proc): + try: + err = proc.stderr.decode() + return err.splitlines()[1].rsplit(" ", 1)[-1] + except (AttributeError, IndexError): + return False + + +def verify_signature(path, signature): + """ + Verify gpg signature. + """ + proc = subprocess.run(["gpg", "--verify", signature, path], capture_output=True) + keyid = _get_keyid(proc) + if proc.returncode == 0: + print(f"Valid signature {path} {keyid}") + return True + err = proc.stderr.decode() + if "No public key" in err: + for server in KEYSERVERS: + if _receive_key(keyid, server): + print(f"found public key {keyid} on {server}") + break + else: + print(f"Unable to find key {keyid} on any server") + else: + print(f"Signature verification failed {proc.stderr.decode()}") + return False + proc = subprocess.run(["gpg", "--verify", signature, path], capture_output=True) + if proc.returncode == 0: + print(f"Valid signature {path} {signature}") + return True + err = proc.stderr.decode() + print(f"Signature verification failed {proc.stderr.decode()}") + return False + + +PRINT = True +CHECK = True +VERSION = None # '3.13.2' +UPDATE = False + + +def digest(file): + """ + SHA-256 digest of file. + """ + hsh = hashlib.sha256() + with open(file, "rb") as fp: + hsh.update(fp.read()) + return hsh.hexdigest() + + +def _main(): + + pyversions = {"versions": []} + + vfile = pathlib.Path(".pyversions") + cfile = pathlib.Path(".content") + tsfile = pathlib.Path(".ts") + url = "https://www.python.org/downloads/" + if not cfile.exists() or not tsfile.exists(): + print("Get downloads page") + ts = int(time.time()) + content = fetch_url_content(url) + cfile.write_text(content) + tsfile.write_text(str(ts)) + elif CHECK: + ts = int(tsfile.read_text()) + if check_url(url, timestamp=ts): + print("Get downloads page") + ts = int(time.time()) + content = fetch_url_content(url) + cfile.write_text(content) + tsfile.write_text(str(ts)) + else: + pyversions = json.loads(vfile.read_text()) + content = cfile.read_text() + else: + pyversions = json.loads(vfile.read_text()) + content = cfile.read_text() + + matched = re.findall(r'Python.*', content) + + parsed_versions = sorted([_ref_version(_) for _ in matched], reverse=True) + + versions = [_ for _ in parsed_versions if _.major >= 3] + cwd = os.getcwd() + + out = {} + + for version in versions: + if VERSION and Version(VERSION) != version: + continue + + if PRINT: + pyversions["versions"].append(str(version)) + print(version) + continue + + print(f"Check version {version}") + + # Prior to 3.2.0 the url format only included major and minor. + if version <= Version("3.2") and version.micro == 0: + url_version = Version(f"{version.major}.{version.minor}") + else: + url_version = version + + # No xz archives prior to 3.1.4 + if version >= Version("3.1.4"): + url = ARCHIVE.format(version=url_version, ext="tar.xz") + if CHECK: + check_url(url) + check_url(f"{url}.asc") + else: + path = download_url(url, cwd) + sig_path = download_url(f"{url}.asc", cwd) + verified = verify_signature(path, sig_path) + if verified: + if str(version) in out: + out[str(version)][url] = digest(path) + else: + out[str(version)] = {url: digest(path)} + + url = ARCHIVE.format(version=url_version, ext="tgz") + if CHECK: + check_url(url) + # No signatures prior to 2.3 + if version >= Version("2.3"): + check_url(f"{url}.asc") + else: + path = download_url(url, cwd) + if version >= Version("2.3"): + sig_path = download_url(f"{url}.asc", cwd) + verified = verify_signature(path, sig_path) + if verified: + if str(version) in out: + out[str(version)][url] = digest(path) + else: + out[str(version)] = {url: digest(path)} + + if PRINT: + vfile.write_text(json.dumps(pyversions)) + elif not CHECK and out: + vfile.write_text(json.dumps(out)) + + +def create_pyversions(path): + """ + Create python-versions.json file. + """ + url = "https://www.python.org/downloads/" + content = fetch_url_content(url) + matched = re.findall(r'Python.*', content) + parsed_versions = sorted([_ref_version(_) for _ in matched], reverse=True) + versions = [_ for _ in parsed_versions if _.major >= 3] + path.write_text(json.dumps({"versions": [str(_) for _ in versions]})) + + +def python_versions(minor=None, create=False, update=False): + """ + List python versions. + """ + packaged = pathlib.Path(__file__).parent / "python-versions.json" + local = pathlib.Path("~/.local/relenv/python-versions.json") + + if create: + create_pyversions(packaged) + + if local.exists(): + readfrom = local + elif packaged.exists(): + readfrom = packaged + elif create: + readfrom = packaged + else: + raise RuntimeError("No versions file found") + pyversions = json.loads(readfrom.read_text()) + versions = [Version(_) for _ in pyversions["versions"]] + if minor: + mv = Version(minor) + versions = [_ for _ in versions if _.major == mv.major and _.minor == mv.minor] + return versions + + +def setup_parser(subparsers): + """ + Setup the subparser for the ``versions`` command. + + :param subparsers: The subparsers object returned from ``add_subparsers`` + :type subparsers: argparse._SubParsersAction + """ + subparser = subparsers.add_parser( + "versions", + description=("Versions utility"), + ) + subparser.set_defaults(func=main) + subparser.add_argument( + "-u", + "--update", + default=False, + action="store_true", + help="Update versions", + ) + subparser.add_argument( + "-l", + "--list", + default=False, + action="store_true", + help="List versions", + ) + subparser.add_argument( + "--version", + default="3.13", + type=str, + help="The python version [default: %(default)s]", + ) + + +def main(args): + """ + Versions utility main method. + """ + if args.update: + python_versions(create=True) + if args.list: + for version in python_versions(): + print(version) + sys.exit() + if args.version: + requested = Version(args.version) + + if requested.micro: + pyversions = python_versions() + if requested not in pyversions: + print(f"Unknown version {requested}") + sys.exit(1) + build_version = requested + else: + pyversions = python_versions(args.version) + if not pyversions: + print(f"Unknown minor version {requested}") + sys.exit(1) + build_version = pyversions[0] + print(build_version) + sys.exit() + + +if __name__ == "__main__": + _main() diff --git a/relenv/runtime.py b/relenv/runtime.py index 0888d8f3..e2beca11 100644 --- a/relenv/runtime.py +++ b/relenv/runtime.py @@ -601,8 +601,19 @@ def wrap_pip_build_wheel(name): def wrap(func): @functools.wraps(func) def wrapper(*args, **kwargs): - dirs = common().work_dirs() - toolchain = dirs.toolchain / common().get_triplet() + if sys.platform != "linux": + return func(*args, **kwargs) + if not hasattr(install_cargo_config, "tmpdir") and os.environ.get( + "RELENV_BUILDENV", 0 + ): + raise RuntimeError("No toolchain installed") + cargo_home = install_cargo_config.tmpdir.name + toolchain = common().get_toolchain() + if not toolchain: + if os.environ.get("RELENV_BUILDENV", 0): + raise RuntimeError("No toolchain installed") + return func(*args, **kwargs) + if not toolchain.exists(): debug("Unable to set CARGO_HOME no toolchain exists") else: @@ -612,7 +623,6 @@ def wrapper(*args, **kwargs): f"-C link-arg=-L{relenvroot}/lib " f"-C link-arg=-L{toolchain}/sysroot/lib" ) - cargo_home = str(toolchain / "cargo") set_env_if_not_set("CARGO_HOME", cargo_home) set_env_if_not_set("OPENSSL_DIR", relenvroot) set_env_if_not_set("RUSTFLAGS", rustflags) @@ -697,7 +707,12 @@ def wrapper( return wrapper + # get_scheme is not available on pip-19.2.3 + # try: mod.get_scheme = wrap(mod.get_scheme) + # except AttributeError: + # debug(f"Module {mod} does not have attribute get_scheme") + return mod @@ -825,13 +840,28 @@ def install_cargo_config(): """ if sys.platform != "linux": return + + # We need this as a late import for python < 3.12 becuase importing it will + # load the ssl module. Causing out setup_openssl method to fail to load + # fips module. + import tempfile + + install_cargo_config.tmpdir = tempfile.TemporaryDirectory(prefix="relenvcargo") + cargo_home = pathlib.Path(install_cargo_config.tmpdir.name) + triplet = common().get_triplet() - dirs = common().work_dirs() - toolchain = dirs.toolchain / triplet + # dirs = common().work_dirs() + + toolchain = common().get_toolchain() + if not toolchain: + debug("Unable to set CARGO_HOME ppbt package not installed") + return + if not toolchain.exists(): debug("Unable to set CARGO_HOME no toolchain exists") return - cargo_home = toolchain / "cargo" + + # cargo_home = dirs.data / "cargo" if not cargo_home.exists(): cargo_home.mkdir() cargo_config = cargo_home / "config.toml" diff --git a/relenv/toolchain.py b/relenv/toolchain.py index 65b0137b..18db7391 100644 --- a/relenv/toolchain.py +++ b/relenv/toolchain.py @@ -4,34 +4,6 @@ The ``relenv toolchain`` command. """ -import os -import pathlib -import platform -import shutil -import sys - -from .common import ( - CHECK_HOSTS, - DATA_DIR, - __version__, - arches, - build_arch, - check_url, - download_url, - extract_archive, - get_toolchain, - get_triplet, - runcmd, - work_dirs, -) - -CT_NG_VER = "1.25.0" -CT_URL = "http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-{version}.tar.bz2" -TC_URL = "https://{hostname}/relenv/{version}/toolchain/{host}/{triplet}.tar.xz" -CICD = "CI" in os.environ - -LAST_RELENV_W_TOOLCHAIN = "0.17.4" - def setup_parser(subparsers): """ @@ -43,165 +15,15 @@ def setup_parser(subparsers): subparser = subparsers.add_parser("toolchain", description="Build Linux Toolchains") subparser.set_defaults(func=main) - subparser.add_argument( - "command", - default="fetch", - choices=["build", "fetch"], - help="What type of toolchain operation to perform: build or fetch", - ) - subparser.add_argument( - "--arch", - default=build_arch(), - choices=arches[sys.platform], - help="Architecture to build or fetch", - ) - subparser.add_argument( - "--clean", - default=False, - action="store_true", - help="Whether or not to clean the toolchain directories", - ) - subparser.add_argument( - "--crosstool-only", - default=False, - action="store_true", - help="When building only build Crosstool NG. Do not build toolchains", - ) - -def fetch(arch, toolchain, clean=False, version=__version__): - """ - Fetch a toolchain and extract it to the filesystem. - - :param arch: The architecture of the toolchain - :type arch: str - :param toolchain: Where to extract the toolchain - :type toolchain: str - :param clean: If true, clean the toolchain directories first - :type clean: bool +def main(*args, **kwargs): """ - triplet = get_triplet(arch) - archdir = get_toolchain(root=pathlib.Path(DATA_DIR) / "toolchain", arch=arch) - if clean: - shutil.rmtree(archdir) - if archdir.exists(): - print(f"Toolchain directory exists, skipping {arch}") - return - - check_hosts = CHECK_HOSTS - if os.environ.get("RELENV_FETCH_HOST", ""): - check_hosts = [os.environ["RELENV_FETCH_HOST"]] - for host in check_hosts: - url = TC_URL.format( - hostname=host, - version=LAST_RELENV_W_TOOLCHAIN, - host=platform.machine(), - triplet=triplet, - ) - if check_url(url, timeout=5): - break - else: - print(f"Unable to find file on an hosts {' '.join(check_hosts)}") - sys.exit(1) - - archive = download_url(url, toolchain) - extract_archive(toolchain, archive) - - -def _configure_ctng(ctngdir, dirs): + Notify users of toolchain command deprecation. """ - Configure crosstool-ng. - - :param ctngdir: The directory holding crosstool-ng - :type ctngdir: str - :param dirs: The working directories - :type dirs: ``relenv.common.WorkDirs`` - """ - if not ctngdir.exists(): - url = CT_URL.format(version=CT_NG_VER) - archive = download_url(url, dirs.toolchain) - extract_archive(dirs.toolchain, archive) - os.chdir(ctngdir) - ctng = ctngdir / "ct-ng" - if not ctng.exists(): - runcmd(["./configure", "--enable-local"]) - runcmd(["make"]) - - -def build(arch, dirs, machine, ctngdir): - """ - Build a toolchaing for the given arch. - - :param arch: The architecture to build for - :type arch: str - :param dirs: The working directories - :type dirs: ``relenv.common.WorkDirs`` - :param machine: The machine to build for - :type machine: str - :param ctngdir: The directory holding crosstool-ng - :type ctngdir: ``pathlib.Path`` - """ - os.chdir(dirs.toolchain) - ctng = ctngdir / "ct-ng" - triplet = get_triplet(arch) - archdir = dirs.toolchain / triplet - if archdir.exists(): - print("Toolchain directory exists: {}".format(archdir)) - else: - config = dirs.toolchain_config / machine / "{}-ct-ng.config".format(triplet) - if not config.exists(): - print("Toolchain config missing: {}".format(config)) - sys.exit(1) - with open(config, "r") as rfp: - with open(".config", "w") as wfp: - wfp.write(rfp.read()) - env = os.environ.copy() - env["CT_PREFIX"] = dirs.toolchain - env["CT_ALLOW_BUILD_AS_ROOT"] = "y" - env["CT_ALLOW_BUILD_AS_ROOT_SURE"] = "y" - if CICD: - env["CT_LOG_PROGRESS"] = "n" - runcmd( - [ - str(ctng), - "source", - ], - env=env, - ) - runcmd( - [ - str(ctng), - "build", - ], - env=env, - ) - - -def main(args): - """ - The entrypoint into the ``relenv toolchain`` command. - - :param args: The arguments for the command - :type args: ``argparse.Namespace`` - """ - version = os.environ.get("RELENV_FETCH_VERSION", __version__) - machine = platform.machine() - dirs = work_dirs() - print(f"Toolchain directory: {dirs.toolchain}") - if not dirs.toolchain.exists(): - os.makedirs(dirs.toolchain) - if args.command == "fetch": - fetch(args.arch, dirs.toolchain, args.clean, version) - sys.exit(0) - elif args.command == "build": - ctngdir = dirs.toolchain / "crosstool-ng-{}".format(CT_NG_VER) - _configure_ctng(ctngdir, dirs) - if args.crosstool_only: - sys.exit(0) - build(args.arch, dirs, machine, ctngdir) + print( + "The relenv toolchain command has been deprecated. Please pip install relenv[toolchain]." + ) if __name__ == "__main__": - from argparse import ArgumentParser - - main(ArgumentParser()) + main() diff --git a/requirements/docs.txt b/requirements/docs.txt index 5db24c04..9d522971 100644 --- a/requirements/docs.txt +++ b/requirements/docs.txt @@ -5,3 +5,5 @@ sphinx sphinx-argparse furo sphinx-mdinclude +ppbt; sys_platform == 'linux' + diff --git a/requirements/tests.txt b/requirements/tests.txt index 238cb017..c31bda0d 100644 --- a/requirements/tests.txt +++ b/requirements/tests.txt @@ -4,3 +4,4 @@ pytest pytest-skip-markers swig +ppbt; sys_platform == 'linux' diff --git a/setup.cfg b/setup.cfg index 16579870..ce11e0eb 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,5 +1,5 @@ -# Copyright 2022 VMware, Inc. -# SPDX-License-Identifier: Apache-2 +# Copyright 2025 Broadcom. +# SPDX-License-Identifier: Apache-2.0 [metadata] name = relenv @@ -18,7 +18,6 @@ package_dir = relenv = relenv include_package_data = True - [options.entry_points] console_scripts = relenv = relenv.__main__:main diff --git a/setup.py b/setup.py index 26f449c3..21afe48e 100644 --- a/setup.py +++ b/setup.py @@ -1,5 +1,8 @@ #!/usr/bin/env python3 +# Copyright 2025 Broadcom. +# SPDX-License-Identifier: Apache-2.0 + from setuptools import setup if __name__ == "__main__": diff --git a/tests/conftest.py b/tests/conftest.py index fb871c6d..635cf41d 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -25,7 +25,9 @@ def get_build_version(): if sysplat == sys.platform and arch == platform.machine().lower(): versions.append(version) if versions: - return versions[0] + version = versions[0] + log.warn("Environment RELENV_PY_VERSION not set, detected version %s", version) + return version def pytest_report_header(config): diff --git a/tests/test_build.py b/tests/test_build.py index 0fc04825..b151831a 100644 --- a/tests/test_build.py +++ b/tests/test_build.py @@ -29,8 +29,8 @@ def test_builder_defaults_linux(): assert builder.prefix == DATA_DIR / "build" / "3.10.10-x86_64-linux-gnu" assert builder.sources == DATA_DIR / "src" assert builder.downloads == DATA_DIR / "download" - assert builder.toolchains == DATA_DIR / "toolchain" - assert builder.toolchain == DATA_DIR / "toolchain" / "x86_64-linux-gnu" + assert "ppbt" in str(builder.toolchain) + assert "_toolchain" in str(builder.toolchain) assert callable(builder.build_default) assert callable(builder.populate_env) assert builder.recipies == {} diff --git a/tests/test_common.py b/tests/test_common.py index bac5969c..b6cda08b 100644 --- a/tests/test_common.py +++ b/tests/test_common.py @@ -124,14 +124,20 @@ def test_get_toolchain(tmp_path): data_dir = tmp_path / "data" with patch("relenv.common.DATA_DIR", data_dir): ret = get_toolchain(arch="aarch64") - assert ret == data_dir / "toolchain" / "aarch64-linux-gnu" + if sys.platform in ["darwin", "win32"]: + assert "data" in str(ret) + else: + assert "ppbt" in str(ret) def test_get_toolchain_no_arch(tmp_path): data_dir = tmp_path / "data" with patch("relenv.common.DATA_DIR", data_dir): ret = get_toolchain() - assert ret == data_dir / "toolchain" + if sys.platform in ["darwin", "win32"]: + assert "data" in str(ret) + else: + assert "ppbt" in str(ret) @pytest.mark.parametrize("open_arg", (":gz", ":xz", ":bz2", "")) diff --git a/tests/test_fips_photon.py b/tests/test_fips_photon.py index d2888561..4e5728a0 100644 --- a/tests/test_fips_photon.py +++ b/tests/test_fips_photon.py @@ -7,6 +7,8 @@ import pytest +from tests.test_verify_build import _install_ppbt + from .conftest import get_build_version @@ -27,6 +29,7 @@ def check_test_environment(): def test_fips_mode(pyexec, build): + _install_ppbt(pyexec) env = os.environ.copy() proc = subprocess.run( [ diff --git a/tests/test_toolchain.py b/tests/test_toolchain.py deleted file mode 100644 index 66cd1c25..00000000 --- a/tests/test_toolchain.py +++ /dev/null @@ -1,107 +0,0 @@ -# Copyright 2022-2025 Broadcom. -# SPDX-License-Identifier: Apache-2.0 -# -from unittest.mock import call, patch - -import pytest - -from relenv.common import WorkDirs -from relenv.toolchain import _configure_ctng, build, fetch - - -def test_fetch(tmp_path): - archdir = tmp_path / "archdir" - archive = str(tmp_path / "archive") - with patch("relenv.toolchain.get_triplet", return_value="a-fake-triplet"): - with patch("relenv.toolchain.check_url", return_value=True): - with patch("relenv.toolchain.get_toolchain", return_value=archdir): - with patch( - "relenv.toolchain.download_url", return_value=archive - ) as dl_mock: - with patch("relenv.toolchain.extract_archive") as extract_mock: - fetch("fake_arch", "fake_toolchain") - dl_mock.assert_called_once() - extract_mock.assert_called_with("fake_toolchain", archive) - - -def test_fetch_directory_exists(tmp_path): - with patch("relenv.toolchain.get_triplet", return_value="a-fake-triplet"): - with patch("relenv.toolchain.get_toolchain", return_value=tmp_path): - with patch("relenv.toolchain.check_url", return_value=True): - with patch("relenv.toolchain.download_url") as dl_mock: - fetch("fake_arch", "fake_toolchain") - dl_mock.assert_not_called() - - -def test__configure_ctng(tmp_path): - ctngdir = tmp_path / "ctngdir" - ctngdir.mkdir() - data_dir = tmp_path / "data" - root_dir = tmp_path / "root_dir" - with patch("relenv.common.DATA_DIR", data_dir): - with patch("relenv.toolchain.runcmd") as cmd_mock: - dirs = WorkDirs(root=root_dir) - _configure_ctng(ctngdir, dirs) - calls = [call(["./configure", "--enable-local"]), call(["make"])] - cmd_mock.assert_has_calls(calls) - - -def test_build(tmp_path): - ctngdir = tmp_path / "ctngdir" - ctngdir.mkdir() - ctng = ctngdir / "ct-ng" - data_dir = tmp_path / "data" - root_dir = tmp_path / "root_dir" - machine = "fake_machine" - arch = "fake_arch" - triplet = "a-fake-triplet" - with patch("relenv.common.DATA_DIR", data_dir): - with patch("relenv.toolchain.get_triplet", return_value=triplet): - with patch("relenv.toolchain.runcmd") as cmd_mock: - dirs = WorkDirs(root=root_dir) - tc_config_dir = dirs.toolchain_config / machine - tc_config_dir.mkdir(parents=True) - (tc_config_dir / "{}-ct-ng.config".format(triplet)).write_text( - "some text" - ) - dirs.toolchain.mkdir(parents=True) - build(arch, dirs, machine, ctngdir) - assert (dirs.toolchain / ".config").read_text() == "some text" - assert cmd_mock.call_count == 2 - assert cmd_mock.call_args_list[0].args[0] == [str(ctng), "source"] - assert cmd_mock.call_args_list[1].args[0] == [str(ctng), "build"] - - -def test_build_directory_exists(tmp_path): - ctngdir = tmp_path / "ctngdir" - ctngdir.mkdir() - data_dir = tmp_path / "data" - root_dir = tmp_path / "root_dir" - machine = "fake_machine" - arch = "fake_arch" - triplet = "a-fake-triplet" - with patch("relenv.common.DATA_DIR", data_dir): - with patch("relenv.toolchain.get_triplet", return_value=triplet): - with patch("relenv.toolchain.runcmd") as cmd_mock: - dirs = WorkDirs(root=root_dir) - (dirs.toolchain / triplet).mkdir(parents=True) - build(arch, dirs, machine, ctngdir) - cmd_mock.assert_not_called() - - -def test_build_config_doesnt_exist(tmp_path): - ctngdir = tmp_path / "ctngdir" - ctngdir.mkdir() - data_dir = tmp_path / "data" - root_dir = tmp_path / "root_dir" - machine = "fake_machine" - arch = "fake_arch" - triplet = "a-fake-triplet" - with patch("relenv.common.DATA_DIR", data_dir): - with patch("relenv.toolchain.get_triplet", return_value=triplet): - with patch("relenv.toolchain.runcmd") as cmd_mock: - dirs = WorkDirs(root=root_dir) - dirs.toolchain.mkdir(parents=True) - with pytest.raises(SystemExit): - build(arch, dirs, machine, ctngdir) - cmd_mock.assert_not_called() diff --git a/tests/test_verify_build.py b/tests/test_verify_build.py index 91a3b649..47bbed12 100644 --- a/tests/test_verify_build.py +++ b/tests/test_verify_build.py @@ -1,9 +1,9 @@ -# Copyright 2025 Broadcom. -# Copyright 2022-2024 VMware, Inc. +# Copyright 2022-2025 Broadcom. # SPDX-License-Identifier: Apache-2 """ Verify relenv builds. """ +import json import os import pathlib import platform @@ -16,7 +16,7 @@ import packaging import pytest -from relenv.common import DATA_DIR, build_arch, get_triplet +from relenv.common import build_arch, get_triplet from .conftest import get_build_version @@ -47,6 +47,31 @@ def setup(pth_file_path): """ +def _install_ppbt(pexec): + if sys.platform in ["win32", "darwin"]: + return + if "pip" in str(pexec): + p = subprocess.run( + [ + str(pexec), + "install", + "ppbt", + ] + ) + else: + p = subprocess.run( + [ + str(pexec), + "-m", + "pip", + "install", + "ppbt", + ] + ) + + assert p.returncode == 0, "Failed to install ppbt" + + @pytest.fixture(scope="module") def arch(): return build_arch() @@ -129,10 +154,7 @@ def test_pip_install_salt_git(pipexec, build, build_dir, pyexec, build_version): if sys.platform == "darwin" and "3.13" in build_version: pytest.xfail("Salt does not work with 3.13 on macos yet") - # if sys.platform == "linux": - # subprocess.run( - # [pipexec, "--upgrade", "install", "setuptools>=72.2.0"], check=True - # ) + _install_ppbt(pipexec) env = os.environ.copy() env["RELENV_BUILDENV"] = "yes" @@ -173,6 +195,9 @@ def test_pip_install_salt_git(pipexec, build, build_dir, pyexec, build_version): reason="3.11.7 and greater will not work with 3005.x", ) def test_pip_install_salt(pipexec, build, tmp_path, pyexec): + + _install_ppbt(pipexec) + packages = [ "salt==3005", ] @@ -198,6 +223,8 @@ def test_pip_install_salt(pipexec, build, tmp_path, pyexec): @pytest.mark.skip_on_windows def test_symlinked_scripts(pipexec, tmp_path, build): + _install_ppbt(pipexec) + name = "chardet==5.1.0" env = os.environ.copy() env["RELENV_DEBUG"] = "yes" @@ -237,6 +264,8 @@ def test_pip_install_salt_w_static_requirements( if salt_branch == "3006.x" and sys.platform == "win32": pytest.xfail("Known failure") + _install_ppbt(pipexec) + env = os.environ.copy() env["RELENV_BUILDENV"] = "yes" env["USE_STATIC_REQUIREMENTS"] = "1" @@ -296,6 +325,8 @@ def test_pip_install_salt_w_package_requirements( if sys.platform == "darwin" and salt_branch == "3006.x": pytest.xfail("Known failure") + _install_ppbt(pipexec) + env = os.environ.copy() env["RELENV_BUILDENV"] = "yes" env["USE_STATIC_REQUIREMENTS"] = "1" @@ -395,6 +426,8 @@ def test_pip_install_pyzmq(pipexec, pyzmq_version, build_version, arch, build): if pyzmq_version == "26.4.0" and sys.platform == "win32": pytest.xfail("Needs troubleshooting 4/12/25") + _install_ppbt(pipexec) + env = os.environ.copy() p = subprocess.run( @@ -452,6 +485,7 @@ def test_pip_install_pyzmq(pipexec, pyzmq_version, build_version, arch, build): def test_pip_install_cryptography(pipexec): + _install_ppbt(pipexec) packages = [ "cryptography", ] @@ -463,6 +497,7 @@ def test_pip_install_cryptography(pipexec): def test_pip_install_idem(pipexec): + _install_ppbt(pipexec) packages = [ "idem", ] @@ -474,6 +509,7 @@ def test_pip_install_idem(pipexec): def test_pip_install_and_import_libcloud(pipexec, pyexec): + _install_ppbt(pipexec) name = "apache-libcloud" env = os.environ.copy() env["RELENV_BUILDENV"] = "yes" @@ -500,6 +536,7 @@ def test_pip_install_salt_pip_dir(pipexec, build, build_version, arch): if sys.platform == "darwin" and "3.13" in build_version: pytest.xfail("Salt does not work with 3.13 on macos yet") + _install_ppbt(pipexec) env = os.environ.copy() env["RELENV_BUILDENV"] = "yes" env["RELENV_DEBUG"] = "yes" @@ -517,6 +554,7 @@ def test_pip_install_salt_pip_dir(pipexec, build, build_version, arch): def test_nox_virtualenvs(pipexec, build, tmp_path): + _install_ppbt(pipexec) env = os.environ.copy() env["RELENV_BUILDENV"] = "yes" env["RELENV_DEBUG"] = "yes" @@ -611,6 +649,20 @@ def test_pip_install_m2crypto_relenv_ssl( ): if m2crypto_version == "0.38.0" and minor_version in ["3.12", "3.13"]: pytest.xfail("Fails due to no distutils") + + _install_ppbt(pipexec) + + p = subprocess.run( + [ + pyexec, + "-m", + "relenv", + "buildenv", + "--json", + ], + capture_output=True, + ) + buildenv = json.loads(p.stdout) env = os.environ.copy() env["RELENV_BUILDENV"] = "yes" env["RELENV_DEBUG"] = "yes" @@ -632,13 +684,7 @@ def test_pip_install_m2crypto_relenv_ssl( stderr=subprocess.PIPE, ) assert p.returncode == 0, "Failed to pip install m2crypto" - gcc = str( - pathlib.Path(DATA_DIR) - / "toolchain" - / f"{get_triplet()}" - / "bin" - / f"{get_triplet()}-gcc" - ) + gcc = str(pathlib.Path(buildenv["TOOLCHAIN_PATH"]) / "bin" / f"{get_triplet()}-gcc") include = str(pathlib.Path(build) / "include") found_include = False for _ in p.stderr.splitlines(): @@ -647,7 +693,7 @@ def test_pip_install_m2crypto_relenv_ssl( for arg in line.split(): if arg == f"-I{include}": found_include = True - assert found_include + assert found_include, f"{include}\n{p.stderr.decode()}" p = subprocess.run( [str(pyexec), "-c", "import M2Crypto"], env=env, @@ -685,6 +731,7 @@ def validate_shebang(path): # XXX Mac support @pytest.mark.skip_unless_on_linux def test_moving_pip_installed_c_extentions(pipexec, build, minor_version): + _install_ppbt(pipexec) env = os.environ.copy() env["RELENV_DEBUG"] = "yes" env["RELENV_BUILDENV"] = "yes" @@ -713,7 +760,16 @@ def test_moving_pip_installed_c_extentions(pipexec, build, minor_version): @pytest.mark.skip_unless_on_linux @pytest.mark.parametrize("cryptography_version", ["40.0.1", "39.0.2"]) -def test_cryptography_rpath(pipexec, build, minor_version, cryptography_version): +def test_cryptography_rpath( + pyexec, pipexec, build, minor_version, cryptography_version +): + _install_ppbt(pipexec) + # log.warn("Extract ppbt") + # p = subprocess.run( + # [pyexec, "-c", "import ppbt; ppbt.extract()"], + # ) + # assert p.returncode == 0 + def find_library(path, search): for root, dirs, files in os.walk(path): for fname in files: @@ -726,6 +782,7 @@ def find_library(path, search): [ str(pipexec), "install", + "-v", f"cryptography=={cryptography_version}", "--no-cache-dir", "--no-binary=cryptography", @@ -775,11 +832,12 @@ def find_library(path, search): if "GLIBC_2.33" in line: valid = False break - assert valid + assert valid, p.stdout.decode() @pytest.mark.skip_unless_on_linux def test_install_pycurl(pipexec, build): + _install_ppbt(pipexec) curlver = "8.0.1" # Build curl and install it into the relenv environment @@ -876,7 +934,6 @@ def build_dir(tmp_path): ], ) def test_install_libgit2(pipexec, build, minor_version, build_dir, versions): - buildscript = textwrap.dedent( """\ set -e @@ -952,6 +1009,7 @@ def test_install_libgit2(pipexec, build, minor_version, build_dir, versions): @pytest.mark.skip_unless_on_linux def test_install_python_ldap(pipexec, build): + _install_ppbt(pipexec) saslver = "2.1.28" ldapver = "2.5.14" @@ -1480,6 +1538,7 @@ def test_install_pyinotify_w_latest_pip(pipexec, build, minor_version): @pytest.mark.skip_unless_on_linux def test_install_editable_package(pipexec, pyexec, build, minor_version, tmp_path): + _install_ppbt(pipexec) os.chdir(tmp_path) env = os.environ.copy() env["RELENV_BUILDENV"] = "yes" @@ -1504,6 +1563,7 @@ def test_install_editable_package(pipexec, pyexec, build, minor_version, tmp_pat def test_install_editable_package_in_extras( pipexec, pyexec, build, minor_version, tmp_path ): + _install_ppbt(pipexec) sitepkgs = pathlib.Path(build) / "lib" / f"python{minor_version}" / "site-packages" (sitepkgs / "_extras.pth").write_text("import _extras; _extras.setup(__file__)") @@ -1588,6 +1648,7 @@ def rockycontainer(build): @pytest.mark.skip_on_windows def test_no_openssl_binary(rockycontainer, pipexec): + _install_ppbt(pipexec) env = os.environ.copy() env["RELENV_BUILDENV"] = "yes" proc = subprocess.run(