diff --git a/meta-balena-warrior/recipes-devtools/cmake/cmake-native_3.13.4.bb b/meta-balena-dunfell/recipes-devtools/cmake/cmake-native_3.20.1.bb similarity index 84% rename from meta-balena-warrior/recipes-devtools/cmake/cmake-native_3.13.4.bb rename to meta-balena-dunfell/recipes-devtools/cmake/cmake-native_3.20.1.bb index 6fff085733..d91e42ef9a 100644 --- a/meta-balena-warrior/recipes-devtools/cmake/cmake-native_3.13.4.bb +++ b/meta-balena-dunfell/recipes-devtools/cmake/cmake-native_3.20.1.bb @@ -1,7 +1,7 @@ require cmake.inc inherit native -DEPENDS += "bzip2-replacement-native expat-native xz-native zlib-native curl-native" +DEPENDS += "bzip2-replacement-native xz-native zlib-native curl-native ncurses-native" SRC_URI += "file://OEToolchainConfig.cmake \ file://environment.d-cmake.sh \ @@ -13,22 +13,22 @@ SRC_URI += "file://OEToolchainConfig.cmake \ B = "${WORKDIR}/build" do_configure[cleandirs] = "${B}" -# Disable ccmake since we don't depend on ncurses CMAKE_EXTRACONF = "\ -DCMAKE_LIBRARY_PATH=${STAGING_LIBDIR_NATIVE} \ - -DBUILD_CursesDialog=0 \ + -DBUILD_CursesDialog=1 \ -DCMAKE_USE_SYSTEM_LIBRARIES=1 \ -DCMAKE_USE_SYSTEM_LIBRARY_JSONCPP=0 \ -DCMAKE_USE_SYSTEM_LIBRARY_LIBARCHIVE=0 \ -DCMAKE_USE_SYSTEM_LIBRARY_LIBUV=0 \ -DCMAKE_USE_SYSTEM_LIBRARY_LIBRHASH=0 \ + -DCMAKE_USE_SYSTEM_LIBRARY_EXPAT=0 \ -DENABLE_ACL=0 -DHAVE_ACL_LIBACL_H=0 \ -DHAVE_SYS_ACL_H=0 \ " do_configure () { - ${S}/configure --verbose --prefix=${prefix} \ - ${@ '${PARALLEL_MAKE}'.replace('-j ', '--parallel=')} \ + ${S}/configure --verbose --prefix=${prefix} \ + ${@oe.utils.parallel_make_argument(d, '--parallel=%d')} \ ${@bb.utils.contains('CCACHE', 'ccache ', '--enable-ccache', '', d)} \ -- ${CMAKE_EXTRACONF} } diff --git a/meta-balena-dunfell/recipes-devtools/cmake/cmake.inc b/meta-balena-dunfell/recipes-devtools/cmake/cmake.inc new file mode 100644 index 0000000000..2e6059f980 --- /dev/null +++ b/meta-balena-dunfell/recipes-devtools/cmake/cmake.inc @@ -0,0 +1,30 @@ +# Copyright (C) 2005, Koninklijke Philips Electronics NV. All Rights Reserved +# Released under the MIT license (see packages/COPYING) + +SUMMARY = "Cross-platform, open-source make system" +DESCRIPTION = "CMake is used to control the software compilation process \ +using simple platform and compiler independent configuration files. CMake \ +generates native makefiles and workspaces that can be used in the compiler \ +environment of your choice." +HOMEPAGE = "http://www.cmake.org/" +BUGTRACKER = "http://public.kitware.com/Bug/my_view_page.php" +SECTION = "console/utils" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://Copyright.txt;md5=31023e1d3f51ca90a58f55bcee8e2339 \ + file://Source/cmake.h;beginline=1;endline=2;md5=a5f70e1fef8614734eae0d62b4f5891b \ + " + +CMAKE_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:2])}" + +SRC_URI = "https://cmake.org/files/v${CMAKE_MAJOR_VERSION}/cmake-${PV}.tar.gz \ + file://0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch \ + file://0004-Fail-silently-if-system-Qt-installation-is-broken.patch \ +" + +SRC_URI[sha256sum] = "3f1808b9b00281df06c91dd7a021d7f52f724101000da7985a401678dfe035b0" + +UPSTREAM_CHECK_REGEX = "cmake-(?P\d+(\.\d+)+)\.tar" + +# This is specific to the npm package that installs cmake, so isn't +# relevant to OpenEmbedded +CVE_CHECK_WHITELIST += "CVE-2016-10642" diff --git a/meta-balena-dunfell/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch b/meta-balena-dunfell/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch new file mode 100644 index 0000000000..06e10bf861 --- /dev/null +++ b/meta-balena-dunfell/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch @@ -0,0 +1,44 @@ +From ac9b8d316ff3e013bc9d3c063db99aa1f064ce6a Mon Sep 17 00:00:00 2001 +From: Cody P Schafer +Date: Thu, 27 Apr 2017 11:35:05 -0400 +Subject: [PATCH] CMakeDetermineSystem: use oe environment vars to load default + toolchain file in sdk + +Passing the toolchain by: + + - shell aliases does not work if cmake is called by a script + - unconditionally by a wrapper script causes cmake to believe it is + configuring things when it is not (for example, `cmake --build` breaks). + +The OE_CMAKE_TOOLCHAIN_FILE variable is only used as a default if no +toolchain is explicitly specified. + +Setting the CMAKE_TOOLCHAIN_FILE cmake variable is marked as cached +because '-D' options are cache entries themselves. + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Cody P Schafer +Signed-off-by: Otavio Salvador + +--- + Modules/CMakeDetermineSystem.cmake | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/Modules/CMakeDetermineSystem.cmake b/Modules/CMakeDetermineSystem.cmake +index bae270d..5bb6bc0 100644 +--- a/Modules/CMakeDetermineSystem.cmake ++++ b/Modules/CMakeDetermineSystem.cmake +@@ -111,6 +111,13 @@ else() + endif() + endif() + ++if(NOT DEFINED CMAKE_TOOLCHAIN_FILE) ++ if(DEFINED ENV{OE_CMAKE_TOOLCHAIN_FILE}) ++ set(CMAKE_TOOLCHAIN_FILE "$ENV{OE_CMAKE_TOOLCHAIN_FILE}" CACHE FILEPATH "toolchain file") ++ message(STATUS "Toolchain file defaulted to '${CMAKE_TOOLCHAIN_FILE}'") ++ endif() ++endif() ++ + # if a toolchain file is used, the user wants to cross compile. + # in this case read the toolchain file and keep the CMAKE_HOST_SYSTEM_* + # variables around so they can be used in CMakeLists.txt. diff --git a/meta-balena-dunfell/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch b/meta-balena-dunfell/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch new file mode 100644 index 0000000000..575a5cb7fb --- /dev/null +++ b/meta-balena-dunfell/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch @@ -0,0 +1,56 @@ +From 2d02ac91d5a5d72eaddba4894eaa6db3ed8fee62 Mon Sep 17 00:00:00 2001 +From: Otavio Salvador +Date: Thu, 12 May 2011 15:36:03 +0000 +Subject: [PATCH] cmake: support OpenEmbedded Qt4 tool binary names + +The FindQt4 module looks for Qt4 binaries to be able to gather the +paths used for compilation and also to be using during other processes +(translation update, translation binary generating and like) however +OpenEmbedded has renamed those to allow old QMake to be used in +parallel with the current one. This patch adds support for the +OpenEmbedded specific binary names. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Otavio Salvador + +The patch was slightly adapted in order to match cmake 3.2.2: +Instead of find_program, _find_qt4_program is now used. + +Signed-off-by: Moritz Blume +Signed-off-by: Otavio Salvador + +--- + Modules/FindQt4.cmake | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/Modules/FindQt4.cmake b/Modules/FindQt4.cmake +index 3993968..b2a8585 100644 +--- a/Modules/FindQt4.cmake ++++ b/Modules/FindQt4.cmake +@@ -518,7 +518,7 @@ endfunction() + + set(QT4_INSTALLED_VERSION_TOO_OLD FALSE) + +-set(_QT4_QMAKE_NAMES qmake qmake4 qmake-qt4 qmake-mac) ++set(_QT4_QMAKE_NAMES qmake qmake2 qmake4 qmake-qt4 qmake-mac) + _qt4_find_qmake("${_QT4_QMAKE_NAMES}" QT_QMAKE_EXECUTABLE QTVERSION) + + if (QT_QMAKE_EXECUTABLE AND +@@ -1136,12 +1136,12 @@ if (QT_QMAKE_EXECUTABLE AND + _find_qt4_program(QT_MOC_EXECUTABLE Qt4::moc moc-qt4 moc4 moc) + _find_qt4_program(QT_UIC_EXECUTABLE Qt4::uic uic-qt4 uic4 uic) + _find_qt4_program(QT_UIC3_EXECUTABLE Qt4::uic3 uic3) +- _find_qt4_program(QT_RCC_EXECUTABLE Qt4::rcc rcc) +- _find_qt4_program(QT_DBUSCPP2XML_EXECUTABLE Qt4::qdbuscpp2xml qdbuscpp2xml) +- _find_qt4_program(QT_DBUSXML2CPP_EXECUTABLE Qt4::qdbusxml2cpp qdbusxml2cpp) ++ _find_qt4_program(QT_RCC_EXECUTABLE Qt4::rcc rcc4 rcc) ++ _find_qt4_program(QT_DBUSCPP2XML_EXECUTABLE Qt4::qdbuscpp2xml qdbuscpp2xml4 qdbuscpp2xml) ++ _find_qt4_program(QT_DBUSXML2CPP_EXECUTABLE Qt4::qdbusxml2cpp qdbusxml2cpp4 qdbusxml2cpp) + _find_qt4_program(QT_LUPDATE_EXECUTABLE Qt4::lupdate lupdate-qt4 lupdate4 lupdate) + _find_qt4_program(QT_LRELEASE_EXECUTABLE Qt4::lrelease lrelease-qt4 lrelease4 lrelease) +- _find_qt4_program(QT_QCOLLECTIONGENERATOR_EXECUTABLE Qt4::qcollectiongenerator qcollectiongenerator-qt4 qcollectiongenerator) ++ _find_qt4_program(QT_QCOLLECTIONGENERATOR_EXECUTABLE Qt4::qcollectiongenerator qcollectiongenerator-qt4 qcollectiongenerator qcollectiongenerator4) + _find_qt4_program(QT_DESIGNER_EXECUTABLE Qt4::designer designer-qt4 designer4 designer) + _find_qt4_program(QT_LINGUIST_EXECUTABLE Qt4::linguist linguist-qt4 linguist4 linguist) + diff --git a/meta-balena-dunfell/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch b/meta-balena-dunfell/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch new file mode 100644 index 0000000000..1b196db81a --- /dev/null +++ b/meta-balena-dunfell/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch @@ -0,0 +1,79 @@ +From 60864efbe52cc12018efaafbc4e4c3c8b4af2b65 Mon Sep 17 00:00:00 2001 +From: Otavio Salvador +Date: Thu, 5 Jul 2018 10:26:48 -0300 +Subject: [PATCH] Fail silently if system Qt installation is broken + +Fixes a regression in behaviour from 2.8.10 to 2.8.11 resulting in the +following error if the system Qt installation is broken: + +CMake Error at Modules/FindQt4.cmake:1028 (set_property): + set_property could not find TARGET Qt4::QtCore. Perhaps it has not yet + been created. +Call Stack (most recent call first): + Tests/RunCMake/CMakeLists.txt:79 (find_package) + +Upstream-Status: Pending + +Signed-off-by: Paul Eggleton + +The patch was slightly adapted in order to match cmake 3.2.2: +Another set_property was introduced which had to be included +within the if(QT_QTCORE_FOUND) statement. + +Signed-off-by: Moritz Blume +Signed-off-by: Otavio Salvador + +--- + Modules/FindQt4.cmake | 39 ++++++++++++++++++++------------------- + 1 file changed, 20 insertions(+), 19 deletions(-) + +diff --git a/Modules/FindQt4.cmake b/Modules/FindQt4.cmake +index b2a8585..77c89aa 100644 +--- a/Modules/FindQt4.cmake ++++ b/Modules/FindQt4.cmake +@@ -988,25 +988,26 @@ if (QT_QMAKE_EXECUTABLE AND + endif() + endmacro() + +- +- # Set QT_xyz_LIBRARY variable and add +- # library include path to QT_INCLUDES +- _QT4_ADJUST_LIB_VARS(QtCore) +- set_property(TARGET Qt4::QtCore APPEND PROPERTY +- INTERFACE_INCLUDE_DIRECTORIES +- "${QT_MKSPECS_DIR}/default" +- ${QT_INCLUDE_DIR} +- ) +- set_property(TARGET Qt4::QtCore APPEND PROPERTY +- INTERFACE_COMPILE_DEFINITIONS +- $<$>:QT_NO_DEBUG> +- ) +- set_property(TARGET Qt4::QtCore PROPERTY +- INTERFACE_QT_MAJOR_VERSION 4 +- ) +- set_property(TARGET Qt4::QtCore APPEND PROPERTY +- COMPATIBLE_INTERFACE_STRING QT_MAJOR_VERSION +- ) ++ if(QT_QTCORE_FOUND) ++ # Set QT_xyz_LIBRARY variable and add ++ # library include path to QT_INCLUDES ++ _QT4_ADJUST_LIB_VARS(QtCore) ++ set_property(TARGET Qt4::QtCore APPEND PROPERTY ++ INTERFACE_INCLUDE_DIRECTORIES ++ "${QT_MKSPECS_DIR}/default" ++ ${QT_INCLUDE_DIR} ++ ) ++ set_property(TARGET Qt4::QtCore APPEND PROPERTY ++ INTERFACE_COMPILE_DEFINITIONS ++ $<$>:QT_NO_DEBUG> ++ ) ++ set_property(TARGET Qt4::QtCore PROPERTY ++ INTERFACE_QT_MAJOR_VERSION 4 ++ ) ++ set_property(TARGET Qt4::QtCore APPEND PROPERTY ++ COMPATIBLE_INTERFACE_STRING QT_MAJOR_VERSION ++ ) ++ endif() + + foreach(QT_MODULE ${QT_MODULES}) + _QT4_ADJUST_LIB_VARS(${QT_MODULE}) diff --git a/meta-balena-dunfell/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch b/meta-balena-dunfell/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch new file mode 100644 index 0000000000..d6f7308fe0 --- /dev/null +++ b/meta-balena-dunfell/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch @@ -0,0 +1,39 @@ +From fd9a04c1434e12f21c043385e306e0b52d38d749 Mon Sep 17 00:00:00 2001 +From: Otavio Salvador +Date: Thu, 5 Jul 2018 10:28:04 -0300 +Subject: [PATCH] Disable use of ext2fs/ext2_fs.h by cmake's internal + + libarchive copy +Organization: O.S. Systems Software LTDA. + +We don't want to add a dependency on e2fsprogs-native for cmake-native, +and we don't use CPack so just disable this functionality. + +Upstream-Status: Inappropriate [config] + +Signed-off-by: Paul Eggleton +Signed-off-by: Otavio Salvador + +--- + Utilities/cmlibarchive/CMakeLists.txt | 8 ++------ + 1 file changed, 2 insertions(+), 6 deletions(-) + +diff --git a/Utilities/cmlibarchive/CMakeLists.txt b/Utilities/cmlibarchive/CMakeLists.txt +index bfcaf30..2960683 100644 +--- a/Utilities/cmlibarchive/CMakeLists.txt ++++ b/Utilities/cmlibarchive/CMakeLists.txt +@@ -682,12 +682,8 @@ LA_CHECK_INCLUDE_FILE("copyfile.h" HAVE_COPYFILE_H) + LA_CHECK_INCLUDE_FILE("direct.h" HAVE_DIRECT_H) + LA_CHECK_INCLUDE_FILE("dlfcn.h" HAVE_DLFCN_H) + LA_CHECK_INCLUDE_FILE("errno.h" HAVE_ERRNO_H) +-LA_CHECK_INCLUDE_FILE("ext2fs/ext2_fs.h" HAVE_EXT2FS_EXT2_FS_H) +- +-CHECK_C_SOURCE_COMPILES("#include +-#include +-int main(void) { return EXT2_IOC_GETFLAGS; }" HAVE_WORKING_EXT2_IOC_GETFLAGS) +- ++SET(HAVE_EXT2FS_EXT2_FS_H 0) ++SET(HAVE_WORKING_EXT2_IOC_GETFLAGS 0) + LA_CHECK_INCLUDE_FILE("fcntl.h" HAVE_FCNTL_H) + LA_CHECK_INCLUDE_FILE("grp.h" HAVE_GRP_H) + LA_CHECK_INCLUDE_FILE("io.h" HAVE_IO_H) diff --git a/meta-balena-dunfell/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake b/meta-balena-dunfell/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake new file mode 100644 index 0000000000..8f6f3a272d --- /dev/null +++ b/meta-balena-dunfell/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake @@ -0,0 +1,25 @@ +set( CMAKE_SYSTEM_NAME Linux ) +set( CMAKE_C_FLAGS $ENV{CFLAGS} CACHE STRING "" FORCE ) +set( CMAKE_CXX_FLAGS $ENV{CXXFLAGS} CACHE STRING "" FORCE ) +set( CMAKE_ASM_FLAGS ${CMAKE_C_FLAGS} CACHE STRING "" FORCE ) +set( CMAKE_LDFLAGS_FLAGS ${CMAKE_CXX_FLAGS} CACHE STRING "" FORCE ) +set( CMAKE_SYSROOT $ENV{OECORE_TARGET_SYSROOT} ) + +set( CMAKE_FIND_ROOT_PATH $ENV{OECORE_TARGET_SYSROOT} ) +set( CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER ) +set( CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY ) +set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY ) +set( CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY ) + +set(CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX "$ENV{OE_CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX}") + +# Set CMAKE_SYSTEM_PROCESSOR from the sysroot name (assuming processor-distro-os). +if ($ENV{SDKTARGETSYSROOT} MATCHES "/sysroots/([a-zA-Z0-9_-]+)-.+-.+") + set(CMAKE_SYSTEM_PROCESSOR ${CMAKE_MATCH_1}) +endif() + +# Include the toolchain configuration subscripts +file( GLOB toolchain_config_files "${CMAKE_CURRENT_LIST_FILE}.d/*.cmake" ) +foreach(config ${toolchain_config_files}) + include(${config}) +endforeach() diff --git a/meta-balena-dunfell/recipes-devtools/cmake/cmake/environment.d-cmake.sh b/meta-balena-dunfell/recipes-devtools/cmake/cmake/environment.d-cmake.sh new file mode 100644 index 0000000000..7bdb19fb6c --- /dev/null +++ b/meta-balena-dunfell/recipes-devtools/cmake/cmake/environment.d-cmake.sh @@ -0,0 +1,2 @@ +export OE_CMAKE_TOOLCHAIN_FILE="$OECORE_NATIVE_SYSROOT/usr/share/cmake/OEToolchainConfig.cmake" +export OE_CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX="`echo $OECORE_BASELIB | sed -e s/lib//`" diff --git a/meta-balena-warrior/recipes-devtools/cmake/cmake_3.13.4.bb b/meta-balena-dunfell/recipes-devtools/cmake/cmake_3.20.1.bb similarity index 94% rename from meta-balena-warrior/recipes-devtools/cmake/cmake_3.13.4.bb rename to meta-balena-dunfell/recipes-devtools/cmake/cmake_3.20.1.bb index e0457677e8..64c92b89f2 100644 --- a/meta-balena-warrior/recipes-devtools/cmake/cmake_3.13.4.bb +++ b/meta-balena-dunfell/recipes-devtools/cmake/cmake_3.20.1.bb @@ -1,6 +1,6 @@ require cmake.inc -inherit cmake +inherit cmake bash-completion DEPENDS += "curl expat zlib libarchive xz ncurses bzip2" @@ -46,7 +46,7 @@ do_install_append_class-nativesdk() { FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}" -FILES_${PN} += "${datadir}/cmake-${CMAKE_MAJOR_VERSION} ${datadir}/cmake ${datadir}/aclocal" +FILES_${PN} += "${datadir}/cmake-${CMAKE_MAJOR_VERSION} ${datadir}/cmake ${datadir}/aclocal ${datadir}/emacs ${datadir}/vim" FILES_${PN}-doc += "${docdir}/cmake-${CMAKE_MAJOR_VERSION}" FILES_${PN}-dev = "" diff --git a/meta-balena-rust/classes-recipe/cargo-update-recipe-crates.bbclass b/meta-balena-rust/classes-recipe/cargo-update-recipe-crates.bbclass new file mode 100644 index 0000000000..8980137d02 --- /dev/null +++ b/meta-balena-rust/classes-recipe/cargo-update-recipe-crates.bbclass @@ -0,0 +1,79 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +## +## Purpose: +## This class is used to update the list of crates in SRC_URI +## by reading Cargo.lock in the source tree. +## +## See meta/recipes-devtools/python/python3-bcrypt_*.bb for an example +## +## To perform the update: bitbake -c update_crates recipe-name + +addtask do_update_crates after do_patch +do_update_crates[depends] = "python3-native:do_populate_sysroot" +do_update_crates[nostamp] = "1" +do_update_crates[doc] = "Update the recipe by reading Cargo.lock and write in ${THISDIR}/${BPN}-crates.inc" + +# The directory where to search for Cargo.lock files +CARGO_LOCK_SRC_DIR ??= "${S}" + +do_update_crates() { + TARGET_FILE="${THISDIR}/${BPN}-crates.inc" + + nativepython3 - < ${CARGO_HOME}/config + # EXTRA_OECARGO_PATHS + paths = [ + $(for p in ${EXTRA_OECARGO_PATHS}; do echo \"$p\",; done) + ] + EOF + + cat <<- EOF >> ${CARGO_HOME}/config + + # Local mirror vendored by bitbake + [source.bitbake] + directory = "${CARGO_VENDORING_DIRECTORY}" + EOF + + if [ ${CARGO_DISABLE_BITBAKE_VENDORING} = "0" ]; then + cat <<- EOF >> ${CARGO_HOME}/config + + [source.crates-io] + replace-with = "bitbake" + local-registry = "/nonexistent" + EOF + fi + + cat <<- EOF >> ${CARGO_HOME}/config + + [http] + # Multiplexing can't be enabled because http2 can't be enabled + # in curl-native without dependency loops + multiplexing = false + + # Ignore the hard coded and incorrect path to certificates + cainfo = "${STAGING_ETCDIR_NATIVE}/ssl/certs/ca-certificates.crt" + + EOF + + cat <<- EOF >> ${CARGO_HOME}/config + + # HOST_SYS + [target.${RUST_HOST_SYS}] + linker = "${CARGO_RUST_TARGET_CCLD}" + EOF + + if [ "${RUST_HOST_SYS}" != "${RUST_BUILD_SYS}" ]; then + cat <<- EOF >> ${CARGO_HOME}/config + + # BUILD_SYS + [target.${RUST_BUILD_SYS}] + linker = "${RUST_BUILD_CCLD}" + EOF + fi + + if [ "${RUST_TARGET_SYS}" != "${RUST_BUILD_SYS}" -a "${RUST_TARGET_SYS}" != "${RUST_HOST_SYS}" ]; then + cat <<- EOF >> ${CARGO_HOME}/config + + # TARGET_SYS + [target.${RUST_TARGET_SYS}] + linker = "${RUST_TARGET_CCLD}" + EOF + fi + + # Put build output in build directory preferred by bitbake instead of + # inside source directory unless they are the same + if [ "${B}" != "${S}" ]; then + cat <<- EOF >> ${CARGO_HOME}/config + + [build] + # Use out of tree build destination to avoid polluting the source tree + target-dir = "${B}/target" + EOF + fi + + cat <<- EOF >> ${CARGO_HOME}/config + + [term] + progress.when = 'always' + progress.width = 80 + EOF +} + +python cargo_common_do_patch_paths() { + import shutil + + cargo_config = os.path.join(d.getVar("CARGO_HOME"), "config") + if not os.path.exists(cargo_config): + return + + src_uri = (d.getVar('SRC_URI') or "").split() + if len(src_uri) == 0: + return + + patches = dict() + workdir = d.getVar('WORKDIR') + fetcher = bb.fetch2.Fetch(src_uri, d) + for url in fetcher.urls: + ud = fetcher.ud[url] + if ud.type == 'git': + name = ud.parm.get('name') + destsuffix = ud.parm.get('destsuffix') + if name is not None and destsuffix is not None: + if ud.user: + repo = '%s://%s@%s%s' % (ud.proto, ud.user, ud.host, ud.path) + else: + repo = '%s://%s%s' % (ud.proto, ud.host, ud.path) + path = '%s = { path = "%s" }' % (name, os.path.join(workdir, destsuffix)) + patches.setdefault(repo, []).append(path) + + with open(cargo_config, "a+") as config: + for k, v in patches.items(): + print('\n[patch."%s"]' % k, file=config) + for name in v: + print(name, file=config) + + if not patches: + return + + # Cargo.lock file is needed for to be sure that artifacts + # downloaded by the fetch steps are those expected by the + # project and that the possible patches are correctly applied. + # Moreover since we do not want any modification + # of this file (for reproducibility purpose), we prevent it by + # using --frozen flag (in CARGO_BUILD_FLAGS) and raise a clear error + # here is better than letting cargo tell (in case the file is missing) + # "Cargo.lock should be modified but --frozen was given" + + lockfile = d.getVar("CARGO_LOCK_PATH", True) + if not os.path.exists(lockfile): + bb.fatal(f"{lockfile} file doesn't exist") + + # There are patched files and so Cargo.lock should be modified but we use + # --frozen so let's handle that modifications here. + # + # Note that a "better" (more elegant ?) would have been to use cargo update for + # patched packages: + # cargo update --offline -p package_1 -p package_2 + # But this is not possible since it requires that cargo local git db + # to be populated and this is not the case as we fetch git repo ourself. + + lockfile_orig = lockfile + ".orig" + if not os.path.exists(lockfile_orig): + shutil.copy(lockfile, lockfile_orig) + + newlines = [] + with open(lockfile_orig, "r") as f: + for line in f.readlines(): + if not line.startswith("source = \"git"): + newlines.append(line) + + with open(lockfile, "w") as f: + f.writelines(newlines) +} +do_configure[postfuncs] += "cargo_common_do_patch_paths" + +do_compile:prepend () { + oe_cargo_fix_env +} + +oe_cargo_fix_env () { + export CC="${RUST_TARGET_CC}" + export CXX="${RUST_TARGET_CXX}" + export CFLAGS="${CFLAGS}" + export CXXFLAGS="${CXXFLAGS}" + export AR="${AR}" + export TARGET_CC="${RUST_TARGET_CC}" + export TARGET_CXX="${RUST_TARGET_CXX}" + export TARGET_CFLAGS="${CFLAGS}" + export TARGET_CXXFLAGS="${CXXFLAGS}" + export TARGET_AR="${AR}" + export HOST_CC="${RUST_BUILD_CC}" + export HOST_CXX="${RUST_BUILD_CXX}" + export HOST_CFLAGS="${BUILD_CFLAGS}" + export HOST_CXXFLAGS="${BUILD_CXXFLAGS}" + export HOST_AR="${BUILD_AR}" +} + +EXTRA_OECARGO_PATHS ??= "" + +EXPORT_FUNCTIONS do_configure + +# The culprit for this setting is the libc crate, +# which as of Jun 2023 calls directly into 32 bit time functions in glibc, +# bypassing all of glibc provisions to choose the right Y2038-safe functions. As +# rust components statically link with that crate, pretty much everything +# is affected, and so there's no point trying to have recipe-specific +# INSANE_SKIP entries. +# +# Upstream ticket and PR: +# https://github.com/rust-lang/libc/issues/3223 +# https://github.com/rust-lang/libc/pull/3175 +INSANE_SKIP:append = " 32bit-time" diff --git a/meta-balena-rust/classes-recipe/crate-fetch.bbclass b/meta-balena-rust/classes-recipe/crate-fetch.bbclass new file mode 100644 index 0000000000..a7fa22b2a0 --- /dev/null +++ b/meta-balena-rust/classes-recipe/crate-fetch.bbclass @@ -0,0 +1,28 @@ +# +# crate-fetch class +# +# Registers 'crate' method for Bitbake fetch2. +# +# Adds support for following format in recipe SRC_URI: +# crate:/// +# + +def import_crate(d): + import crate + if not getattr(crate, 'imported', False): + bb.fetch2.methods.append(crate.Crate()) + crate.imported = True + +python crate_import_handler() { + import_crate(d) +} + +addhandler crate_import_handler +crate_import_handler[eventmask] = "bb.event.RecipePreFinalise" + +def crate_get_srcrev(d): + import_crate(d) + return bb.fetch2.get_srcrev(d) + +# Override SRCPV to make sure it imports the fetcher first +SRCPV = "${@crate_get_srcrev(d)}" diff --git a/meta-balena-rust/classes-recipe/rust-common.bbclass b/meta-balena-rust/classes-recipe/rust-common.bbclass new file mode 100644 index 0000000000..6940093e59 --- /dev/null +++ b/meta-balena-rust/classes-recipe/rust-common.bbclass @@ -0,0 +1,196 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +inherit python3native +inherit rust-target-config + +# Common variables used by all Rust builds +export rustlibdir = "${libdir}/rustlib/${RUST_HOST_SYS}/lib" +FILES:${PN} += "${rustlibdir}/*.so" +FILES:${PN}-dev += "${rustlibdir}/*.rlib ${rustlibdir}/*.rmeta" +FILES:${PN}-dbg += "${rustlibdir}/.debug" + +RUSTLIB = "-L ${STAGING_DIR_HOST}${rustlibdir}" +RUST_DEBUG_REMAP = "--remap-path-prefix=${WORKDIR}=${TARGET_DBGSRC_DIR}" +RUSTFLAGS += "${RUSTLIB} ${RUST_DEBUG_REMAP}" +RUSTLIB_DEP ??= "libstd-rs" +RUST_PANIC_STRATEGY ??= "unwind" + +def target_is_armv7(d): + '''Determine if target is armv7''' + # TUNE_FEATURES may include arm* even if the target is not arm + # in the case of *-native packages + if d.getVar('TARGET_ARCH') != 'arm': + return False + + feat = d.getVar('TUNE_FEATURES') + feat = frozenset(feat.split()) + mach_overrides = d.getVar('MACHINEOVERRIDES') + mach_overrides = frozenset(mach_overrides.split(':')) + + v7=frozenset(['armv7a', 'armv7r', 'armv7m', 'armv7ve']) + if mach_overrides.isdisjoint(v7) and feat.isdisjoint(v7): + return False + else: + return True +target_is_armv7[vardepvalue] = "${@target_is_armv7(d)}" + +# Responsible for taking Yocto triples and converting it to Rust triples +def rust_base_triple(d, thing): + ''' + Mangle bitbake's *_SYS into something that rust might support (see + rust/mk/cfg/* for a list) + + Note that os is assumed to be some linux form + ''' + + # The llvm-target for armv7 is armv7-unknown-linux-gnueabihf + if d.getVar('{}_ARCH'.format(thing)) == d.getVar('TARGET_ARCH') and target_is_armv7(d): + arch = "armv7" + else: + arch = oe.rust.arch_to_rust_arch(d.getVar('{}_ARCH'.format(thing))) + + # Substituting "unknown" when vendor is empty will match rust's standard + # targets when building native recipes (including rust-native itself) + vendor = d.getVar('{}_VENDOR'.format(thing)) or "-unknown" + + # Default to glibc + libc = "-gnu" + os = d.getVar('{}_OS'.format(thing)) + # This catches ARM targets and appends the necessary hard float bits + if os == "linux-gnueabi" or os == "linux-musleabi": + libc = bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'hf', '', d) + elif os == "linux-gnux32" or os == "linux-muslx32": + libc = "" + elif "musl" in os: + libc = "-musl" + os = "linux" + elif "elf" in os: + libc = "-elf" + os = "none" + elif "eabi" in os: + libc = "-eabi" + os = "none" + + return arch + vendor + '-' + os + libc + + +# In some cases uname and the toolchain differ on their idea of the arch name +RUST_BUILD_ARCH = "${@oe.rust.arch_to_rust_arch(d.getVar('BUILD_ARCH'))}" + +# Naming explanation +# Yocto +# - BUILD_SYS - Yocto triple of the build environment +# - HOST_SYS - What we're building for in Yocto +# - TARGET_SYS - What we're building for in Yocto +# +# So when building '-native' packages BUILD_SYS == HOST_SYS == TARGET_SYS +# When building packages for the image HOST_SYS == TARGET_SYS +# This is a gross over simplification as there are other modes but +# currently this is all that's supported. +# +# Rust +# - TARGET - the system where the binary will run +# - HOST - the system where the binary is being built +# +# Rust additionally will use two additional cases: +# - undecorated (e.g. CC) - equivalent to TARGET +# - triple suffix (e.g. CC:x86_64_unknown_linux_gnu) - both +# see: https://github.com/rust-lang/cc-rs +# The way that Rust's internal triples and Yocto triples are mapped together +# its likely best to not use the triple suffix due to potential confusion. + +RUST_BUILD_SYS = "${@rust_base_triple(d, 'BUILD')}" +RUST_BUILD_SYS[vardepvalue] = "${RUST_BUILD_SYS}" +RUST_HOST_SYS = "${@rust_base_triple(d, 'HOST')}" +RUST_HOST_SYS[vardepvalue] = "${RUST_HOST_SYS}" +RUST_TARGET_SYS = "${@rust_base_triple(d, 'TARGET')}" +RUST_TARGET_SYS[vardepvalue] = "${RUST_TARGET_SYS}" + +# wrappers to get around the fact that Rust needs a single +# binary but Yocto's compiler and linker commands have +# arguments. Technically the archiver is always one command but +# this is necessary for builds that determine the prefix and then +# use those commands based on the prefix. +WRAPPER_DIR = "${WORKDIR}/wrapper" +RUST_BUILD_CC = "${WRAPPER_DIR}/build-rust-cc" +RUST_BUILD_CXX = "${WRAPPER_DIR}/build-rust-cxx" +RUST_BUILD_CCLD = "${WRAPPER_DIR}/build-rust-ccld" +RUST_BUILD_AR = "${WRAPPER_DIR}/build-rust-ar" +RUST_TARGET_CC = "${WRAPPER_DIR}/target-rust-cc" +RUST_TARGET_CXX = "${WRAPPER_DIR}/target-rust-cxx" +RUST_TARGET_CCLD = "${WRAPPER_DIR}/target-rust-ccld" +RUST_TARGET_AR = "${WRAPPER_DIR}/target-rust-ar" + +create_wrapper_rust () { + file="$1" + shift + extras="$1" + shift + crate_cc_extras="$1" + shift + + cat <<- EOF > "${file}" + #!/usr/bin/env python3 + import os, sys + orig_binary = "$@" + extras = "${extras}" + + # Apply a required subset of CC crate compiler flags + # when we build a target recipe for a non-bare-metal target. + # https://github.com/rust-lang/cc-rs/blob/main/src/lib.rs#L1614 + if "CRATE_CC_NO_DEFAULTS" in os.environ.keys() and \ + "TARGET" in os.environ.keys() and not "-none-" in os.environ["TARGET"]: + orig_binary += "${crate_cc_extras}" + + binary = orig_binary.split()[0] + args = orig_binary.split() + sys.argv[1:] + if extras: + args.append(extras) + os.execvp(binary, args) + EOF + chmod +x "${file}" +} + +WRAPPER_TARGET_CC = "${CC}" +WRAPPER_TARGET_CXX = "${CXX}" +WRAPPER_TARGET_CCLD = "${CCLD}" +WRAPPER_TARGET_LDFLAGS = "${LDFLAGS}" +WRAPPER_TARGET_EXTRALD = "" +# see recipes-devtools/gcc/gcc/0018-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch +# we need to link with ssp_nonshared on musl to avoid "undefined reference to `__stack_chk_fail_local'" +# when building MACHINE=qemux86 for musl +WRAPPER_TARGET_EXTRALD:libc-musl = "-lssp_nonshared" +WRAPPER_TARGET_AR = "${AR}" + +# compiler is used by gcc-rs +# linker is used by rustc/cargo +# archiver is used by the build of libstd-rs +do_rust_create_wrappers () { + mkdir -p "${WRAPPER_DIR}" + + # Yocto Build / Rust Host C compiler + create_wrapper_rust "${RUST_BUILD_CC}" "" "${CRATE_CC_FLAGS}" "${BUILD_CC}" + # Yocto Build / Rust Host C++ compiler + create_wrapper_rust "${RUST_BUILD_CXX}" "" "${CRATE_CC_FLAGS}" "${BUILD_CXX}" + # Yocto Build / Rust Host linker + create_wrapper_rust "${RUST_BUILD_CCLD}" "" "" "${BUILD_CCLD}" "${BUILD_LDFLAGS}" + # Yocto Build / Rust Host archiver + create_wrapper_rust "${RUST_BUILD_AR}" "" "" "${BUILD_AR}" + + # Yocto Target / Rust Target C compiler + create_wrapper_rust "${RUST_TARGET_CC}" "${WRAPPER_TARGET_EXTRALD}" "${CRATE_CC_FLAGS}" "${WRAPPER_TARGET_CC}" "${WRAPPER_TARGET_LDFLAGS}" + # Yocto Target / Rust Target C++ compiler + create_wrapper_rust "${RUST_TARGET_CXX}" "${WRAPPER_TARGET_EXTRALD}" "${CRATE_CC_FLAGS}" "${WRAPPER_TARGET_CXX}" "${CXXFLAGS}" + # Yocto Target / Rust Target linker + create_wrapper_rust "${RUST_TARGET_CCLD}" "${WRAPPER_TARGET_EXTRALD}" "" "${WRAPPER_TARGET_CCLD}" "${WRAPPER_TARGET_LDFLAGS}" + # Yocto Target / Rust Target archiver + create_wrapper_rust "${RUST_TARGET_AR}" "" "" "${WRAPPER_TARGET_AR}" + +} + +addtask rust_create_wrappers before do_configure after do_patch do_prepare_recipe_sysroot +do_rust_create_wrappers[dirs] += "${WRAPPER_DIR}" diff --git a/meta-balena-rust/classes-recipe/rust-target-config.bbclass b/meta-balena-rust/classes-recipe/rust-target-config.bbclass new file mode 100644 index 0000000000..6a729d714d --- /dev/null +++ b/meta-balena-rust/classes-recipe/rust-target-config.bbclass @@ -0,0 +1,438 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +# Right now this is focused on arm-specific tune features. +# We get away with this for now as one can only use x86-64 as the build host +# (not arm). +# Note that TUNE_FEATURES is _always_ refering to the target, so we really +# don't want to use this for the host/build. +def llvm_features_from_tune(d): + f = [] + feat = d.getVar('TUNE_FEATURES') + if not feat: + return [] + feat = frozenset(feat.split()) + + mach_overrides = d.getVar('MACHINEOVERRIDES') + mach_overrides = frozenset(mach_overrides.split(':')) + + if 'vfpv4' in feat: + f.append("+vfp4") + elif 'vfpv3' in feat: + f.append("+vfp3") + elif 'vfpv3d16' in feat: + f.append("+vfp3") + f.append("-d32") + elif 'vfpv2' in feat or 'vfp' in feat: + f.append("+vfp2") + + if 'neon' in feat: + f.append("+neon") + elif target_is_armv7(d): + f.append("-neon") + + if 'mips32' in feat: + f.append("+mips32") + + if 'mips32r2' in feat: + f.append("+mips32r2") + + if target_is_armv7(d): + f.append('+v7') + + if ('armv6' in mach_overrides) or ('armv6' in feat): + f.append("+v6") + if 'armv5te' in feat: + f.append("+strict-align") + f.append("+v5te") + elif 'armv5' in feat: + f.append("+strict-align") + f.append("+v5") + + if ('armv4' in mach_overrides) or ('armv4' in feat): + f.append("+strict-align") + + if 'dsp' in feat: + f.append("+dsp") + + if 'thumb' in feat: + if d.getVar('ARM_THUMB_OPT') == "thumb": + if target_is_armv7(d): + f.append('+thumb2') + f.append("+thumb-mode") + + if 'cortexa5' in feat: + f.append("+a5") + if 'cortexa7' in feat: + f.append("+a7") + if 'cortexa9' in feat: + f.append("+a9") + if 'cortexa15' in feat: + f.append("+a15") + if 'cortexa17' in feat: + f.append("+a17") + if ('riscv64' in feat) or ('riscv32' in feat): + f.append("+a,+c,+d,+f,+m") + return f +llvm_features_from_tune[vardepvalue] = "${@llvm_features_from_tune(d)}" + +# TARGET_CC_ARCH changes from build/cross/target so it'll do the right thing +# this should go away when https://github.com/rust-lang/rust/pull/31709 is +# stable (1.9.0?) +def llvm_features_from_cc_arch(d): + f = [] + feat = d.getVar('TARGET_CC_ARCH') + if not feat: + return [] + feat = frozenset(feat.split()) + + if '-mmmx' in feat: + f.append("+mmx") + if '-msse' in feat: + f.append("+sse") + if '-msse2' in feat: + f.append("+sse2") + if '-msse3' in feat: + f.append("+sse3") + if '-mssse3' in feat: + f.append("+ssse3") + if '-msse4.1' in feat: + f.append("+sse4.1") + if '-msse4.2' in feat: + f.append("+sse4.2") + if '-msse4a' in feat: + f.append("+sse4a") + if '-mavx' in feat: + f.append("+avx") + if '-mavx2' in feat: + f.append("+avx2") + + return f + +def llvm_features_from_target_fpu(d): + # TARGET_FPU can be hard or soft. +soft-float tell llvm to use soft float + # ABI. There is no option for hard. + + fpu = d.getVar('TARGET_FPU') + return ["+soft-float"] if fpu == "soft" else [] + +def llvm_features(d): + return ','.join(llvm_features_from_tune(d) + + llvm_features_from_cc_arch(d) + + llvm_features_from_target_fpu(d)) + +llvm_features[vardepvalue] = "${@llvm_features(d)}" + +## arm-unknown-linux-gnueabihf +DATA_LAYOUT[arm-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" +TARGET_ENDIAN[arm-eabi] = "little" +TARGET_POINTER_WIDTH[arm-eabi] = "32" +TARGET_C_INT_WIDTH[arm-eabi] = "32" +MAX_ATOMIC_WIDTH[arm-eabi] = "64" +FEATURES[arm-eabi] = "+v6,+vfp2" + +## armv7-unknown-linux-gnueabihf +DATA_LAYOUT[armv7-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" +TARGET_ENDIAN[armv7-eabi] = "little" +TARGET_POINTER_WIDTH[armv7-eabi] = "32" +TARGET_C_INT_WIDTH[armv7-eabi] = "32" +MAX_ATOMIC_WIDTH[armv7-eabi] = "64" +FEATURES[armv7-eabi] = "+v7,+vfp2,+thumb2" + +## aarch64-unknown-linux-{gnu, musl} +DATA_LAYOUT[aarch64] = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128" +TARGET_ENDIAN[aarch64] = "little" +TARGET_POINTER_WIDTH[aarch64] = "64" +TARGET_C_INT_WIDTH[aarch64] = "32" +MAX_ATOMIC_WIDTH[aarch64] = "128" + +## x86_64-unknown-linux-{gnu, musl} +DATA_LAYOUT[x86_64] = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" +TARGET_ENDIAN[x86_64] = "little" +TARGET_POINTER_WIDTH[x86_64] = "64" +TARGET_C_INT_WIDTH[x86_64] = "32" +MAX_ATOMIC_WIDTH[x86_64] = "64" + +## x86_64-unknown-linux-gnux32 +DATA_LAYOUT[x86_64-x32] = "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" +TARGET_ENDIAN[x86_64-x32] = "little" +TARGET_POINTER_WIDTH[x86_64-x32] = "32" +TARGET_C_INT_WIDTH[x86_64-x32] = "32" +MAX_ATOMIC_WIDTH[x86_64-x32] = "64" + +## i686-unknown-linux-{gnu, musl} +DATA_LAYOUT[i686] = "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128" +TARGET_ENDIAN[i686] = "little" +TARGET_POINTER_WIDTH[i686] = "32" +TARGET_C_INT_WIDTH[i686] = "32" +MAX_ATOMIC_WIDTH[i686] = "64" + +## XXX: a bit of a hack so qemux86 builds, clone of i686-unknown-linux-{gnu, musl} above +DATA_LAYOUT[i586] = "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128" +TARGET_ENDIAN[i586] = "little" +TARGET_POINTER_WIDTH[i586] = "32" +TARGET_C_INT_WIDTH[i586] = "32" +MAX_ATOMIC_WIDTH[i586] = "64" + +## mips-unknown-linux-{gnu, musl} +DATA_LAYOUT[mips] = "E-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64" +TARGET_ENDIAN[mips] = "big" +TARGET_POINTER_WIDTH[mips] = "32" +TARGET_C_INT_WIDTH[mips] = "32" +MAX_ATOMIC_WIDTH[mips] = "32" + +## mipsel-unknown-linux-{gnu, musl} +DATA_LAYOUT[mipsel] = "e-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64" +TARGET_ENDIAN[mipsel] = "little" +TARGET_POINTER_WIDTH[mipsel] = "32" +TARGET_C_INT_WIDTH[mipsel] = "32" +MAX_ATOMIC_WIDTH[mipsel] = "32" + +## mips64-unknown-linux-{gnu, musl} +DATA_LAYOUT[mips64] = "E-m:e-i8:8:32-i16:16:32-i64:64-n32:64-S128" +TARGET_ENDIAN[mips64] = "big" +TARGET_POINTER_WIDTH[mips64] = "64" +TARGET_C_INT_WIDTH[mips64] = "64" +MAX_ATOMIC_WIDTH[mips64] = "64" + +## mips64-n32-unknown-linux-{gnu, musl} +DATA_LAYOUT[mips64-n32] = "E-m:e-p:32:32-i8:8:32-i16:16:32-i64:64-n32:64-S128" +TARGET_ENDIAN[mips64-n32] = "big" +TARGET_POINTER_WIDTH[mips64-n32] = "32" +TARGET_C_INT_WIDTH[mips64-n32] = "32" +MAX_ATOMIC_WIDTH[mips64-n32] = "64" + +## mips64el-unknown-linux-{gnu, musl} +DATA_LAYOUT[mips64el] = "e-m:e-i8:8:32-i16:16:32-i64:64-n32:64-S128" +TARGET_ENDIAN[mips64el] = "little" +TARGET_POINTER_WIDTH[mips64el] = "64" +TARGET_C_INT_WIDTH[mips64el] = "64" +MAX_ATOMIC_WIDTH[mips64el] = "64" + +## powerpc-unknown-linux-{gnu, musl} +DATA_LAYOUT[powerpc] = "E-m:e-p:32:32-i64:64-n32" +TARGET_ENDIAN[powerpc] = "big" +TARGET_POINTER_WIDTH[powerpc] = "32" +TARGET_C_INT_WIDTH[powerpc] = "32" +MAX_ATOMIC_WIDTH[powerpc] = "32" + +## powerpc64-unknown-linux-{gnu, musl} +DATA_LAYOUT[powerpc64] = "E-m:e-i64:64-n32:64-S128-v256:256:256-v512:512:512" +TARGET_ENDIAN[powerpc64] = "big" +TARGET_POINTER_WIDTH[powerpc64] = "64" +TARGET_C_INT_WIDTH[powerpc64] = "64" +MAX_ATOMIC_WIDTH[powerpc64] = "64" + +## powerpc64le-unknown-linux-{gnu, musl} +DATA_LAYOUT[powerpc64le] = "e-m:e-i64:64-n32:64-v256:256:256-v512:512:512" +TARGET_ENDIAN[powerpc64le] = "little" +TARGET_POINTER_WIDTH[powerpc64le] = "64" +TARGET_C_INT_WIDTH[powerpc64le] = "64" +MAX_ATOMIC_WIDTH[powerpc64le] = "64" + +## riscv32gc-unknown-linux-{gnu, musl} +DATA_LAYOUT[riscv32gc] = "e-m:e-p:32:32-i64:64-n32-S128" +TARGET_ENDIAN[riscv32gc] = "little" +TARGET_POINTER_WIDTH[riscv32gc] = "32" +TARGET_C_INT_WIDTH[riscv32gc] = "32" +MAX_ATOMIC_WIDTH[riscv32gc] = "32" + +## riscv64gc-unknown-linux-{gnu, musl} +DATA_LAYOUT[riscv64gc] = "e-m:e-p:64:64-i64:64-i128:128-n64-S128" +TARGET_ENDIAN[riscv64gc] = "little" +TARGET_POINTER_WIDTH[riscv64gc] = "64" +TARGET_C_INT_WIDTH[riscv64gc] = "64" +MAX_ATOMIC_WIDTH[riscv64gc] = "64" + +## loongarch64-unknown-linux-{gnu, musl} +DATA_LAYOUT[loongarch64] = "e-m:e-i8:8:32-i16:16:32-i64:64-n32:64-S128" +TARGET_ENDIAN[loongarch64] = "little" +TARGET_POINTER_WIDTH[loongarch64] = "64" +TARGET_C_INT_WIDTH[loongarch64] = "32" +MAX_ATOMIC_WIDTH[loongarch64] = "64" +FEATURES[loongarch64] = "+d" + +# Convert a normal arch (HOST_ARCH, TARGET_ARCH, BUILD_ARCH, etc) to something +# rust's internals won't choke on. +def arch_to_rust_target_arch(arch): + if arch == "i586" or arch == "i686": + return "x86" + elif arch == "mipsel": + return "mips" + elif arch == "mip64sel": + return "mips64" + elif arch == "armv7": + return "arm" + elif arch == "powerpc64le": + return "powerpc64" + elif arch == "riscv32gc": + return "riscv32" + elif arch == "riscv64gc": + return "riscv64" + else: + return arch + +# Convert a rust target string to a llvm-compatible triplet +def rust_sys_to_llvm_target(sys): + if sys.startswith('riscv32gc-'): + return sys.replace('riscv32gc-', 'riscv32-', 1) + if sys.startswith('riscv64gc-'): + return sys.replace('riscv64gc-', 'riscv64-', 1) + return sys + +# generates our target CPU value +def llvm_cpu(d): + cpu = d.getVar('PACKAGE_ARCH') + target = d.getVar('TRANSLATED_TARGET_ARCH') + + trans = {} + trans['corei7-64'] = "corei7" + trans['core2-32'] = "core2" + trans['x86-64'] = "x86-64" + trans['i686'] = "i686" + trans['i586'] = "i586" + trans['mips64'] = "mips64" + trans['mips64el'] = "mips64" + trans['powerpc64le'] = "ppc64le" + trans['powerpc64'] = "ppc64" + trans['riscv64'] = "generic-rv64" + trans['riscv32'] = "generic-rv32" + trans['loongarch64'] = "la464" + + if target in ["mips", "mipsel", "powerpc"]: + feat = frozenset(d.getVar('TUNE_FEATURES').split()) + if "mips32r2" in feat: + trans['mipsel'] = "mips32r2" + trans['mips'] = "mips32r2" + elif "mips32" in feat: + trans['mipsel'] = "mips32" + trans['mips'] = "mips32" + elif "ppc7400" in feat: + trans['powerpc'] = "7400" + + try: + return trans[cpu] + except: + return trans.get(target, "generic") + +llvm_cpu[vardepvalue] = "${@llvm_cpu(d)}" + +def rust_gen_target(d, thing, wd, arch): + import json + + build_sys = d.getVar('BUILD_SYS') + target_sys = d.getVar('TARGET_SYS') + + sys = d.getVar('{}_SYS'.format(thing)) + prefix = d.getVar('{}_PREFIX'.format(thing)) + rustsys = d.getVar('RUST_{}_SYS'.format(thing)) + + abi = None + cpu = "generic" + features = "" + + # Need to apply the target tuning consitently, only if the triplet applies to the target + # and not in the native case + if sys == target_sys and sys != build_sys: + abi = d.getVar('ABIEXTENSION') + cpu = llvm_cpu(d) + if bb.data.inherits_class('native', d): + features = ','.join(llvm_features_from_cc_arch(d)) + else: + features = llvm_features(d) or "" + # arm and armv7 have different targets in llvm + if arch == "arm" and target_is_armv7(d): + arch = 'armv7' + + rust_arch = oe.rust.arch_to_rust_arch(arch) + + if abi: + arch_abi = "{}-{}".format(rust_arch, abi) + else: + arch_abi = rust_arch + + features = features or d.getVarFlag('FEATURES', arch_abi) or "" + features = features.strip() + + # build tspec + tspec = {} + tspec['llvm-target'] = rust_sys_to_llvm_target(rustsys) + tspec['data-layout'] = d.getVarFlag('DATA_LAYOUT', arch_abi) + if tspec['data-layout'] is None: + bb.fatal("No rust target defined for %s" % arch_abi) + tspec['max-atomic-width'] = int(d.getVarFlag('MAX_ATOMIC_WIDTH', arch_abi)) + tspec['target-pointer-width'] = d.getVarFlag('TARGET_POINTER_WIDTH', arch_abi) + tspec['target-c-int-width'] = d.getVarFlag('TARGET_C_INT_WIDTH', arch_abi) + tspec['target-endian'] = d.getVarFlag('TARGET_ENDIAN', arch_abi) + tspec['arch'] = arch_to_rust_target_arch(rust_arch) + if "baremetal" in d.getVar('TCLIBC'): + tspec['os'] = "none" + else: + tspec['os'] = "linux" + if "musl" in tspec['llvm-target']: + tspec['env'] = "musl" + else: + tspec['env'] = "gnu" + if "riscv64" in tspec['llvm-target']: + tspec['llvm-abiname'] = "lp64d" + if "riscv32" in tspec['llvm-target']: + tspec['llvm-abiname'] = "ilp32d" + if "loongarch64" in tspec['llvm-target']: + tspec['llvm-abiname'] = "lp64d" + tspec['vendor'] = "unknown" + tspec['target-family'] = "unix" + tspec['linker'] = "{}{}gcc".format(d.getVar('CCACHE'), prefix) + tspec['cpu'] = cpu + if features != "": + tspec['features'] = features + tspec['dynamic-linking'] = True + tspec['executables'] = True + tspec['linker-is-gnu'] = True + tspec['linker-flavor'] = "gcc" + tspec['has-rpath'] = True + tspec['position-independent-executables'] = True + tspec['panic-strategy'] = d.getVar("RUST_PANIC_STRATEGY") + + # write out the target spec json file + with open(wd + rustsys + '.json', 'w') as f: + json.dump(tspec, f, indent=4) + +# These are accounted for in tmpdir path names so don't need to be in the task sig +rust_gen_target[vardepsexclude] += "ABIEXTENSION llvm_cpu" + +do_rust_gen_targets[vardeps] += "DATA_LAYOUT TARGET_ENDIAN TARGET_POINTER_WIDTH TARGET_C_INT_WIDTH MAX_ATOMIC_WIDTH FEATURES" + +RUST_TARGETS_DIR = "${WORKDIR}/rust-targets/" +export RUST_TARGET_PATH = "${RUST_TARGETS_DIR}" + +python do_rust_gen_targets () { + wd = d.getVar('RUST_TARGETS_DIR') + # Order of BUILD, HOST, TARGET is important in case the files overwrite, most specific last + rust_gen_target(d, 'BUILD', wd, d.getVar('BUILD_ARCH')) + rust_gen_target(d, 'HOST', wd, d.getVar('HOST_ARCH')) + rust_gen_target(d, 'TARGET', wd, d.getVar('TARGET_ARCH')) +} + +addtask rust_gen_targets after do_patch before do_compile +do_rust_gen_targets[dirs] += "${RUST_TARGETS_DIR}" + +# For building target C dependecies use only compiler parameters defined in OE +# and ignore the CC crate defaults which conflicts with OE ones in some cases. +# https://github.com/rust-lang/cc-rs#external-configuration-via-environment-variables +# Some CC crate compiler flags are still required. +# We apply them conditionally in rust wrappers. + +CRATE_CC_FLAGS:class-native = "" +CRATE_CC_FLAGS:class-nativesdk = "" +CRATE_CC_FLAGS:class-target = " -ffunction-sections -fdata-sections -fPIC" + +do_compile:prepend:class-target() { + export CRATE_CC_NO_DEFAULTS=1 +} +do_install:prepend:class-target() { + export CRATE_CC_NO_DEFAULTS=1 +} + diff --git a/meta-balena-rust/classes-recipe/rust.bbclass b/meta-balena-rust/classes-recipe/rust.bbclass new file mode 100644 index 0000000000..dae25cac2a --- /dev/null +++ b/meta-balena-rust/classes-recipe/rust.bbclass @@ -0,0 +1,51 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +inherit rust-common + +RUSTC = "rustc" + +RUSTC_ARCHFLAGS += "--target=${RUST_HOST_SYS} ${RUSTFLAGS}" + +def rust_base_dep(d): + # Taken from meta/classes/base.bbclass `base_dep_prepend` and modified to + # use rust instead of gcc + deps = "" + if not d.getVar('INHIBIT_DEFAULT_RUST_DEPS'): + if (d.getVar('HOST_SYS') != d.getVar('BUILD_SYS')): + deps += " rust-native ${RUSTLIB_DEP}" + else: + deps += " rust-native" + return deps + +DEPENDS:append = " ${@rust_base_dep(d)}" + +# BUILD_LDFLAGS +# ${STAGING_LIBDIR_NATIVE} +# ${STAGING_BASE_LIBDIR_NATIVE} +# BUILDSDK_LDFLAGS +# ${STAGING_LIBDIR} +# #{STAGING_DIR_HOST} +# TARGET_LDFLAGS ????? +#RUSTC_BUILD_LDFLAGS = "\ +# --sysroot ${STAGING_DIR_NATIVE} \ +# -L${STAGING_LIBDIR_NATIVE} \ +# -L${STAGING_BASE_LIBDIR_NATIVE} \ +#" + +# XXX: for some reason bitbake sets BUILD_* & TARGET_* but uses the bare +# variables for HOST. Alias things to make it easier for us. +HOST_LDFLAGS ?= "${LDFLAGS}" +HOST_CFLAGS ?= "${CFLAGS}" +HOST_CXXFLAGS ?= "${CXXFLAGS}" +HOST_CPPFLAGS ?= "${CPPFLAGS}" + +rustlib_suffix="${TUNE_ARCH}${TARGET_VENDOR}-${TARGET_OS}/rustlib/${RUST_HOST_SYS}/lib" +# Native sysroot standard library path +rustlib_src="${prefix}/lib/${rustlib_suffix}" +# Host sysroot standard library path +rustlib="${libdir}/${rustlib_suffix}" +rustlib:class-native="${libdir}/rustlib/${BUILD_SYS}/lib" diff --git a/meta-balena-rust/classes/cargo-update-recipe-crates.bbclass b/meta-balena-rust/classes/cargo-update-recipe-crates.bbclass new file mode 100644 index 0000000000..8980137d02 --- /dev/null +++ b/meta-balena-rust/classes/cargo-update-recipe-crates.bbclass @@ -0,0 +1,79 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +## +## Purpose: +## This class is used to update the list of crates in SRC_URI +## by reading Cargo.lock in the source tree. +## +## See meta/recipes-devtools/python/python3-bcrypt_*.bb for an example +## +## To perform the update: bitbake -c update_crates recipe-name + +addtask do_update_crates after do_patch +do_update_crates[depends] = "python3-native:do_populate_sysroot" +do_update_crates[nostamp] = "1" +do_update_crates[doc] = "Update the recipe by reading Cargo.lock and write in ${THISDIR}/${BPN}-crates.inc" + +# The directory where to search for Cargo.lock files +CARGO_LOCK_SRC_DIR ??= "${S}" + +do_update_crates() { + TARGET_FILE="${THISDIR}/${BPN}-crates.inc" + + nativepython3 - <> ${CARGO_HOME}/config # HOST_SYS - [target.${HOST_SYS}] + [target.${RUST_HOST_SYS}] linker = "${CARGO_RUST_TARGET_CCLD}" EOF - if [ "${HOST_SYS}" != "${BUILD_SYS}" ]; then + if [ "${RUST_HOST_SYS}" != "${RUST_BUILD_SYS}" ]; then cat <<- EOF >> ${CARGO_HOME}/config # BUILD_SYS - [target.${BUILD_SYS}] + [target.${RUST_BUILD_SYS}] linker = "${RUST_BUILD_CCLD}" EOF fi + if [ "${RUST_TARGET_SYS}" != "${RUST_BUILD_SYS}" -a "${RUST_TARGET_SYS}" != "${RUST_HOST_SYS}" ]; then + cat <<- EOF >> ${CARGO_HOME}/config + + # TARGET_SYS + [target.${RUST_TARGET_SYS}] + linker = "${RUST_TARGET_CCLD}" + EOF + fi + # Put build output in build directory preferred by bitbake instead of # inside source directory unless they are the same if [ "${B}" != "${S}" ]; then cat <<- EOF >> ${CARGO_HOME}/config [build] - # Use out of tree build destination to avoid poluting the source tree + # Use out of tree build destination to avoid polluting the source tree target-dir = "${B}/target" EOF fi @@ -108,6 +126,83 @@ cargo_common_do_configure () { EOF } +python cargo_common_do_patch_paths() { + import shutil + + cargo_config = os.path.join(d.getVar("CARGO_HOME"), "config") + if not os.path.exists(cargo_config): + return + + src_uri = (d.getVar('SRC_URI') or "").split() + if len(src_uri) == 0: + return + + patches = dict() + workdir = d.getVar('WORKDIR') + fetcher = bb.fetch2.Fetch(src_uri, d) + for url in fetcher.urls: + ud = fetcher.ud[url] + if ud.type == 'git': + name = ud.parm.get('name') + destsuffix = ud.parm.get('destsuffix') + if name is not None and destsuffix is not None: + if ud.user: + repo = '%s://%s@%s%s' % (ud.proto, ud.user, ud.host, ud.path) + else: + repo = '%s://%s%s' % (ud.proto, ud.host, ud.path) + path = '%s = { path = "%s" }' % (name, os.path.join(workdir, destsuffix)) + patches.setdefault(repo, []).append(path) + + with open(cargo_config, "a+") as config: + for k, v in patches.items(): + print('\n[patch."%s"]' % k, file=config) + for name in v: + print(name, file=config) + + if not patches: + return + + # Cargo.lock file is needed for to be sure that artifacts + # downloaded by the fetch steps are those expected by the + # project and that the possible patches are correctly applied. + # Moreover since we do not want any modification + # of this file (for reproducibility purpose), we prevent it by + # using --frozen flag (in CARGO_BUILD_FLAGS) and raise a clear error + # here is better than letting cargo tell (in case the file is missing) + # "Cargo.lock should be modified but --frozen was given" + + lockfile = d.getVar("CARGO_LOCK_PATH", True) + if not os.path.exists(lockfile): + bb.fatal(f"{lockfile} file doesn't exist") + + # There are patched files and so Cargo.lock should be modified but we use + # --frozen so let's handle that modifications here. + # + # Note that a "better" (more elegant ?) would have been to use cargo update for + # patched packages: + # cargo update --offline -p package_1 -p package_2 + # But this is not possible since it requires that cargo local git db + # to be populated and this is not the case as we fetch git repo ourself. + + lockfile_orig = lockfile + ".orig" + if not os.path.exists(lockfile_orig): + shutil.copy(lockfile, lockfile_orig) + + newlines = [] + with open(lockfile_orig, "r") as f: + for line in f.readlines(): + if not line.startswith("source = \"git"): + newlines.append(line) + + with open(lockfile, "w") as f: + f.writelines(newlines) +} +do_configure[postfuncs] += "cargo_common_do_patch_paths" + +do_compile:prepend () { + oe_cargo_fix_env +} + oe_cargo_fix_env () { export CC="${RUST_TARGET_CC}" export CXX="${RUST_TARGET_CXX}" @@ -129,3 +224,15 @@ oe_cargo_fix_env () { EXTRA_OECARGO_PATHS ??= "" EXPORT_FUNCTIONS do_configure + +# The culprit for this setting is the libc crate, +# which as of Jun 2023 calls directly into 32 bit time functions in glibc, +# bypassing all of glibc provisions to choose the right Y2038-safe functions. As +# rust components statically link with that crate, pretty much everything +# is affected, and so there's no point trying to have recipe-specific +# INSANE_SKIP entries. +# +# Upstream ticket and PR: +# https://github.com/rust-lang/libc/issues/3223 +# https://github.com/rust-lang/libc/pull/3175 +INSANE_SKIP:append = " 32bit-time" diff --git a/meta-balena-rust/classes/rust-bin.bbclass b/meta-balena-rust/classes/rust-bin.bbclass deleted file mode 100644 index c87343b3cf..0000000000 --- a/meta-balena-rust/classes/rust-bin.bbclass +++ /dev/null @@ -1,149 +0,0 @@ -inherit rust - -RDEPENDS:${PN}:append:class-target = " ${RUSTLIB_DEP}" - -RUSTC_ARCHFLAGS += "-C opt-level=3 -g -L ${STAGING_DIR_HOST}/${rustlibdir} -C linker=${RUST_TARGET_CCLD}" -EXTRA_OEMAKE += 'RUSTC_ARCHFLAGS="${RUSTC_ARCHFLAGS}"' - -# Some libraries alias with the standard library but libstd is configured to -# make it difficult or imposisble to use its version. Unfortunately libstd -# must be explicitly overridden using extern. -OVERLAP_LIBS = "\ - libc \ - log \ - getopts \ - rand \ -" -def get_overlap_deps(d): - deps = d.getVar("DEPENDS").split() - overlap_deps = [] - for o in d.getVar("OVERLAP_LIBS").split(): - l = len([o for dep in deps if (o + '-rs' in dep)]) - if l > 0: - overlap_deps.append(o) - return " ".join(overlap_deps) -OVERLAP_DEPS = "${@get_overlap_deps(d)}" - -# Prevents multiple static copies of standard library modules -# See https://github.com/rust-lang/rust/issues/19680 -RUSTC_PREFER_DYNAMIC = "-C prefer-dynamic" -RUSTC_FLAGS += "${RUSTC_PREFER_DYNAMIC}" - -CRATE_NAME ?= "${@d.getVar('BPN').replace('-rs', '').replace('-', '_')}" -BINNAME ?= "${BPN}" -LIBNAME ?= "lib${CRATE_NAME}-rs" -CRATE_TYPE ?= "dylib" -BIN_SRC ?= "${S}/src/main.rs" -LIB_SRC ?= "${S}/src/lib.rs" - -rustbindest ?= "${bindir}" -rustlibdest ?= "${rustlibdir}" -RUST_RPATH_ABS ?= "${rustlibdir}:${rustlib}" - -def relative_rpaths(paths, base): - relpaths = set() - for p in paths.split(':'): - if p == base: - relpaths.add('$ORIGIN') - continue - relpaths.add(os.path.join('$ORIGIN', os.path.relpath(p, base))) - return '-rpath=' + ':'.join(relpaths) if len(relpaths) else '' - -RUST_LIB_RPATH_FLAGS ?= "${@relative_rpaths(d.getVar('RUST_RPATH_ABS', True), d.getVar('rustlibdest', True))}" -RUST_BIN_RPATH_FLAGS ?= "${@relative_rpaths(d.getVar('RUST_RPATH_ABS', True), d.getVar('rustbindest', True))}" - -def libfilename(d): - if d.getVar('CRATE_TYPE', True) == 'dylib': - return d.getVar('LIBNAME', True) + '.so' - else: - return d.getVar('LIBNAME', True) + '.rlib' - -def link_args(d, bin): - linkargs = [] - if bin: - rpaths = d.getVar('RUST_BIN_RPATH_FLAGS', False) - else: - rpaths = d.getVar('RUST_LIB_RPATH_FLAGS', False) - if d.getVar('CRATE_TYPE', True) == 'dylib': - linkargs.append('-soname') - linkargs.append(libfilename(d)) - if len(rpaths): - linkargs.append(rpaths) - if len(linkargs): - return ' '.join(['-Wl,' + arg for arg in linkargs]) - else: - return '' - -get_overlap_externs () { - externs= - for dep in ${OVERLAP_DEPS}; do - extern=$(ls ${STAGING_DIR_HOST}/${rustlibdir}/lib$dep-rs.{so,rlib} 2>/dev/null \ - | awk '{print $1}'); - if [ -n "$extern" ]; then - externs="$externs --extern $dep=$extern" - else - echo "$dep in depends but no such library found in ${rustlibdir}!" >&2 - exit 1 - fi - done - echo "$externs" -} - -do_configure () { -} - -oe_runrustc () { - export RUST_TARGET_PATH="${RUST_TARGET_PATH}" - bbnote ${RUSTC} ${RUSTC_ARCHFLAGS} ${RUSTC_FLAGS} "$@" - "${RUSTC}" ${RUSTC_ARCHFLAGS} ${RUSTC_FLAGS} "$@" -} - -oe_compile_rust_lib () { - rm -rf ${LIBNAME}.{rlib,so} - local -a link_args - if [ -n '${@link_args(d, False)}' ]; then - link_args[0]='-C' - link_args[1]='link-args=${@link_args(d, False)}' - fi - oe_runrustc $(get_overlap_externs) \ - "${link_args[@]}" \ - ${LIB_SRC} \ - -o ${@libfilename(d)} \ - --crate-name=${CRATE_NAME} --crate-type=${CRATE_TYPE} \ - "$@" -} -oe_compile_rust_lib[vardeps] += "get_overlap_externs" - -oe_compile_rust_bin () { - rm -rf ${BINNAME} - local -a link_args - if [ -n '${@link_args(d, True)}' ]; then - link_args[0]='-C' - link_args[1]='link-args=${@link_args(d, True)}' - fi - oe_runrustc $(get_overlap_externs) \ - "${link_args[@]}" \ - ${BIN_SRC} -o ${BINNAME} "$@" -} -oe_compile_rust_bin[vardeps] += "get_overlap_externs" - -oe_install_rust_lib () { - for lib in $(ls ${LIBNAME}.{so,rlib} 2>/dev/null); do - echo Installing $lib - install -D -m 755 $lib ${D}/${rustlibdest}/$lib - done -} - -oe_install_rust_bin () { - echo Installing ${BINNAME} - install -D -m 755 ${BINNAME} ${D}/${rustbindest}/${BINNAME} -} - -do_rust_bin_fixups() { - for f in `find ${PKGD} -name '*.so*'`; do - echo "Strip rust note: $f" - ${OBJCOPY} -R .note.rustc $f $f - done -} -PACKAGE_PREPROCESS_FUNCS += "do_rust_bin_fixups" - diff --git a/meta-balena-rust/classes/rust-common.bbclass b/meta-balena-rust/classes/rust-common.bbclass index d2c7e4a802..6940093e59 100644 --- a/meta-balena-rust/classes/rust-common.bbclass +++ b/meta-balena-rust/classes/rust-common.bbclass @@ -1,45 +1,23 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + inherit python3native +inherit rust-target-config # Common variables used by all Rust builds -export rustlibdir = "${libdir}/rust" +export rustlibdir = "${libdir}/rustlib/${RUST_HOST_SYS}/lib" FILES:${PN} += "${rustlibdir}/*.so" FILES:${PN}-dev += "${rustlibdir}/*.rlib ${rustlibdir}/*.rmeta" FILES:${PN}-dbg += "${rustlibdir}/.debug" -RUSTLIB = "-L ${STAGING_LIBDIR}/rust" -RUST_DEBUG_REMAP = "--remap-path-prefix=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}" +RUSTLIB = "-L ${STAGING_DIR_HOST}${rustlibdir}" +RUST_DEBUG_REMAP = "--remap-path-prefix=${WORKDIR}=${TARGET_DBGSRC_DIR}" RUSTFLAGS += "${RUSTLIB} ${RUST_DEBUG_REMAP}" -RUSTLIB_DEP ?= "libstd-rs" -export RUST_TARGET_PATH = "${STAGING_LIBDIR_NATIVE}/rustlib" -RUST_PANIC_STRATEGY ?= "unwind" - -# Native builds are not effected by TCLIBC. Without this, rust-native -# thinks it's "target" (i.e. x86_64-linux) is a musl target. -RUST_LIBC = "${TCLIBC}" -RUST_LIBC:class-crosssdk = "glibc" -RUST_LIBC:class-native = "glibc" - -def set_rust_arch(arch): - try: - import oe.rust - return oe.rust.arch_to_rust_arch(arch) - except ImportError or ModuleNotFoundError: - return arch - -def determine_libc(d, thing): - '''Determine which libc something should target''' - - # BUILD is never musl, TARGET may be musl or glibc, - # HOST could be musl, but only if a compiler is built to be run on - # target in which case HOST_SYS != BUILD_SYS. - if thing == 'TARGET': - libc = d.getVar('RUST_LIBC') - elif thing == 'BUILD' and (d.getVar('HOST_SYS') != d.getVar('BUILD_SYS')): - libc = d.getVar('RUST_LIBC') - else: - libc = d.getVar('RUST_LIBC:class-native') - - return libc +RUSTLIB_DEP ??= "libstd-rs" +RUST_PANIC_STRATEGY ??= "unwind" def target_is_armv7(d): '''Determine if target is armv7''' @@ -70,37 +48,38 @@ def rust_base_triple(d, thing): ''' # The llvm-target for armv7 is armv7-unknown-linux-gnueabihf - if thing == "TARGET" and target_is_armv7(d): + if d.getVar('{}_ARCH'.format(thing)) == d.getVar('TARGET_ARCH') and target_is_armv7(d): arch = "armv7" else: - arch = set_rust_arch(d.getVar('{}_ARCH'.format(thing))) - - # All the Yocto targets are Linux and are 'unknown' - vendor = "-unknown" - os = d.getVar('{}_OS'.format(thing)) - libc = determine_libc(d, thing) - - # Prefix with a dash and convert glibc -> gnu - if libc == "glibc": - libc = "-gnu" - elif libc == "musl": - libc = "-musl" + arch = oe.rust.arch_to_rust_arch(d.getVar('{}_ARCH'.format(thing))) - # Don't double up musl (only appears to be the case on aarch64) - if os == "linux-musl": - if libc != "-musl": - bb.fatal("{}_OS was '{}' but TCLIBC was not 'musl'".format(thing, os)) - os = "linux" + # Substituting "unknown" when vendor is empty will match rust's standard + # targets when building native recipes (including rust-native itself) + vendor = d.getVar('{}_VENDOR'.format(thing)) or "-unknown" + # Default to glibc + libc = "-gnu" + os = d.getVar('{}_OS'.format(thing)) # This catches ARM targets and appends the necessary hard float bits if os == "linux-gnueabi" or os == "linux-musleabi": libc = bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'hf', '', d) - return arch + vendor + '-' + os + libc + elif os == "linux-gnux32" or os == "linux-muslx32": + libc = "" + elif "musl" in os: + libc = "-musl" + os = "linux" + elif "elf" in os: + libc = "-elf" + os = "none" + elif "eabi" in os: + libc = "-eabi" + os = "none" + return arch + vendor + '-' + os + libc # In some cases uname and the toolchain differ on their idea of the arch name -RUST_BUILD_ARCH = "${@set_rust_arch(d.getVar('BUILD_ARCH'))}" +RUST_BUILD_ARCH = "${@oe.rust.arch_to_rust_arch(d.getVar('BUILD_ARCH'))}" # Naming explanation # Yocto @@ -120,7 +99,7 @@ RUST_BUILD_ARCH = "${@set_rust_arch(d.getVar('BUILD_ARCH'))}" # Rust additionally will use two additional cases: # - undecorated (e.g. CC) - equivalent to TARGET # - triple suffix (e.g. CC:x86_64_unknown_linux_gnu) - both -# see: https://github.com/alexcrichton/gcc-rs +# see: https://github.com/rust-lang/cc-rs # The way that Rust's internal triples and Yocto triples are mapped together # its likely best to not use the triple suffix due to potential confusion. @@ -146,26 +125,46 @@ RUST_TARGET_CXX = "${WRAPPER_DIR}/target-rust-cxx" RUST_TARGET_CCLD = "${WRAPPER_DIR}/target-rust-ccld" RUST_TARGET_AR = "${WRAPPER_DIR}/target-rust-ar" -create_wrapper () { +create_wrapper_rust () { file="$1" shift + extras="$1" + shift + crate_cc_extras="$1" + shift cat <<- EOF > "${file}" #!/usr/bin/env python3 import os, sys orig_binary = "$@" + extras = "${extras}" + + # Apply a required subset of CC crate compiler flags + # when we build a target recipe for a non-bare-metal target. + # https://github.com/rust-lang/cc-rs/blob/main/src/lib.rs#L1614 + if "CRATE_CC_NO_DEFAULTS" in os.environ.keys() and \ + "TARGET" in os.environ.keys() and not "-none-" in os.environ["TARGET"]: + orig_binary += "${crate_cc_extras}" + binary = orig_binary.split()[0] args = orig_binary.split() + sys.argv[1:] + if extras: + args.append(extras) os.execvp(binary, args) EOF chmod +x "${file}" } -export WRAPPER_TARGET_CC = "${CC}" -export WRAPPER_TARGET_CXX = "${CXX}" -export WRAPPER_TARGET_CCLD = "${CCLD}" -export WRAPPER_TARGET_LDFLAGS = "${LDFLAGS}" -export WRAPPER_TARGET_AR = "${AR}" +WRAPPER_TARGET_CC = "${CC}" +WRAPPER_TARGET_CXX = "${CXX}" +WRAPPER_TARGET_CCLD = "${CCLD}" +WRAPPER_TARGET_LDFLAGS = "${LDFLAGS}" +WRAPPER_TARGET_EXTRALD = "" +# see recipes-devtools/gcc/gcc/0018-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch +# we need to link with ssp_nonshared on musl to avoid "undefined reference to `__stack_chk_fail_local'" +# when building MACHINE=qemux86 for musl +WRAPPER_TARGET_EXTRALD:libc-musl = "-lssp_nonshared" +WRAPPER_TARGET_AR = "${AR}" # compiler is used by gcc-rs # linker is used by rustc/cargo @@ -174,22 +173,22 @@ do_rust_create_wrappers () { mkdir -p "${WRAPPER_DIR}" # Yocto Build / Rust Host C compiler - create_wrapper "${RUST_BUILD_CC}" "${BUILD_CC}" + create_wrapper_rust "${RUST_BUILD_CC}" "" "${CRATE_CC_FLAGS}" "${BUILD_CC}" # Yocto Build / Rust Host C++ compiler - create_wrapper "${RUST_BUILD_CXX}" "${BUILD_CXX}" + create_wrapper_rust "${RUST_BUILD_CXX}" "" "${CRATE_CC_FLAGS}" "${BUILD_CXX}" # Yocto Build / Rust Host linker - create_wrapper "${RUST_BUILD_CCLD}" "${BUILD_CCLD}" "${BUILD_LDFLAGS}" + create_wrapper_rust "${RUST_BUILD_CCLD}" "" "" "${BUILD_CCLD}" "${BUILD_LDFLAGS}" # Yocto Build / Rust Host archiver - create_wrapper "${RUST_BUILD_AR}" "${BUILD_AR}" + create_wrapper_rust "${RUST_BUILD_AR}" "" "" "${BUILD_AR}" # Yocto Target / Rust Target C compiler - create_wrapper "${RUST_TARGET_CC}" "${WRAPPER_TARGET_CC}" "${WRAPPER_TARGET_LDFLAGS}" + create_wrapper_rust "${RUST_TARGET_CC}" "${WRAPPER_TARGET_EXTRALD}" "${CRATE_CC_FLAGS}" "${WRAPPER_TARGET_CC}" "${WRAPPER_TARGET_LDFLAGS}" # Yocto Target / Rust Target C++ compiler - create_wrapper "${RUST_TARGET_CXX}" "${WRAPPER_TARGET_CXX}" + create_wrapper_rust "${RUST_TARGET_CXX}" "${WRAPPER_TARGET_EXTRALD}" "${CRATE_CC_FLAGS}" "${WRAPPER_TARGET_CXX}" "${CXXFLAGS}" # Yocto Target / Rust Target linker - create_wrapper "${RUST_TARGET_CCLD}" "${WRAPPER_TARGET_CCLD}" "${WRAPPER_TARGET_LDFLAGS}" + create_wrapper_rust "${RUST_TARGET_CCLD}" "${WRAPPER_TARGET_EXTRALD}" "" "${WRAPPER_TARGET_CCLD}" "${WRAPPER_TARGET_LDFLAGS}" # Yocto Target / Rust Target archiver - create_wrapper "${RUST_TARGET_AR}" "${WRAPPER_TARGET_AR}" + create_wrapper_rust "${RUST_TARGET_AR}" "" "" "${WRAPPER_TARGET_AR}" } diff --git a/meta-balena-rust/classes/rust-target-config.bbclass b/meta-balena-rust/classes/rust-target-config.bbclass new file mode 100644 index 0000000000..926b0630b1 --- /dev/null +++ b/meta-balena-rust/classes/rust-target-config.bbclass @@ -0,0 +1,437 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +# Right now this is focused on arm-specific tune features. +# We get away with this for now as one can only use x86-64 as the build host +# (not arm). +# Note that TUNE_FEATURES is _always_ refering to the target, so we really +# don't want to use this for the host/build. +def llvm_features_from_tune(d): + f = [] + feat = d.getVar('TUNE_FEATURES') + if not feat: + return [] + feat = frozenset(feat.split()) + + mach_overrides = d.getVar('MACHINEOVERRIDES') + mach_overrides = frozenset(mach_overrides.split(':')) + + if 'vfpv4' in feat: + f.append("+vfp4") + elif 'vfpv3' in feat: + f.append("+vfp3") + elif 'vfpv3d16' in feat: + f.append("+vfp3") + f.append("-d32") + elif 'vfpv2' in feat or 'vfp' in feat: + f.append("+vfp2") + + if 'neon' in feat: + f.append("+neon") + elif target_is_armv7(d): + f.append("-neon") + + if 'mips32' in feat: + f.append("+mips32") + + if 'mips32r2' in feat: + f.append("+mips32r2") + + if target_is_armv7(d): + f.append('+v7') + + if ('armv6' in mach_overrides) or ('armv6' in feat): + f.append("+v6") + if 'armv5te' in feat: + f.append("+strict-align") + f.append("+v5te") + elif 'armv5' in feat: + f.append("+strict-align") + f.append("+v5") + + if ('armv4' in mach_overrides) or ('armv4' in feat): + f.append("+strict-align") + + if 'dsp' in feat: + f.append("+dsp") + + if 'thumb' in feat: + if d.getVar('ARM_THUMB_OPT') == "thumb": + if target_is_armv7(d): + f.append('+thumb2') + f.append("+thumb-mode") + + if 'cortexa5' in feat: + f.append("+a5") + if 'cortexa7' in feat: + f.append("+a7") + if 'cortexa9' in feat: + f.append("+a9") + if 'cortexa15' in feat: + f.append("+a15") + if 'cortexa17' in feat: + f.append("+a17") + if ('riscv64' in feat) or ('riscv32' in feat): + f.append("+a,+c,+d,+f,+m") + return f +llvm_features_from_tune[vardepvalue] = "${@llvm_features_from_tune(d)}" + +# TARGET_CC_ARCH changes from build/cross/target so it'll do the right thing +# this should go away when https://github.com/rust-lang/rust/pull/31709 is +# stable (1.9.0?) +def llvm_features_from_cc_arch(d): + f = [] + feat = d.getVar('TARGET_CC_ARCH') + if not feat: + return [] + feat = frozenset(feat.split()) + + if '-mmmx' in feat: + f.append("+mmx") + if '-msse' in feat: + f.append("+sse") + if '-msse2' in feat: + f.append("+sse2") + if '-msse3' in feat: + f.append("+sse3") + if '-mssse3' in feat: + f.append("+ssse3") + if '-msse4.1' in feat: + f.append("+sse4.1") + if '-msse4.2' in feat: + f.append("+sse4.2") + if '-msse4a' in feat: + f.append("+sse4a") + if '-mavx' in feat: + f.append("+avx") + if '-mavx2' in feat: + f.append("+avx2") + + return f + +def llvm_features_from_target_fpu(d): + # TARGET_FPU can be hard or soft. +soft-float tell llvm to use soft float + # ABI. There is no option for hard. + + fpu = d.getVar('TARGET_FPU') + return ["+soft-float"] if fpu == "soft" else [] + +def llvm_features(d): + return ','.join(llvm_features_from_tune(d) + + llvm_features_from_cc_arch(d) + + llvm_features_from_target_fpu(d)) + +llvm_features[vardepvalue] = "${@llvm_features(d)}" + +## arm-unknown-linux-gnueabihf +DATA_LAYOUT[arm-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" +TARGET_ENDIAN[arm-eabi] = "little" +TARGET_POINTER_WIDTH[arm-eabi] = "32" +TARGET_C_INT_WIDTH[arm-eabi] = "32" +MAX_ATOMIC_WIDTH[arm-eabi] = "64" +FEATURES[arm-eabi] = "+v6,+vfp2" + +## armv7-unknown-linux-gnueabihf +DATA_LAYOUT[armv7-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" +TARGET_ENDIAN[armv7-eabi] = "little" +TARGET_POINTER_WIDTH[armv7-eabi] = "32" +TARGET_C_INT_WIDTH[armv7-eabi] = "32" +MAX_ATOMIC_WIDTH[armv7-eabi] = "64" +FEATURES[armv7-eabi] = "+v7,+vfp2,+thumb2" + +## aarch64-unknown-linux-{gnu, musl} +DATA_LAYOUT[aarch64] = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128" +TARGET_ENDIAN[aarch64] = "little" +TARGET_POINTER_WIDTH[aarch64] = "64" +TARGET_C_INT_WIDTH[aarch64] = "32" +MAX_ATOMIC_WIDTH[aarch64] = "128" + +## x86_64-unknown-linux-{gnu, musl} +DATA_LAYOUT[x86_64] = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" +TARGET_ENDIAN[x86_64] = "little" +TARGET_POINTER_WIDTH[x86_64] = "64" +TARGET_C_INT_WIDTH[x86_64] = "32" +MAX_ATOMIC_WIDTH[x86_64] = "64" + +## x86_64-unknown-linux-gnux32 +DATA_LAYOUT[x86_64-x32] = "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" +TARGET_ENDIAN[x86_64-x32] = "little" +TARGET_POINTER_WIDTH[x86_64-x32] = "32" +TARGET_C_INT_WIDTH[x86_64-x32] = "32" +MAX_ATOMIC_WIDTH[x86_64-x32] = "64" + +## i686-unknown-linux-{gnu, musl} +DATA_LAYOUT[i686] = "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128" +TARGET_ENDIAN[i686] = "little" +TARGET_POINTER_WIDTH[i686] = "32" +TARGET_C_INT_WIDTH[i686] = "32" +MAX_ATOMIC_WIDTH[i686] = "64" + +## XXX: a bit of a hack so qemux86 builds, clone of i686-unknown-linux-{gnu, musl} above +DATA_LAYOUT[i586] = "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128" +TARGET_ENDIAN[i586] = "little" +TARGET_POINTER_WIDTH[i586] = "32" +TARGET_C_INT_WIDTH[i586] = "32" +MAX_ATOMIC_WIDTH[i586] = "64" + +## mips-unknown-linux-{gnu, musl} +DATA_LAYOUT[mips] = "E-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64" +TARGET_ENDIAN[mips] = "big" +TARGET_POINTER_WIDTH[mips] = "32" +TARGET_C_INT_WIDTH[mips] = "32" +MAX_ATOMIC_WIDTH[mips] = "32" + +## mipsel-unknown-linux-{gnu, musl} +DATA_LAYOUT[mipsel] = "e-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64" +TARGET_ENDIAN[mipsel] = "little" +TARGET_POINTER_WIDTH[mipsel] = "32" +TARGET_C_INT_WIDTH[mipsel] = "32" +MAX_ATOMIC_WIDTH[mipsel] = "32" + +## mips64-unknown-linux-{gnu, musl} +DATA_LAYOUT[mips64] = "E-m:e-i8:8:32-i16:16:32-i64:64-n32:64-S128" +TARGET_ENDIAN[mips64] = "big" +TARGET_POINTER_WIDTH[mips64] = "64" +TARGET_C_INT_WIDTH[mips64] = "64" +MAX_ATOMIC_WIDTH[mips64] = "64" + +## mips64-n32-unknown-linux-{gnu, musl} +DATA_LAYOUT[mips64-n32] = "E-m:e-p:32:32-i8:8:32-i16:16:32-i64:64-n32:64-S128" +TARGET_ENDIAN[mips64-n32] = "big" +TARGET_POINTER_WIDTH[mips64-n32] = "32" +TARGET_C_INT_WIDTH[mips64-n32] = "32" +MAX_ATOMIC_WIDTH[mips64-n32] = "64" + +## mips64el-unknown-linux-{gnu, musl} +DATA_LAYOUT[mips64el] = "e-m:e-i8:8:32-i16:16:32-i64:64-n32:64-S128" +TARGET_ENDIAN[mips64el] = "little" +TARGET_POINTER_WIDTH[mips64el] = "64" +TARGET_C_INT_WIDTH[mips64el] = "64" +MAX_ATOMIC_WIDTH[mips64el] = "64" + +## powerpc-unknown-linux-{gnu, musl} +DATA_LAYOUT[powerpc] = "E-m:e-p:32:32-i64:64-n32" +TARGET_ENDIAN[powerpc] = "big" +TARGET_POINTER_WIDTH[powerpc] = "32" +TARGET_C_INT_WIDTH[powerpc] = "32" +MAX_ATOMIC_WIDTH[powerpc] = "32" + +## powerpc64-unknown-linux-{gnu, musl} +DATA_LAYOUT[powerpc64] = "E-m:e-i64:64-n32:64-S128-v256:256:256-v512:512:512" +TARGET_ENDIAN[powerpc64] = "big" +TARGET_POINTER_WIDTH[powerpc64] = "64" +TARGET_C_INT_WIDTH[powerpc64] = "64" +MAX_ATOMIC_WIDTH[powerpc64] = "64" + +## powerpc64le-unknown-linux-{gnu, musl} +DATA_LAYOUT[powerpc64le] = "e-m:e-i64:64-n32:64-v256:256:256-v512:512:512" +TARGET_ENDIAN[powerpc64le] = "little" +TARGET_POINTER_WIDTH[powerpc64le] = "64" +TARGET_C_INT_WIDTH[powerpc64le] = "64" +MAX_ATOMIC_WIDTH[powerpc64le] = "64" + +## riscv32gc-unknown-linux-{gnu, musl} +DATA_LAYOUT[riscv32gc] = "e-m:e-p:32:32-i64:64-n32-S128" +TARGET_ENDIAN[riscv32gc] = "little" +TARGET_POINTER_WIDTH[riscv32gc] = "32" +TARGET_C_INT_WIDTH[riscv32gc] = "32" +MAX_ATOMIC_WIDTH[riscv32gc] = "32" + +## riscv64gc-unknown-linux-{gnu, musl} +DATA_LAYOUT[riscv64gc] = "e-m:e-p:64:64-i64:64-i128:128-n64-S128" +TARGET_ENDIAN[riscv64gc] = "little" +TARGET_POINTER_WIDTH[riscv64gc] = "64" +TARGET_C_INT_WIDTH[riscv64gc] = "64" +MAX_ATOMIC_WIDTH[riscv64gc] = "64" + +## loongarch64-unknown-linux-{gnu, musl} +DATA_LAYOUT[loongarch64] = "e-m:e-i8:8:32-i16:16:32-i64:64-n32:64-S128" +TARGET_ENDIAN[loongarch64] = "little" +TARGET_POINTER_WIDTH[loongarch64] = "64" +TARGET_C_INT_WIDTH[loongarch64] = "32" +MAX_ATOMIC_WIDTH[loongarch64] = "64" +FEATURES[loongarch64] = "+d" + +# Convert a normal arch (HOST_ARCH, TARGET_ARCH, BUILD_ARCH, etc) to something +# rust's internals won't choke on. +def arch_to_rust_target_arch(arch): + if arch == "i586" or arch == "i686": + return "x86" + elif arch == "mipsel": + return "mips" + elif arch == "mip64sel": + return "mips64" + elif arch == "armv7": + return "arm" + elif arch == "powerpc64le": + return "powerpc64" + elif arch == "riscv32gc": + return "riscv32" + elif arch == "riscv64gc": + return "riscv64" + else: + return arch + +# Convert a rust target string to a llvm-compatible triplet +def rust_sys_to_llvm_target(sys): + if sys.startswith('riscv32gc-'): + return sys.replace('riscv32gc-', 'riscv32-', 1) + if sys.startswith('riscv64gc-'): + return sys.replace('riscv64gc-', 'riscv64-', 1) + return sys + +# generates our target CPU value +def llvm_cpu(d): + cpu = d.getVar('PACKAGE_ARCH') + target = d.getVar('TRANSLATED_TARGET_ARCH') + + trans = {} + trans['corei7-64'] = "corei7" + trans['core2-32'] = "core2" + trans['x86-64'] = "x86-64" + trans['i686'] = "i686" + trans['i586'] = "i586" + trans['mips64'] = "mips64" + trans['mips64el'] = "mips64" + trans['powerpc64le'] = "ppc64le" + trans['powerpc64'] = "ppc64" + trans['riscv64'] = "generic-rv64" + trans['riscv32'] = "generic-rv32" + trans['loongarch64'] = "la464" + + if target in ["mips", "mipsel", "powerpc"]: + feat = frozenset(d.getVar('TUNE_FEATURES').split()) + if "mips32r2" in feat: + trans['mipsel'] = "mips32r2" + trans['mips'] = "mips32r2" + elif "mips32" in feat: + trans['mipsel'] = "mips32" + trans['mips'] = "mips32" + elif "ppc7400" in feat: + trans['powerpc'] = "7400" + + try: + return trans[cpu] + except: + return trans.get(target, "generic") + +llvm_cpu[vardepvalue] = "${@llvm_cpu(d)}" + +def rust_gen_target(d, thing, wd, arch): + import json + + build_sys = d.getVar('BUILD_SYS') + target_sys = d.getVar('TARGET_SYS') + + sys = d.getVar('{}_SYS'.format(thing)) + prefix = d.getVar('{}_PREFIX'.format(thing)) + rustsys = d.getVar('RUST_{}_SYS'.format(thing)) + + abi = None + cpu = "generic" + features = "" + + # Need to apply the target tuning consitently, only if the triplet applies to the target + # and not in the native case + if sys == target_sys and sys != build_sys: + abi = d.getVar('ABIEXTENSION') + cpu = llvm_cpu(d) + if bb.data.inherits_class('native', d): + features = ','.join(llvm_features_from_cc_arch(d)) + else: + features = llvm_features(d) or "" + # arm and armv7 have different targets in llvm + if arch == "arm" and target_is_armv7(d): + arch = 'armv7' + + rust_arch = oe.rust.arch_to_rust_arch(arch) + + if abi: + arch_abi = "{}-{}".format(rust_arch, abi) + else: + arch_abi = rust_arch + + features = features or d.getVarFlag('FEATURES', arch_abi) or "" + features = features.strip() + + # build tspec + tspec = {} + tspec['llvm-target'] = rust_sys_to_llvm_target(rustsys) + tspec['data-layout'] = d.getVarFlag('DATA_LAYOUT', arch_abi) + if tspec['data-layout'] is None: + bb.fatal("No rust target defined for %s" % arch_abi) + tspec['max-atomic-width'] = int(d.getVarFlag('MAX_ATOMIC_WIDTH', arch_abi)) + tspec['target-pointer-width'] = d.getVarFlag('TARGET_POINTER_WIDTH', arch_abi) + tspec['target-c-int-width'] = d.getVarFlag('TARGET_C_INT_WIDTH', arch_abi) + tspec['target-endian'] = d.getVarFlag('TARGET_ENDIAN', arch_abi) + tspec['arch'] = arch_to_rust_target_arch(rust_arch) + if "baremetal" in d.getVar('TCLIBC'): + tspec['os'] = "none" + else: + tspec['os'] = "linux" + if "musl" in tspec['llvm-target']: + tspec['env'] = "musl" + else: + tspec['env'] = "gnu" + if "riscv64" in tspec['llvm-target']: + tspec['llvm-abiname'] = "lp64d" + if "riscv32" in tspec['llvm-target']: + tspec['llvm-abiname'] = "ilp32d" + if "loongarch64" in tspec['llvm-target']: + tspec['llvm-abiname'] = "lp64d" + tspec['vendor'] = "unknown" + tspec['target-family'] = "unix" + tspec['linker'] = "{}{}gcc".format(d.getVar('CCACHE'), prefix) + tspec['cpu'] = cpu + if features != "": + tspec['features'] = features + tspec['dynamic-linking'] = True + tspec['executables'] = True + tspec['linker-is-gnu'] = True + tspec['linker-flavor'] = "gcc" + tspec['has-rpath'] = True + tspec['position-independent-executables'] = True + tspec['panic-strategy'] = d.getVar("RUST_PANIC_STRATEGY") + + # write out the target spec json file + with open(wd + rustsys + '.json', 'w') as f: + json.dump(tspec, f, indent=4) + +# These are accounted for in tmpdir path names so don't need to be in the task sig +rust_gen_target[vardepsexclude] += "ABIEXTENSION llvm_cpu" + +do_rust_gen_targets[vardeps] += "DATA_LAYOUT TARGET_ENDIAN TARGET_POINTER_WIDTH TARGET_C_INT_WIDTH MAX_ATOMIC_WIDTH FEATURES" + +RUST_TARGETS_DIR = "${WORKDIR}/rust-targets/" +export RUST_TARGET_PATH = "${RUST_TARGETS_DIR}" + +python do_rust_gen_targets () { + wd = d.getVar('RUST_TARGETS_DIR') + # Order of BUILD, HOST, TARGET is important in case the files overwrite, most specific last + rust_gen_target(d, 'BUILD', wd, d.getVar('BUILD_ARCH')) + rust_gen_target(d, 'HOST', wd, d.getVar('HOST_ARCH')) + rust_gen_target(d, 'TARGET', wd, d.getVar('TARGET_ARCH')) +} + +addtask rust_gen_targets after do_patch before do_compile +do_rust_gen_targets[dirs] += "${RUST_TARGETS_DIR}" + +# For building target C dependecies use only compiler parameters defined in OE +# and ignore the CC crate defaults which conflicts with OE ones in some cases. +# https://github.com/rust-lang/cc-rs#external-configuration-via-environment-variables +# Some CC crate compiler flags are still required. +# We apply them conditionally in rust wrappers. + +CRATE_CC_FLAGS:class-native = "" +CRATE_CC_FLAGS:class-nativesdk = "" +CRATE_CC_FLAGS:class-target = " -ffunction-sections -fdata-sections -fPIC" + +do_compile:prepend:class-target() { + export CRATE_CC_NO_DEFAULTS=1 +} +do_install:prepend:class-target() { + export CRATE_CC_NO_DEFAULTS=1 +} diff --git a/meta-balena-rust/classes/rust.bbclass b/meta-balena-rust/classes/rust.bbclass index 5c8938d09f..dae25cac2a 100644 --- a/meta-balena-rust/classes/rust.bbclass +++ b/meta-balena-rust/classes/rust.bbclass @@ -1,8 +1,14 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + inherit rust-common RUSTC = "rustc" -RUSTC_ARCHFLAGS += "--target=${HOST_SYS} ${RUSTFLAGS}" +RUSTC_ARCHFLAGS += "--target=${RUST_HOST_SYS} ${RUSTFLAGS}" def rust_base_dep(d): # Taken from meta/classes/base.bbclass `base_dep_prepend` and modified to @@ -10,7 +16,7 @@ def rust_base_dep(d): deps = "" if not d.getVar('INHIBIT_DEFAULT_RUST_DEPS'): if (d.getVar('HOST_SYS') != d.getVar('BUILD_SYS')): - deps += " virtual/${TARGET_PREFIX}rust ${RUSTLIB_DEP}" + deps += " rust-native ${RUSTLIB_DEP}" else: deps += " rust-native" return deps @@ -37,7 +43,7 @@ HOST_CFLAGS ?= "${CFLAGS}" HOST_CXXFLAGS ?= "${CXXFLAGS}" HOST_CPPFLAGS ?= "${CPPFLAGS}" -rustlib_suffix="${TUNE_ARCH}${TARGET_VENDOR}-${TARGET_OS}/rustlib/${HOST_SYS}/lib" +rustlib_suffix="${TUNE_ARCH}${TARGET_VENDOR}-${TARGET_OS}/rustlib/${RUST_HOST_SYS}/lib" # Native sysroot standard library path rustlib_src="${prefix}/lib/${rustlib_suffix}" # Host sysroot standard library path diff --git a/meta-balena-rust/conf/distro/include/balena-os-rust-version.inc b/meta-balena-rust/conf/distro/include/balena-os-rust-version.inc index 6c34165fe6..0710d5d8ab 100644 --- a/meta-balena-rust/conf/distro/include/balena-os-rust-version.inc +++ b/meta-balena-rust/conf/distro/include/balena-os-rust-version.inc @@ -1,7 +1,8 @@ -PREFERRED_VERSION_rust = "1.62.0" -PREFERRED_VERSION_rust-native = "1.62.0" -PREFERRED_VERSION_rust-cross-${TARGET_ARCH} = "1.62.0" -PREFERRED_VERSION_rust-llvm-native = "1.62.0" -PREFERRED_VERSION_cargo-native = "1.62.0" -PREFERRED_VERSION_libstd-rs = "1.62.0" +PREFERRED_VERSION_rust = "1.75.0" +PREFERRED_VERSION_rust-native = "1.75.0" +PREFERRED_VERSION_rust-cross-${TARGET_ARCH} = "1.75.0" +PREFERRED_VERSION_rust-llvm = "1.75.0" +PREFERRED_VERSION_rust-llvm-native = "1.75.0" +PREFERRED_VERSION_cargo-native = "1.75.0" +PREFERRED_VERSION_libstd-rs = "1.75.0" diff --git a/meta-balena-rust/layer.conf b/meta-balena-rust/layer.conf index b64ebf60d9..e5fd3e59bb 100644 --- a/meta-balena-rust/layer.conf +++ b/meta-balena-rust/layer.conf @@ -7,7 +7,7 @@ BBFILE_COLLECTIONS += "balena-rust" BBFILE_PATTERN_balena-rust := "^${LAYERDIR}/" BBFILE_PRIORITY_balena-rust = "1337" -LAYERSERIES_COMPAT_balena-rust = "honister kirkstone" +LAYERSERIES_COMPAT_balena-rust = "honister kirkstone scarthgap" BALENA_DEPRECATED_YOCTO_LAYER ?= "0" diff --git a/meta-balena-rust/lib/crate.py b/meta-balena-rust/lib/crate.py index 47012b1a63..01d49435c3 100644 --- a/meta-balena-rust/lib/crate.py +++ b/meta-balena-rust/lib/crate.py @@ -33,7 +33,7 @@ def supports(self, ud, d): return ud.type in ['crate'] def recommends_checksum(self, urldata): - return False + return True def urldata_init(self, ud, d): """ @@ -56,12 +56,14 @@ def _crate_urldata_init(self, ud, d): if len(parts) < 5: raise bb.fetch2.ParameterError("Invalid URL: Must be crate://HOST/NAME/VERSION", ud.url) - # last field is version - version = parts[len(parts) - 1] + # version is expected to be the last token + # but ignore possible url parameters which will be used + # by the top fetcher class + version = parts[-1].split(";")[0] # second to last field is name - name = parts[len(parts) - 2] + name = parts[-2] # host (this is to allow custom crate registries to be specified - host = '/'.join(parts[2:len(parts) - 2]) + host = '/'.join(parts[2:-2]) # if using upstream just fix it up nicely if host == 'crates.io': @@ -69,9 +71,10 @@ def _crate_urldata_init(self, ud, d): ud.url = "https://%s/%s/%s/download" % (host, name, version) ud.parm['downloadfilename'] = "%s-%s.crate" % (name, version) - ud.parm['name'] = name + if 'name' not in ud.parm: + ud.parm['name'] = '%s-%s' % (name, version) - logger.debug(2, "Fetching %s to %s" % (ud.url, ud.parm['downloadfilename'])) + logger.debug2("Fetching %s to %s" % (ud.url, ud.parm['downloadfilename'])) def unpack(self, ud, rootdir, d): """ @@ -95,11 +98,13 @@ def _crate_unpack(self, ud, rootdir, d): save_cwd = os.getcwd() os.chdir(rootdir) - pn = d.getVar('BPN') - if pn == ud.parm.get('name'): + bp = d.getVar('BP') + if bp == ud.parm.get('name'): cmd = "tar -xz --no-same-owner -f %s" % thefile + ud.unpack_tracer.unpack("crate-extract", rootdir) else: cargo_bitbake = self._cargo_bitbake_path(rootdir) + ud.unpack_tracer.unpack("cargo-extract", cargo_bitbake) cmd = "tar -xz --no-same-owner -f %s -C %s" % (thefile, cargo_bitbake) diff --git a/meta-balena-rust/recipes-devtools/cargo/cargo-cross-canadian.inc b/meta-balena-rust/recipes-devtools/cargo/cargo-cross-canadian.inc deleted file mode 100644 index 7fc22a4128..0000000000 --- a/meta-balena-rust/recipes-devtools/cargo/cargo-cross-canadian.inc +++ /dev/null @@ -1,72 +0,0 @@ -SUMMARY = "Cargo, a package manager for Rust cross canadian flavor." - -RUST_ALTERNATE_EXE_PATH = "${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-config" - -HOST_SYS = "${HOST_ARCH}-unknown-linux-gnu" -CARGO_RUST_TARGET_CCLD = "${RUST_BUILD_CCLD}" - -require recipes-devtools/rust/rust-common.inc -require cargo.inc - -CARGO = "${WORKDIR}/${CARGO_SNAPSHOT}/bin/cargo" -BASEDEPENDS:remove = "cargo-native" - -export RUST_TARGET_PATH="${WORKDIR}/targets/" - -RUSTLIB = " \ - -L ${STAGING_DIR_NATIVE}/${SDKPATHNATIVE}/usr/lib/${TARGET_SYS}/rustlib/${HOST_SYS}/lib \ -" - -DEPENDS += "rust-native \ - rust-cross-canadian-${TRANSLATED_TARGET_ARCH} \ - virtual/nativesdk-${HOST_PREFIX}compilerlibs \ - nativesdk-openssl nativesdk-zlib \ - virtual/nativesdk-libc \ -" - -inherit cross-canadian - -PN = "cargo-cross-canadian-${TRANSLATED_TARGET_ARCH}" - -python do_rust_gen_targets () { - wd = d.getVar('WORKDIR') + '/targets/' - - rust_gen_target(d, 'BUILD', wd, "", "generic", d.getVar('BUILD_ARCH')) - rust_gen_target(d, 'HOST', wd, "", "generic", d.getVar('HOST_ARCH')) -} - -do_compile:prepend () { - PKG_CONFIG_PATH="${RECIPE_SYSROOT_NATIVE}/usr/lib/pkgconfig:${PKG_CONFIG_PATH}" -} - -do_install () { - SYS_BINDIR=$(dirname ${D}${bindir}) - install -d "${SYS_BINDIR}" - install -m 755 "${B}/target/${CARGO_TARGET_SUBDIR}/cargo" "${SYS_BINDIR}" - for i in ${SYS_BINDIR}/*; do - chrpath -r "\$ORIGIN/../lib" ${i} - done - - ENV_SETUP_DIR=${D}${base_prefix}/environment-setup.d - mkdir "${ENV_SETUP_DIR}" - ENV_SETUP_SH="${ENV_SETUP_DIR}/cargo.sh" - cat <<- EOF > "${ENV_SETUP_SH}" - export CARGO_HOME="\$OECORE_TARGET_SYSROOT/home/cargo" - mkdir -p "\$CARGO_HOME" - # Init the default target once, it might be otherwise user modified. - if [ ! -f "\$CARGO_HOME/config" ]; then - touch "\$CARGO_HOME/config" - echo "[build]" >> "\$CARGO_HOME/config" - echo 'target = "'${TARGET_SYS}'"' >> "\$CARGO_HOME/config" - fi - - # Keep the below off as long as HTTP/2 is disabled. - export CARGO_HTTP_MULTIPLEXING=false - - export CARGO_HTTP_CAINFO="\$OECORE_NATIVE_SYSROOT/etc/ssl/certs/ca-certificates.crt" - EOF -} - -PKG_SYS_BINDIR = "${SDKPATHNATIVE}/usr/bin" -FILES:${PN} += "${base_prefix}/environment-setup.d ${PKG_SYS_BINDIR}" - diff --git a/meta-balena-rust/recipes-devtools/cargo/cargo-cross-canadian_1.62.0.bb b/meta-balena-rust/recipes-devtools/cargo/cargo-cross-canadian_1.62.0.bb deleted file mode 100644 index 63fd69107b..0000000000 --- a/meta-balena-rust/recipes-devtools/cargo/cargo-cross-canadian_1.62.0.bb +++ /dev/null @@ -1,6 +0,0 @@ -require recipes-devtools/rust/rust-source.inc -require recipes-devtools/rust/rust-snapshot.inc - -FILESEXTRAPATHS:prepend := "${THISDIR}/cargo-${PV}:" - -require cargo-cross-canadian.inc diff --git a/meta-balena-rust/recipes-devtools/cargo/cargo_1.62.0.bb b/meta-balena-rust/recipes-devtools/cargo/cargo_1.62.0.bb deleted file mode 100644 index eee58fc245..0000000000 --- a/meta-balena-rust/recipes-devtools/cargo/cargo_1.62.0.bb +++ /dev/null @@ -1,4 +0,0 @@ -require recipes-devtools/rust/rust-source.inc -require recipes-devtools/rust/rust-snapshot.inc -require cargo.inc -BBCLASSEXTEND = "native nativesdk" diff --git a/meta-balena-rust/recipes-devtools/rust/README-rust.md b/meta-balena-rust/recipes-devtools/rust/README-rust.md index b87637c3b0..209836ab65 100644 --- a/meta-balena-rust/recipes-devtools/rust/README-rust.md +++ b/meta-balena-rust/recipes-devtools/rust/README-rust.md @@ -3,22 +3,6 @@ This provides the Rust compiler, tools for building packages (cargo), and a few example projects. -## What works: - - - Building `rust-native` and `cargo-native` - - Building Rust based projects with Cargo for the TARGET - - e.g. `rustfmt` which is used by the CI system - - `-buildsdk` and `-crosssdk` packages - -## What doesn't: - - - Using anything but x86_64 or arm64 as the build environment - - rust (built for target) [issue #81](https://github.com/meta-rust/meta-rust/issues/81) - -## What's untested: - - - cargo (built for target) - ## Building a rust package When building a rust package in bitbake, it's usually easiest to build with @@ -36,11 +20,11 @@ may also be added to the SDK. NOTE: You will have to edit the generated recipe based on the comments contained within it -## TODO - ## Pitfalls - - TARGET_SYS _must_ be different from BUILD_SYS. This is due to the way Rust configuration options are tracked for different targets. This is the reason we use the Yocto triples instead of the native Rust triples. See rust-lang/cargo#3349. + - TARGET_SYS _must_ be different from BUILD_SYS. This is due to the way Rust + configuration options are tracked for different targets. This is the reason + we use the Yocto triples instead of the native Rust triples. See rust-lang/cargo#3349. ## Dependencies @@ -52,7 +36,3 @@ On the target: - Any `-sys` packages your project might need must have RDEPENDs for the native library. -## Copyright - -MIT OR Apache-2.0 - Same as rust - diff --git a/meta-balena-rust/recipes-devtools/rust/cargo-c-crates.inc b/meta-balena-rust/recipes-devtools/rust/cargo-c-crates.inc new file mode 100644 index 0000000000..f6da3e654e --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/cargo-c-crates.inc @@ -0,0 +1,654 @@ +# Autogenerated with 'bitbake -c update_crates cargo-c-native' + +# from Cargo.lock +SRC_URI += " \ + crate://crates.io/adler/1.0.2 \ + crate://crates.io/ahash/0.8.7 \ + crate://crates.io/aho-corasick/1.1.2 \ + crate://crates.io/allocator-api2/0.2.16 \ + crate://crates.io/anstream/0.6.11 \ + crate://crates.io/anstyle/1.0.6 \ + crate://crates.io/anstyle-parse/0.2.3 \ + crate://crates.io/anstyle-query/1.0.2 \ + crate://crates.io/anstyle-wincon/3.0.2 \ + crate://crates.io/anyhow/1.0.79 \ + crate://crates.io/arc-swap/1.6.0 \ + crate://crates.io/autocfg/1.1.0 \ + crate://crates.io/base16ct/0.2.0 \ + crate://crates.io/base64/0.21.7 \ + crate://crates.io/base64ct/1.6.0 \ + crate://crates.io/bitflags/1.3.2 \ + crate://crates.io/bitflags/2.4.2 \ + crate://crates.io/bitmaps/2.1.0 \ + crate://crates.io/block-buffer/0.10.4 \ + crate://crates.io/bstr/1.9.0 \ + crate://crates.io/btoi/0.4.3 \ + crate://crates.io/bumpalo/3.14.0 \ + crate://crates.io/bytes/1.5.0 \ + crate://crates.io/bytesize/1.3.0 \ + crate://crates.io/cargo/0.77.0 \ + crate://crates.io/cargo-credential/0.4.2 \ + crate://crates.io/cargo-credential-libsecret/0.4.2 \ + crate://crates.io/cargo-credential-macos-keychain/0.4.2 \ + crate://crates.io/cargo-credential-wincred/0.4.2 \ + crate://crates.io/cargo-platform/0.1.7 \ + crate://crates.io/cargo-util/0.2.9 \ + crate://crates.io/cbindgen/0.26.0 \ + crate://crates.io/cc/1.0.83 \ + crate://crates.io/cfg-if/1.0.0 \ + crate://crates.io/clap/4.5.0 \ + crate://crates.io/clap_builder/4.5.0 \ + crate://crates.io/clap_derive/4.5.0 \ + crate://crates.io/clap_lex/0.7.0 \ + crate://crates.io/clru/0.6.1 \ + crate://crates.io/color-print/0.3.5 \ + crate://crates.io/color-print-proc-macro/0.3.5 \ + crate://crates.io/colorchoice/1.0.0 \ + crate://crates.io/const-oid/0.9.6 \ + crate://crates.io/core-foundation/0.9.4 \ + crate://crates.io/core-foundation-sys/0.8.6 \ + crate://crates.io/cpufeatures/0.2.12 \ + crate://crates.io/crates-io/0.39.2 \ + crate://crates.io/crc32fast/1.3.2 \ + crate://crates.io/crossbeam-channel/0.5.11 \ + crate://crates.io/crossbeam-deque/0.8.5 \ + crate://crates.io/crossbeam-epoch/0.9.18 \ + crate://crates.io/crossbeam-utils/0.8.19 \ + crate://crates.io/crypto-bigint/0.5.5 \ + crate://crates.io/crypto-common/0.1.6 \ + crate://crates.io/ct-codecs/1.1.1 \ + crate://crates.io/curl/0.4.45 \ + crate://crates.io/curl-sys/0.4.72+curl-8.6.0 \ + crate://crates.io/der/0.7.8 \ + crate://crates.io/deranged/0.3.11 \ + crate://crates.io/digest/0.10.7 \ + crate://crates.io/dunce/1.0.4 \ + crate://crates.io/ecdsa/0.16.9 \ + crate://crates.io/ed25519-compact/2.1.1 \ + crate://crates.io/either/1.9.0 \ + crate://crates.io/elliptic-curve/0.13.8 \ + crate://crates.io/encoding_rs/0.8.33 \ + crate://crates.io/equivalent/1.0.1 \ + crate://crates.io/erased-serde/0.4.2 \ + crate://crates.io/errno/0.3.8 \ + crate://crates.io/fallible-iterator/0.3.0 \ + crate://crates.io/fallible-streaming-iterator/0.1.9 \ + crate://crates.io/faster-hex/0.9.0 \ + crate://crates.io/fastrand/2.0.1 \ + crate://crates.io/ff/0.13.0 \ + crate://crates.io/fiat-crypto/0.2.6 \ + crate://crates.io/filetime/0.2.23 \ + crate://crates.io/flate2/1.0.28 \ + crate://crates.io/foreign-types/0.3.2 \ + crate://crates.io/foreign-types-shared/0.1.1 \ + crate://crates.io/form_urlencoded/1.2.1 \ + crate://crates.io/generic-array/0.14.7 \ + crate://crates.io/getrandom/0.2.12 \ + crate://crates.io/git2/0.18.2 \ + crate://crates.io/git2-curl/0.19.0 \ + crate://crates.io/gix/0.56.0 \ + crate://crates.io/gix-actor/0.28.1 \ + crate://crates.io/gix-attributes/0.20.1 \ + crate://crates.io/gix-bitmap/0.2.10 \ + crate://crates.io/gix-chunk/0.4.7 \ + crate://crates.io/gix-command/0.3.4 \ + crate://crates.io/gix-commitgraph/0.22.1 \ + crate://crates.io/gix-config/0.32.1 \ + crate://crates.io/gix-config-value/0.14.4 \ + crate://crates.io/gix-credentials/0.22.0 \ + crate://crates.io/gix-date/0.8.3 \ + crate://crates.io/gix-diff/0.38.0 \ + crate://crates.io/gix-discover/0.27.0 \ + crate://crates.io/gix-features/0.35.0 \ + crate://crates.io/gix-features/0.36.1 \ + crate://crates.io/gix-filter/0.7.0 \ + crate://crates.io/gix-fs/0.8.1 \ + crate://crates.io/gix-glob/0.14.1 \ + crate://crates.io/gix-hash/0.13.3 \ + crate://crates.io/gix-hashtable/0.4.1 \ + crate://crates.io/gix-ignore/0.9.1 \ + crate://crates.io/gix-index/0.27.1 \ + crate://crates.io/gix-lock/11.0.1 \ + crate://crates.io/gix-macros/0.1.3 \ + crate://crates.io/gix-negotiate/0.10.0 \ + crate://crates.io/gix-object/0.39.0 \ + crate://crates.io/gix-odb/0.55.0 \ + crate://crates.io/gix-pack/0.45.0 \ + crate://crates.io/gix-packetline/0.17.3 \ + crate://crates.io/gix-packetline-blocking/0.17.3 \ + crate://crates.io/gix-path/0.10.5 \ + crate://crates.io/gix-pathspec/0.4.1 \ + crate://crates.io/gix-prompt/0.8.2 \ + crate://crates.io/gix-protocol/0.42.0 \ + crate://crates.io/gix-quote/0.4.10 \ + crate://crates.io/gix-ref/0.39.1 \ + crate://crates.io/gix-refspec/0.20.0 \ + crate://crates.io/gix-revision/0.24.0 \ + crate://crates.io/gix-revwalk/0.10.0 \ + crate://crates.io/gix-sec/0.10.4 \ + crate://crates.io/gix-submodule/0.6.0 \ + crate://crates.io/gix-tempfile/11.0.1 \ + crate://crates.io/gix-trace/0.1.7 \ + crate://crates.io/gix-transport/0.39.0 \ + crate://crates.io/gix-traverse/0.35.0 \ + crate://crates.io/gix-url/0.25.2 \ + crate://crates.io/gix-utils/0.1.9 \ + crate://crates.io/gix-validate/0.8.3 \ + crate://crates.io/gix-worktree/0.28.0 \ + crate://crates.io/glob/0.3.1 \ + crate://crates.io/globset/0.4.14 \ + crate://crates.io/group/0.13.0 \ + crate://crates.io/hashbrown/0.12.3 \ + crate://crates.io/hashbrown/0.14.3 \ + crate://crates.io/hashlink/0.8.4 \ + crate://crates.io/heck/0.4.1 \ + crate://crates.io/hermit-abi/0.3.5 \ + crate://crates.io/hex/0.4.3 \ + crate://crates.io/hkdf/0.12.4 \ + crate://crates.io/hmac/0.12.1 \ + crate://crates.io/home/0.5.9 \ + crate://crates.io/http-auth/0.1.9 \ + crate://crates.io/humantime/2.1.0 \ + crate://crates.io/idna/0.5.0 \ + crate://crates.io/ignore/0.4.22 \ + crate://crates.io/im-rc/15.1.0 \ + crate://crates.io/indexmap/1.9.3 \ + crate://crates.io/indexmap/2.2.2 \ + crate://crates.io/is-terminal/0.4.11 \ + crate://crates.io/itertools/0.12.1 \ + crate://crates.io/itoa/1.0.10 \ + crate://crates.io/jobserver/0.1.28 \ + crate://crates.io/js-sys/0.3.68 \ + crate://crates.io/kstring/2.0.0 \ + crate://crates.io/lazy_static/1.4.0 \ + crate://crates.io/lazycell/1.3.0 \ + crate://crates.io/libc/0.2.153 \ + crate://crates.io/libgit2-sys/0.16.2+1.7.2 \ + crate://crates.io/libloading/0.8.1 \ + crate://crates.io/libnghttp2-sys/0.1.9+1.58.0 \ + crate://crates.io/libsqlite3-sys/0.27.0 \ + crate://crates.io/libssh2-sys/0.3.0 \ + crate://crates.io/libz-sys/1.1.15 \ + crate://crates.io/linux-raw-sys/0.4.13 \ + crate://crates.io/lock_api/0.4.11 \ + crate://crates.io/log/0.4.20 \ + crate://crates.io/matchers/0.1.0 \ + crate://crates.io/maybe-async/0.2.9 \ + crate://crates.io/memchr/2.7.1 \ + crate://crates.io/memmap2/0.9.4 \ + crate://crates.io/minimal-lexical/0.2.1 \ + crate://crates.io/miniz_oxide/0.7.2 \ + crate://crates.io/miow/0.6.0 \ + crate://crates.io/nom/7.1.3 \ + crate://crates.io/normpath/1.1.1 \ + crate://crates.io/nu-ansi-term/0.46.0 \ + crate://crates.io/num-conv/0.1.0 \ + crate://crates.io/num-traits/0.2.18 \ + crate://crates.io/num_threads/0.1.6 \ + crate://crates.io/once_cell/1.19.0 \ + crate://crates.io/opener/0.6.1 \ + crate://crates.io/openssl/0.10.63 \ + crate://crates.io/openssl-macros/0.1.1 \ + crate://crates.io/openssl-probe/0.1.5 \ + crate://crates.io/openssl-src/300.2.2+3.2.1 \ + crate://crates.io/openssl-sys/0.9.99 \ + crate://crates.io/ordered-float/2.10.1 \ + crate://crates.io/orion/0.17.6 \ + crate://crates.io/os_info/3.7.0 \ + crate://crates.io/overload/0.1.1 \ + crate://crates.io/p384/0.13.0 \ + crate://crates.io/parking_lot/0.12.1 \ + crate://crates.io/parking_lot_core/0.9.9 \ + crate://crates.io/pasetors/0.6.8 \ + crate://crates.io/pathdiff/0.2.1 \ + crate://crates.io/pem-rfc7468/0.7.0 \ + crate://crates.io/percent-encoding/2.3.1 \ + crate://crates.io/pin-project-lite/0.2.13 \ + crate://crates.io/pkcs8/0.10.2 \ + crate://crates.io/pkg-config/0.3.29 \ + crate://crates.io/powerfmt/0.2.0 \ + crate://crates.io/ppv-lite86/0.2.17 \ + crate://crates.io/primeorder/0.13.6 \ + crate://crates.io/proc-macro2/1.0.78 \ + crate://crates.io/prodash/26.2.2 \ + crate://crates.io/pulldown-cmark/0.9.6 \ + crate://crates.io/quote/1.0.35 \ + crate://crates.io/rand/0.8.5 \ + crate://crates.io/rand_chacha/0.3.1 \ + crate://crates.io/rand_core/0.6.4 \ + crate://crates.io/rand_xoshiro/0.6.0 \ + crate://crates.io/redox_syscall/0.4.1 \ + crate://crates.io/regex/1.10.3 \ + crate://crates.io/regex-automata/0.1.10 \ + crate://crates.io/regex-automata/0.4.5 \ + crate://crates.io/regex-syntax/0.6.29 \ + crate://crates.io/regex-syntax/0.8.2 \ + crate://crates.io/rfc6979/0.4.0 \ + crate://crates.io/rusqlite/0.30.0 \ + crate://crates.io/rustfix/0.7.0 \ + crate://crates.io/rustix/0.38.31 \ + crate://crates.io/ryu/1.0.16 \ + crate://crates.io/same-file/1.0.6 \ + crate://crates.io/schannel/0.1.23 \ + crate://crates.io/scopeguard/1.2.0 \ + crate://crates.io/sec1/0.7.3 \ + crate://crates.io/security-framework/2.9.2 \ + crate://crates.io/security-framework-sys/2.9.1 \ + crate://crates.io/semver/1.0.21 \ + crate://crates.io/serde/1.0.196 \ + crate://crates.io/serde-untagged/0.1.5 \ + crate://crates.io/serde-value/0.7.0 \ + crate://crates.io/serde_derive/1.0.196 \ + crate://crates.io/serde_ignored/0.1.10 \ + crate://crates.io/serde_json/1.0.113 \ + crate://crates.io/serde_spanned/0.6.5 \ + crate://crates.io/sha1/0.10.6 \ + crate://crates.io/sha1_smol/1.0.0 \ + crate://crates.io/sha2/0.10.8 \ + crate://crates.io/sharded-slab/0.1.7 \ + crate://crates.io/shell-escape/0.1.5 \ + crate://crates.io/shell-words/1.1.0 \ + crate://crates.io/signature/2.2.0 \ + crate://crates.io/sized-chunks/0.6.5 \ + crate://crates.io/smallvec/1.13.1 \ + crate://crates.io/socket2/0.5.5 \ + crate://crates.io/spki/0.7.3 \ + crate://crates.io/static_assertions/1.1.0 \ + crate://crates.io/strsim/0.11.0 \ + crate://crates.io/subtle/2.5.0 \ + crate://crates.io/supports-hyperlinks/2.1.0 \ + crate://crates.io/syn/1.0.109 \ + crate://crates.io/syn/2.0.48 \ + crate://crates.io/tar/0.4.40 \ + crate://crates.io/tempfile/3.10.0 \ + crate://crates.io/terminal_size/0.3.0 \ + crate://crates.io/thiserror/1.0.56 \ + crate://crates.io/thiserror-impl/1.0.56 \ + crate://crates.io/thread_local/1.1.7 \ + crate://crates.io/time/0.3.34 \ + crate://crates.io/time-core/0.1.2 \ + crate://crates.io/time-macros/0.2.17 \ + crate://crates.io/tinyvec/1.6.0 \ + crate://crates.io/tinyvec_macros/0.1.1 \ + crate://crates.io/toml/0.5.11 \ + crate://crates.io/toml/0.8.10 \ + crate://crates.io/toml_datetime/0.6.5 \ + crate://crates.io/toml_edit/0.21.1 \ + crate://crates.io/toml_edit/0.22.4 \ + crate://crates.io/tracing/0.1.40 \ + crate://crates.io/tracing-attributes/0.1.27 \ + crate://crates.io/tracing-core/0.1.32 \ + crate://crates.io/tracing-log/0.2.0 \ + crate://crates.io/tracing-subscriber/0.3.18 \ + crate://crates.io/typenum/1.17.0 \ + crate://crates.io/unicase/2.7.0 \ + crate://crates.io/unicode-bidi/0.3.15 \ + crate://crates.io/unicode-bom/2.0.3 \ + crate://crates.io/unicode-ident/1.0.12 \ + crate://crates.io/unicode-normalization/0.1.22 \ + crate://crates.io/unicode-width/0.1.11 \ + crate://crates.io/unicode-xid/0.2.4 \ + crate://crates.io/url/2.5.0 \ + crate://crates.io/utf8parse/0.2.1 \ + crate://crates.io/valuable/0.1.0 \ + crate://crates.io/vcpkg/0.2.15 \ + crate://crates.io/version_check/0.9.4 \ + crate://crates.io/walkdir/2.4.0 \ + crate://crates.io/wasi/0.11.0+wasi-snapshot-preview1 \ + crate://crates.io/wasm-bindgen/0.2.91 \ + crate://crates.io/wasm-bindgen-backend/0.2.91 \ + crate://crates.io/wasm-bindgen-macro/0.2.91 \ + crate://crates.io/wasm-bindgen-macro-support/0.2.91 \ + crate://crates.io/wasm-bindgen-shared/0.2.91 \ + crate://crates.io/winapi/0.3.9 \ + crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \ + crate://crates.io/winapi-util/0.1.6 \ + crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \ + crate://crates.io/windows-sys/0.48.0 \ + crate://crates.io/windows-sys/0.52.0 \ + crate://crates.io/windows-targets/0.48.5 \ + crate://crates.io/windows-targets/0.52.0 \ + crate://crates.io/windows_aarch64_gnullvm/0.48.5 \ + crate://crates.io/windows_aarch64_gnullvm/0.52.0 \ + crate://crates.io/windows_aarch64_msvc/0.48.5 \ + crate://crates.io/windows_aarch64_msvc/0.52.0 \ + crate://crates.io/windows_i686_gnu/0.48.5 \ + crate://crates.io/windows_i686_gnu/0.52.0 \ + crate://crates.io/windows_i686_msvc/0.48.5 \ + crate://crates.io/windows_i686_msvc/0.52.0 \ + crate://crates.io/windows_x86_64_gnu/0.48.5 \ + crate://crates.io/windows_x86_64_gnu/0.52.0 \ + crate://crates.io/windows_x86_64_gnullvm/0.48.5 \ + crate://crates.io/windows_x86_64_gnullvm/0.52.0 \ + crate://crates.io/windows_x86_64_msvc/0.48.5 \ + crate://crates.io/windows_x86_64_msvc/0.52.0 \ + crate://crates.io/winnow/0.5.39 \ + crate://crates.io/zerocopy/0.7.32 \ + crate://crates.io/zerocopy-derive/0.7.32 \ + crate://crates.io/zeroize/1.7.0 \ +" + +SRC_URI[adler-1.0.2.sha256sum] = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" +SRC_URI[ahash-0.8.7.sha256sum] = "77c3a9648d43b9cd48db467b3f87fdd6e146bcc88ab0180006cef2179fe11d01" +SRC_URI[aho-corasick-1.1.2.sha256sum] = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" +SRC_URI[allocator-api2-0.2.16.sha256sum] = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" +SRC_URI[anstream-0.6.11.sha256sum] = "6e2e1ebcb11de5c03c67de28a7df593d32191b44939c482e97702baaaa6ab6a5" +SRC_URI[anstyle-1.0.6.sha256sum] = "8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc" +SRC_URI[anstyle-parse-0.2.3.sha256sum] = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c" +SRC_URI[anstyle-query-1.0.2.sha256sum] = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648" +SRC_URI[anstyle-wincon-3.0.2.sha256sum] = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7" +SRC_URI[anyhow-1.0.79.sha256sum] = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca" +SRC_URI[arc-swap-1.6.0.sha256sum] = "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6" +SRC_URI[autocfg-1.1.0.sha256sum] = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" +SRC_URI[base16ct-0.2.0.sha256sum] = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" +SRC_URI[base64-0.21.7.sha256sum] = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" +SRC_URI[base64ct-1.6.0.sha256sum] = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" +SRC_URI[bitflags-1.3.2.sha256sum] = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" +SRC_URI[bitflags-2.4.2.sha256sum] = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" +SRC_URI[bitmaps-2.1.0.sha256sum] = "031043d04099746d8db04daf1fa424b2bc8bd69d92b25962dcde24da39ab64a2" +SRC_URI[block-buffer-0.10.4.sha256sum] = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +SRC_URI[bstr-1.9.0.sha256sum] = "c48f0051a4b4c5e0b6d365cd04af53aeaa209e3cc15ec2cdb69e73cc87fbd0dc" +SRC_URI[btoi-0.4.3.sha256sum] = "9dd6407f73a9b8b6162d8a2ef999fe6afd7cc15902ebf42c5cd296addf17e0ad" +SRC_URI[bumpalo-3.14.0.sha256sum] = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" +SRC_URI[bytes-1.5.0.sha256sum] = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" +SRC_URI[bytesize-1.3.0.sha256sum] = "a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc" +SRC_URI[cargo-0.77.0.sha256sum] = "4a399e5bde59d144aa2c7ba643765e2f8c6c3c601daa2da03202caf66f2552b3" +SRC_URI[cargo-credential-0.4.2.sha256sum] = "ec27ad011c37339b865c765fa28096cd63d5b25fab680c04d9e410cb586c327d" +SRC_URI[cargo-credential-libsecret-0.4.2.sha256sum] = "26b0ff7a44dd0af0fcd8d09bb1a6d7f7652847cba10aad017a6ea0a25ba7f00f" +SRC_URI[cargo-credential-macos-keychain-0.4.2.sha256sum] = "4b7cf89a47dc2c20ae3a7c94335e151be32c20f85cc2790defdb1f5dac818de5" +SRC_URI[cargo-credential-wincred-0.4.2.sha256sum] = "341df45dc893bdffa36e2f7cbe3da90b38c5c74e7f4c0088ac801fd055b6df5b" +SRC_URI[cargo-platform-0.1.7.sha256sum] = "694c8807f2ae16faecc43dc17d74b3eb042482789fd0eb64b39a2e04e087053f" +SRC_URI[cargo-util-0.2.9.sha256sum] = "74862c3c6e53a1c1f8f0178f9d38ab41e49746cd3a7cafc239b3d0248fd4e342" +SRC_URI[cbindgen-0.26.0.sha256sum] = "da6bc11b07529f16944307272d5bd9b22530bc7d05751717c9d416586cedab49" +SRC_URI[cc-1.0.83.sha256sum] = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +SRC_URI[cfg-if-1.0.0.sha256sum] = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +SRC_URI[clap-4.5.0.sha256sum] = "80c21025abd42669a92efc996ef13cfb2c5c627858421ea58d5c3b331a6c134f" +SRC_URI[clap_builder-4.5.0.sha256sum] = "458bf1f341769dfcf849846f65dffdf9146daa56bcd2a47cb4e1de9915567c99" +SRC_URI[clap_derive-4.5.0.sha256sum] = "307bc0538d5f0f83b8248db3087aa92fe504e4691294d0c96c0eabc33f47ba47" +SRC_URI[clap_lex-0.7.0.sha256sum] = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce" +SRC_URI[clru-0.6.1.sha256sum] = "b8191fa7302e03607ff0e237d4246cc043ff5b3cb9409d995172ba3bea16b807" +SRC_URI[color-print-0.3.5.sha256sum] = "7a858372ff14bab9b1b30ea504f2a4bc534582aee3e42ba2d41d2a7baba63d5d" +SRC_URI[color-print-proc-macro-0.3.5.sha256sum] = "57e37866456a721d0a404439a1adae37a31be4e0055590d053dfe6981e05003f" +SRC_URI[colorchoice-1.0.0.sha256sum] = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" +SRC_URI[const-oid-0.9.6.sha256sum] = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" +SRC_URI[core-foundation-0.9.4.sha256sum] = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +SRC_URI[core-foundation-sys-0.8.6.sha256sum] = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" +SRC_URI[cpufeatures-0.2.12.sha256sum] = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" +SRC_URI[crates-io-0.39.2.sha256sum] = "6622f902c3c338eced1f000091f034846ae36aadaf35d0acd1ab0469a2d8ef1f" +SRC_URI[crc32fast-1.3.2.sha256sum] = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" +SRC_URI[crossbeam-channel-0.5.11.sha256sum] = "176dc175b78f56c0f321911d9c8eb2b77a78a4860b9c19db83835fea1a46649b" +SRC_URI[crossbeam-deque-0.8.5.sha256sum] = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +SRC_URI[crossbeam-epoch-0.9.18.sha256sum] = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +SRC_URI[crossbeam-utils-0.8.19.sha256sum] = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" +SRC_URI[crypto-bigint-0.5.5.sha256sum] = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" +SRC_URI[crypto-common-0.1.6.sha256sum] = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +SRC_URI[ct-codecs-1.1.1.sha256sum] = "f3b7eb4404b8195a9abb6356f4ac07d8ba267045c8d6d220ac4dc992e6cc75df" +SRC_URI[curl-0.4.45.sha256sum] = "f8e5123ab8c31200ce725939049ecd4a090b242608f24048131dedf9dd195aed" +SRC_URI[curl-sys-0.4.72+curl-8.6.0.sha256sum] = "29cbdc8314c447d11e8fd156dcdd031d9e02a7a976163e396b548c03153bc9ea" +SRC_URI[der-0.7.8.sha256sum] = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c" +SRC_URI[deranged-0.3.11.sha256sum] = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +SRC_URI[digest-0.10.7.sha256sum] = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +SRC_URI[dunce-1.0.4.sha256sum] = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b" +SRC_URI[ecdsa-0.16.9.sha256sum] = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" +SRC_URI[ed25519-compact-2.1.1.sha256sum] = "e9b3460f44bea8cd47f45a0c70892f1eff856d97cd55358b2f73f663789f6190" +SRC_URI[either-1.9.0.sha256sum] = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" +SRC_URI[elliptic-curve-0.13.8.sha256sum] = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" +SRC_URI[encoding_rs-0.8.33.sha256sum] = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" +SRC_URI[equivalent-1.0.1.sha256sum] = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +SRC_URI[erased-serde-0.4.2.sha256sum] = "55d05712b2d8d88102bc9868020c9e5c7a1f5527c452b9b97450a1d006140ba7" +SRC_URI[errno-0.3.8.sha256sum] = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" +SRC_URI[fallible-iterator-0.3.0.sha256sum] = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649" +SRC_URI[fallible-streaming-iterator-0.1.9.sha256sum] = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a" +SRC_URI[faster-hex-0.9.0.sha256sum] = "a2a2b11eda1d40935b26cf18f6833c526845ae8c41e58d09af6adeb6f0269183" +SRC_URI[fastrand-2.0.1.sha256sum] = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" +SRC_URI[ff-0.13.0.sha256sum] = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +SRC_URI[fiat-crypto-0.2.6.sha256sum] = "1676f435fc1dadde4d03e43f5d62b259e1ce5f40bd4ffb21db2b42ebe59c1382" +SRC_URI[filetime-0.2.23.sha256sum] = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd" +SRC_URI[flate2-1.0.28.sha256sum] = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" +SRC_URI[foreign-types-0.3.2.sha256sum] = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +SRC_URI[foreign-types-shared-0.1.1.sha256sum] = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" +SRC_URI[form_urlencoded-1.2.1.sha256sum] = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +SRC_URI[generic-array-0.14.7.sha256sum] = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +SRC_URI[getrandom-0.2.12.sha256sum] = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5" +SRC_URI[git2-0.18.2.sha256sum] = "1b3ba52851e73b46a4c3df1d89343741112003f0f6f13beb0dfac9e457c3fdcd" +SRC_URI[git2-curl-0.19.0.sha256sum] = "78e26b61608c573ffd26fc79061a823aa5147449a1afe1f61679a21e2031f7c3" +SRC_URI[gix-0.56.0.sha256sum] = "5b0dcdc9c60d66535897fa40a7ea2a635e72f99456b1d9ae86b7e170e80618cb" +SRC_URI[gix-actor-0.28.1.sha256sum] = "2eadca029ef716b4378f7afb19f7ee101fde9e58ba1f1445971315ac866db417" +SRC_URI[gix-attributes-0.20.1.sha256sum] = "0f395469d38c76ec47cd1a6c5a53fbc3f13f737b96eaf7535f4e6b367e643381" +SRC_URI[gix-bitmap-0.2.10.sha256sum] = "78b6cd0f246180034ddafac9b00a112f19178135b21eb031b3f79355891f7325" +SRC_URI[gix-chunk-0.4.7.sha256sum] = "003ec6deacf68076a0c157271a127e0bb2c031c1a41f7168cbe5d248d9b85c78" +SRC_URI[gix-command-0.3.4.sha256sum] = "c82b5e9494e61983e61049bbd15fe0fa6b70672dd236362bdb5b2b50fc428f10" +SRC_URI[gix-commitgraph-0.22.1.sha256sum] = "85a7007ba021f059803afaf6f8a48872422abc20550ac12ede6ddea2936cec36" +SRC_URI[gix-config-0.32.1.sha256sum] = "0341471d55d8676e98b88e121d7065dfa4c9c5acea4b6d6ecdd2846e85cce0c3" +SRC_URI[gix-config-value-0.14.4.sha256sum] = "5b8a1e7bfb37a46ed0b8468db37a6d8a0a61d56bdbe4603ae492cb322e5f3958" +SRC_URI[gix-credentials-0.22.0.sha256sum] = "513dac42450b27946bd0a0535a3a5a88e473d6522e5e3439a129cab779c88f3d" +SRC_URI[gix-date-0.8.3.sha256sum] = "fb7f3dfb72bebe3449b5e642be64e3c6ccbe9821c8b8f19f487cf5bfbbf4067e" +SRC_URI[gix-diff-0.38.0.sha256sum] = "8119a985887cfe68f4bdf92e51bd64bc758a73882d82fcfc03ebcb164441c85d" +SRC_URI[gix-discover-0.27.0.sha256sum] = "6fad89416ebe0b3b7df78464124e2a02417b6cd3743d48ad93df86f4d2929c07" +SRC_URI[gix-features-0.35.0.sha256sum] = "9b9ff423ae4983f762659040d13dd7a5defbd54b6a04ac3cc7347741cec828cd" +SRC_URI[gix-features-0.36.1.sha256sum] = "4d46a4a5c6bb5bebec9c0d18b65ada20e6517dbd7cf855b87dd4bbdce3a771b2" +SRC_URI[gix-filter-0.7.0.sha256sum] = "6d6a5c9d8e55c364e7c226919c19c9a28be1392d6208b5008059fa94ff7e2bf0" +SRC_URI[gix-fs-0.8.1.sha256sum] = "20e86eb040f5776a5ade092282e51cdcad398adb77d948b88d17583c2ae4e107" +SRC_URI[gix-glob-0.14.1.sha256sum] = "5db19298c5eeea2961e5b3bf190767a2d1f09b8802aeb5f258e42276350aff19" +SRC_URI[gix-hash-0.13.3.sha256sum] = "1f8cf8c2266f63e582b7eb206799b63aa5fa68ee510ad349f637dfe2d0653de0" +SRC_URI[gix-hashtable-0.4.1.sha256sum] = "feb61880816d7ec4f0b20606b498147d480860ddd9133ba542628df2f548d3ca" +SRC_URI[gix-ignore-0.9.1.sha256sum] = "a215cc8cf21645bca131fcf6329d3ebd46299c47dbbe27df71bb1ca9e328b879" +SRC_URI[gix-index-0.27.1.sha256sum] = "f3f308f5cd2992e96a274b0d1931e9a0e44fdcba87695ead3f6df30d8a697e9c" +SRC_URI[gix-lock-11.0.1.sha256sum] = "7e5c65e6a29830a435664891ced3f3c1af010f14900226019590ee0971a22f37" +SRC_URI[gix-macros-0.1.3.sha256sum] = "d75e7ab728059f595f6ddc1ad8771b8d6a231971ae493d9d5948ecad366ee8bb" +SRC_URI[gix-negotiate-0.10.0.sha256sum] = "979f6accd9c051b3dd018b50adf29c0a2459edddf6105cc70b767976cd6f8014" +SRC_URI[gix-object-0.39.0.sha256sum] = "febf79c5825720c1c63fe974c7bbe695d0cb54aabad73f45671c60ce0e501e33" +SRC_URI[gix-odb-0.55.0.sha256sum] = "1fae5f971540c99c6ecc8d4368ecc9d18a9dc8b9391025c68c4399747dc93bac" +SRC_URI[gix-pack-0.45.0.sha256sum] = "4569491c92446fddf373456ff360aff9a9effd627b40a70f2d7914dcd75a3205" +SRC_URI[gix-packetline-0.17.3.sha256sum] = "09ff45eef7747bde4986429a3e813478d50c2688b8f239e57bd3aa81065b285f" +SRC_URI[gix-packetline-blocking-0.17.3.sha256sum] = "ca8ef6dd3ea50e26f3bf572e90c034d033c804d340cd1eb386392f184a9ba2f7" +SRC_URI[gix-path-0.10.5.sha256sum] = "97e9ad649bf5e109562d6acba657ca428661ec08e77eaf3a755d8fa55485be9c" +SRC_URI[gix-pathspec-0.4.1.sha256sum] = "1dbbb92f75a38ef043c8bb830b339b38d0698d7f3746968b5fcbade7a880494d" +SRC_URI[gix-prompt-0.8.2.sha256sum] = "02bd89d058258e53e0fd6c57f13ee16c5673a83066a68e11f88626fc8cfda5f6" +SRC_URI[gix-protocol-0.42.0.sha256sum] = "95736ef407db0bd15a5bdea791fbfcf523b9f13b96c852c240cd86a9ee0ef817" +SRC_URI[gix-quote-0.4.10.sha256sum] = "9f7dc10303d73a960d10fb82f81188b036ac3e6b11b5795b20b1a60b51d1321f" +SRC_URI[gix-ref-0.39.1.sha256sum] = "3b2069adc212cf7f3317ef55f6444abd06c50f28479dbbac5a86acf3b05cbbfe" +SRC_URI[gix-refspec-0.20.0.sha256sum] = "76d9d3b82e1ee78fc0dc1c37ea5ea76c2dbc73f407db155f0dfcea285e583bee" +SRC_URI[gix-revision-0.24.0.sha256sum] = "fe5dd51710ce5434bc315ea30394fab483c5377276494edd79222b321a5a9544" +SRC_URI[gix-revwalk-0.10.0.sha256sum] = "69d4ed2493ca94a475fdf147138e1ef8bab3b6ebb56abf3d9bda1c05372ec1dd" +SRC_URI[gix-sec-0.10.4.sha256sum] = "f8d9bf462feaf05f2121cba7399dbc6c34d88a9cad58fc1e95027791d6a3c6d2" +SRC_URI[gix-submodule-0.6.0.sha256sum] = "02a3d7f60a95bdcaeb8981663c99d1c9f4de42aab1169524c949e948989809f9" +SRC_URI[gix-tempfile-11.0.1.sha256sum] = "388dd29114a86ec69b28d1e26d6d63a662300ecf61ab3f4cc578f7d7dc9e7e23" +SRC_URI[gix-trace-0.1.7.sha256sum] = "02b202d766a7fefc596e2cc6a89cda8ad8ad733aed82da635ac120691112a9b1" +SRC_URI[gix-transport-0.39.0.sha256sum] = "f731cfefc4d62468c6dd2053f5c6707828256a6d2f5488c1811e3f42c178b144" +SRC_URI[gix-traverse-0.35.0.sha256sum] = "df2112088122a0206592c84fbd42020db63b2ccaed66a0293779f2e5fbf80474" +SRC_URI[gix-url-0.25.2.sha256sum] = "0c427a1a11ccfa53a4a2da47d9442c2241deee63a154bc15cc14b8312fbc4005" +SRC_URI[gix-utils-0.1.9.sha256sum] = "56e839f3d0798b296411263da6bee780a176ef8008a5dfc31287f7eda9266ab8" +SRC_URI[gix-validate-0.8.3.sha256sum] = "ac7cc36f496bd5d96cdca0f9289bb684480725d40db60f48194aa7723b883854" +SRC_URI[gix-worktree-0.28.0.sha256sum] = "7f1d0ae01dee14abe8c8117d78d7518f9a507de2dc4522546fbf4c444e9860b4" +SRC_URI[glob-0.3.1.sha256sum] = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" +SRC_URI[globset-0.4.14.sha256sum] = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1" +SRC_URI[group-0.13.0.sha256sum] = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +SRC_URI[hashbrown-0.12.3.sha256sum] = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +SRC_URI[hashbrown-0.14.3.sha256sum] = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" +SRC_URI[hashlink-0.8.4.sha256sum] = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" +SRC_URI[heck-0.4.1.sha256sum] = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" +SRC_URI[hermit-abi-0.3.5.sha256sum] = "d0c62115964e08cb8039170eb33c1d0e2388a256930279edca206fff675f82c3" +SRC_URI[hex-0.4.3.sha256sum] = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +SRC_URI[hkdf-0.12.4.sha256sum] = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" +SRC_URI[hmac-0.12.1.sha256sum] = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" +SRC_URI[home-0.5.9.sha256sum] = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" +SRC_URI[http-auth-0.1.9.sha256sum] = "643c9bbf6a4ea8a656d6b4cd53d34f79e3f841ad5203c1a55fb7d761923bc255" +SRC_URI[humantime-2.1.0.sha256sum] = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" +SRC_URI[idna-0.5.0.sha256sum] = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +SRC_URI[ignore-0.4.22.sha256sum] = "b46810df39e66e925525d6e38ce1e7f6e1d208f72dc39757880fcb66e2c58af1" +SRC_URI[im-rc-15.1.0.sha256sum] = "af1955a75fa080c677d3972822ec4bad316169ab1cfc6c257a942c2265dbe5fe" +SRC_URI[indexmap-1.9.3.sha256sum] = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +SRC_URI[indexmap-2.2.2.sha256sum] = "824b2ae422412366ba479e8111fd301f7b5faece8149317bb81925979a53f520" +SRC_URI[is-terminal-0.4.11.sha256sum] = "fe8f25ce1159c7740ff0b9b2f5cdf4a8428742ba7c112b9f20f22cd5219c7dab" +SRC_URI[itertools-0.12.1.sha256sum] = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +SRC_URI[itoa-1.0.10.sha256sum] = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" +SRC_URI[jobserver-0.1.28.sha256sum] = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6" +SRC_URI[js-sys-0.3.68.sha256sum] = "406cda4b368d531c842222cf9d2600a9a4acce8d29423695379c6868a143a9ee" +SRC_URI[kstring-2.0.0.sha256sum] = "ec3066350882a1cd6d950d055997f379ac37fd39f81cd4d8ed186032eb3c5747" +SRC_URI[lazy_static-1.4.0.sha256sum] = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +SRC_URI[lazycell-1.3.0.sha256sum] = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" +SRC_URI[libc-0.2.153.sha256sum] = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" +SRC_URI[libgit2-sys-0.16.2+1.7.2.sha256sum] = "ee4126d8b4ee5c9d9ea891dd875cfdc1e9d0950437179104b183d7d8a74d24e8" +SRC_URI[libloading-0.8.1.sha256sum] = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161" +SRC_URI[libnghttp2-sys-0.1.9+1.58.0.sha256sum] = "b57e858af2798e167e709b9d969325b6d8e9d50232fcbc494d7d54f976854a64" +SRC_URI[libsqlite3-sys-0.27.0.sha256sum] = "cf4e226dcd58b4be396f7bd3c20da8fdee2911400705297ba7d2d7cc2c30f716" +SRC_URI[libssh2-sys-0.3.0.sha256sum] = "2dc8a030b787e2119a731f1951d6a773e2280c660f8ec4b0f5e1505a386e71ee" +SRC_URI[libz-sys-1.1.15.sha256sum] = "037731f5d3aaa87a5675e895b63ddff1a87624bc29f77004ea829809654e48f6" +SRC_URI[linux-raw-sys-0.4.13.sha256sum] = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" +SRC_URI[lock_api-0.4.11.sha256sum] = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" +SRC_URI[log-0.4.20.sha256sum] = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" +SRC_URI[matchers-0.1.0.sha256sum] = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +SRC_URI[maybe-async-0.2.9.sha256sum] = "afc95a651c82daf7004c824405aa1019723644950d488571bd718e3ed84646ed" +SRC_URI[memchr-2.7.1.sha256sum] = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" +SRC_URI[memmap2-0.9.4.sha256sum] = "fe751422e4a8caa417e13c3ea66452215d7d63e19e604f4980461212f3ae1322" +SRC_URI[minimal-lexical-0.2.1.sha256sum] = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" +SRC_URI[miniz_oxide-0.7.2.sha256sum] = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" +SRC_URI[miow-0.6.0.sha256sum] = "359f76430b20a79f9e20e115b3428614e654f04fab314482fc0fda0ebd3c6044" +SRC_URI[nom-7.1.3.sha256sum] = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +SRC_URI[normpath-1.1.1.sha256sum] = "ec60c60a693226186f5d6edf073232bfb6464ed97eb22cf3b01c1e8198fd97f5" +SRC_URI[nu-ansi-term-0.46.0.sha256sum] = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +SRC_URI[num-conv-0.1.0.sha256sum] = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" +SRC_URI[num-traits-0.2.18.sha256sum] = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a" +SRC_URI[num_threads-0.1.6.sha256sum] = "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44" +SRC_URI[once_cell-1.19.0.sha256sum] = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +SRC_URI[opener-0.6.1.sha256sum] = "6c62dcb6174f9cb326eac248f07e955d5d559c272730b6c03e396b443b562788" +SRC_URI[openssl-0.10.63.sha256sum] = "15c9d69dd87a29568d4d017cfe8ec518706046a05184e5aea92d0af890b803c8" +SRC_URI[openssl-macros-0.1.1.sha256sum] = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" +SRC_URI[openssl-probe-0.1.5.sha256sum] = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" +SRC_URI[openssl-src-300.2.2+3.2.1.sha256sum] = "8bbfad0063610ac26ee79f7484739e2b07555a75c42453b89263830b5c8103bc" +SRC_URI[openssl-sys-0.9.99.sha256sum] = "22e1bf214306098e4832460f797824c05d25aacdf896f64a985fb0fd992454ae" +SRC_URI[ordered-float-2.10.1.sha256sum] = "68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c" +SRC_URI[orion-0.17.6.sha256sum] = "7abdb10181903c8c4b016ba45d6d6d5af1a1e2a461aa4763a83b87f5df4695e5" +SRC_URI[os_info-3.7.0.sha256sum] = "006e42d5b888366f1880eda20371fedde764ed2213dc8496f49622fa0c99cd5e" +SRC_URI[overload-0.1.1.sha256sum] = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" +SRC_URI[p384-0.13.0.sha256sum] = "70786f51bcc69f6a4c0360e063a4cac5419ef7c5cd5b3c99ad70f3be5ba79209" +SRC_URI[parking_lot-0.12.1.sha256sum] = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +SRC_URI[parking_lot_core-0.9.9.sha256sum] = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" +SRC_URI[pasetors-0.6.8.sha256sum] = "6b36d47c66f2230dd1b7143d9afb2b4891879020210eddf2ccb624e529b96dba" +SRC_URI[pathdiff-0.2.1.sha256sum] = "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd" +SRC_URI[pem-rfc7468-0.7.0.sha256sum] = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" +SRC_URI[percent-encoding-2.3.1.sha256sum] = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" +SRC_URI[pin-project-lite-0.2.13.sha256sum] = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" +SRC_URI[pkcs8-0.10.2.sha256sum] = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +SRC_URI[pkg-config-0.3.29.sha256sum] = "2900ede94e305130c13ddd391e0ab7cbaeb783945ae07a279c268cb05109c6cb" +SRC_URI[powerfmt-0.2.0.sha256sum] = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" +SRC_URI[ppv-lite86-0.2.17.sha256sum] = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" +SRC_URI[primeorder-0.13.6.sha256sum] = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" +SRC_URI[proc-macro2-1.0.78.sha256sum] = "e2422ad645d89c99f8f3e6b88a9fdeca7fabeac836b1002371c4367c8f984aae" +SRC_URI[prodash-26.2.2.sha256sum] = "794b5bf8e2d19b53dcdcec3e4bba628e20f5b6062503ba89281fa7037dd7bbcf" +SRC_URI[pulldown-cmark-0.9.6.sha256sum] = "57206b407293d2bcd3af849ce869d52068623f19e1b5ff8e8778e3309439682b" +SRC_URI[quote-1.0.35.sha256sum] = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" +SRC_URI[rand-0.8.5.sha256sum] = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +SRC_URI[rand_chacha-0.3.1.sha256sum] = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +SRC_URI[rand_core-0.6.4.sha256sum] = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +SRC_URI[rand_xoshiro-0.6.0.sha256sum] = "6f97cdb2a36ed4183de61b2f824cc45c9f1037f28afe0a322e9fff4c108b5aaa" +SRC_URI[redox_syscall-0.4.1.sha256sum] = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +SRC_URI[regex-1.10.3.sha256sum] = "b62dbe01f0b06f9d8dc7d49e05a0785f153b00b2c227856282f671e0318c9b15" +SRC_URI[regex-automata-0.1.10.sha256sum] = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +SRC_URI[regex-automata-0.4.5.sha256sum] = "5bb987efffd3c6d0d8f5f89510bb458559eab11e4f869acb20bf845e016259cd" +SRC_URI[regex-syntax-0.6.29.sha256sum] = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" +SRC_URI[regex-syntax-0.8.2.sha256sum] = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" +SRC_URI[rfc6979-0.4.0.sha256sum] = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" +SRC_URI[rusqlite-0.30.0.sha256sum] = "a78046161564f5e7cd9008aff3b2990b3850dc8e0349119b98e8f251e099f24d" +SRC_URI[rustfix-0.7.0.sha256sum] = "7ec10cbeb92a2e494ef354d66126882da8c0a244ad769e2a7193efc5de625175" +SRC_URI[rustix-0.38.31.sha256sum] = "6ea3e1a662af26cd7a3ba09c0297a31af215563ecf42817c98df621387f4e949" +SRC_URI[ryu-1.0.16.sha256sum] = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" +SRC_URI[same-file-1.0.6.sha256sum] = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +SRC_URI[schannel-0.1.23.sha256sum] = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" +SRC_URI[scopeguard-1.2.0.sha256sum] = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" +SRC_URI[sec1-0.7.3.sha256sum] = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" +SRC_URI[security-framework-2.9.2.sha256sum] = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" +SRC_URI[security-framework-sys-2.9.1.sha256sum] = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" +SRC_URI[semver-1.0.21.sha256sum] = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0" +SRC_URI[serde-1.0.196.sha256sum] = "870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32" +SRC_URI[serde-untagged-0.1.5.sha256sum] = "6a160535368dfc353348e7eaa299156bd508c60c45a9249725f5f6d370d82a66" +SRC_URI[serde-value-0.7.0.sha256sum] = "f3a1a3341211875ef120e117ea7fd5228530ae7e7036a779fdc9117be6b3282c" +SRC_URI[serde_derive-1.0.196.sha256sum] = "33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67" +SRC_URI[serde_ignored-0.1.10.sha256sum] = "a8e319a36d1b52126a0d608f24e93b2d81297091818cd70625fcf50a15d84ddf" +SRC_URI[serde_json-1.0.113.sha256sum] = "69801b70b1c3dac963ecb03a364ba0ceda9cf60c71cfe475e99864759c8b8a79" +SRC_URI[serde_spanned-0.6.5.sha256sum] = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1" +SRC_URI[sha1-0.10.6.sha256sum] = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +SRC_URI[sha1_smol-1.0.0.sha256sum] = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012" +SRC_URI[sha2-0.10.8.sha256sum] = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +SRC_URI[sharded-slab-0.1.7.sha256sum] = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +SRC_URI[shell-escape-0.1.5.sha256sum] = "45bb67a18fa91266cc7807181f62f9178a6873bfad7dc788c42e6430db40184f" +SRC_URI[shell-words-1.1.0.sha256sum] = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde" +SRC_URI[signature-2.2.0.sha256sum] = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +SRC_URI[sized-chunks-0.6.5.sha256sum] = "16d69225bde7a69b235da73377861095455d298f2b970996eec25ddbb42b3d1e" +SRC_URI[smallvec-1.13.1.sha256sum] = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7" +SRC_URI[socket2-0.5.5.sha256sum] = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" +SRC_URI[spki-0.7.3.sha256sum] = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" +SRC_URI[static_assertions-1.1.0.sha256sum] = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" +SRC_URI[strsim-0.11.0.sha256sum] = "5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01" +SRC_URI[subtle-2.5.0.sha256sum] = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" +SRC_URI[supports-hyperlinks-2.1.0.sha256sum] = "f84231692eb0d4d41e4cdd0cabfdd2e6cd9e255e65f80c9aa7c98dd502b4233d" +SRC_URI[syn-1.0.109.sha256sum] = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +SRC_URI[syn-2.0.48.sha256sum] = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" +SRC_URI[tar-0.4.40.sha256sum] = "b16afcea1f22891c49a00c751c7b63b2233284064f11a200fc624137c51e2ddb" +SRC_URI[tempfile-3.10.0.sha256sum] = "a365e8cd18e44762ef95d87f284f4b5cd04107fec2ff3052bd6a3e6069669e67" +SRC_URI[terminal_size-0.3.0.sha256sum] = "21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7" +SRC_URI[thiserror-1.0.56.sha256sum] = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad" +SRC_URI[thiserror-impl-1.0.56.sha256sum] = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471" +SRC_URI[thread_local-1.1.7.sha256sum] = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" +SRC_URI[time-0.3.34.sha256sum] = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749" +SRC_URI[time-core-0.1.2.sha256sum] = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" +SRC_URI[time-macros-0.2.17.sha256sum] = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774" +SRC_URI[tinyvec-1.6.0.sha256sum] = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +SRC_URI[tinyvec_macros-0.1.1.sha256sum] = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" +SRC_URI[toml-0.5.11.sha256sum] = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" +SRC_URI[toml-0.8.10.sha256sum] = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290" +SRC_URI[toml_datetime-0.6.5.sha256sum] = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" +SRC_URI[toml_edit-0.21.1.sha256sum] = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" +SRC_URI[toml_edit-0.22.4.sha256sum] = "0c9ffdf896f8daaabf9b66ba8e77ea1ed5ed0f72821b398aba62352e95062951" +SRC_URI[tracing-0.1.40.sha256sum] = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +SRC_URI[tracing-attributes-0.1.27.sha256sum] = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +SRC_URI[tracing-core-0.1.32.sha256sum] = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +SRC_URI[tracing-log-0.2.0.sha256sum] = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" +SRC_URI[tracing-subscriber-0.3.18.sha256sum] = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +SRC_URI[typenum-1.17.0.sha256sum] = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +SRC_URI[unicase-2.7.0.sha256sum] = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89" +SRC_URI[unicode-bidi-0.3.15.sha256sum] = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" +SRC_URI[unicode-bom-2.0.3.sha256sum] = "7eec5d1121208364f6793f7d2e222bf75a915c19557537745b195b253dd64217" +SRC_URI[unicode-ident-1.0.12.sha256sum] = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +SRC_URI[unicode-normalization-0.1.22.sha256sum] = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" +SRC_URI[unicode-width-0.1.11.sha256sum] = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" +SRC_URI[unicode-xid-0.2.4.sha256sum] = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" +SRC_URI[url-2.5.0.sha256sum] = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" +SRC_URI[utf8parse-0.2.1.sha256sum] = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" +SRC_URI[valuable-0.1.0.sha256sum] = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" +SRC_URI[vcpkg-0.2.15.sha256sum] = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" +SRC_URI[version_check-0.9.4.sha256sum] = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" +SRC_URI[walkdir-2.4.0.sha256sum] = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" +SRC_URI[wasi-0.11.0+wasi-snapshot-preview1.sha256sum] = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +SRC_URI[wasm-bindgen-0.2.91.sha256sum] = "c1e124130aee3fb58c5bdd6b639a0509486b0338acaaae0c84a5124b0f588b7f" +SRC_URI[wasm-bindgen-backend-0.2.91.sha256sum] = "c9e7e1900c352b609c8488ad12639a311045f40a35491fb69ba8c12f758af70b" +SRC_URI[wasm-bindgen-macro-0.2.91.sha256sum] = "b30af9e2d358182b5c7449424f017eba305ed32a7010509ede96cdc4696c46ed" +SRC_URI[wasm-bindgen-macro-support-0.2.91.sha256sum] = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66" +SRC_URI[wasm-bindgen-shared-0.2.91.sha256sum] = "4f186bd2dcf04330886ce82d6f33dd75a7bfcf69ecf5763b89fcde53b6ac9838" +SRC_URI[winapi-0.3.9.sha256sum] = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +SRC_URI[winapi-i686-pc-windows-gnu-0.4.0.sha256sum] = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" +SRC_URI[winapi-util-0.1.6.sha256sum] = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" +SRC_URI[winapi-x86_64-pc-windows-gnu-0.4.0.sha256sum] = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +SRC_URI[windows-sys-0.48.0.sha256sum] = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +SRC_URI[windows-sys-0.52.0.sha256sum] = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +SRC_URI[windows-targets-0.48.5.sha256sum] = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +SRC_URI[windows-targets-0.52.0.sha256sum] = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" +SRC_URI[windows_aarch64_gnullvm-0.48.5.sha256sum] = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" +SRC_URI[windows_aarch64_gnullvm-0.52.0.sha256sum] = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" +SRC_URI[windows_aarch64_msvc-0.48.5.sha256sum] = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" +SRC_URI[windows_aarch64_msvc-0.52.0.sha256sum] = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" +SRC_URI[windows_i686_gnu-0.48.5.sha256sum] = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" +SRC_URI[windows_i686_gnu-0.52.0.sha256sum] = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" +SRC_URI[windows_i686_msvc-0.48.5.sha256sum] = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" +SRC_URI[windows_i686_msvc-0.52.0.sha256sum] = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" +SRC_URI[windows_x86_64_gnu-0.48.5.sha256sum] = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" +SRC_URI[windows_x86_64_gnu-0.52.0.sha256sum] = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" +SRC_URI[windows_x86_64_gnullvm-0.48.5.sha256sum] = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" +SRC_URI[windows_x86_64_gnullvm-0.52.0.sha256sum] = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" +SRC_URI[windows_x86_64_msvc-0.48.5.sha256sum] = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" +SRC_URI[windows_x86_64_msvc-0.52.0.sha256sum] = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" +SRC_URI[winnow-0.5.39.sha256sum] = "5389a154b01683d28c77f8f68f49dea75f0a4da32557a58f68ee51ebba472d29" +SRC_URI[zerocopy-0.7.32.sha256sum] = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be" +SRC_URI[zerocopy-derive-0.7.32.sha256sum] = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" +SRC_URI[zeroize-1.7.0.sha256sum] = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" diff --git a/meta-balena-rust/recipes-devtools/rust/cargo-c-native_0.9.30+cargo-0.77.0.bb b/meta-balena-rust/recipes-devtools/rust/cargo-c-native_0.9.30+cargo-0.77.0.bb new file mode 100644 index 0000000000..8e17606b73 --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/cargo-c-native_0.9.30+cargo-0.77.0.bb @@ -0,0 +1,17 @@ +SUMMARY = "cargo applet to build and install C-ABI compatible dynamic and static libraries." +HOMEPAGE = "https://crates.io/crates/cargo-c" +LICENSE = "MIT" +LIC_FILES_CHKSUM = " \ + file://LICENSE;md5=384ed0e2e0b2dac094e51fbf93fdcbe0 \ +" + +SRC_URI = "crate://crates.io/cargo-c/${PV};name=cargo-c" +SRC_URI[cargo-c.sha256sum] = "ec77e3635cdb0d211f88f22d0460eef0ba031eb616ded57f2ffb98a90365c445" +S = "${CARGO_VENDORING_DIRECTORY}/cargo-c-${PV}" + +inherit cargo cargo-update-recipe-crates pkgconfig native + +DEPENDS = "openssl curl" + +require ${BPN}-crates.inc + diff --git a/meta-balena-rust/recipes-devtools/cargo/cargo.inc b/meta-balena-rust/recipes-devtools/rust/cargo_1.75.0.bb similarity index 70% rename from meta-balena-rust/recipes-devtools/cargo/cargo.inc rename to meta-balena-rust/recipes-devtools/rust/cargo_1.75.0.bb index 607c51fc3d..50b7e7c7b4 100644 --- a/meta-balena-rust/recipes-devtools/cargo/cargo.inc +++ b/meta-balena-rust/recipes-devtools/rust/cargo_1.75.0.bb @@ -1,4 +1,4 @@ -SUMMARY ?= "Cargo, a package manager for Rust." +SUMMARY = "Cargo, a package manager for Rust." HOMEPAGE = "https://crates.io" LICENSE = "MIT | Apache-2.0" SECTION = "devel" @@ -11,13 +11,16 @@ LIC_FILES_CHKSUM = " \ file://LICENSE-THIRD-PARTY;md5=f257ad009884cb88a3a87d6920e7180a \ " +require rust-source.inc +require rust-snapshot.inc S = "${RUSTSRC}/src/tools/cargo" CARGO_VENDORING_DIRECTORY = "${RUSTSRC}/vendor" -EXCLUDE_FROM_WORLD = "1" inherit cargo pkgconfig +DEBUG_PREFIX_MAP += "-fdebug-prefix-map=${RUSTSRC}/vendor=${TARGET_DBGSRC_DIR}" + do_cargo_setup_snapshot () { ${WORKDIR}/rust-snapshot-components/${CARGO_SNAPSHOT}/install.sh --prefix="${WORKDIR}/${CARGO_SNAPSHOT}" --disable-ldconfig # Need to use uninative's loader if enabled/present since the library paths @@ -41,6 +44,14 @@ do_install () { install -m 755 "${B}/target/${CARGO_TARGET_SUBDIR}/cargo" "${D}${bindir}" } +do_install:append:class-nativesdk() { + # To quote the cargo docs, "Cargo also sets the dynamic library path when compiling + # and running binaries with commands like `cargo run` and `cargo test`". Sadly it + # sets to libdir but not base_libdir leading to symbol mismatches depending on the + # host OS. Fully set LD_LIBRARY_PATH to contain both to avoid this. + create_wrapper ${D}/${bindir}/cargo LD_LIBRARY_PATH=${libdir}:${base_libdir} +} + # Disabled due to incompatibility with libgit2 0.28.x (https://github.com/rust-lang/git2-rs/issues/458, https://bugs.gentoo.org/707746#c1) # as shipped by Yocto Dunfell. # According to https://github.com/rust-lang/git2-rs/issues/458#issuecomment-522567539, there are no compatibility guarantees between @@ -54,3 +65,9 @@ export LIBSSH2_SYS_USE_PKG_CONFIG = "1" # so we must use the locally set up snapshot to bootstrap the build. BASEDEPENDS:remove:class-native = "cargo-native" CARGO:class-native = "${WORKDIR}/${CARGO_SNAPSHOT}/bin/cargo" + +DEPENDS:append:class-nativesdk = " nativesdk-rust" +RUSTLIB:append:class-nativesdk = " -L ${STAGING_DIR_HOST}/${SDKPATHNATIVE}/usr/lib/rustlib/${RUST_HOST_SYS}/lib" +RUSTLIB_DEP:class-nativesdk = "" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta-balena-rust/recipes-devtools/rust/files/0001-Handle-vendored-sources-when-remapping-paths.patch b/meta-balena-rust/recipes-devtools/rust/files/0001-Handle-vendored-sources-when-remapping-paths.patch new file mode 100644 index 0000000000..a46ee14402 --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/files/0001-Handle-vendored-sources-when-remapping-paths.patch @@ -0,0 +1,46 @@ +From 5e37ea7cb9d99d91f2c5ac6edf19ff777f95bb88 Mon Sep 17 00:00:00 2001 +From: Arlo Siemsen +Date: Thu, 4 Jan 2024 11:40:56 -0600 +Subject: [PATCH] Handle vendored sources when remapping paths + +Upstream-Status: Submitted [https://github.com/rust-lang/rust/pull/119582] +Signed-off-by: Alex Kiernan +--- + src/bootstrap/src/core/builder.rs | 19 ++++++++++++------- + 1 file changed, 12 insertions(+), 7 deletions(-) + +diff --git a/src/bootstrap/src/core/builder.rs b/src/bootstrap/src/core/builder.rs +index cd276674dee6..48fdb2c7f7b7 100644 +--- a/src/bootstrap/src/core/builder.rs ++++ b/src/bootstrap/src/core/builder.rs +@@ -1789,15 +1789,20 @@ pub fn cargo( + } + + if self.config.rust_remap_debuginfo { +- // FIXME: handle vendored sources +- let registry_src = t!(home::cargo_home()).join("registry").join("src"); + let mut env_var = OsString::new(); +- for entry in t!(std::fs::read_dir(registry_src)) { +- if !env_var.is_empty() { +- env_var.push("\t"); +- } +- env_var.push(t!(entry).path()); ++ if self.config.vendor { ++ let vendor = self.build.src.join("vendor"); ++ env_var.push(vendor); + env_var.push("=/rust/deps"); ++ } else { ++ let registry_src = t!(home::cargo_home()).join("registry").join("src"); ++ for entry in t!(std::fs::read_dir(registry_src)) { ++ if !env_var.is_empty() { ++ env_var.push("\t"); ++ } ++ env_var.push(t!(entry).path()); ++ env_var.push("=/rust/deps"); ++ } + } + cargo.env("RUSTC_CARGO_REGISTRY_SRC_TO_REMAP", env_var); + } +-- +2.39.0 + diff --git a/meta-balena-rust/recipes-devtools/rust/files/0001-Revert-Map-source-absolute-paths-to-OUT_DIR-as-relat.patch b/meta-balena-rust/recipes-devtools/rust/files/0001-Revert-Map-source-absolute-paths-to-OUT_DIR-as-relat.patch new file mode 100644 index 0000000000..f75a75fa4e --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/files/0001-Revert-Map-source-absolute-paths-to-OUT_DIR-as-relat.patch @@ -0,0 +1,67 @@ +From 8bf0c566387e6a48d854d5f69c43c8bfa45092f9 Mon Sep 17 00:00:00 2001 +From: Alex Kiernan +Date: Sun, 24 Dec 2023 09:40:01 +0000 +Subject: [PATCH] Revert "Map source absolute paths to OUT_DIR as relative. + (#684)" + +This reverts commit c4f414f449bb7cffba3bc923f277704d1d08a8ec. + +Upstream-Status: Inappropriate [patches need rework] +Signed-off-by: Alex Kiernan +--- + src/lib.rs | 22 ++-------------------- + 1 file changed, 2 insertions(+), 20 deletions(-) + +Index: rustc-1.72.0-src/vendor/cc/src/lib.rs +=================================================================== +--- rustc-1.72.0-src.orig/vendor/cc/src/lib.rs ++++ rustc-1.72.0-src/vendor/cc/src/lib.rs +@@ -56,12 +56,11 @@ + #![allow(deprecated)] + #![deny(missing_docs)] + +-use std::collections::{hash_map, HashMap}; ++use std::collections::HashMap; + use std::env; + use std::ffi::{OsStr, OsString}; + use std::fmt::{self, Display, Formatter}; + use std::fs; +-use std::hash::Hasher; + use std::io::{self, BufRead, BufReader, Read, Write}; + use std::path::{Component, Path, PathBuf}; + use std::process::{Child, Command, Stdio}; +@@ -1037,24 +1036,7 @@ impl Build { + + let mut objects = Vec::new(); + for file in self.files.iter() { +- let obj = if file.has_root() { +- // If `file` is an absolute path, prefix the `basename` +- // with the `dirname`'s hash to ensure name uniqueness. +- let basename = file +- .file_name() +- .ok_or_else(|| Error::new(ErrorKind::InvalidArgument, "file_name() failure"))? +- .to_string_lossy(); +- let dirname = file +- .parent() +- .ok_or_else(|| Error::new(ErrorKind::InvalidArgument, "parent() failure"))? +- .to_string_lossy(); +- let mut hasher = hash_map::DefaultHasher::new(); +- hasher.write(dirname.to_string().as_bytes()); +- dst.join(format!("{:016x}-{}", hasher.finish(), basename)) +- .with_extension("o") +- } else { +- dst.join(file).with_extension("o") +- }; ++ let obj = dst.join(file).with_extension("o"); + let obj = if !obj.starts_with(&dst) { + dst.join(obj.file_name().ok_or_else(|| { + Error::new(ErrorKind::IOError, "Getting object file details failed.") +Index: rustc-1.72.0-src/vendor/cc/.cargo-checksum.json +=================================================================== +--- rustc-1.72.0-src.orig/vendor/cc/.cargo-checksum.json ++++ rustc-1.72.0-src/vendor/cc/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"Cargo.lock":"dddb9c49058d411a098e98dc1c06e3bc89f859a2080d96c11b11aec67394bb8c","Cargo.toml":"1953a8bc4b98e351fe75917c151b1e08a46531d562aebba25a90add4aadecac2","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"58af5106352aafa62175a90f8a5f25fa114028bf909220dc0735d79745999ec1","src/bin/gcc-shim.rs":"36dc4e447428e73c548cc7106ca1e8f282c098463b014e13a729a44445de4880","src/com.rs":"29d0dee08a656ab1a4cc3e5fe24542e0fab5c1373cbc9b05059f7572cf9b8313","src/lib.rs":"17a4659710aa290c4ed9c23063c7b202c5bcf2a84de33aa1f01fc6fded69a1f8","src/registry.rs":"98ae2b71781acc49297e5544fa0cf059f735636f8f1338edef8dbf7232443945","src/setup_config.rs":"72deaf1927c0b713fd5c2b2d5b8f0ea3a303a00fda1579427895cac26a94122d","src/vs_instances.rs":"2d3f8278a803b0e7052f4eeb1979b29f963dd0143f4458e2cb5f33c4e5f0963b","src/winapi.rs":"e128e95b2d39ae7a02f54a7e25d33c488c14759b9f1a50a449e10545856950c3","src/windows_registry.rs":"1f973f804b4b451e48ff6d98ce660355772f164dfdf79a6ae514645c7c764005","tests/cc_env.rs":"e02b3b0824ad039b47e4462c5ef6dbe6c824c28e7953af94a0f28f7b5158042e","tests/cflags.rs":"57f06eb5ce1557e5b4a032d0c4673e18fbe6f8d26c1deb153126e368b96b41b3","tests/cxxflags.rs":"c2c6c6d8a0d7146616fa1caed26876ee7bc9fcfffd525eb4743593cade5f3371","tests/support/mod.rs":"a3c8d116973bb16066bf6ec4de5143183f97de7aad085d85f8118a2eaac3e1e0","tests/test.rs":"61fb35ae6dd5cf506ada000bdd82c92e9f8eac9cc053b63e83d3f897436fbf8f"},"package":"50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"} +\ No newline at end of file ++{"files":{"Cargo.lock":"dddb9c49058d411a098e98dc1c06e3bc89f859a2080d96c11b11aec67394bb8c","Cargo.toml":"1953a8bc4b98e351fe75917c151b1e08a46531d562aebba25a90add4aadecac2","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"58af5106352aafa62175a90f8a5f25fa114028bf909220dc0735d79745999ec1","src/bin/gcc-shim.rs":"36dc4e447428e73c548cc7106ca1e8f282c098463b014e13a729a44445de4880","src/com.rs":"29d0dee08a656ab1a4cc3e5fe24542e0fab5c1373cbc9b05059f7572cf9b8313","src/lib.rs":"dfb36b17362e9a5b266cb19a229d982e8c0bba784b1e99769f690692b0cd5c4e","src/registry.rs":"98ae2b71781acc49297e5544fa0cf059f735636f8f1338edef8dbf7232443945","src/setup_config.rs":"72deaf1927c0b713fd5c2b2d5b8f0ea3a303a00fda1579427895cac26a94122d","src/vs_instances.rs":"2d3f8278a803b0e7052f4eeb1979b29f963dd0143f4458e2cb5f33c4e5f0963b","src/winapi.rs":"e128e95b2d39ae7a02f54a7e25d33c488c14759b9f1a50a449e10545856950c3","src/windows_registry.rs":"1f973f804b4b451e48ff6d98ce660355772f164dfdf79a6ae514645c7c764005","tests/cc_env.rs":"e02b3b0824ad039b47e4462c5ef6dbe6c824c28e7953af94a0f28f7b5158042e","tests/cflags.rs":"57f06eb5ce1557e5b4a032d0c4673e18fbe6f8d26c1deb153126e368b96b41b3","tests/cxxflags.rs":"c2c6c6d8a0d7146616fa1caed26876ee7bc9fcfffd525eb4743593cade5f3371","tests/support/mod.rs":"a3c8d116973bb16066bf6ec4de5143183f97de7aad085d85f8118a2eaac3e1e0","tests/test.rs":"61fb35ae6dd5cf506ada000bdd82c92e9f8eac9cc053b63e83d3f897436fbf8f"},"package":"50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"} +\ No newline at end of file diff --git a/meta-balena-rust/recipes-devtools/rust/files/cargo-path.patch b/meta-balena-rust/recipes-devtools/rust/files/cargo-path.patch new file mode 100644 index 0000000000..9a50c40220 --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/files/cargo-path.patch @@ -0,0 +1,37 @@ +Fix the cargo binary path error and ensure that it is fetched +during rustc bootstrap in rust oe-selftest. + +====================================================================== +ERROR: test_cargoflags (bootstrap_test.BuildBootstrap) +---------------------------------------------------------------------- +Traceback (most recent call last): + File "/home/build-st/tmp/work/cortexa57-poky-linux/rust/1.74.1/rustc-1.74.1-src/src/bootstrap/bootstrap_test.py", line 157, in test_cargoflags + args, _ = self.build_args(env={"CARGOFLAGS": "--timings"}) + File "/home/build-st/tmp/work/cortexa57-poky-linux/rust/1.74.1/rustc-1.74.1-src/src/bootstrap/bootstrap_test.py", line 154, in build_args + return build.build_bootstrap_cmd(env), env + File "/home/build-st/tmp/work/cortexa57-poky-linux/rust/1.74.1/rustc-1.74.1-src/src/bootstrap/bootstrap.py", line 960, in build_bootstrap_cmd + raise Exception("no cargo executable found at `{}`".format( +Exception: no cargo executable found at `/home/build-st/tmp/work/cortexa57-poky-linux/rust/1.74.1/rustc-1.74.1-src/build/x86_64-unknown-linux-gnu/stage0/bin/cargo` + +Upstream-Status: Submitted [https://github.com/rust-lang/rust/pull/120125] + +Signed-off-by: Yash Shinde +--- +diff --git a/src/bootstrap/bootstrap.py b/src/bootstrap/bootstrap.py +--- a/src/bootstrap/bootstrap.py ++++ b/src/bootstrap/bootstrap.py +@@ -954,9 +954,11 @@ + if "RUSTFLAGS_BOOTSTRAP" in env: + env["RUSTFLAGS"] += " " + env["RUSTFLAGS_BOOTSTRAP"] + +- env["PATH"] = os.path.join(self.bin_root(), "bin") + \ +- os.pathsep + env["PATH"] +- if not os.path.isfile(self.cargo()): ++ cargo_bin_path = os.path.join(self.bin_root(), "bin", "cargo") ++ if not os.path.isfile(cargo_bin_path): ++ cargo_bin_path = os.getenv("RUST_TARGET_PATH") + "rust-snapshot/bin/cargo" ++ env["PATH"] = os.path.dirname(cargo_bin_path) + os.pathsep + env["PATH"] ++ else: + raise Exception("no cargo executable found at `{}`".format( + self.cargo())) + args = [self.cargo(), "build", "--manifest-path", diff --git a/meta-balena-rust/recipes-devtools/rust/files/custom-target-cfg.patch b/meta-balena-rust/recipes-devtools/rust/files/custom-target-cfg.patch new file mode 100644 index 0000000000..15a7f252cc --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/files/custom-target-cfg.patch @@ -0,0 +1,90 @@ +Detect and fetch custom target configurations when rustc is +bootstrapped in rust oe-selftest. + +Upstream-Status: Backport [https://github.com/rust-lang/rust/pull/119619/commits/26c71cbcf1a9bce6ceb962d753c467d098f63cf6] + +Signed-off-by: onur-ozkan +Signed-off-by: Yash Shinde +--- +diff --git a/src/tools/compiletest/src/common.rs b/src/tools/compiletest/src/common.rs +index e85f6319936..c45c0b3c652 100644 +--- a/src/tools/compiletest/src/common.rs ++++ b/src/tools/compiletest/src/common.rs +@@ -479,6 +479,7 @@ fn new(config: &Config) -> TargetCfgs { + let mut targets: HashMap = serde_json::from_str(&rustc_output( + config, + &["--print=all-target-specs-json", "-Zunstable-options"], ++ Default::default(), + )) + .unwrap(); + +@@ -491,16 +492,33 @@ fn new(config: &Config) -> TargetCfgs { + let mut all_families = HashSet::new(); + let mut all_pointer_widths = HashSet::new(); + +- // Handle custom target specs, which are not included in `--print=all-target-specs-json`. +- if config.target.ends_with(".json") { +- targets.insert( +- config.target.clone(), +- serde_json::from_str(&rustc_output( +- config, +- &["--print=target-spec-json", "-Zunstable-options", "--target", &config.target], +- )) +- .unwrap(), +- ); ++ // If current target is not included in the `--print=all-target-specs-json` output, ++ // we check whether it is a custom target from the user or a synthetic target from bootstrap. ++ if !targets.contains_key(&config.target) { ++ let mut envs: HashMap = HashMap::new(); ++ ++ if let Ok(t) = std::env::var("RUST_TARGET_PATH") { ++ envs.insert("RUST_TARGET_PATH".into(), t); ++ } ++ ++ // This returns false only when the target is neither a synthetic target ++ // nor a custom target from the user, indicating it is most likely invalid. ++ if config.target.ends_with(".json") || !envs.is_empty() { ++ targets.insert( ++ config.target.clone(), ++ serde_json::from_str(&rustc_output( ++ config, ++ &[ ++ "--print=target-spec-json", ++ "-Zunstable-options", ++ "--target", ++ &config.target, ++ ], ++ envs, ++ )) ++ .unwrap(), ++ ); ++ } + } + + for (target, cfg) in targets.iter() { +@@ -545,7 +563,9 @@ fn get_current_target_config( + // code below extracts them from `--print=cfg`: make sure to only override fields that can + // actually be changed with `-C` flags. + for config in +- rustc_output(config, &["--print=cfg", "--target", &config.target]).trim().lines() ++ rustc_output(config, &["--print=cfg", "--target", &config.target], Default::default()) ++ .trim() ++ .lines() + { + let (name, value) = config + .split_once("=\"") +@@ -624,11 +644,12 @@ pub enum Endian { + Big, + } + +-fn rustc_output(config: &Config, args: &[&str]) -> String { ++fn rustc_output(config: &Config, args: &[&str], envs: HashMap) -> String { + let mut command = Command::new(&config.rustc_path); + add_dylib_path(&mut command, iter::once(&config.compile_lib_path)); + command.args(&config.target_rustcflags).args(args); + command.env("RUSTC_BOOTSTRAP", "1"); ++ command.envs(envs); + + let output = match command.output() { + Ok(output) => output, + diff --git a/meta-balena-rust/recipes-devtools/rust/files/hardcodepaths.patch b/meta-balena-rust/recipes-devtools/rust/files/hardcodepaths.patch new file mode 100644 index 0000000000..a043095f62 --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/files/hardcodepaths.patch @@ -0,0 +1,59 @@ +When building for the target, some build paths end up embedded in the binaries. +These changes remove that. Further investigation is needed to work out the way +to resolve these issues properly upstream. + +Upstream-Status: Inappropriate [patches need rework] +Signed-off-by: Richard Purdie +Signed-off-by: Alex Kiernan + +diff --git a/compiler/rustc_codegen_llvm/src/context.rs b/compiler/rustc_codegen_llvm/src/context.rs +index b4b2ab1e1f8a..8bb3e3f0557c 100644 +--- a/compiler/rustc_codegen_llvm/src/context.rs ++++ b/compiler/rustc_codegen_llvm/src/context.rs +@@ -158,46 +158,6 @@ pub unsafe fn create_module<'ll>( + } + } + +- // Ensure the data-layout values hardcoded remain the defaults. +- if sess.target.is_builtin { +- // tm is disposed by its drop impl +- let tm = crate::back::write::create_informational_target_machine(tcx.sess); +- llvm::LLVMRustSetDataLayoutFromTargetMachine(llmod, &tm); +- +- let llvm_data_layout = llvm::LLVMGetDataLayoutStr(llmod); +- let llvm_data_layout = str::from_utf8(CStr::from_ptr(llvm_data_layout).to_bytes()) +- .expect("got a non-UTF8 data-layout from LLVM"); +- +- // Unfortunately LLVM target specs change over time, and right now we +- // don't have proper support to work with any more than one +- // `data_layout` than the one that is in the rust-lang/rust repo. If +- // this compiler is configured against a custom LLVM, we may have a +- // differing data layout, even though we should update our own to use +- // that one. +- // +- // As an interim hack, if CFG_LLVM_ROOT is not an empty string then we +- // disable this check entirely as we may be configured with something +- // that has a different target layout. +- // +- // Unsure if this will actually cause breakage when rustc is configured +- // as such. +- // +- // FIXME(#34960) +- let cfg_llvm_root = option_env!("CFG_LLVM_ROOT").unwrap_or(""); +- let custom_llvm_used = !cfg_llvm_root.trim().is_empty(); +- +- if !custom_llvm_used && target_data_layout != llvm_data_layout { +- bug!( +- "data-layout for target `{rustc_target}`, `{rustc_layout}`, \ +- differs from LLVM target's `{llvm_target}` default layout, `{llvm_layout}`", +- rustc_target = sess.opts.target_triple, +- rustc_layout = target_data_layout, +- llvm_target = sess.target.llvm_target, +- llvm_layout = llvm_data_layout +- ); +- } +- } +- + let data_layout = SmallCStr::new(&target_data_layout); + llvm::LLVMSetDataLayout(llmod, data_layout.as_ptr()); + diff --git a/meta-balena-rust/recipes-devtools/rust/files/repro-issue-fix-with-v175.patch b/meta-balena-rust/recipes-devtools/rust/files/repro-issue-fix-with-v175.patch new file mode 100644 index 0000000000..fe0507c981 --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/files/repro-issue-fix-with-v175.patch @@ -0,0 +1,36 @@ +rust: reproducibility issue fix with v1.75 + +With 1.75 rust release, the '.rustc' section of shared object libs are embedded with absolute path names which is casuing reproducibility issues. +This change will fix the path name format back to '/rust/$hash' as in earlier versions. + +Below are the links for detailed bug description & discusssion with upstream rust. +https://github.com/rust-lang/rust/issues/120825#issuecomment-1964307219 +https://github.com/rust-lang/rust/issues/120825#issuecomment-1964652656 + +Upstream-Status: Backport [https://github.com/rust-lang/rust/pull/121959/commits/a9a979839bbdfec48c75d618ab0dce8a953589b8] +Signed-off-by: Sundeep KOKKONDA +--- +--- a/compiler/rustc_session/src/session.rs 2023-12-21 08:55:28.000000000 -0800 ++++ b/compiler/rustc_session/src/session.rs 2024-02-26 07:29:15.527577022 -0800 +@@ -1260,19 +1260,6 @@ + } + + pub fn should_prefer_remapped_for_codegen(&self) -> bool { +- // bail out, if any of the requested crate types aren't: +- // "compiled executables or libraries" +- for crate_type in &self.opts.crate_types { +- match crate_type { +- CrateType::Executable +- | CrateType::Dylib +- | CrateType::Rlib +- | CrateType::Staticlib +- | CrateType::Cdylib => continue, +- CrateType::ProcMacro => return false, +- } +- } +- + let has_split_debuginfo = match self.split_debuginfo() { + SplitDebuginfo::Off => false, + SplitDebuginfo::Packed => true, + + diff --git a/meta-balena-rust/recipes-devtools/rust/files/rustc-bootstrap.patch b/meta-balena-rust/recipes-devtools/rust/files/rustc-bootstrap.patch new file mode 100644 index 0000000000..1271d75e60 --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/files/rustc-bootstrap.patch @@ -0,0 +1,21 @@ +When rust.channel is set to either beta or stable, we can't use +nightly features on bootstrap without RUSTC_BOOTSTRAP. Set RUSTC_BOOTSTRAP=1 +to use nightly features on stable or beta. + +Upstream-Status: Backport [https://github.com/rust-lang/rust/pull/119619/commits/8aa7dd06f6e50621dc10f9f9490681be8a45876f] + +Signed-off-by: onur-ozkan +Signed-off-by: Yash Shinde +--- +diff --git a/src/bootstrap/synthetic_targets.rs b/ src/bootstrap/synthetic_targets.rs +index d2c65b740da..45baf56f46b 100644 +--- a/src/bootstrap/src/core/build_steps/synthetic_targets.rs ++++ b/src/bootstrap/src/core/build_steps/synthetic_targets.rs +@@ -59,6 +59,7 @@ fn create_synthetic_target( + let mut cmd = Command::new(builder.rustc(compiler)); + cmd.arg("--target").arg(base.rustc_target_arg()); + cmd.args(["-Zunstable-options", "--print", "target-spec-json"]); ++ cmd.env("RUSTC_BOOTSTRAP", "1"); + cmd.stdout(Stdio::piped()); + + let output = cmd.spawn().unwrap().wait_with_output().unwrap(); diff --git a/meta-balena-rust/recipes-devtools/rust/files/rv32-cargo-rustix-0.38.19-fix.patch b/meta-balena-rust/recipes-devtools/rust/files/rv32-cargo-rustix-0.38.19-fix.patch new file mode 100644 index 0000000000..a7f3d11ede --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/files/rv32-cargo-rustix-0.38.19-fix.patch @@ -0,0 +1,70 @@ +Fix cargo build on riscv32 + +riscv32 support is added to latest rustix already +therefore this patch is limited to rustix-0.38.19 +once cargo/rust moves beyond rustix-0.38.19 as dependency +we can remove this patch + +Upstream-Status: Inappropriate [Specific to rustix-0.38.19] + +Signed-off-by: Khem Raj + +--- a/vendor/rustix-0.38.19/src/backend/libc/termios/syscalls.rs ++++ b/vendor/rustix-0.38.19/src/backend/libc/termios/syscalls.rs +@@ -138,7 +138,7 @@ pub(crate) fn tcsetattr( + use crate::utils::default_array; + use linux_raw_sys::general::{termios2, BOTHER, CBAUD, IBSHIFT}; + +- #[cfg(not(any(target_arch = "sparc", target_arch = "sparc64")))] ++ #[cfg(not(any(target_arch = "sparc", target_arch = "sparc64", target_arch = "riscv32")))] + use linux_raw_sys::ioctl::{TCSETS, TCSETS2}; + + // linux-raw-sys' ioctl-generation script for sparc isn't working yet, +@@ -147,6 +147,10 @@ pub(crate) fn tcsetattr( + const TCSETS: u32 = 0x80245409; + #[cfg(any(target_arch = "sparc", target_arch = "sparc64"))] + const TCSETS2: u32 = 0x802c540d; ++ #[cfg(any(target_arch = "riscv32"))] ++ const TCSETS: u32 = 0x5402; ++ #[cfg(any(target_arch = "riscv32"))] ++ const TCSETS2: u32 = 0x402C542B; + + // Translate from `optional_actions` into an ioctl request code. On + // MIPS, `optional_actions` already has `TCGETS` added to it. +--- a/vendor/rustix-0.38.19/.cargo-checksum.json ++++ b/vendor/rustix-0.38.19/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"CODE_OF_CONDUCT.md":"f210602311e3f74b32f46237fd55f4ce36d798e85e3db1432ec667f63a7ffc44","CONTRIBUTING.md":"3fd57de5c678db1c972da676a8231d2fde9820695ef1f0d53f1e55a3e81d9de0","COPYRIGHT":"377c2e7c53250cc5905c0b0532d35973392af16ffb9596a41d99d202cf3617c9","Cargo.toml":"c994094b77085196394cd7cc03161f4810af7da799cfb40c696973e912929a8f","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-Apache-2.0_WITH_LLVM-exception":"268872b9816f90fd8e85db5a28d33f8150ebb8dd016653fb39ef1f94f2686bc5","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","ORG_CODE_OF_CONDUCT.md":"a62b69bf86e605ee1bcbb2f0a12ba79e4cebb6983a7b6491949750aecc4f2178","README.md":"58d2ee38dad64ff142e98872860b282b36a09076df537af57aba39d675d84a28","SECURITY.md":"4d75afb09dd28eb5982e3a1f768ee398d90204669ceef3240a16b31dcf04148a","benches/mod.rs":"e260e67273aa0a37cffdc5cd451699335b8ee656c17275a0d0f2b4563c6018ca","build.rs":"5f93559819ca7fe233f01579d51ff5b58cb6e96ef9e7817a3358a9b410d5bbf6","src/backend/libc/c.rs":"63a6b16d4c13db9946c58ef643dd92ac4c81c4be8b5d2adf9bb0f5c797593d3b","src/backend/libc/conv.rs":"c4b4a6fdcf2f9295ab0498229a780942b031a2847ddf2466f90884bfb30255f8","src/backend/libc/event/epoll.rs":"f35eb0fddf9c4327551e1995f109a537f9899b9231e914671bdf26b616048370","src/backend/libc/event/mod.rs":"7f8547c599b8263eb791890bbe4a0b22fe2676d007ffdcc3e07b2e48d1c994db","src/backend/libc/event/poll_fd.rs":"06e2ce2fb30a45b90279ae753a67085e9f818a1b16d99cc92c525e2c46d61d51","src/backend/libc/event/syscalls.rs":"295a930521b345192caaf916b39189299f81f5f7c9f1aaed235baf3bf6f2f5fa","src/backend/libc/event/types.rs":"09e813690f44752708485e5a5ee59a43834a4a3e9577f2739b310c3ea8b4b64e","src/backend/libc/event/windows_syscalls.rs":"ebfac665c6676c4b803134ab8806be8aa2e96bdbc7799a19c544cd9069b35787","src/backend/libc/fs/dir.rs":"6f9526714c525e219399371d5acbe2666f0ac3ee88f73dc03fb31cf195ced95d","src/backend/libc/fs/inotify.rs":"f4e471484c4633dbb91c875ba8df87b687dd174cc45fdd2a1f717ffcb1591b00","src/backend/libc/fs/makedev.rs":"89c679a0ef18dd41b3c6223bce0f329ad35bf6cadbf16e47b33fad3f312ba4a6","src/backend/libc/fs/mod.rs":"576b6fcce723fcd5fc76637abd3b3565b00ca0bac309b63aecd6b8ee005fa81d","src/backend/libc/fs/syscalls.rs":"bba2a6a475fcd980f9352007f2b0b74b97abffe9d025e4c311e6f1f2f84eee3a","src/backend/libc/fs/types.rs":"20618e1a675fff5a8d2f08b4278425a3ec5c43d83518a5cbf3a934f135709a7a","src/backend/libc/io/errno.rs":"048d4350b9836fb9c9400127509705835a4992da86410e33a9e67cc43e22f35a","src/backend/libc/io/mod.rs":"746647bd864e4ec7717925b6d176cebdb392b7d015070244cc48d92780351dd6","src/backend/libc/io/syscalls.rs":"380d9be17ec7e46fdc24682aeae6410dcd8b10fd129090b479bb8ee405d9b5c6","src/backend/libc/io/types.rs":"8df53d41d72a39f334ed124707cb501e83b3624b769c80b78c62bd45179bc04a","src/backend/libc/io/windows_syscalls.rs":"fab3fa099aa89cea56a6edc651dd37750e581534f4f45b04a7e425f130b08468","src/backend/libc/io_uring/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/io_uring/syscalls.rs":"5af8146d5971c833e6fd657f652c618b31f854e1b0811864fba9b658cb633e19","src/backend/libc/mm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/mm/syscalls.rs":"9b7c383f8ef1e258800c9797abbcd45374b97b6680637b1a247cb93878213b5a","src/backend/libc/mm/types.rs":"a427ff490880e92f1ddaa4aea55bb3ff2f43bd29712a6af09b25be2984ecb3e1","src/backend/libc/mod.rs":"2b396834f47b8771d2274eaa2632fbecebc17316d20f26d5e94f060bb8796f7d","src/backend/libc/mount/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/mount/syscalls.rs":"1bc87501a078616d0190d2e85de55f3f968b8cb79d49bd9eb839a350eed26089","src/backend/libc/mount/types.rs":"8e2b66822cd1148e5fe4023f5608f36afb0d47bad454db9560fbca4b0dbd2b6f","src/backend/libc/net/addr.rs":"b6644e0169c6681084704e9ca231863364d81e3d3cb5d3689e0df8acf7b4ec16","src/backend/libc/net/ext.rs":"0ec74196ace553c9bff355e2e35ad3b70cab46e32f8f7194715e4528fe1f54bc","src/backend/libc/net/mod.rs":"4e2d6c72bef19985a2935e7891288f0045d1ff1287ec50492882b4dfbaf0fea3","src/backend/libc/net/msghdr.rs":"f82825d40d8872e2e804cde32bbcc68bef43a5f48ad857fb1030550c4eb44838","src/backend/libc/net/read_sockaddr.rs":"af90cf19e2bebc04976b9ac97010c38db91dcd90fd81b48a14528d45be97fe20","src/backend/libc/net/send_recv.rs":"52ee998bc8422a074e5105607440631e569e531caa7d356157529c3ddb07b684","src/backend/libc/net/sockopt.rs":"c1e9974478f027d9053fed5b4f28e6dce49dd15f05e1ed574cb4eddf1be47b7c","src/backend/libc/net/syscalls.rs":"b876541609622003a9e8cd2787ecbb93b0a155cfd61914c043ac2401ed3fd923","src/backend/libc/net/write_sockaddr.rs":"14e941b5a11e4d7a17182860c47b1ee972b56ff7f0aadbcc6ab2c8740b13cea9","src/backend/libc/param/auxv.rs":"fdc85b7c33bcd05a16471e42eb4228c48c98c642443635ba5fc3e9a45438d6d3","src/backend/libc/param/mod.rs":"5234b8f1bcb886cca6ea003d411d75eaeebe58deedd80e3441354bf46ed85d4d","src/backend/libc/pid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/pid/syscalls.rs":"49ea679b96c0741d048e82964038f9a931bc3cf3a0b59c7db3df89629b9c49e6","src/backend/libc/pipe/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/pipe/syscalls.rs":"8affde100f6a9dfc762b79d1e48be5c1039be414f8ef7d5a6acaba882a68d259","src/backend/libc/pipe/types.rs":"1e797beb383bb2e4038f1de21bea204caec4a4922b25a6ef84dbbe6e953e78b0","src/backend/libc/prctl/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/prctl/syscalls.rs":"8a2684f444a7555098dce2b92270d81cefdae902716c6e5d59bd7b0657e8a29d","src/backend/libc/process/cpu_set.rs":"b3d36b01b53b0b6c61a20ed8a69d48eccdd90cc17f82f2926ef1e844f002d0b7","src/backend/libc/process/mod.rs":"d7dc401255bad2e55ffff365339cdc3aad306861d269ad727a817d3cd7763166","src/backend/libc/process/syscalls.rs":"17b7eab2e0ea2898d41ec4e0d2a84baf57eae9f6e3e016e6b74f0e174440cffb","src/backend/libc/process/types.rs":"c26796486e9f9e7bbc44715ecaac285eb808fd9a8c08d237b2ac19f34954d608","src/backend/libc/process/wait.rs":"0cc556aed976b4bbb3965f74fd76b8216c755fce25043b7b21ce54afa07c9773","src/backend/libc/pty/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/pty/syscalls.rs":"699a4c325fc590b8b5dabfe5a9ff386809be14dd24bf35aa6ef581b2bd75457b","src/backend/libc/rand/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/rand/syscalls.rs":"78c7201e6bcb75e9cab9486d1878861319f865de2b2c46437be68690bd17bf13","src/backend/libc/rand/types.rs":"7763e6b40e4b9df825fdd2aa5ba1770da999137d04776561167116c58f8fa618","src/backend/libc/shm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/shm/syscalls.rs":"60d797d4e85e08e6330e6b8d80094356ce377e5484952f88ae2a6e49231c268c","src/backend/libc/shm/types.rs":"be4034353ab434568053260712fa5f55ed6d8a1a9fae64fa4fe1ea4f2e82120b","src/backend/libc/system/mod.rs":"38563ea68829ca5a4b1b0695ac8a5c05718e85bdc88a36dc805efdfce45d3909","src/backend/libc/system/syscalls.rs":"4c632a6d59fef0bb516d89f119f7f37aa18f8a75f63aeba73d71c464473874cb","src/backend/libc/system/types.rs":"6871e16aee14fe2ae03cea798c3e509ffe44778a9c0e5608fd73e2e015876d7e","src/backend/libc/termios/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/termios/syscalls.rs":"dbe38f61f52f78dabf39e35a2fed3fb5f958270afa102e6bc3a374dc2621faf4","src/backend/libc/thread/futex.rs":"b666828653b12634bbd7fd709acf69641b648ec40962a1d4f904c5db14d2eff5","src/backend/libc/thread/mod.rs":"fa710053974d7f16a6c49242ee6c10a3b9e1143452b9daeaed8837302a679fff","src/backend/libc/thread/syscalls.rs":"120cb13fe7ffdef7a52ca1d141d31bf189176e9f5862f87bb171d54370a682a9","src/backend/libc/time/mod.rs":"38563ea68829ca5a4b1b0695ac8a5c05718e85bdc88a36dc805efdfce45d3909","src/backend/libc/time/syscalls.rs":"f82e0725c5af8a52e61ee83aad2c77694f2f7a72ac1e6eb284109a70ac6edc38","src/backend/libc/time/types.rs":"d4e55d2b9fb8de772c8bf5bba157472c49a12c25502e62a9c599a2e6d3196a5b","src/backend/libc/ugid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/ugid/syscalls.rs":"8edf91b8790add23902c9f5418da6b0723a371677f29f490e0c8af852f0f1a0c","src/backend/libc/winsock_c.rs":"3bf3884fd250eca806ffdf96da68e29c133a697810b78b333ea449e523e58562","src/backend/linux_raw/arch/aarch64.rs":"2a255c9135bc8a321c180f52b88eb2b158bc9170cd222149caeae63c24587d44","src/backend/linux_raw/arch/arm.rs":"165bccb5883d0136e55d42091183765f83d86e9d37a7cb2cec9ae8af32774db6","src/backend/linux_raw/arch/mips.rs":"24af364aa93fd4b9917639d473336490a143f0d1723b09f388e72d534160ee51","src/backend/linux_raw/arch/mips32r6.rs":"e436a2ade34f2f7c58b8924462b07a2499dfc951e1e1318d51759444fb8b658e","src/backend/linux_raw/arch/mips64.rs":"897da9ddc877963ad59464d7f81dc59df8a7e91251e6adea14cfd946e2740a1c","src/backend/linux_raw/arch/mips64r6.rs":"3c08aea13c1139fb0dfbe74ca3d0147f007c3aa2eda641afb82c46f6aa4f6cd1","src/backend/linux_raw/arch/mod.rs":"37eaeea601d39be00d170856a31a8ec6a27b0d3ac22ab3ee642ab0e45dee237d","src/backend/linux_raw/arch/powerpc64.rs":"dfb001f8636a5e46d728900b0804fe6c374e5e18a6f0e76d7d62e0c07da74477","src/backend/linux_raw/arch/riscv64.rs":"41d33242d941030f46077dc2b1bc4c7913fe7630d693a5a7eef966bcf38f9d8b","src/backend/linux_raw/arch/thumb.rs":"2fd979ab421248c0a4c592bc0cefee63edc26528f469b71b63eaed35356e42e8","src/backend/linux_raw/arch/x86.rs":"81c73c0a13925854b54db754f533dec565b1db2d9586e210a2450c6f5915171d","src/backend/linux_raw/arch/x86_64.rs":"e929036a1f3cf93ba538f4523b241605cc7b5e61f84ffe6d9d5cdbcb6f73e543","src/backend/linux_raw/c.rs":"74cdf34fcd5bba9628c04585fa13721073e2bffe6740315c7655d1a55150230f","src/backend/linux_raw/conv.rs":"3b452e19c6b8285df205baa790e19f32061952ae7c7c4e39ba01726de6beb4fb","src/backend/linux_raw/event/epoll.rs":"18980136ee6d3e327d6c46a33306fa934a80eaee609a329098935569507440d0","src/backend/linux_raw/event/mod.rs":"72e46b04637e2d1d2a6b97af616144995399e489d1fe916faf835d72fc8c64cd","src/backend/linux_raw/event/poll_fd.rs":"78d040f7ce0574fc18cebf6b7766c210a3254abdbafe175f51c6b460fa19c514","src/backend/linux_raw/event/syscalls.rs":"8782cdf978bff0773bf5f35c1056d5c29a40742cf6f99d9606d951b52596cd34","src/backend/linux_raw/event/types.rs":"2ffdcb728587dbc25d302527f4a52296b96013d5199c946291b059ba4f7d466f","src/backend/linux_raw/fs/dir.rs":"c675dc5413428d2defd6752e99d210da83639779e853db209de6a1c08d35e0e7","src/backend/linux_raw/fs/inotify.rs":"42a6ed7b091eee20d7fd9becfea240deb99d0b8ca3e8e083cf365d484d8eeeeb","src/backend/linux_raw/fs/makedev.rs":"c6b4505c4bcbbc2460e80f3097eb15e2c8ef38d6c6e7abd78e39c53c372139e2","src/backend/linux_raw/fs/mod.rs":"8689e46f9c4c3e1190ae5fe39176c573cccac10b3739472128ca237f41e2686a","src/backend/linux_raw/fs/syscalls.rs":"a4512f58e2ef01bf0799c96fa7821284866b6826594642565f46d93e566e2e12","src/backend/linux_raw/fs/types.rs":"c015cf3cde945ad4a42ec706c6e1140c7342041ace1da6e0ef1bbf5e9e019ce2","src/backend/linux_raw/io/errno.rs":"8f15d735435b722466696094aed8b612b8526658ab7e079f386037cf8a3b1a6e","src/backend/linux_raw/io/mod.rs":"7ae2324427892cca6f5ab53858d847b165f790a72ec25f3d99fb15f0506c9f27","src/backend/linux_raw/io/syscalls.rs":"026f99b397ae521ac4b2ba41acec6547018073a9da5fa355aa8f9ac61298c172","src/backend/linux_raw/io/types.rs":"0cfffdc2fc9c33faa4055f9686db5922676f17d5c069362bae3745f39da3594a","src/backend/linux_raw/io_uring/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/io_uring/syscalls.rs":"0f7c9cb7ccddf5687e4b9e5b23558871a452a29ac6095a0184a06c47b9b18eb6","src/backend/linux_raw/mm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/mm/syscalls.rs":"7d43752e8abaa8cec02cd3329e08303c56a9e6ac97aec447293397b9953c3ba3","src/backend/linux_raw/mm/types.rs":"4407b4b54c4048bb1d4e702575e20037c24483a22f6a5cfcc940e4738fcff381","src/backend/linux_raw/mod.rs":"bb26fe4783f834a4624c99ecf9e4ea8fa4d1c7fe9adfb6d7310fac689e7797bc","src/backend/linux_raw/mount/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/mount/syscalls.rs":"3947261b5d46b9737f02dc5352c3a3a35c63c461fd75bcd8ae6619dfc0bfb54d","src/backend/linux_raw/mount/types.rs":"8d39c4d6e555c88de5da3115a301562fafdcb3942aa69a0e01d42de8edb1c78f","src/backend/linux_raw/net/addr.rs":"fbb6c071a8ebc2c557c7013d36d4b540c1ff6ed63103d0a8abcacd8977fbf5c8","src/backend/linux_raw/net/mod.rs":"904b2ccd4228ebcda25db0223b92fb03e4042bcc7b0a202f19410a8a5ff517a5","src/backend/linux_raw/net/msghdr.rs":"3198339ccd00224aefdba74e9144818fe387222066a387a9dfd95fd8c48cf9d9","src/backend/linux_raw/net/read_sockaddr.rs":"24075ac4c05fab5fe44aae4445cdd12ec7e474f047150baa9b768741d6b9693d","src/backend/linux_raw/net/send_recv.rs":"85b1a78ecc920e919ce7a0a9f7ad79cba5ad09af4f53018df8c46c7c112bd7a9","src/backend/linux_raw/net/sockopt.rs":"2ea8625ecd68a799c14ed48dec2f3e01f085222b6cc36f4916b20143e08ae575","src/backend/linux_raw/net/syscalls.rs":"eb897e0074ec53c5b18594c39cbb9ec5bd796c9120bf029f0b05145a7eee1804","src/backend/linux_raw/net/write_sockaddr.rs":"0eeeb7ec8dadf95503a2f89fdc933b8f9c7e45e03fdb343ce490b6cc8eec0f96","src/backend/linux_raw/param/auxv.rs":"c1b1a628d6c51ce8adc981f58c6e08abba4a151356ff98cdbc0b3e75abeadb8a","src/backend/linux_raw/param/init.rs":"a5024f9afe361884f22fb4d65e632ccd8a60f1138ff6bd526df600d40e0d9b7e","src/backend/linux_raw/param/libc_auxv.rs":"e567f471ab21068141acb9fb2f88b9ba553f630945bc8f01b689955b48414512","src/backend/linux_raw/param/mod.rs":"2e6a1a1c00351b9c88bd615aa923f71d76208df5626dd9bea03067f28f81dc31","src/backend/linux_raw/pid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/pid/syscalls.rs":"eef6aa01830ddd510b83f507da2002c03e58318b73744be2c06ebbe33c4f194f","src/backend/linux_raw/pipe/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/pipe/syscalls.rs":"366c730fc3e991bddb9f5a15b8c3917a8e6ace6d1d5a9113b2749e476faf6f83","src/backend/linux_raw/pipe/types.rs":"9d4bd3da7cd078d42574ad7d6b7554e301a1a7e97b292a77993a6d263726ef1e","src/backend/linux_raw/prctl/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/prctl/syscalls.rs":"a18b224307e0d27bda9b7b85c75cd6c7ddfe39f5ce52efb7bb0bf0585b757343","src/backend/linux_raw/process/cpu_set.rs":"dfdcbdf35aff6a3e08e7d38193bf18c12ca8aa64eb0dc417667be82dcc0f7c55","src/backend/linux_raw/process/mod.rs":"fb393c70a9c63ef9a6bf1fb5a2dc94f07d6b0b6987cc5231c15c607015dafd68","src/backend/linux_raw/process/syscalls.rs":"3730c155663d727d5b239f57f220727ef33dd257e74a1b697274de0f94e1da79","src/backend/linux_raw/process/types.rs":"6811ba822bc12a1a6336649151b4adb1f5d3365684a31c07f01953ea9547743d","src/backend/linux_raw/process/wait.rs":"921aee4b0048746087f52615a98edc2aa0fb4b53d6df44be4533098df55d1b05","src/backend/linux_raw/pty/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/pty/syscalls.rs":"ae09c4aecc0ae87b1ca58d82efc58007b9dddaae78460d615f48da19d1cd0f89","src/backend/linux_raw/rand/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/rand/syscalls.rs":"a84f70251672e92f253838bf05e989434f67373233e88d21d8835cbb792b1fe3","src/backend/linux_raw/rand/types.rs":"b7217c98f2da4ecf89225f36eb52c396ba2a73debdeca739ba864a9030b6a23d","src/backend/linux_raw/reg.rs":"39b6234971122d247054bda8c2dc3b44493be30482635baa9e2fcbe048e78cbd","src/backend/linux_raw/runtime/mod.rs":"b2cae8cce3822c3c92942f06ea0b68464040dcac33c6f0f7ee392c6269993347","src/backend/linux_raw/runtime/syscalls.rs":"fc9c9edbe07dd7644ab75c51a1597a31467a3421301503a072bef93e6df07643","src/backend/linux_raw/runtime/tls.rs":"6316060560a112c2e9cd9807cdba6e8c91414113a04a739160929ae9a67bba1f","src/backend/linux_raw/shm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/shm/syscalls.rs":"3ebf91610b02de0312e1f0f0cc5d56e12b4d93794540087b3182cbdf3cb9c8db","src/backend/linux_raw/shm/types.rs":"76f587e0edc78e3b780b66ddf9bdf56d5bcb57822111e9f8f66a7eec07c2c0fa","src/backend/linux_raw/system/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/system/syscalls.rs":"2af6c2672a6528b404b52f501d9803a63e9f47886d3b5d2d2dc5a71cefa7327a","src/backend/linux_raw/system/types.rs":"1ceab8d738a71043473b26e97fa3fd79d588a86d4774cbc9b9e1d4f1447a016e","src/backend/linux_raw/termios/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/termios/syscalls.rs":"01c4c8028595d8f53197ac3f2accb83057cb80fb5f78db63bbf85eb46d40e1c9","src/backend/linux_raw/thread/futex.rs":"0aa0f9f5be6a79de81e82c9f11f1bf8831f682a4b2f6cb29669e1591636f084e","src/backend/linux_raw/thread/mod.rs":"6ad4a4b90b9234e79900b27ebbe8837e3a7a36aec532912e3e253edce5225067","src/backend/linux_raw/thread/syscalls.rs":"0e3dca63be7322e1e9c58456b28eb8548abb9f08b4436b87b139e891c01c446d","src/backend/linux_raw/time/mod.rs":"672724f55b7b7be6a7452bb1cc2d28b5f0aaa840a2856fe363acce624e1beefc","src/backend/linux_raw/time/syscalls.rs":"451da0bbb66accdf58ee7f2f8746a93b22ee985907a08717a3d3b1650457d878","src/backend/linux_raw/time/types.rs":"56cb936dc36af759e06d0b7bcfa7db02818dff6084c1d1d9a538a6d5945032d5","src/backend/linux_raw/ugid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/ugid/syscalls.rs":"8c86d251db33b399a1d1cbb8e87afe650b78db84f444d3251309b7a0480b54f7","src/backend/linux_raw/vdso.rs":"056314f72c71d4b041739337ca2098afb7fe070f844327f462c293f43481b75b","src/backend/linux_raw/vdso_wrappers.rs":"6bd4b8c15761e16defff7d2eed18c008c9f980ebee6c9bdc2e104b16b9b7c631","src/bitcast.rs":"e21c87c292c781b27256c6f5dcf9fd52dd69ed6e21016cbd67ac31a8219ebf8e","src/check_types.rs":"bc31f9b293bfbf272284ed4d0da24e941206a1ac3f18d3abb0b1a61f1ede1dae","src/clockid.rs":"1d2e1cfcf23160b55d6b046d235edf2eb2408f072a8bdef3e3a3871885abdd5a","src/cstr.rs":"41af2a4429fe6c67a8883f8a8f63d66c90df566abda74fd2b03bcef7b9f24218","src/event/eventfd.rs":"81cbd08f7bdf40a6ce1ca692b63da1dc8ba925282990668d9d68f1203e839fa1","src/event/kqueue.rs":"f13f40b97c4413902115408fc2f340e7c82bba42d2468015b007e8ac6ef23132","src/event/mod.rs":"326a7ddfeb33bb95dd31391d65f400fa622e5d0ab827c096cab16af4b6843b51","src/event/poll.rs":"0ee583dbd457a573a82a06c04a2a24bd2c76e751d27a435507d55338e2871327","src/event/port.rs":"4e51ff150e5d17cbd44aa64a38b99c15e26eaaf2e350768b5dcacdfde4fa5212","src/ffi.rs":"c2b8b38c02d72749aceb715c496726caba1f1fa989ad3856d0103a2fafed89ed","src/fs/abs.rs":"6f0b57878f61c009fd0a3698a3983aa8076ba4fe3b5c28feec0307d65a77891c","src/fs/at.rs":"9b5f35afcaca9dd19d501cee3ad305b1d1c1b588c5fd925b18b6d3b614f05011","src/fs/constants.rs":"24076a01f8bfc126b0905e9bc0521d2c3a3abc6c3b8c86ddb1e545070d097127","src/fs/copy_file_range.rs":"d3b644374390d482b2ff749a2459458872b57d0dcf9670368739b7833509a7c2","src/fs/cwd.rs":"9f429a79ace6e17455634da09216ee0ad3d067a4541518b3193ae6a8d9ff1e26","src/fs/dir.rs":"347a52f4ca9ac6321c52e802e97ec90d1b4c62ec955c8996fc17f8f5aed69966","src/fs/fadvise.rs":"beef66ebe1310fb92628240b2cde68f744c78e50f6ff61bb1404bd4868d9cae8","src/fs/fcntl.rs":"2085102d05d0ba963e100ab3e3f19dac4ff27d142fbf798626d20a2a596ba96d","src/fs/fcntl_apple.rs":"e2f23f038083621bcdecc98d02ce1023508afaecdb2ed0fba5c8b70f955301e5","src/fs/fcopyfile.rs":"ec95929cbbe02cf49233a785e5238931bb107b7903cc5bc95e4231de960995f2","src/fs/fd.rs":"68d19bb99da0444444acbafd27ba10a69fc2ac35ede4e0106ac2043c30ce4f8f","src/fs/file_type.rs":"fefd865f91011f66126213b0994773d99e373b468c31e866002228c98c64ad85","src/fs/getpath.rs":"28f6970fc1bbc37bb35c84724b59eac436ea7407a4522e18c2bdacb1fdd2edd9","src/fs/id.rs":"1b5c8a8baf9a9bb1f895f97189cea4e5982a0d35b192afeec6340a6c6222e0cb","src/fs/ioctl.rs":"e798eb41bbc201c375bc295ad2928c2467b45b4fbbff3c82236dccbc0d6391a5","src/fs/makedev.rs":"85520b484cb7c15ab71ea1c368578ea3b7e484d82f8510db92b6ce9f7ca341ae","src/fs/memfd_create.rs":"15a8f28e040cffd8c24c7903483440f88853b2e538ad48d80f3c00b4b2befdea","src/fs/mod.rs":"ecd20bf01d651b1866b198c4fc0dc8e7d681eb581e28708c8a0abd062de137ce","src/fs/mount.rs":"8f6ea2b997dd83c50c90291b9ada3ed77a9ce1ad701c9b0d533b5113b317be5b","src/fs/openat2.rs":"4a95c15dab533a41201b5fa25c8a212956b7571d58cad696bdaf45af8aef96db","src/fs/raw_dir.rs":"18ad797876d6230c38d4cacbed081c4028e03ace477d0520d9b226b40de942f0","src/fs/seek_from.rs":"a9efa0feb9ac789cf47667e91efee2e3f2dcde16cb3b7a928c99da640fa0e0d6","src/fs/sendfile.rs":"e3b2058741cf4b1698f34d84bb37130cf2b72806d522a16fe541e832cde136cb","src/fs/statx.rs":"c5192f54311faeb5a8e7ba7da1acd4fa5a8f69f6c15c4d78b4b7a495d21d0864","src/fs/sync.rs":"a3b23543834281f347b0f873bd38154d31d404871188ac08f2b20b9196234cfd","src/fs/xattr.rs":"b976eece822f69e768d91e61d86ee990ea18097b20f7ebeedaaf718c61b48962","src/io/close.rs":"0aa3cd05a8fed8e5244f97b8b6c2e7f65ed93a4e5435c6329852bb3da7514440","src/io/dup.rs":"a8a59c5d345dc54c57ded890720c33eb78c4d53917c71e8bb6317f7ed122cb87","src/io/errno.rs":"58a4d20ba0924e4d514e3c876fbe08982f1623187642ae14780815e65989c8c8","src/io/fcntl.rs":"c0f7bd7fce1119b0c1d0085b7ab77d5df02470ae3e06035428a2452dacbec296","src/io/ioctl.rs":"a47a5ec14607142f2c2ffcb93d016b8e86c8b15ba94b56b35382b545db62ea34","src/io/is_read_write.rs":"1bfb9ee5d58e0b29b44af12fe2668c7bccc841358698dcde47f1519ff9bb73b4","src/io/mod.rs":"75f1d0646be1d4c7c08b5887d8119b0103be8c25c43ccd4e0e97015508c0bb8f","src/io/read_write.rs":"54ba528b11601af1338bb0c71a41b256a0033076d30b3946c3fd0bdfa61dd021","src/io_uring.rs":"61e6dce7a53ce141604b5f577e20ec5aa73a20e2c2101825c7c52396ba221886","src/ioctl/bsd.rs":"e33772530b1b2d1e7d61ce53d9267e68d88f7f5df13301f90412d89a46c6faaa","src/ioctl/linux.rs":"256aef9fb51c67cd7f43a581b702aa62757e3bdd7c38f71bf849f818194c2285","src/ioctl/mod.rs":"739a4f6d4e9a816745e42133c1b4c51c1285bf5cde3e1ee3ea72ef0b802e3806","src/ioctl/patterns.rs":"26dda154aabf67d45362d9378875f95c1593391ecbc62be02d187b7e19e7f9da","src/lib.rs":"7430fd1db444a72dc8f9b762f2fb61226dd00c89c7c932481e94958f60678383","src/maybe_polyfill/no_std/io/mod.rs":"77889bb5c5a4f2e50e38379cdaa5d0fef4b0cafc3da056735df01f6deae75747","src/maybe_polyfill/no_std/mod.rs":"ec94a4aab4bc475785e469d10fd6bc95667e1d47d958e9cff3a19049d88c8c80","src/maybe_polyfill/no_std/net/ip_addr.rs":"046327ee244f758f2bc31d3be305d8cd0dfd8342aac1add8259e999b4b46c4a7","src/maybe_polyfill/no_std/net/mod.rs":"b0ee611c454679226a15bf647e7779995f3fe9c8e0507930a0d0613eb414b7c2","src/maybe_polyfill/no_std/net/socket_addr.rs":"bfeb32d32c176cde76323abcffebfc47e9898fb8d7ce3668c602dc8451086a2d","src/maybe_polyfill/no_std/os/fd/mod.rs":"27ef0afbcb0695cbb15101070f417eb51e0ef85ae66ec967d95e80771d507c47","src/maybe_polyfill/no_std/os/fd/owned.rs":"ab86ffa2693a04f3085770faf395f95e5303001711be8b19c44a47a0ac574091","src/maybe_polyfill/no_std/os/fd/raw.rs":"f3648c7bd4a6ff94bd823ed9e0d99d398e02f24875cf9b25962736999e7c6943","src/maybe_polyfill/no_std/os/mod.rs":"27dab639a765827644005d5f2fcc7c825310606b889cc8dd83f54c9528350dc0","src/maybe_polyfill/no_std/os/windows/io/mod.rs":"5bbcc05c83fee5026dd744a994e0458469466d5be39081baa62df07753b92fd2","src/maybe_polyfill/no_std/os/windows/io/raw.rs":"4c32609a489dd938a49328b5637cb3bafb96437f2f9f269ab66d7d3cb90247f6","src/maybe_polyfill/no_std/os/windows/io/socket.rs":"c658f42f24eff44a661f2adfd24a11af80fe9897f3e2af4dc5d2c64808308d65","src/maybe_polyfill/no_std/os/windows/mod.rs":"fdb416f8f231a4e778b5f985b9ae712ece5e1a1402963ad1a5f6a8b9843795f4","src/maybe_polyfill/std/mod.rs":"7c16c86cc73e226e65ead598e4018238b22000a345040b706bf1e1b3eba115fc","src/mm/madvise.rs":"3c262b3713a73fafcedf1b04bb12c048bb11d47ca43c959e5dfa48c27651f4f0","src/mm/mmap.rs":"28523bceb2b7e3bc1207f351d8a1771867159e1b9ff1d9c37fbdc05aeb696b50","src/mm/mod.rs":"b3a6cb838986d45825b912355cedead761211a494ca6f89b2367a2d2157e340e","src/mm/msync.rs":"9dcfe5f54235e9314a595edb8d548ac79d222bbcc58bb3263cf7e96d603b23ad","src/mm/userfaultfd.rs":"8073443bd181ff0b3ba4d0b1ae67370b4864035a0c8b4898cd709dc47c518ae7","src/mount/fsopen.rs":"160e384e9175fd98669cda1cf3590bb195c2ba7e1c724e9ea06e692595e58ba1","src/mount/mod.rs":"5f0c9df4727592695deb1cd63ae1de021b03dcd9d0d1b68e1f34d12a7136cb19","src/mount/mount_unmount.rs":"8ad11675e5d762d33fbefbed06a6a9f9e52a9b689bd06662446152614321ab77","src/mount/types.rs":"601ae3e10b7dc496fed7f3b40a80e81c6edd7bf13189d7be45c3212d4c684c39","src/net/mod.rs":"a6bc55f9e086caf46a7c00783498d73a328a66f2a991f1ec65d5f13931377b0f","src/net/send_recv/mod.rs":"f33e39c7b228cd8109823b0a0a1aa397cddad504d49e69b36f74c5b84e5070e5","src/net/send_recv/msg.rs":"6a73e4fd2b78fbeb683f48bcd8404a362245c6cd66e0d59e6378467600b44268","src/net/socket.rs":"bc825a94831557bf4c2cabd8ef5ae21ffe0986c24f9ada564eefa66270f69ae9","src/net/socket_addr_any.rs":"a9af81e967a91b45e51aec4f46a068fade7035c5d19dfaf05bfdcd3b3c32e9bf","src/net/socketpair.rs":"56f4885c31d2664cd16e18a9a88792a4912fedd953cec36dba67e8581fd57921","src/net/sockopt.rs":"58fbabf73ede7afaeac279241ff874dcee5604f63b3f38e4435a61a354da2196","src/net/types.rs":"5914e786d6a24a6efc355023fd71a28bc29fc85fb672e5388370243fe83e4191","src/net/wsa.rs":"6e546b42f50a851fc833c57cda76cfb347203ed4b0dea574a3d325bf5a2ebf80","src/param/auxv.rs":"886e57d52adf0199b8146f849c2db1e3136c07fc4ec61f60dc781fea11070604","src/param/init.rs":"a31c0e5cea61a1a999767fe74f87c0d59eeb6bce66578b842fe0e0c32be27a55","src/param/mod.rs":"25b10acd5b1da8faa6f5204e6b0379b38bfab667916e886cca64bea01a42dec2","src/path/arg.rs":"b1329485ad525e8d067792b0890a1241c20f6c08d29f0661f2a9f429581a7818","src/path/dec_int.rs":"fad9793b89eac526953b994cbed6b614f01c25108f9763e19fb98029feda93a4","src/path/mod.rs":"6b1b949c94bcc47e0f08a3f8e8db5b61ff497d0dfd3e0655f51c01d3e4b7dfd6","src/pid.rs":"f1c486000c5b1311b2d720cee88f089c17ef9a171709673dd06e6f35f4ff98a3","src/pipe.rs":"fd021deeacf78790886ae03f1e8f0fe5a13909c7532b2246581667eb3d0483d7","src/prctl.rs":"c9daa9397460a27ed6e31fc454fc40dff83720312a002b66f4c178fc005379ec","src/process/chdir.rs":"6947b80d468d906d528de328f30fe7509acfe4976a0de3fa600a7cc39618c049","src/process/chroot.rs":"2b5f6124eb19f26ad2705174f7ad50cdc0a5d15abd59ffcf55421228d82130b4","src/process/exit.rs":"48de66e5504a00cb375d8f415ce63b6225a3f5204268d40726a7d0fbba43f587","src/process/id.rs":"e4733f9e8e4b5f50e98ef7a23802e126f1f14ece8b3d7ae7446c6a66affc6bc1","src/process/ioctl.rs":"23ad0285671e8d7ca71a63c50655dbf732ccea8af11d754a0558e0236db37e76","src/process/kill.rs":"7b879e5cff8a064acd0e7488f4e21bd4e4a8506ce380688b72cc48d283ff9c89","src/process/membarrier.rs":"d6c8821ec73019040c926f4e1018f399c286e87074ab9c6692370c88772af044","src/process/mod.rs":"0ef104be820068409648ed83739a51a7dcf07612088f9a6ed6c7ebdb6ad54092","src/process/pidfd.rs":"4be2fba21430ba84244e11c636c91201bc1d1dffff3e63a4da84cc96f501786b","src/process/pidfd_getfd.rs":"cbc42a1548280ae76c3c66e851fd53cc2a3d4c089cb5798c17a2cdf654f0e229","src/process/prctl.rs":"3396b39a0f161385f02f6a4a17db0a3fcd2d70f4d6d2e1d8d1b9091b36d5704c","src/process/priority.rs":"f135482e71ea8aa0daf92b9f238051178a4c904070fa8409622f94155df3c544","src/process/procctl.rs":"0ca2f5fd4cd39335c141758cac132a3271e318c688f8882e527f58c02d5ab0e2","src/process/rlimit.rs":"10b79de3ced0e64059a94c879742d46a35a6176c776d8eed75031d5e6340283d","src/process/sched.rs":"7c3bfc5be624e7d7f5e043c3ee0b0566fcab3d684d61c272e7b4233410ab1c42","src/process/sched_yield.rs":"6565faa3928b66ddc74a65e893e15edfa4b9be4f7e5f5f68527501a7f6bc3350","src/process/umask.rs":"1a0f31a842303c978e3f05ec191e2b5e96104c09c6596473b42b1fac34898a50","src/process/wait.rs":"cef08e74f5d87df925fa6a6acc95e8de0e689fb420ba514b9fbf94a9ca403465","src/procfs.rs":"63b286dd3302be7f426841eb3b9261ef4785c3159ed78c24734bd5094c9b0b2e","src/pty.rs":"ee697b226230b65c0432a42cd82b2fad885ca70285dbb0a7b8ec0ff81d23e3a0","src/rand/getrandom.rs":"1c8166a02a74f5593bb4673ef907524df04cbc1568020a5ab2ff7f4aa1283f8b","src/rand/mod.rs":"cab59332aadd9b679f5b22cbb222d48ee028af5eb9fd4a4d43922da659b895d7","src/runtime.rs":"9aed98071bf8124c6913e8517b28ef63c7b88001042f0522d877ab65ac88099a","src/shm.rs":"b96fe8a05ee5d4536464a8843a776d43a938abaf22c772fc35b5373d95644a8d","src/signal.rs":"c071b4f011deef19a679d7a832d5408a3cd68627161d6510008d6312266a2611","src/static_assertions.rs":"39986672f489949be1d6469f0c30fb7d2eaa21bdaa2702a8c150b2b150bf5535","src/stdio.rs":"a5de2d7d9c3c5a901f88b6acf4754687c958a2f3a93c7945c2b8fcb948d468af","src/system.rs":"e594c16b4600a8ebea01c5850cd9e1521acf242f1a9f083403cfe95adcde4679","src/termios/ioctl.rs":"a1ac967f7811a482f8bb53847c37c8359f518cd26da9df7b816ba678a0139623","src/termios/mod.rs":"b44b7caa60b6f458657ed58a0e0eca41bb4e6d6be4b0f042bbb8ab7056cebe4b","src/termios/tc.rs":"e41312d15464b83b2457c2502fc3f3b9998cfb02ba68739026dd4285cc7130ac","src/termios/tty.rs":"906ee160ffb5ba3a92ea3a61374cf2cd617cebae51f5490073b6700c438d5eee","src/termios/types.rs":"8c4f029e8dbb9b2c59082bd13d628a741f6f0a31f5ecf485c93795b73c1daeca","src/thread/clock.rs":"469326c822dfb63405ee8537552cedde0b344978280e6645bbadd47dedc71e18","src/thread/futex.rs":"985f9a0dce1e2a4892ae7f26bd1bf119ceae3f9fa6b4707e166624fc1cee76d4","src/thread/id.rs":"ad72db4fea9fccb728310bbfd01ef8c00f6cc60fa2a750f6349646a134f7009b","src/thread/libcap.rs":"a3e316e6d0f58b075125fa939b9b824e1595de20a23d341a36999416b0d10d36","src/thread/mod.rs":"98634ece0b882f123ad887017692f2a4d94a23a1dec278ed660b3497cac5cceb","src/thread/prctl.rs":"10e2878ef856557bc5bd24c77f5699266e746f912e73690980371cc99c7417e8","src/thread/setns.rs":"730badd8db8ce7b905767b341211f1226eeeb38019727bf994eb64f2531b7b7f","src/time/clock.rs":"e59a29f1bed8c31c3d5b6fad60f2d4fa6cab8dd8e86148bb3693a5e3a1ce735f","src/time/mod.rs":"43afee938c80d124d04d4ba190c03f4d21d1e3bfc154fff309211e4f6eabe940","src/time/timerfd.rs":"f17092b84553741aa2d2b44c6992b5d2c8c96cc2c2007fc9a2c6b2064485e53f","src/timespec.rs":"32a4d930cbc0f6dbd23153290db920671cf4ce65a4a127e176f897c1cde42d7d","src/ugid.rs":"6616c6e35b7e43aee5b150f1efae7a50711e0947943c9a96833dbe214ad9e85f","src/utils.rs":"9ae76f8a41d6cc350cdd58c9084b5c3a5a708eeecd769783debdbcbaef442182","src/weak.rs":"c7cf03bf2aeba494b1999ab32183fa8c603ab72e254c0e312a67f168877e410d"},"package":"745ecfa778e66b2b63c88a61cb36e0eea109e803b0b86bf9879fbc77c70e86ed"} +\ No newline at end of file ++{"files":{"CODE_OF_CONDUCT.md":"f210602311e3f74b32f46237fd55f4ce36d798e85e3db1432ec667f63a7ffc44","CONTRIBUTING.md":"3fd57de5c678db1c972da676a8231d2fde9820695ef1f0d53f1e55a3e81d9de0","COPYRIGHT":"377c2e7c53250cc5905c0b0532d35973392af16ffb9596a41d99d202cf3617c9","Cargo.toml":"c994094b77085196394cd7cc03161f4810af7da799cfb40c696973e912929a8f","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-Apache-2.0_WITH_LLVM-exception":"268872b9816f90fd8e85db5a28d33f8150ebb8dd016653fb39ef1f94f2686bc5","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","ORG_CODE_OF_CONDUCT.md":"a62b69bf86e605ee1bcbb2f0a12ba79e4cebb6983a7b6491949750aecc4f2178","README.md":"58d2ee38dad64ff142e98872860b282b36a09076df537af57aba39d675d84a28","SECURITY.md":"4d75afb09dd28eb5982e3a1f768ee398d90204669ceef3240a16b31dcf04148a","benches/mod.rs":"e260e67273aa0a37cffdc5cd451699335b8ee656c17275a0d0f2b4563c6018ca","build.rs":"5f93559819ca7fe233f01579d51ff5b58cb6e96ef9e7817a3358a9b410d5bbf6","src/backend/libc/c.rs":"22550be154471f160ebfdb9e7b45a1e06452ec426a8d70b23a648a069c0216f4","src/backend/libc/conv.rs":"c4b4a6fdcf2f9295ab0498229a780942b031a2847ddf2466f90884bfb30255f8","src/backend/libc/event/epoll.rs":"f35eb0fddf9c4327551e1995f109a537f9899b9231e914671bdf26b616048370","src/backend/libc/event/mod.rs":"7f8547c599b8263eb791890bbe4a0b22fe2676d007ffdcc3e07b2e48d1c994db","src/backend/libc/event/poll_fd.rs":"06e2ce2fb30a45b90279ae753a67085e9f818a1b16d99cc92c525e2c46d61d51","src/backend/libc/event/syscalls.rs":"295a930521b345192caaf916b39189299f81f5f7c9f1aaed235baf3bf6f2f5fa","src/backend/libc/event/types.rs":"09e813690f44752708485e5a5ee59a43834a4a3e9577f2739b310c3ea8b4b64e","src/backend/libc/event/windows_syscalls.rs":"ebfac665c6676c4b803134ab8806be8aa2e96bdbc7799a19c544cd9069b35787","src/backend/libc/fs/dir.rs":"6f9526714c525e219399371d5acbe2666f0ac3ee88f73dc03fb31cf195ced95d","src/backend/libc/fs/inotify.rs":"f4e471484c4633dbb91c875ba8df87b687dd174cc45fdd2a1f717ffcb1591b00","src/backend/libc/fs/makedev.rs":"89c679a0ef18dd41b3c6223bce0f329ad35bf6cadbf16e47b33fad3f312ba4a6","src/backend/libc/fs/mod.rs":"576b6fcce723fcd5fc76637abd3b3565b00ca0bac309b63aecd6b8ee005fa81d","src/backend/libc/fs/syscalls.rs":"bba2a6a475fcd980f9352007f2b0b74b97abffe9d025e4c311e6f1f2f84eee3a","src/backend/libc/fs/types.rs":"20618e1a675fff5a8d2f08b4278425a3ec5c43d83518a5cbf3a934f135709a7a","src/backend/libc/io/errno.rs":"048d4350b9836fb9c9400127509705835a4992da86410e33a9e67cc43e22f35a","src/backend/libc/io/mod.rs":"746647bd864e4ec7717925b6d176cebdb392b7d015070244cc48d92780351dd6","src/backend/libc/io/syscalls.rs":"380d9be17ec7e46fdc24682aeae6410dcd8b10fd129090b479bb8ee405d9b5c6","src/backend/libc/io/types.rs":"8df53d41d72a39f334ed124707cb501e83b3624b769c80b78c62bd45179bc04a","src/backend/libc/io/windows_syscalls.rs":"fab3fa099aa89cea56a6edc651dd37750e581534f4f45b04a7e425f130b08468","src/backend/libc/io_uring/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/io_uring/syscalls.rs":"5af8146d5971c833e6fd657f652c618b31f854e1b0811864fba9b658cb633e19","src/backend/libc/mm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/mm/syscalls.rs":"9b7c383f8ef1e258800c9797abbcd45374b97b6680637b1a247cb93878213b5a","src/backend/libc/mm/types.rs":"a427ff490880e92f1ddaa4aea55bb3ff2f43bd29712a6af09b25be2984ecb3e1","src/backend/libc/mod.rs":"2b396834f47b8771d2274eaa2632fbecebc17316d20f26d5e94f060bb8796f7d","src/backend/libc/mount/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/mount/syscalls.rs":"1bc87501a078616d0190d2e85de55f3f968b8cb79d49bd9eb839a350eed26089","src/backend/libc/mount/types.rs":"8e2b66822cd1148e5fe4023f5608f36afb0d47bad454db9560fbca4b0dbd2b6f","src/backend/libc/net/addr.rs":"b6644e0169c6681084704e9ca231863364d81e3d3cb5d3689e0df8acf7b4ec16","src/backend/libc/net/ext.rs":"0ec74196ace553c9bff355e2e35ad3b70cab46e32f8f7194715e4528fe1f54bc","src/backend/libc/net/mod.rs":"4e2d6c72bef19985a2935e7891288f0045d1ff1287ec50492882b4dfbaf0fea3","src/backend/libc/net/msghdr.rs":"f82825d40d8872e2e804cde32bbcc68bef43a5f48ad857fb1030550c4eb44838","src/backend/libc/net/read_sockaddr.rs":"af90cf19e2bebc04976b9ac97010c38db91dcd90fd81b48a14528d45be97fe20","src/backend/libc/net/send_recv.rs":"52ee998bc8422a074e5105607440631e569e531caa7d356157529c3ddb07b684","src/backend/libc/net/sockopt.rs":"c1e9974478f027d9053fed5b4f28e6dce49dd15f05e1ed574cb4eddf1be47b7c","src/backend/libc/net/syscalls.rs":"b876541609622003a9e8cd2787ecbb93b0a155cfd61914c043ac2401ed3fd923","src/backend/libc/net/write_sockaddr.rs":"14e941b5a11e4d7a17182860c47b1ee972b56ff7f0aadbcc6ab2c8740b13cea9","src/backend/libc/param/auxv.rs":"fdc85b7c33bcd05a16471e42eb4228c48c98c642443635ba5fc3e9a45438d6d3","src/backend/libc/param/mod.rs":"5234b8f1bcb886cca6ea003d411d75eaeebe58deedd80e3441354bf46ed85d4d","src/backend/libc/pid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/pid/syscalls.rs":"49ea679b96c0741d048e82964038f9a931bc3cf3a0b59c7db3df89629b9c49e6","src/backend/libc/pipe/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/pipe/syscalls.rs":"8affde100f6a9dfc762b79d1e48be5c1039be414f8ef7d5a6acaba882a68d259","src/backend/libc/pipe/types.rs":"1e797beb383bb2e4038f1de21bea204caec4a4922b25a6ef84dbbe6e953e78b0","src/backend/libc/prctl/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/prctl/syscalls.rs":"8a2684f444a7555098dce2b92270d81cefdae902716c6e5d59bd7b0657e8a29d","src/backend/libc/process/cpu_set.rs":"b3d36b01b53b0b6c61a20ed8a69d48eccdd90cc17f82f2926ef1e844f002d0b7","src/backend/libc/process/mod.rs":"d7dc401255bad2e55ffff365339cdc3aad306861d269ad727a817d3cd7763166","src/backend/libc/process/syscalls.rs":"17b7eab2e0ea2898d41ec4e0d2a84baf57eae9f6e3e016e6b74f0e174440cffb","src/backend/libc/process/types.rs":"c26796486e9f9e7bbc44715ecaac285eb808fd9a8c08d237b2ac19f34954d608","src/backend/libc/process/wait.rs":"0cc556aed976b4bbb3965f74fd76b8216c755fce25043b7b21ce54afa07c9773","src/backend/libc/pty/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/pty/syscalls.rs":"699a4c325fc590b8b5dabfe5a9ff386809be14dd24bf35aa6ef581b2bd75457b","src/backend/libc/rand/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/rand/syscalls.rs":"78c7201e6bcb75e9cab9486d1878861319f865de2b2c46437be68690bd17bf13","src/backend/libc/rand/types.rs":"7763e6b40e4b9df825fdd2aa5ba1770da999137d04776561167116c58f8fa618","src/backend/libc/shm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/shm/syscalls.rs":"60d797d4e85e08e6330e6b8d80094356ce377e5484952f88ae2a6e49231c268c","src/backend/libc/shm/types.rs":"be4034353ab434568053260712fa5f55ed6d8a1a9fae64fa4fe1ea4f2e82120b","src/backend/libc/system/mod.rs":"38563ea68829ca5a4b1b0695ac8a5c05718e85bdc88a36dc805efdfce45d3909","src/backend/libc/system/syscalls.rs":"4c632a6d59fef0bb516d89f119f7f37aa18f8a75f63aeba73d71c464473874cb","src/backend/libc/system/types.rs":"6871e16aee14fe2ae03cea798c3e509ffe44778a9c0e5608fd73e2e015876d7e","src/backend/libc/termios/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/termios/syscalls.rs":"19c3a0cfd146ada30e04bfc6b8bc8cc2319890851c803fa0024ff05085137151","src/backend/libc/thread/futex.rs":"b666828653b12634bbd7fd709acf69641b648ec40962a1d4f904c5db14d2eff5","src/backend/libc/thread/mod.rs":"fa710053974d7f16a6c49242ee6c10a3b9e1143452b9daeaed8837302a679fff","src/backend/libc/thread/syscalls.rs":"120cb13fe7ffdef7a52ca1d141d31bf189176e9f5862f87bb171d54370a682a9","src/backend/libc/time/mod.rs":"38563ea68829ca5a4b1b0695ac8a5c05718e85bdc88a36dc805efdfce45d3909","src/backend/libc/time/syscalls.rs":"f82e0725c5af8a52e61ee83aad2c77694f2f7a72ac1e6eb284109a70ac6edc38","src/backend/libc/time/types.rs":"d4e55d2b9fb8de772c8bf5bba157472c49a12c25502e62a9c599a2e6d3196a5b","src/backend/libc/ugid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/ugid/syscalls.rs":"8edf91b8790add23902c9f5418da6b0723a371677f29f490e0c8af852f0f1a0c","src/backend/libc/winsock_c.rs":"3bf3884fd250eca806ffdf96da68e29c133a697810b78b333ea449e523e58562","src/backend/linux_raw/arch/aarch64.rs":"2a255c9135bc8a321c180f52b88eb2b158bc9170cd222149caeae63c24587d44","src/backend/linux_raw/arch/arm.rs":"165bccb5883d0136e55d42091183765f83d86e9d37a7cb2cec9ae8af32774db6","src/backend/linux_raw/arch/mips.rs":"24af364aa93fd4b9917639d473336490a143f0d1723b09f388e72d534160ee51","src/backend/linux_raw/arch/mips32r6.rs":"e436a2ade34f2f7c58b8924462b07a2499dfc951e1e1318d51759444fb8b658e","src/backend/linux_raw/arch/mips64.rs":"897da9ddc877963ad59464d7f81dc59df8a7e91251e6adea14cfd946e2740a1c","src/backend/linux_raw/arch/mips64r6.rs":"3c08aea13c1139fb0dfbe74ca3d0147f007c3aa2eda641afb82c46f6aa4f6cd1","src/backend/linux_raw/arch/mod.rs":"37eaeea601d39be00d170856a31a8ec6a27b0d3ac22ab3ee642ab0e45dee237d","src/backend/linux_raw/arch/powerpc64.rs":"dfb001f8636a5e46d728900b0804fe6c374e5e18a6f0e76d7d62e0c07da74477","src/backend/linux_raw/arch/riscv64.rs":"41d33242d941030f46077dc2b1bc4c7913fe7630d693a5a7eef966bcf38f9d8b","src/backend/linux_raw/arch/thumb.rs":"2fd979ab421248c0a4c592bc0cefee63edc26528f469b71b63eaed35356e42e8","src/backend/linux_raw/arch/x86.rs":"81c73c0a13925854b54db754f533dec565b1db2d9586e210a2450c6f5915171d","src/backend/linux_raw/arch/x86_64.rs":"e929036a1f3cf93ba538f4523b241605cc7b5e61f84ffe6d9d5cdbcb6f73e543","src/backend/linux_raw/c.rs":"74cdf34fcd5bba9628c04585fa13721073e2bffe6740315c7655d1a55150230f","src/backend/linux_raw/conv.rs":"3b452e19c6b8285df205baa790e19f32061952ae7c7c4e39ba01726de6beb4fb","src/backend/linux_raw/event/epoll.rs":"18980136ee6d3e327d6c46a33306fa934a80eaee609a329098935569507440d0","src/backend/linux_raw/event/mod.rs":"72e46b04637e2d1d2a6b97af616144995399e489d1fe916faf835d72fc8c64cd","src/backend/linux_raw/event/poll_fd.rs":"78d040f7ce0574fc18cebf6b7766c210a3254abdbafe175f51c6b460fa19c514","src/backend/linux_raw/event/syscalls.rs":"8782cdf978bff0773bf5f35c1056d5c29a40742cf6f99d9606d951b52596cd34","src/backend/linux_raw/event/types.rs":"2ffdcb728587dbc25d302527f4a52296b96013d5199c946291b059ba4f7d466f","src/backend/linux_raw/fs/dir.rs":"c675dc5413428d2defd6752e99d210da83639779e853db209de6a1c08d35e0e7","src/backend/linux_raw/fs/inotify.rs":"42a6ed7b091eee20d7fd9becfea240deb99d0b8ca3e8e083cf365d484d8eeeeb","src/backend/linux_raw/fs/makedev.rs":"c6b4505c4bcbbc2460e80f3097eb15e2c8ef38d6c6e7abd78e39c53c372139e2","src/backend/linux_raw/fs/mod.rs":"8689e46f9c4c3e1190ae5fe39176c573cccac10b3739472128ca237f41e2686a","src/backend/linux_raw/fs/syscalls.rs":"a4512f58e2ef01bf0799c96fa7821284866b6826594642565f46d93e566e2e12","src/backend/linux_raw/fs/types.rs":"c015cf3cde945ad4a42ec706c6e1140c7342041ace1da6e0ef1bbf5e9e019ce2","src/backend/linux_raw/io/errno.rs":"8f15d735435b722466696094aed8b612b8526658ab7e079f386037cf8a3b1a6e","src/backend/linux_raw/io/mod.rs":"7ae2324427892cca6f5ab53858d847b165f790a72ec25f3d99fb15f0506c9f27","src/backend/linux_raw/io/syscalls.rs":"026f99b397ae521ac4b2ba41acec6547018073a9da5fa355aa8f9ac61298c172","src/backend/linux_raw/io/types.rs":"0cfffdc2fc9c33faa4055f9686db5922676f17d5c069362bae3745f39da3594a","src/backend/linux_raw/io_uring/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/io_uring/syscalls.rs":"0f7c9cb7ccddf5687e4b9e5b23558871a452a29ac6095a0184a06c47b9b18eb6","src/backend/linux_raw/mm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/mm/syscalls.rs":"7d43752e8abaa8cec02cd3329e08303c56a9e6ac97aec447293397b9953c3ba3","src/backend/linux_raw/mm/types.rs":"4407b4b54c4048bb1d4e702575e20037c24483a22f6a5cfcc940e4738fcff381","src/backend/linux_raw/mod.rs":"bb26fe4783f834a4624c99ecf9e4ea8fa4d1c7fe9adfb6d7310fac689e7797bc","src/backend/linux_raw/mount/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/mount/syscalls.rs":"3947261b5d46b9737f02dc5352c3a3a35c63c461fd75bcd8ae6619dfc0bfb54d","src/backend/linux_raw/mount/types.rs":"8d39c4d6e555c88de5da3115a301562fafdcb3942aa69a0e01d42de8edb1c78f","src/backend/linux_raw/net/addr.rs":"fbb6c071a8ebc2c557c7013d36d4b540c1ff6ed63103d0a8abcacd8977fbf5c8","src/backend/linux_raw/net/mod.rs":"904b2ccd4228ebcda25db0223b92fb03e4042bcc7b0a202f19410a8a5ff517a5","src/backend/linux_raw/net/msghdr.rs":"3198339ccd00224aefdba74e9144818fe387222066a387a9dfd95fd8c48cf9d9","src/backend/linux_raw/net/read_sockaddr.rs":"24075ac4c05fab5fe44aae4445cdd12ec7e474f047150baa9b768741d6b9693d","src/backend/linux_raw/net/send_recv.rs":"85b1a78ecc920e919ce7a0a9f7ad79cba5ad09af4f53018df8c46c7c112bd7a9","src/backend/linux_raw/net/sockopt.rs":"2ea8625ecd68a799c14ed48dec2f3e01f085222b6cc36f4916b20143e08ae575","src/backend/linux_raw/net/syscalls.rs":"eb897e0074ec53c5b18594c39cbb9ec5bd796c9120bf029f0b05145a7eee1804","src/backend/linux_raw/net/write_sockaddr.rs":"0eeeb7ec8dadf95503a2f89fdc933b8f9c7e45e03fdb343ce490b6cc8eec0f96","src/backend/linux_raw/param/auxv.rs":"c1b1a628d6c51ce8adc981f58c6e08abba4a151356ff98cdbc0b3e75abeadb8a","src/backend/linux_raw/param/init.rs":"a5024f9afe361884f22fb4d65e632ccd8a60f1138ff6bd526df600d40e0d9b7e","src/backend/linux_raw/param/libc_auxv.rs":"e567f471ab21068141acb9fb2f88b9ba553f630945bc8f01b689955b48414512","src/backend/linux_raw/param/mod.rs":"2e6a1a1c00351b9c88bd615aa923f71d76208df5626dd9bea03067f28f81dc31","src/backend/linux_raw/pid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/pid/syscalls.rs":"eef6aa01830ddd510b83f507da2002c03e58318b73744be2c06ebbe33c4f194f","src/backend/linux_raw/pipe/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/pipe/syscalls.rs":"366c730fc3e991bddb9f5a15b8c3917a8e6ace6d1d5a9113b2749e476faf6f83","src/backend/linux_raw/pipe/types.rs":"9d4bd3da7cd078d42574ad7d6b7554e301a1a7e97b292a77993a6d263726ef1e","src/backend/linux_raw/prctl/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/prctl/syscalls.rs":"a18b224307e0d27bda9b7b85c75cd6c7ddfe39f5ce52efb7bb0bf0585b757343","src/backend/linux_raw/process/cpu_set.rs":"dfdcbdf35aff6a3e08e7d38193bf18c12ca8aa64eb0dc417667be82dcc0f7c55","src/backend/linux_raw/process/mod.rs":"fb393c70a9c63ef9a6bf1fb5a2dc94f07d6b0b6987cc5231c15c607015dafd68","src/backend/linux_raw/process/syscalls.rs":"3730c155663d727d5b239f57f220727ef33dd257e74a1b697274de0f94e1da79","src/backend/linux_raw/process/types.rs":"6811ba822bc12a1a6336649151b4adb1f5d3365684a31c07f01953ea9547743d","src/backend/linux_raw/process/wait.rs":"921aee4b0048746087f52615a98edc2aa0fb4b53d6df44be4533098df55d1b05","src/backend/linux_raw/pty/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/pty/syscalls.rs":"ae09c4aecc0ae87b1ca58d82efc58007b9dddaae78460d615f48da19d1cd0f89","src/backend/linux_raw/rand/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/rand/syscalls.rs":"a84f70251672e92f253838bf05e989434f67373233e88d21d8835cbb792b1fe3","src/backend/linux_raw/rand/types.rs":"b7217c98f2da4ecf89225f36eb52c396ba2a73debdeca739ba864a9030b6a23d","src/backend/linux_raw/reg.rs":"39b6234971122d247054bda8c2dc3b44493be30482635baa9e2fcbe048e78cbd","src/backend/linux_raw/runtime/mod.rs":"b2cae8cce3822c3c92942f06ea0b68464040dcac33c6f0f7ee392c6269993347","src/backend/linux_raw/runtime/syscalls.rs":"fc9c9edbe07dd7644ab75c51a1597a31467a3421301503a072bef93e6df07643","src/backend/linux_raw/runtime/tls.rs":"6316060560a112c2e9cd9807cdba6e8c91414113a04a739160929ae9a67bba1f","src/backend/linux_raw/shm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/shm/syscalls.rs":"3ebf91610b02de0312e1f0f0cc5d56e12b4d93794540087b3182cbdf3cb9c8db","src/backend/linux_raw/shm/types.rs":"76f587e0edc78e3b780b66ddf9bdf56d5bcb57822111e9f8f66a7eec07c2c0fa","src/backend/linux_raw/system/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/system/syscalls.rs":"2af6c2672a6528b404b52f501d9803a63e9f47886d3b5d2d2dc5a71cefa7327a","src/backend/linux_raw/system/types.rs":"1ceab8d738a71043473b26e97fa3fd79d588a86d4774cbc9b9e1d4f1447a016e","src/backend/linux_raw/termios/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/termios/syscalls.rs":"01c4c8028595d8f53197ac3f2accb83057cb80fb5f78db63bbf85eb46d40e1c9","src/backend/linux_raw/thread/futex.rs":"0aa0f9f5be6a79de81e82c9f11f1bf8831f682a4b2f6cb29669e1591636f084e","src/backend/linux_raw/thread/mod.rs":"6ad4a4b90b9234e79900b27ebbe8837e3a7a36aec532912e3e253edce5225067","src/backend/linux_raw/thread/syscalls.rs":"0e3dca63be7322e1e9c58456b28eb8548abb9f08b4436b87b139e891c01c446d","src/backend/linux_raw/time/mod.rs":"672724f55b7b7be6a7452bb1cc2d28b5f0aaa840a2856fe363acce624e1beefc","src/backend/linux_raw/time/syscalls.rs":"451da0bbb66accdf58ee7f2f8746a93b22ee985907a08717a3d3b1650457d878","src/backend/linux_raw/time/types.rs":"56cb936dc36af759e06d0b7bcfa7db02818dff6084c1d1d9a538a6d5945032d5","src/backend/linux_raw/ugid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/ugid/syscalls.rs":"8c86d251db33b399a1d1cbb8e87afe650b78db84f444d3251309b7a0480b54f7","src/backend/linux_raw/vdso.rs":"056314f72c71d4b041739337ca2098afb7fe070f844327f462c293f43481b75b","src/backend/linux_raw/vdso_wrappers.rs":"6bd4b8c15761e16defff7d2eed18c008c9f980ebee6c9bdc2e104b16b9b7c631","src/bitcast.rs":"e21c87c292c781b27256c6f5dcf9fd52dd69ed6e21016cbd67ac31a8219ebf8e","src/check_types.rs":"bc31f9b293bfbf272284ed4d0da24e941206a1ac3f18d3abb0b1a61f1ede1dae","src/clockid.rs":"1d2e1cfcf23160b55d6b046d235edf2eb2408f072a8bdef3e3a3871885abdd5a","src/cstr.rs":"41af2a4429fe6c67a8883f8a8f63d66c90df566abda74fd2b03bcef7b9f24218","src/event/eventfd.rs":"81cbd08f7bdf40a6ce1ca692b63da1dc8ba925282990668d9d68f1203e839fa1","src/event/kqueue.rs":"f13f40b97c4413902115408fc2f340e7c82bba42d2468015b007e8ac6ef23132","src/event/mod.rs":"326a7ddfeb33bb95dd31391d65f400fa622e5d0ab827c096cab16af4b6843b51","src/event/poll.rs":"0ee583dbd457a573a82a06c04a2a24bd2c76e751d27a435507d55338e2871327","src/event/port.rs":"4e51ff150e5d17cbd44aa64a38b99c15e26eaaf2e350768b5dcacdfde4fa5212","src/ffi.rs":"c2b8b38c02d72749aceb715c496726caba1f1fa989ad3856d0103a2fafed89ed","src/fs/abs.rs":"6f0b57878f61c009fd0a3698a3983aa8076ba4fe3b5c28feec0307d65a77891c","src/fs/at.rs":"9b5f35afcaca9dd19d501cee3ad305b1d1c1b588c5fd925b18b6d3b614f05011","src/fs/constants.rs":"24076a01f8bfc126b0905e9bc0521d2c3a3abc6c3b8c86ddb1e545070d097127","src/fs/copy_file_range.rs":"d3b644374390d482b2ff749a2459458872b57d0dcf9670368739b7833509a7c2","src/fs/cwd.rs":"9f429a79ace6e17455634da09216ee0ad3d067a4541518b3193ae6a8d9ff1e26","src/fs/dir.rs":"347a52f4ca9ac6321c52e802e97ec90d1b4c62ec955c8996fc17f8f5aed69966","src/fs/fadvise.rs":"beef66ebe1310fb92628240b2cde68f744c78e50f6ff61bb1404bd4868d9cae8","src/fs/fcntl.rs":"2085102d05d0ba963e100ab3e3f19dac4ff27d142fbf798626d20a2a596ba96d","src/fs/fcntl_apple.rs":"e2f23f038083621bcdecc98d02ce1023508afaecdb2ed0fba5c8b70f955301e5","src/fs/fcopyfile.rs":"ec95929cbbe02cf49233a785e5238931bb107b7903cc5bc95e4231de960995f2","src/fs/fd.rs":"68d19bb99da0444444acbafd27ba10a69fc2ac35ede4e0106ac2043c30ce4f8f","src/fs/file_type.rs":"fefd865f91011f66126213b0994773d99e373b468c31e866002228c98c64ad85","src/fs/getpath.rs":"28f6970fc1bbc37bb35c84724b59eac436ea7407a4522e18c2bdacb1fdd2edd9","src/fs/id.rs":"1b5c8a8baf9a9bb1f895f97189cea4e5982a0d35b192afeec6340a6c6222e0cb","src/fs/ioctl.rs":"71327efab1e73c7844c681ea7e822b5124738196b2fc687aabc786b90be9fe32","src/fs/makedev.rs":"85520b484cb7c15ab71ea1c368578ea3b7e484d82f8510db92b6ce9f7ca341ae","src/fs/memfd_create.rs":"15a8f28e040cffd8c24c7903483440f88853b2e538ad48d80f3c00b4b2befdea","src/fs/mod.rs":"ecd20bf01d651b1866b198c4fc0dc8e7d681eb581e28708c8a0abd062de137ce","src/fs/mount.rs":"8f6ea2b997dd83c50c90291b9ada3ed77a9ce1ad701c9b0d533b5113b317be5b","src/fs/openat2.rs":"4a95c15dab533a41201b5fa25c8a212956b7571d58cad696bdaf45af8aef96db","src/fs/raw_dir.rs":"18ad797876d6230c38d4cacbed081c4028e03ace477d0520d9b226b40de942f0","src/fs/seek_from.rs":"a9efa0feb9ac789cf47667e91efee2e3f2dcde16cb3b7a928c99da640fa0e0d6","src/fs/sendfile.rs":"e3b2058741cf4b1698f34d84bb37130cf2b72806d522a16fe541e832cde136cb","src/fs/statx.rs":"c5192f54311faeb5a8e7ba7da1acd4fa5a8f69f6c15c4d78b4b7a495d21d0864","src/fs/sync.rs":"a3b23543834281f347b0f873bd38154d31d404871188ac08f2b20b9196234cfd","src/fs/xattr.rs":"b976eece822f69e768d91e61d86ee990ea18097b20f7ebeedaaf718c61b48962","src/io/close.rs":"0aa3cd05a8fed8e5244f97b8b6c2e7f65ed93a4e5435c6329852bb3da7514440","src/io/dup.rs":"a8a59c5d345dc54c57ded890720c33eb78c4d53917c71e8bb6317f7ed122cb87","src/io/errno.rs":"58a4d20ba0924e4d514e3c876fbe08982f1623187642ae14780815e65989c8c8","src/io/fcntl.rs":"c0f7bd7fce1119b0c1d0085b7ab77d5df02470ae3e06035428a2452dacbec296","src/io/ioctl.rs":"a47a5ec14607142f2c2ffcb93d016b8e86c8b15ba94b56b35382b545db62ea34","src/io/is_read_write.rs":"1bfb9ee5d58e0b29b44af12fe2668c7bccc841358698dcde47f1519ff9bb73b4","src/io/mod.rs":"75f1d0646be1d4c7c08b5887d8119b0103be8c25c43ccd4e0e97015508c0bb8f","src/io/read_write.rs":"54ba528b11601af1338bb0c71a41b256a0033076d30b3946c3fd0bdfa61dd021","src/io_uring.rs":"61e6dce7a53ce141604b5f577e20ec5aa73a20e2c2101825c7c52396ba221886","src/ioctl/bsd.rs":"e33772530b1b2d1e7d61ce53d9267e68d88f7f5df13301f90412d89a46c6faaa","src/ioctl/linux.rs":"256aef9fb51c67cd7f43a581b702aa62757e3bdd7c38f71bf849f818194c2285","src/ioctl/mod.rs":"739a4f6d4e9a816745e42133c1b4c51c1285bf5cde3e1ee3ea72ef0b802e3806","src/ioctl/patterns.rs":"26dda154aabf67d45362d9378875f95c1593391ecbc62be02d187b7e19e7f9da","src/lib.rs":"7430fd1db444a72dc8f9b762f2fb61226dd00c89c7c932481e94958f60678383","src/maybe_polyfill/no_std/io/mod.rs":"77889bb5c5a4f2e50e38379cdaa5d0fef4b0cafc3da056735df01f6deae75747","src/maybe_polyfill/no_std/mod.rs":"ec94a4aab4bc475785e469d10fd6bc95667e1d47d958e9cff3a19049d88c8c80","src/maybe_polyfill/no_std/net/ip_addr.rs":"046327ee244f758f2bc31d3be305d8cd0dfd8342aac1add8259e999b4b46c4a7","src/maybe_polyfill/no_std/net/mod.rs":"b0ee611c454679226a15bf647e7779995f3fe9c8e0507930a0d0613eb414b7c2","src/maybe_polyfill/no_std/net/socket_addr.rs":"bfeb32d32c176cde76323abcffebfc47e9898fb8d7ce3668c602dc8451086a2d","src/maybe_polyfill/no_std/os/fd/mod.rs":"27ef0afbcb0695cbb15101070f417eb51e0ef85ae66ec967d95e80771d507c47","src/maybe_polyfill/no_std/os/fd/owned.rs":"ab86ffa2693a04f3085770faf395f95e5303001711be8b19c44a47a0ac574091","src/maybe_polyfill/no_std/os/fd/raw.rs":"f3648c7bd4a6ff94bd823ed9e0d99d398e02f24875cf9b25962736999e7c6943","src/maybe_polyfill/no_std/os/mod.rs":"27dab639a765827644005d5f2fcc7c825310606b889cc8dd83f54c9528350dc0","src/maybe_polyfill/no_std/os/windows/io/mod.rs":"5bbcc05c83fee5026dd744a994e0458469466d5be39081baa62df07753b92fd2","src/maybe_polyfill/no_std/os/windows/io/raw.rs":"4c32609a489dd938a49328b5637cb3bafb96437f2f9f269ab66d7d3cb90247f6","src/maybe_polyfill/no_std/os/windows/io/socket.rs":"c658f42f24eff44a661f2adfd24a11af80fe9897f3e2af4dc5d2c64808308d65","src/maybe_polyfill/no_std/os/windows/mod.rs":"fdb416f8f231a4e778b5f985b9ae712ece5e1a1402963ad1a5f6a8b9843795f4","src/maybe_polyfill/std/mod.rs":"7c16c86cc73e226e65ead598e4018238b22000a345040b706bf1e1b3eba115fc","src/mm/madvise.rs":"3c262b3713a73fafcedf1b04bb12c048bb11d47ca43c959e5dfa48c27651f4f0","src/mm/mmap.rs":"28523bceb2b7e3bc1207f351d8a1771867159e1b9ff1d9c37fbdc05aeb696b50","src/mm/mod.rs":"b3a6cb838986d45825b912355cedead761211a494ca6f89b2367a2d2157e340e","src/mm/msync.rs":"9dcfe5f54235e9314a595edb8d548ac79d222bbcc58bb3263cf7e96d603b23ad","src/mm/userfaultfd.rs":"8073443bd181ff0b3ba4d0b1ae67370b4864035a0c8b4898cd709dc47c518ae7","src/mount/fsopen.rs":"160e384e9175fd98669cda1cf3590bb195c2ba7e1c724e9ea06e692595e58ba1","src/mount/mod.rs":"5f0c9df4727592695deb1cd63ae1de021b03dcd9d0d1b68e1f34d12a7136cb19","src/mount/mount_unmount.rs":"8ad11675e5d762d33fbefbed06a6a9f9e52a9b689bd06662446152614321ab77","src/mount/types.rs":"601ae3e10b7dc496fed7f3b40a80e81c6edd7bf13189d7be45c3212d4c684c39","src/net/mod.rs":"a6bc55f9e086caf46a7c00783498d73a328a66f2a991f1ec65d5f13931377b0f","src/net/send_recv/mod.rs":"f33e39c7b228cd8109823b0a0a1aa397cddad504d49e69b36f74c5b84e5070e5","src/net/send_recv/msg.rs":"6a73e4fd2b78fbeb683f48bcd8404a362245c6cd66e0d59e6378467600b44268","src/net/socket.rs":"bc825a94831557bf4c2cabd8ef5ae21ffe0986c24f9ada564eefa66270f69ae9","src/net/socket_addr_any.rs":"a9af81e967a91b45e51aec4f46a068fade7035c5d19dfaf05bfdcd3b3c32e9bf","src/net/socketpair.rs":"56f4885c31d2664cd16e18a9a88792a4912fedd953cec36dba67e8581fd57921","src/net/sockopt.rs":"58fbabf73ede7afaeac279241ff874dcee5604f63b3f38e4435a61a354da2196","src/net/types.rs":"5914e786d6a24a6efc355023fd71a28bc29fc85fb672e5388370243fe83e4191","src/net/wsa.rs":"6e546b42f50a851fc833c57cda76cfb347203ed4b0dea574a3d325bf5a2ebf80","src/param/auxv.rs":"886e57d52adf0199b8146f849c2db1e3136c07fc4ec61f60dc781fea11070604","src/param/init.rs":"a31c0e5cea61a1a999767fe74f87c0d59eeb6bce66578b842fe0e0c32be27a55","src/param/mod.rs":"25b10acd5b1da8faa6f5204e6b0379b38bfab667916e886cca64bea01a42dec2","src/path/arg.rs":"b1329485ad525e8d067792b0890a1241c20f6c08d29f0661f2a9f429581a7818","src/path/dec_int.rs":"fad9793b89eac526953b994cbed6b614f01c25108f9763e19fb98029feda93a4","src/path/mod.rs":"6b1b949c94bcc47e0f08a3f8e8db5b61ff497d0dfd3e0655f51c01d3e4b7dfd6","src/pid.rs":"f1c486000c5b1311b2d720cee88f089c17ef9a171709673dd06e6f35f4ff98a3","src/pipe.rs":"fd021deeacf78790886ae03f1e8f0fe5a13909c7532b2246581667eb3d0483d7","src/prctl.rs":"c9daa9397460a27ed6e31fc454fc40dff83720312a002b66f4c178fc005379ec","src/process/chdir.rs":"6947b80d468d906d528de328f30fe7509acfe4976a0de3fa600a7cc39618c049","src/process/chroot.rs":"2b5f6124eb19f26ad2705174f7ad50cdc0a5d15abd59ffcf55421228d82130b4","src/process/exit.rs":"48de66e5504a00cb375d8f415ce63b6225a3f5204268d40726a7d0fbba43f587","src/process/id.rs":"e4733f9e8e4b5f50e98ef7a23802e126f1f14ece8b3d7ae7446c6a66affc6bc1","src/process/ioctl.rs":"23ad0285671e8d7ca71a63c50655dbf732ccea8af11d754a0558e0236db37e76","src/process/kill.rs":"7b879e5cff8a064acd0e7488f4e21bd4e4a8506ce380688b72cc48d283ff9c89","src/process/membarrier.rs":"d6c8821ec73019040c926f4e1018f399c286e87074ab9c6692370c88772af044","src/process/mod.rs":"0ef104be820068409648ed83739a51a7dcf07612088f9a6ed6c7ebdb6ad54092","src/process/pidfd.rs":"4be2fba21430ba84244e11c636c91201bc1d1dffff3e63a4da84cc96f501786b","src/process/pidfd_getfd.rs":"cbc42a1548280ae76c3c66e851fd53cc2a3d4c089cb5798c17a2cdf654f0e229","src/process/prctl.rs":"3396b39a0f161385f02f6a4a17db0a3fcd2d70f4d6d2e1d8d1b9091b36d5704c","src/process/priority.rs":"f135482e71ea8aa0daf92b9f238051178a4c904070fa8409622f94155df3c544","src/process/procctl.rs":"0ca2f5fd4cd39335c141758cac132a3271e318c688f8882e527f58c02d5ab0e2","src/process/rlimit.rs":"10b79de3ced0e64059a94c879742d46a35a6176c776d8eed75031d5e6340283d","src/process/sched.rs":"7c3bfc5be624e7d7f5e043c3ee0b0566fcab3d684d61c272e7b4233410ab1c42","src/process/sched_yield.rs":"6565faa3928b66ddc74a65e893e15edfa4b9be4f7e5f5f68527501a7f6bc3350","src/process/umask.rs":"1a0f31a842303c978e3f05ec191e2b5e96104c09c6596473b42b1fac34898a50","src/process/wait.rs":"cef08e74f5d87df925fa6a6acc95e8de0e689fb420ba514b9fbf94a9ca403465","src/procfs.rs":"63b286dd3302be7f426841eb3b9261ef4785c3159ed78c24734bd5094c9b0b2e","src/pty.rs":"ee697b226230b65c0432a42cd82b2fad885ca70285dbb0a7b8ec0ff81d23e3a0","src/rand/getrandom.rs":"1c8166a02a74f5593bb4673ef907524df04cbc1568020a5ab2ff7f4aa1283f8b","src/rand/mod.rs":"cab59332aadd9b679f5b22cbb222d48ee028af5eb9fd4a4d43922da659b895d7","src/runtime.rs":"9aed98071bf8124c6913e8517b28ef63c7b88001042f0522d877ab65ac88099a","src/shm.rs":"b96fe8a05ee5d4536464a8843a776d43a938abaf22c772fc35b5373d95644a8d","src/signal.rs":"c071b4f011deef19a679d7a832d5408a3cd68627161d6510008d6312266a2611","src/static_assertions.rs":"39986672f489949be1d6469f0c30fb7d2eaa21bdaa2702a8c150b2b150bf5535","src/stdio.rs":"a5de2d7d9c3c5a901f88b6acf4754687c958a2f3a93c7945c2b8fcb948d468af","src/system.rs":"e594c16b4600a8ebea01c5850cd9e1521acf242f1a9f083403cfe95adcde4679","src/termios/ioctl.rs":"a1ac967f7811a482f8bb53847c37c8359f518cd26da9df7b816ba678a0139623","src/termios/mod.rs":"b44b7caa60b6f458657ed58a0e0eca41bb4e6d6be4b0f042bbb8ab7056cebe4b","src/termios/tc.rs":"e41312d15464b83b2457c2502fc3f3b9998cfb02ba68739026dd4285cc7130ac","src/termios/tty.rs":"906ee160ffb5ba3a92ea3a61374cf2cd617cebae51f5490073b6700c438d5eee","src/termios/types.rs":"8c4f029e8dbb9b2c59082bd13d628a741f6f0a31f5ecf485c93795b73c1daeca","src/thread/clock.rs":"469326c822dfb63405ee8537552cedde0b344978280e6645bbadd47dedc71e18","src/thread/futex.rs":"985f9a0dce1e2a4892ae7f26bd1bf119ceae3f9fa6b4707e166624fc1cee76d4","src/thread/id.rs":"ad72db4fea9fccb728310bbfd01ef8c00f6cc60fa2a750f6349646a134f7009b","src/thread/libcap.rs":"a3e316e6d0f58b075125fa939b9b824e1595de20a23d341a36999416b0d10d36","src/thread/mod.rs":"98634ece0b882f123ad887017692f2a4d94a23a1dec278ed660b3497cac5cceb","src/thread/prctl.rs":"10e2878ef856557bc5bd24c77f5699266e746f912e73690980371cc99c7417e8","src/thread/setns.rs":"730badd8db8ce7b905767b341211f1226eeeb38019727bf994eb64f2531b7b7f","src/time/clock.rs":"e59a29f1bed8c31c3d5b6fad60f2d4fa6cab8dd8e86148bb3693a5e3a1ce735f","src/time/mod.rs":"43afee938c80d124d04d4ba190c03f4d21d1e3bfc154fff309211e4f6eabe940","src/time/timerfd.rs":"f17092b84553741aa2d2b44c6992b5d2c8c96cc2c2007fc9a2c6b2064485e53f","src/timespec.rs":"32a4d930cbc0f6dbd23153290db920671cf4ce65a4a127e176f897c1cde42d7d","src/ugid.rs":"6616c6e35b7e43aee5b150f1efae7a50711e0947943c9a96833dbe214ad9e85f","src/utils.rs":"9ae76f8a41d6cc350cdd58c9084b5c3a5a708eeecd769783debdbcbaef442182","src/weak.rs":"c7cf03bf2aeba494b1999ab32183fa8c603ab72e254c0e312a67f168877e410d"},"package":"745ecfa778e66b2b63c88a61cb36e0eea109e803b0b86bf9879fbc77c70e86ed"} +--- a/vendor/rustix-0.38.19/src/fs/ioctl.rs ++++ b/vendor/rustix-0.38.19/src/fs/ioctl.rs +@@ -48,7 +48,7 @@ pub fn ioctl_blkpbszget(fd: Fd + /// - [Linux] + /// + /// [Linux]: https://man7.org/linux/man-pages/man2/ioctl_ficlone.2.html +-#[cfg(all(linux_kernel, not(any(target_arch = "sparc", target_arch = "sparc64"))))] ++#[cfg(all(linux_kernel, not(any(target_arch = "sparc", target_arch = "sparc64", target_arch = "riscv32"))))] + #[inline] + #[doc(alias = "FICLONE")] + pub fn ioctl_ficlone(fd: Fd, src_fd: SrcFd) -> io::Result<()> { +@@ -77,7 +77,7 @@ unsafe impl ioctl::Ioctl for Ficlone<'_> + type Output = (); + + const IS_MUTATING: bool = false; +- const OPCODE: ioctl::Opcode = ioctl::Opcode::old(c::FICLONE as ioctl::RawOpcode); ++ const OPCODE: ioctl::Opcode = ioctl::Opcode::old(linux_raw_sys::ioctl::FICLONE as ioctl::RawOpcode); + + fn as_ptr(&mut self) -> *mut c::c_void { + self.0.as_raw_fd() as *mut c::c_void +--- a/vendor/rustix-0.38.19/src/backend/libc/c.rs ++++ b/vendor/rustix-0.38.19/src/backend/libc/c.rs +@@ -6,6 +6,8 @@ + // things below. + pub(crate) use libc::*; + ++use linux_raw_sys::ioctl::FICLONE; ++ + /// `PROC_SUPER_MAGIC`—The magic number for the procfs filesystem. + #[cfg(all(linux_kernel, target_env = "musl"))] + pub(crate) const PROC_SUPER_MAGIC: u32 = 0x0000_9fa0; diff --git a/meta-balena-rust/recipes-devtools/rust/files/rv32-missing-syscalls.patch b/meta-balena-rust/recipes-devtools/rust/files/rv32-missing-syscalls.patch new file mode 100644 index 0000000000..ccadbb9b91 --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/files/rv32-missing-syscalls.patch @@ -0,0 +1,1503 @@ +Backport rv32 support + +Upstream-Status: Backport [https://github.com/sunfishcode/linux-raw-sys/commit/6f86540e73bd45c9d13730ba0121d1820db0eeee] +Signed-off-by: Khem Raj +--- a/vendor/linux-raw-sys/src/riscv32/ioctl.rs ++++ b/vendor/linux-raw-sys/src/riscv32/ioctl.rs +@@ -1,3 +1,1489 @@ + /* automatically generated by rust-bindgen 0.66.1 */ + +- ++pub const FIONREAD: u32 = 21531; ++pub const FIONBIO: u32 = 21537; ++pub const FIOCLEX: u32 = 21585; ++pub const FIONCLEX: u32 = 21584; ++pub const FIOASYNC: u32 = 21586; ++pub const FIOQSIZE: u32 = 21600; ++pub const TCXONC: u32 = 21514; ++pub const TCFLSH: u32 = 21515; ++pub const TIOCSCTTY: u32 = 21518; ++pub const TIOCSPGRP: u32 = 21520; ++pub const TIOCOUTQ: u32 = 21521; ++pub const TIOCSTI: u32 = 21522; ++pub const TIOCSWINSZ: u32 = 21524; ++pub const TIOCMGET: u32 = 21525; ++pub const TIOCMBIS: u32 = 21526; ++pub const TIOCMBIC: u32 = 21527; ++pub const TIOCMSET: u32 = 21528; ++pub const TIOCSSOFTCAR: u32 = 21530; ++pub const TIOCLINUX: u32 = 21532; ++pub const TIOCCONS: u32 = 21533; ++pub const TIOCSSERIAL: u32 = 21535; ++pub const TIOCPKT: u32 = 21536; ++pub const TIOCNOTTY: u32 = 21538; ++pub const TIOCSETD: u32 = 21539; ++pub const TIOCSBRK: u32 = 21543; ++pub const TIOCCBRK: u32 = 21544; ++pub const TIOCSRS485: u32 = 21551; ++pub const TIOCSPTLCK: u32 = 1074025521; ++pub const TIOCSIG: u32 = 1074025526; ++pub const TIOCVHANGUP: u32 = 21559; ++pub const TIOCSERCONFIG: u32 = 21587; ++pub const TIOCSERGWILD: u32 = 21588; ++pub const TIOCSERSWILD: u32 = 21589; ++pub const TIOCSLCKTRMIOS: u32 = 21591; ++pub const TIOCSERGSTRUCT: u32 = 21592; ++pub const TIOCSERGETLSR: u32 = 21593; ++pub const TIOCSERGETMULTI: u32 = 21594; ++pub const TIOCSERSETMULTI: u32 = 21595; ++pub const TIOCMIWAIT: u32 = 21596; ++pub const TCGETS: u32 = 21505; ++pub const TCGETA: u32 = 21509; ++pub const TCSBRK: u32 = 21513; ++pub const TCSBRKP: u32 = 21541; ++pub const TCSETA: u32 = 21510; ++pub const TCSETAF: u32 = 21512; ++pub const TCSETAW: u32 = 21511; ++pub const TIOCEXCL: u32 = 21516; ++pub const TIOCNXCL: u32 = 21517; ++pub const TIOCGDEV: u32 = 2147767346; ++pub const TIOCGEXCL: u32 = 2147767360; ++pub const TIOCGICOUNT: u32 = 21597; ++pub const TIOCGLCKTRMIOS: u32 = 21590; ++pub const TIOCGPGRP: u32 = 21519; ++pub const TIOCGPKT: u32 = 2147767352; ++pub const TIOCGPTLCK: u32 = 2147767353; ++pub const TIOCGPTN: u32 = 2147767344; ++pub const TIOCGPTPEER: u32 = 21569; ++pub const TIOCGRS485: u32 = 21550; ++pub const TIOCGSERIAL: u32 = 21534; ++pub const TIOCGSID: u32 = 21545; ++pub const TIOCGSOFTCAR: u32 = 21529; ++pub const TIOCGWINSZ: u32 = 21523; ++pub const TCGETS2: u32 = 2150388778; ++pub const TCGETX: u32 = 21554; ++pub const TCSETS: u32 = 21506; ++pub const TCSETS2: u32 = 1076646955; ++pub const TCSETSF: u32 = 21508; ++pub const TCSETSF2: u32 = 1076646957; ++pub const TCSETSW: u32 = 21507; ++pub const TCSETSW2: u32 = 1076646956; ++pub const TCSETX: u32 = 21555; ++pub const TCSETXF: u32 = 21556; ++pub const TCSETXW: u32 = 21557; ++pub const TIOCGETD: u32 = 21540; ++pub const MTIOCGET: u32 = 2150657282; ++pub const BLKSSZGET: u32 = 4712; ++pub const BLKPBSZGET: u32 = 4731; ++pub const BLKROSET: u32 = 4701; ++pub const BLKROGET: u32 = 4702; ++pub const BLKRRPART: u32 = 4703; ++pub const BLKGETSIZE: u32 = 4704; ++pub const BLKFLSBUF: u32 = 4705; ++pub const BLKRASET: u32 = 4706; ++pub const BLKRAGET: u32 = 4707; ++pub const BLKFRASET: u32 = 4708; ++pub const BLKFRAGET: u32 = 4709; ++pub const BLKSECTSET: u32 = 4710; ++pub const BLKSECTGET: u32 = 4711; ++pub const BLKPG: u32 = 4713; ++pub const BLKBSZGET: u32 = 2148012656; ++pub const BLKBSZSET: u32 = 1074270833; ++pub const BLKGETSIZE64: u32 = 2148012658; ++pub const BLKTRACESETUP: u32 = 3225948787; ++pub const BLKTRACESTART: u32 = 4724; ++pub const BLKTRACESTOP: u32 = 4725; ++pub const BLKTRACETEARDOWN: u32 = 4726; ++pub const BLKDISCARD: u32 = 4727; ++pub const BLKIOMIN: u32 = 4728; ++pub const BLKIOOPT: u32 = 4729; ++pub const BLKALIGNOFF: u32 = 4730; ++pub const BLKDISCARDZEROES: u32 = 4732; ++pub const BLKSECDISCARD: u32 = 4733; ++pub const BLKROTATIONAL: u32 = 4734; ++pub const BLKZEROOUT: u32 = 4735; ++pub const UFFDIO_REGISTER: u32 = 3223366144; ++pub const UFFDIO_UNREGISTER: u32 = 2148575745; ++pub const UFFDIO_WAKE: u32 = 2148575746; ++pub const UFFDIO_COPY: u32 = 3223890435; ++pub const UFFDIO_ZEROPAGE: u32 = 3223366148; ++pub const UFFDIO_WRITEPROTECT: u32 = 3222841862; ++pub const UFFDIO_API: u32 = 3222841919; ++pub const NS_GET_USERNS: u32 = 46849; ++pub const NS_GET_PARENT: u32 = 46850; ++pub const NS_GET_NSTYPE: u32 = 46851; ++pub const KDGETLED: u32 = 19249; ++pub const KDSETLED: u32 = 19250; ++pub const KDGKBLED: u32 = 19300; ++pub const KDSKBLED: u32 = 19301; ++pub const KDGKBTYPE: u32 = 19251; ++pub const KDADDIO: u32 = 19252; ++pub const KDDELIO: u32 = 19253; ++pub const KDENABIO: u32 = 19254; ++pub const KDDISABIO: u32 = 19255; ++pub const KDSETMODE: u32 = 19258; ++pub const KDGETMODE: u32 = 19259; ++pub const KDMKTONE: u32 = 19248; ++pub const KIOCSOUND: u32 = 19247; ++pub const GIO_CMAP: u32 = 19312; ++pub const PIO_CMAP: u32 = 19313; ++pub const GIO_FONT: u32 = 19296; ++pub const GIO_FONTX: u32 = 19307; ++pub const PIO_FONT: u32 = 19297; ++pub const PIO_FONTX: u32 = 19308; ++pub const PIO_FONTRESET: u32 = 19309; ++pub const GIO_SCRNMAP: u32 = 19264; ++pub const GIO_UNISCRNMAP: u32 = 19305; ++pub const PIO_SCRNMAP: u32 = 19265; ++pub const PIO_UNISCRNMAP: u32 = 19306; ++pub const GIO_UNIMAP: u32 = 19302; ++pub const PIO_UNIMAP: u32 = 19303; ++pub const PIO_UNIMAPCLR: u32 = 19304; ++pub const KDGKBMODE: u32 = 19268; ++pub const KDSKBMODE: u32 = 19269; ++pub const KDGKBMETA: u32 = 19298; ++pub const KDSKBMETA: u32 = 19299; ++pub const KDGKBENT: u32 = 19270; ++pub const KDSKBENT: u32 = 19271; ++pub const KDGKBSENT: u32 = 19272; ++pub const KDSKBSENT: u32 = 19273; ++pub const KDGKBDIACR: u32 = 19274; ++pub const KDGETKEYCODE: u32 = 19276; ++pub const KDSETKEYCODE: u32 = 19277; ++pub const KDSIGACCEPT: u32 = 19278; ++pub const VT_OPENQRY: u32 = 22016; ++pub const VT_GETMODE: u32 = 22017; ++pub const VT_SETMODE: u32 = 22018; ++pub const VT_GETSTATE: u32 = 22019; ++pub const VT_RELDISP: u32 = 22021; ++pub const VT_ACTIVATE: u32 = 22022; ++pub const VT_WAITACTIVE: u32 = 22023; ++pub const VT_DISALLOCATE: u32 = 22024; ++pub const VT_RESIZE: u32 = 22025; ++pub const VT_RESIZEX: u32 = 22026; ++pub const FIOSETOWN: u32 = 35073; ++pub const SIOCSPGRP: u32 = 35074; ++pub const FIOGETOWN: u32 = 35075; ++pub const SIOCGPGRP: u32 = 35076; ++pub const SIOCATMARK: u32 = 35077; ++pub const SIOCGSTAMP: u32 = 35078; ++pub const TIOCINQ: u32 = 21531; ++pub const SIOCADDRT: u32 = 35083; ++pub const SIOCDELRT: u32 = 35084; ++pub const SIOCGIFNAME: u32 = 35088; ++pub const SIOCSIFLINK: u32 = 35089; ++pub const SIOCGIFCONF: u32 = 35090; ++pub const SIOCGIFFLAGS: u32 = 35091; ++pub const SIOCSIFFLAGS: u32 = 35092; ++pub const SIOCGIFADDR: u32 = 35093; ++pub const SIOCSIFADDR: u32 = 35094; ++pub const SIOCGIFDSTADDR: u32 = 35095; ++pub const SIOCSIFDSTADDR: u32 = 35096; ++pub const SIOCGIFBRDADDR: u32 = 35097; ++pub const SIOCSIFBRDADDR: u32 = 35098; ++pub const SIOCGIFNETMASK: u32 = 35099; ++pub const SIOCSIFNETMASK: u32 = 35100; ++pub const SIOCGIFMETRIC: u32 = 35101; ++pub const SIOCSIFMETRIC: u32 = 35102; ++pub const SIOCGIFMEM: u32 = 35103; ++pub const SIOCSIFMEM: u32 = 35104; ++pub const SIOCGIFMTU: u32 = 35105; ++pub const SIOCSIFMTU: u32 = 35106; ++pub const SIOCSIFHWADDR: u32 = 35108; ++pub const SIOCGIFENCAP: u32 = 35109; ++pub const SIOCSIFENCAP: u32 = 35110; ++pub const SIOCGIFHWADDR: u32 = 35111; ++pub const SIOCGIFSLAVE: u32 = 35113; ++pub const SIOCSIFSLAVE: u32 = 35120; ++pub const SIOCADDMULTI: u32 = 35121; ++pub const SIOCDELMULTI: u32 = 35122; ++pub const SIOCDARP: u32 = 35155; ++pub const SIOCGARP: u32 = 35156; ++pub const SIOCSARP: u32 = 35157; ++pub const SIOCDRARP: u32 = 35168; ++pub const SIOCGRARP: u32 = 35169; ++pub const SIOCSRARP: u32 = 35170; ++pub const SIOCGIFMAP: u32 = 35184; ++pub const SIOCSIFMAP: u32 = 35185; ++pub const SIOCRTMSG: u32 = 35085; ++pub const SIOCSIFNAME: u32 = 35107; ++pub const SIOCGIFINDEX: u32 = 35123; ++pub const SIOGIFINDEX: u32 = 35123; ++pub const SIOCSIFPFLAGS: u32 = 35124; ++pub const SIOCGIFPFLAGS: u32 = 35125; ++pub const SIOCDIFADDR: u32 = 35126; ++pub const SIOCSIFHWBROADCAST: u32 = 35127; ++pub const SIOCGIFCOUNT: u32 = 35128; ++pub const SIOCGIFBR: u32 = 35136; ++pub const SIOCSIFBR: u32 = 35137; ++pub const SIOCGIFTXQLEN: u32 = 35138; ++pub const SIOCSIFTXQLEN: u32 = 35139; ++pub const SIOCADDDLCI: u32 = 35200; ++pub const SIOCDELDLCI: u32 = 35201; ++pub const SIOCDEVPRIVATE: u32 = 35312; ++pub const SIOCPROTOPRIVATE: u32 = 35296; ++pub const FIBMAP: u32 = 1; ++pub const FIGETBSZ: u32 = 2; ++pub const FIFREEZE: u32 = 3221510263; ++pub const FITHAW: u32 = 3221510264; ++pub const FITRIM: u32 = 3222820985; ++pub const FICLONE: u32 = 1074041865; ++pub const FICLONERANGE: u32 = 1075876877; ++pub const FIDEDUPERANGE: u32 = 3222836278; ++pub const FS_IOC_GETFLAGS: u32 = 2148034049; ++pub const FS_IOC_SETFLAGS: u32 = 1074292226; ++pub const FS_IOC_GETVERSION: u32 = 2148038145; ++pub const FS_IOC_SETVERSION: u32 = 1074296322; ++pub const FS_IOC_FIEMAP: u32 = 3223348747; ++pub const FS_IOC32_GETFLAGS: u32 = 2147771905; ++pub const FS_IOC32_SETFLAGS: u32 = 1074030082; ++pub const FS_IOC32_GETVERSION: u32 = 2147776001; ++pub const FS_IOC32_SETVERSION: u32 = 1074034178; ++pub const FS_IOC_FSGETXATTR: u32 = 2149341215; ++pub const FS_IOC_FSSETXATTR: u32 = 1075599392; ++pub const FS_IOC_GETFSLABEL: u32 = 2164298801; ++pub const FS_IOC_SETFSLABEL: u32 = 1090556978; ++pub const EXT4_IOC_GETVERSION: u32 = 2148034051; ++pub const EXT4_IOC_SETVERSION: u32 = 1074292228; ++pub const EXT4_IOC_GETVERSION_OLD: u32 = 2148038145; ++pub const EXT4_IOC_SETVERSION_OLD: u32 = 1074296322; ++pub const EXT4_IOC_GETRSVSZ: u32 = 2148034053; ++pub const EXT4_IOC_SETRSVSZ: u32 = 1074292230; ++pub const EXT4_IOC_GROUP_EXTEND: u32 = 1074292231; ++pub const EXT4_IOC_MIGRATE: u32 = 26121; ++pub const EXT4_IOC_ALLOC_DA_BLKS: u32 = 26124; ++pub const EXT4_IOC_RESIZE_FS: u32 = 1074292240; ++pub const EXT4_IOC_SWAP_BOOT: u32 = 26129; ++pub const EXT4_IOC_PRECACHE_EXTENTS: u32 = 26130; ++pub const EXT4_IOC_CLEAR_ES_CACHE: u32 = 26152; ++pub const EXT4_IOC_GETSTATE: u32 = 1074030121; ++pub const EXT4_IOC_GET_ES_CACHE: u32 = 3223348778; ++pub const EXT4_IOC_CHECKPOINT: u32 = 1074030123; ++pub const EXT4_IOC_SHUTDOWN: u32 = 2147768445; ++pub const EXT4_IOC32_GETVERSION: u32 = 2147771907; ++pub const EXT4_IOC32_SETVERSION: u32 = 1074030084; ++pub const EXT4_IOC32_GETRSVSZ: u32 = 2147771909; ++pub const EXT4_IOC32_SETRSVSZ: u32 = 1074030086; ++pub const EXT4_IOC32_GROUP_EXTEND: u32 = 1074030087; ++pub const EXT4_IOC32_GETVERSION_OLD: u32 = 2147776001; ++pub const EXT4_IOC32_SETVERSION_OLD: u32 = 1074034178; ++pub const VIDIOC_SUBDEV_QUERYSTD: u32 = 2148030015; ++pub const AUTOFS_DEV_IOCTL_CLOSEMOUNT: u32 = 3222836085; ++pub const LIRC_SET_SEND_CARRIER: u32 = 1074030867; ++pub const AUTOFS_IOC_PROTOSUBVER: u32 = 2147783527; ++pub const PTP_SYS_OFFSET_PRECISE: u32 = 3225435400; ++pub const FSI_SCOM_WRITE: u32 = 3223352066; ++pub const ATM_GETCIRANGE: u32 = 1074815370; ++pub const DMA_BUF_SET_NAME_B: u32 = 1074291201; ++pub const RIO_CM_EP_GET_LIST_SIZE: u32 = 3221512961; ++pub const TUNSETPERSIST: u32 = 1074025675; ++pub const FS_IOC_GET_ENCRYPTION_POLICY: u32 = 1074554389; ++pub const CEC_RECEIVE: u32 = 3224920326; ++pub const MGSL_IOCGPARAMS: u32 = 2150657281; ++pub const ENI_SETMULT: u32 = 1074815335; ++pub const RIO_GET_EVENT_MASK: u32 = 2147773710; ++pub const LIRC_GET_MAX_TIMEOUT: u32 = 2147772681; ++pub const USBDEVFS_CLAIMINTERFACE: u32 = 2147767567; ++pub const CHIOMOVE: u32 = 1075077889; ++pub const SONYPI_IOCGBATFLAGS: u32 = 2147579399; ++pub const BTRFS_IOC_SYNC: u32 = 37896; ++pub const VIDIOC_TRY_FMT: u32 = 3234879040; ++pub const LIRC_SET_REC_MODE: u32 = 1074030866; ++pub const VIDIOC_DQEVENT: u32 = 2156418649; ++pub const RPMSG_DESTROY_EPT_IOCTL: u32 = 46338; ++pub const UVCIOC_CTRL_MAP: u32 = 3227546912; ++pub const VHOST_SET_BACKEND_FEATURES: u32 = 1074310949; ++pub const VHOST_VSOCK_SET_GUEST_CID: u32 = 1074311008; ++pub const UI_SET_KEYBIT: u32 = 1074025829; ++pub const LIRC_SET_REC_TIMEOUT: u32 = 1074030872; ++pub const FS_IOC_GET_ENCRYPTION_KEY_STATUS: u32 = 3229640218; ++pub const BTRFS_IOC_TREE_SEARCH_V2: u32 = 3228603409; ++pub const VHOST_SET_VRING_BASE: u32 = 1074310930; ++pub const RIO_ENABLE_DOORBELL_RANGE: u32 = 1074294025; ++pub const VIDIOC_TRY_EXT_CTRLS: u32 = 3223344713; ++pub const LIRC_GET_REC_MODE: u32 = 2147772674; ++pub const PPGETTIME: u32 = 2148561045; ++pub const BTRFS_IOC_RM_DEV: u32 = 1342215179; ++pub const ATM_SETBACKEND: u32 = 1073897970; ++pub const FSL_HV_IOCTL_PARTITION_START: u32 = 3222318851; ++pub const FBIO_WAITEVENT: u32 = 18056; ++pub const SWITCHTEC_IOCTL_PORT_TO_PFF: u32 = 3222034245; ++pub const NVME_IOCTL_IO_CMD: u32 = 3225964099; ++pub const IPMICTL_RECEIVE_MSG_TRUNC: u32 = 3224398091; ++pub const FDTWADDLE: u32 = 601; ++pub const NVME_IOCTL_SUBMIT_IO: u32 = 1076907586; ++pub const NILFS_IOCTL_SYNC: u32 = 2148036234; ++pub const VIDIOC_SUBDEV_S_DV_TIMINGS: u32 = 3229898327; ++pub const ASPEED_LPC_CTRL_IOCTL_GET_SIZE: u32 = 3222319616; ++pub const DM_DEV_STATUS: u32 = 3241737479; ++pub const TEE_IOC_CLOSE_SESSION: u32 = 2147787781; ++pub const NS_GETPSTAT: u32 = 3222298977; ++pub const UI_SET_PROPBIT: u32 = 1074025838; ++pub const TUNSETFILTEREBPF: u32 = 2147767521; ++pub const RIO_MPORT_MAINT_COMPTAG_SET: u32 = 1074031874; ++pub const AUTOFS_DEV_IOCTL_VERSION: u32 = 3222836081; ++pub const WDIOC_SETOPTIONS: u32 = 2147768068; ++pub const VHOST_SCSI_SET_ENDPOINT: u32 = 1088991040; ++pub const MGSL_IOCGTXIDLE: u32 = 27907; ++pub const ATM_ADDLECSADDR: u32 = 1074815374; ++pub const FSL_HV_IOCTL_GETPROP: u32 = 3223891719; ++pub const FDGETPRM: u32 = 2149581316; ++pub const HIDIOCAPPLICATION: u32 = 18434; ++pub const ENI_MEMDUMP: u32 = 1074815328; ++pub const PTP_SYS_OFFSET2: u32 = 1128283406; ++pub const VIDIOC_SUBDEV_G_DV_TIMINGS: u32 = 3229898328; ++pub const DMA_BUF_SET_NAME_A: u32 = 1074029057; ++pub const PTP_PIN_GETFUNC: u32 = 3227532550; ++pub const PTP_SYS_OFFSET_EXTENDED: u32 = 3300932873; ++pub const DFL_FPGA_PORT_UINT_SET_IRQ: u32 = 1074312776; ++pub const RTC_EPOCH_READ: u32 = 2148036621; ++pub const VIDIOC_SUBDEV_S_SELECTION: u32 = 3225441854; ++pub const VIDIOC_QUERY_EXT_CTRL: u32 = 3236451943; ++pub const ATM_GETLECSADDR: u32 = 1074815376; ++pub const FSL_HV_IOCTL_PARTITION_STOP: u32 = 3221794564; ++pub const SONET_GETDIAG: u32 = 2147770644; ++pub const ATMMPC_DATA: u32 = 25049; ++pub const IPMICTL_UNREGISTER_FOR_CMD_CHANS: u32 = 2148296989; ++pub const HIDIOCGCOLLECTIONINDEX: u32 = 1075333136; ++pub const RPMSG_CREATE_EPT_IOCTL: u32 = 1076409601; ++pub const GPIOHANDLE_GET_LINE_VALUES_IOCTL: u32 = 3225465864; ++pub const UI_DEV_SETUP: u32 = 1079792899; ++pub const ISST_IF_IO_CMD: u32 = 1074331138; ++pub const RIO_MPORT_MAINT_READ_REMOTE: u32 = 2149084423; ++pub const VIDIOC_OMAP3ISP_HIST_CFG: u32 = 3224393412; ++pub const BLKGETNRZONES: u32 = 2147750533; ++pub const VIDIOC_G_MODULATOR: u32 = 3225703990; ++pub const VBG_IOCTL_WRITE_CORE_DUMP: u32 = 3223082515; ++pub const USBDEVFS_SETINTERFACE: u32 = 2148029700; ++pub const PPPIOCGCHAN: u32 = 2147775543; ++pub const EVIOCGVERSION: u32 = 2147763457; ++pub const VHOST_NET_SET_BACKEND: u32 = 1074310960; ++pub const USBDEVFS_REAPURBNDELAY: u32 = 1074287885; ++pub const RNDZAPENTCNT: u32 = 20996; ++pub const VIDIOC_G_PARM: u32 = 3234616853; ++pub const TUNGETDEVNETNS: u32 = 21731; ++pub const LIRC_SET_MEASURE_CARRIER_MODE: u32 = 1074030877; ++pub const VHOST_SET_VRING_ERR: u32 = 1074310946; ++pub const VDUSE_VQ_SETUP: u32 = 1075872020; ++pub const AUTOFS_IOC_SETTIMEOUT: u32 = 3221787492; ++pub const VIDIOC_S_FREQUENCY: u32 = 1076647481; ++pub const F2FS_IOC_SEC_TRIM_FILE: u32 = 1075377428; ++pub const FS_IOC_REMOVE_ENCRYPTION_KEY: u32 = 3225445912; ++pub const WDIOC_GETPRETIMEOUT: u32 = 2147768073; ++pub const USBDEVFS_DROP_PRIVILEGES: u32 = 1074025758; ++pub const BTRFS_IOC_SNAP_CREATE_V2: u32 = 1342215191; ++pub const VHOST_VSOCK_SET_RUNNING: u32 = 1074048865; ++pub const STP_SET_OPTIONS: u32 = 1074275586; ++pub const FBIO_RADEON_GET_MIRROR: u32 = 2148024323; ++pub const IVTVFB_IOC_DMA_FRAME: u32 = 1075336896; ++pub const IPMICTL_SEND_COMMAND: u32 = 2150131981; ++pub const VIDIOC_G_ENC_INDEX: u32 = 2283296332; ++pub const DFL_FPGA_FME_PORT_PR: u32 = 46720; ++pub const CHIOSVOLTAG: u32 = 1076912914; ++pub const ATM_SETESIF: u32 = 1074815373; ++pub const FW_CDEV_IOC_SEND_RESPONSE: u32 = 1075323652; ++pub const PMU_IOC_GET_MODEL: u32 = 2148024835; ++pub const JSIOCGBTNMAP: u32 = 2214619700; ++pub const USBDEVFS_HUB_PORTINFO: u32 = 2155894035; ++pub const VBG_IOCTL_INTERRUPT_ALL_WAIT_FOR_EVENTS: u32 = 3222820363; ++pub const FDCLRPRM: u32 = 577; ++pub const BTRFS_IOC_SCRUB: u32 = 3288372251; ++pub const USBDEVFS_DISCONNECT: u32 = 21782; ++pub const TUNSETVNETBE: u32 = 1074025694; ++pub const ATMTCP_REMOVE: u32 = 24975; ++pub const VHOST_VDPA_GET_CONFIG: u32 = 2148052851; ++pub const PPPIOCGNPMODE: u32 = 3221779532; ++pub const FDGETDRVPRM: u32 = 2155872785; ++pub const TUNSETVNETLE: u32 = 1074025692; ++pub const PHN_SETREG: u32 = 1074294790; ++pub const PPPIOCDETACH: u32 = 1074033724; ++pub const MMTIMER_GETRES: u32 = 2148035841; ++pub const VIDIOC_SUBDEV_ENUMSTD: u32 = 3225966105; ++pub const PPGETFLAGS: u32 = 2147774618; ++pub const VDUSE_DEV_GET_FEATURES: u32 = 2148040977; ++pub const CAPI_MANUFACTURER_CMD: u32 = 3222291232; ++pub const VIDIOC_G_TUNER: u32 = 3226752541; ++pub const DM_TABLE_STATUS: u32 = 3241737484; ++pub const DM_DEV_ARM_POLL: u32 = 3241737488; ++pub const NE_CREATE_VM: u32 = 2148052512; ++pub const MEDIA_IOC_ENUM_LINKS: u32 = 3223878658; ++pub const F2FS_IOC_PRECACHE_EXTENTS: u32 = 62735; ++pub const DFL_FPGA_PORT_DMA_MAP: u32 = 46659; ++pub const MGSL_IOCGXCTRL: u32 = 27926; ++pub const FW_CDEV_IOC_SEND_REQUEST: u32 = 1076372225; ++pub const SONYPI_IOCGBLUE: u32 = 2147579400; ++pub const F2FS_IOC_DECOMPRESS_FILE: u32 = 62743; ++pub const I2OHTML: u32 = 3224398089; ++pub const VFIO_GET_API_VERSION: u32 = 15204; ++pub const IDT77105_GETSTATZ: u32 = 1074815283; ++pub const I2OPARMSET: u32 = 3223873795; ++pub const TEE_IOC_CANCEL: u32 = 2148049924; ++pub const PTP_SYS_OFFSET_PRECISE2: u32 = 3225435409; ++pub const DFL_FPGA_PORT_RESET: u32 = 46656; ++pub const PPPIOCGASYNCMAP: u32 = 2147775576; ++pub const EVIOCGKEYCODE_V2: u32 = 2150122756; ++pub const DM_DEV_SET_GEOMETRY: u32 = 3241737487; ++pub const HIDIOCSUSAGE: u32 = 1075333132; ++pub const FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE_ONCE: u32 = 1075323664; ++pub const PTP_EXTTS_REQUEST: u32 = 1074806018; ++pub const SWITCHTEC_IOCTL_EVENT_CTL: u32 = 3223869251; ++pub const WDIOC_SETPRETIMEOUT: u32 = 3221509896; ++pub const VHOST_SCSI_CLEAR_ENDPOINT: u32 = 1088991041; ++pub const JSIOCGAXES: u32 = 2147576337; ++pub const HIDIOCSFLAG: u32 = 1074022415; ++pub const PTP_PEROUT_REQUEST2: u32 = 1077427468; ++pub const PPWDATA: u32 = 1073836166; ++pub const PTP_CLOCK_GETCAPS: u32 = 2152742145; ++pub const FDGETMAXERRS: u32 = 2148794894; ++pub const TUNSETQUEUE: u32 = 1074025689; ++pub const PTP_ENABLE_PPS: u32 = 1074019588; ++pub const SIOCSIFATMTCP: u32 = 24960; ++pub const CEC_ADAP_G_LOG_ADDRS: u32 = 2153537795; ++pub const ND_IOCTL_ARS_CAP: u32 = 3223342593; ++pub const NBD_SET_BLKSIZE: u32 = 43777; ++pub const NBD_SET_TIMEOUT: u32 = 43785; ++pub const VHOST_SCSI_GET_ABI_VERSION: u32 = 1074048834; ++pub const RIO_UNMAP_INBOUND: u32 = 1074294034; ++pub const ATM_QUERYLOOP: u32 = 1074815316; ++pub const DFL_FPGA_GET_API_VERSION: u32 = 46592; ++pub const USBDEVFS_WAIT_FOR_RESUME: u32 = 21795; ++pub const FBIO_CURSOR: u32 = 3228059144; ++pub const RNDCLEARPOOL: u32 = 20998; ++pub const VIDIOC_QUERYSTD: u32 = 2148030015; ++pub const DMA_BUF_IOCTL_SYNC: u32 = 1074291200; ++pub const SCIF_RECV: u32 = 3222827783; ++pub const PTP_PIN_GETFUNC2: u32 = 3227532559; ++pub const FW_CDEV_IOC_ALLOCATE: u32 = 3223331586; ++pub const CEC_ADAP_G_CAPS: u32 = 3226231040; ++pub const VIDIOC_G_FBUF: u32 = 2150651402; ++pub const PTP_ENABLE_PPS2: u32 = 1074019597; ++pub const PCITEST_CLEAR_IRQ: u32 = 20496; ++pub const IPMICTL_SET_GETS_EVENTS_CMD: u32 = 2147772688; ++pub const BTRFS_IOC_DEVICES_READY: u32 = 2415957031; ++pub const JSIOCGAXMAP: u32 = 2151705138; ++pub const FW_CDEV_IOC_GET_CYCLE_TIMER: u32 = 2148541196; ++pub const FW_CDEV_IOC_SET_ISO_CHANNELS: u32 = 1074799383; ++pub const RTC_WIE_OFF: u32 = 28688; ++pub const PPGETMODE: u32 = 2147774616; ++pub const VIDIOC_DBG_G_REGISTER: u32 = 3224917584; ++pub const PTP_SYS_OFFSET: u32 = 1128283397; ++pub const BTRFS_IOC_SPACE_INFO: u32 = 3222311956; ++pub const VIDIOC_SUBDEV_ENUM_FRAME_SIZE: u32 = 3225441866; ++pub const ND_IOCTL_VENDOR: u32 = 3221769737; ++pub const SCIF_VREADFROM: u32 = 3223876364; ++pub const BTRFS_IOC_TRANS_START: u32 = 37894; ++pub const INOTIFY_IOC_SETNEXTWD: u32 = 1074022656; ++pub const SNAPSHOT_GET_IMAGE_SIZE: u32 = 2148021006; ++pub const TUNDETACHFILTER: u32 = 1074812118; ++pub const ND_IOCTL_CLEAR_ERROR: u32 = 3223342596; ++pub const IOC_PR_CLEAR: u32 = 1074819277; ++pub const SCIF_READFROM: u32 = 3223876362; ++pub const PPPIOCGDEBUG: u32 = 2147775553; ++pub const BLKGETZONESZ: u32 = 2147750532; ++pub const HIDIOCGUSAGES: u32 = 3491514387; ++pub const SONYPI_IOCGTEMP: u32 = 2147579404; ++pub const UI_SET_MSCBIT: u32 = 1074025832; ++pub const APM_IOC_SUSPEND: u32 = 16642; ++pub const BTRFS_IOC_TREE_SEARCH: u32 = 3489698833; ++pub const RTC_PLL_GET: u32 = 2149609489; ++pub const RIO_CM_EP_GET_LIST: u32 = 3221512962; ++pub const USBDEVFS_DISCSIGNAL: u32 = 2148553998; ++pub const LIRC_GET_MIN_TIMEOUT: u32 = 2147772680; ++pub const SWITCHTEC_IOCTL_EVENT_SUMMARY_LEGACY: u32 = 2174244674; ++pub const DM_TARGET_MSG: u32 = 3241737486; ++pub const SONYPI_IOCGBAT1REM: u32 = 2147644931; ++pub const EVIOCSFF: u32 = 1076905344; ++pub const TUNSETGROUP: u32 = 1074025678; ++pub const EVIOCGKEYCODE: u32 = 2148025604; ++pub const KCOV_REMOTE_ENABLE: u32 = 1075340134; ++pub const ND_IOCTL_GET_CONFIG_SIZE: u32 = 3222031876; ++pub const FDEJECT: u32 = 602; ++pub const TUNSETOFFLOAD: u32 = 1074025680; ++pub const PPPIOCCONNECT: u32 = 1074033722; ++pub const ATM_ADDADDR: u32 = 1074815368; ++pub const VDUSE_DEV_INJECT_CONFIG_IRQ: u32 = 33043; ++pub const AUTOFS_DEV_IOCTL_ASKUMOUNT: u32 = 3222836093; ++pub const VHOST_VDPA_GET_STATUS: u32 = 2147594097; ++pub const CCISS_PASSTHRU: u32 = 3227009547; ++pub const MGSL_IOCCLRMODCOUNT: u32 = 27919; ++pub const TEE_IOC_SUPPL_SEND: u32 = 2148574215; ++pub const ATMARPD_CTRL: u32 = 25057; ++pub const UI_ABS_SETUP: u32 = 1075598596; ++pub const UI_DEV_DESTROY: u32 = 21762; ++pub const BTRFS_IOC_QUOTA_CTL: u32 = 3222311976; ++pub const RTC_AIE_ON: u32 = 28673; ++pub const AUTOFS_IOC_EXPIRE: u32 = 2165085029; ++pub const PPPIOCSDEBUG: u32 = 1074033728; ++pub const GPIO_V2_LINE_SET_VALUES_IOCTL: u32 = 3222320143; ++pub const PPPIOCSMRU: u32 = 1074033746; ++pub const CCISS_DEREGDISK: u32 = 16908; ++pub const UI_DEV_CREATE: u32 = 21761; ++pub const FUSE_DEV_IOC_CLONE: u32 = 2147804416; ++pub const BTRFS_IOC_START_SYNC: u32 = 2148045848; ++pub const NILFS_IOCTL_DELETE_CHECKPOINT: u32 = 1074294401; ++pub const SNAPSHOT_AVAIL_SWAP_SIZE: u32 = 2148021011; ++pub const DM_TABLE_CLEAR: u32 = 3241737482; ++pub const CCISS_GETINTINFO: u32 = 2148024834; ++pub const PPPIOCSASYNCMAP: u32 = 1074033751; ++pub const I2OEVTGET: u32 = 2154326283; ++pub const NVME_IOCTL_RESET: u32 = 20036; ++pub const PPYIELD: u32 = 28813; ++pub const NVME_IOCTL_IO64_CMD: u32 = 3226488392; ++pub const TUNSETCARRIER: u32 = 1074025698; ++pub const DM_DEV_WAIT: u32 = 3241737480; ++pub const RTC_WIE_ON: u32 = 28687; ++pub const MEDIA_IOC_DEVICE_INFO: u32 = 3238034432; ++pub const RIO_CM_CHAN_CREATE: u32 = 3221381891; ++pub const MGSL_IOCSPARAMS: u32 = 1076915456; ++pub const RTC_SET_TIME: u32 = 1076129802; ++pub const VHOST_RESET_OWNER: u32 = 44802; ++pub const IOC_OPAL_PSID_REVERT_TPR: u32 = 1091072232; ++pub const AUTOFS_DEV_IOCTL_OPENMOUNT: u32 = 3222836084; ++pub const UDF_GETEABLOCK: u32 = 2148035649; ++pub const VFIO_IOMMU_MAP_DMA: u32 = 15217; ++pub const VIDIOC_SUBSCRIBE_EVENT: u32 = 1075861082; ++pub const HIDIOCGFLAG: u32 = 2147764238; ++pub const HIDIOCGUCODE: u32 = 3222816781; ++pub const VIDIOC_OMAP3ISP_AF_CFG: u32 = 3226228421; ++pub const DM_REMOVE_ALL: u32 = 3241737473; ++pub const ASPEED_LPC_CTRL_IOCTL_MAP: u32 = 1074835969; ++pub const CCISS_GETFIRMVER: u32 = 2147762696; ++pub const ND_IOCTL_ARS_START: u32 = 3223342594; ++pub const PPPIOCSMRRU: u32 = 1074033723; ++pub const CEC_ADAP_S_LOG_ADDRS: u32 = 3227279620; ++pub const RPROC_GET_SHUTDOWN_ON_RELEASE: u32 = 2147792642; ++pub const DMA_HEAP_IOCTL_ALLOC: u32 = 3222816768; ++pub const PPSETTIME: u32 = 1074819222; ++pub const RTC_ALM_READ: u32 = 2149871624; ++pub const VDUSE_SET_API_VERSION: u32 = 1074299137; ++pub const RIO_MPORT_MAINT_WRITE_REMOTE: u32 = 1075342600; ++pub const VIDIOC_SUBDEV_S_CROP: u32 = 3224917564; ++pub const USBDEVFS_CONNECT: u32 = 21783; ++pub const SYNC_IOC_FILE_INFO: u32 = 3224911364; ++pub const ATMARP_MKIP: u32 = 25058; ++pub const VFIO_IOMMU_SPAPR_TCE_GET_INFO: u32 = 15216; ++pub const CCISS_GETHEARTBEAT: u32 = 2147762694; ++pub const ATM_RSTADDR: u32 = 1074815367; ++pub const NBD_SET_SIZE: u32 = 43778; ++pub const UDF_GETVOLIDENT: u32 = 2148035650; ++pub const GPIO_V2_LINE_GET_VALUES_IOCTL: u32 = 3222320142; ++pub const MGSL_IOCSTXIDLE: u32 = 27906; ++pub const FSL_HV_IOCTL_SETPROP: u32 = 3223891720; ++pub const BTRFS_IOC_GET_DEV_STATS: u32 = 3288896564; ++pub const PPRSTATUS: u32 = 2147577985; ++pub const MGSL_IOCTXENABLE: u32 = 27908; ++pub const UDF_GETEASIZE: u32 = 2147773504; ++pub const NVME_IOCTL_ADMIN64_CMD: u32 = 3226488391; ++pub const VHOST_SET_OWNER: u32 = 44801; ++pub const RIO_ALLOC_DMA: u32 = 3222826259; ++pub const RIO_CM_CHAN_ACCEPT: u32 = 3221775111; ++pub const I2OHRTGET: u32 = 3222825217; ++pub const ATM_SETCIRANGE: u32 = 1074815371; ++pub const HPET_IE_ON: u32 = 26625; ++pub const PERF_EVENT_IOC_ID: u32 = 2148017159; ++pub const TUNSETSNDBUF: u32 = 1074025684; ++pub const PTP_PIN_SETFUNC: u32 = 1080048903; ++pub const PPPIOCDISCONN: u32 = 29753; ++pub const VIDIOC_QUERYCTRL: u32 = 3225703972; ++pub const PPEXCL: u32 = 28815; ++pub const PCITEST_MSI: u32 = 1074024451; ++pub const FDWERRORCLR: u32 = 598; ++pub const AUTOFS_IOC_FAIL: u32 = 37729; ++pub const USBDEVFS_IOCTL: u32 = 3222295826; ++pub const VIDIOC_S_STD: u32 = 1074288152; ++pub const F2FS_IOC_RESIZE_FS: u32 = 1074328848; ++pub const SONET_SETDIAG: u32 = 3221512466; ++pub const BTRFS_IOC_DEFRAG: u32 = 1342215170; ++pub const CCISS_GETDRIVVER: u32 = 2147762697; ++pub const IPMICTL_GET_TIMING_PARMS_CMD: u32 = 2148034839; ++pub const HPET_IRQFREQ: u32 = 1074292742; ++pub const ATM_GETESI: u32 = 1074815365; ++pub const CCISS_GETLUNINFO: u32 = 2148286993; ++pub const AUTOFS_DEV_IOCTL_ISMOUNTPOINT: u32 = 3222836094; ++pub const TEE_IOC_SHM_ALLOC: u32 = 3222316033; ++pub const PERF_EVENT_IOC_SET_BPF: u32 = 1074013192; ++pub const UDMABUF_CREATE_LIST: u32 = 1074296131; ++pub const VHOST_SET_LOG_BASE: u32 = 1074310916; ++pub const ZATM_GETPOOL: u32 = 1074815329; ++pub const BR2684_SETFILT: u32 = 1075601808; ++pub const RNDGETPOOL: u32 = 2148028930; ++pub const PPS_GETPARAMS: u32 = 2148036769; ++pub const IOC_PR_RESERVE: u32 = 1074819273; ++pub const VIDIOC_TRY_DECODER_CMD: u32 = 3225966177; ++pub const RIO_CM_CHAN_CLOSE: u32 = 1073898244; ++pub const VIDIOC_DV_TIMINGS_CAP: u32 = 3230684772; ++pub const IOCTL_MEI_CONNECT_CLIENT_VTAG: u32 = 3222554628; ++pub const PMU_IOC_GET_BACKLIGHT: u32 = 2148024833; ++pub const USBDEVFS_GET_CAPABILITIES: u32 = 2147767578; ++pub const SCIF_WRITETO: u32 = 3223876363; ++pub const UDF_RELOCATE_BLOCKS: u32 = 3221777475; ++pub const FSL_HV_IOCTL_PARTITION_RESTART: u32 = 3221794561; ++pub const CCISS_REGNEWD: u32 = 16910; ++pub const FAT_IOCTL_SET_ATTRIBUTES: u32 = 1074033169; ++pub const VIDIOC_CREATE_BUFS: u32 = 3238024796; ++pub const CAPI_GET_VERSION: u32 = 3222291207; ++pub const SWITCHTEC_IOCTL_EVENT_SUMMARY: u32 = 2228770626; ++pub const VFIO_EEH_PE_OP: u32 = 15225; ++pub const FW_CDEV_IOC_CREATE_ISO_CONTEXT: u32 = 3223331592; ++pub const F2FS_IOC_RELEASE_COMPRESS_BLOCKS: u32 = 2148070674; ++pub const NBD_SET_SIZE_BLOCKS: u32 = 43783; ++pub const IPMI_BMC_IOCTL_SET_SMS_ATN: u32 = 45312; ++pub const ASPEED_P2A_CTRL_IOCTL_GET_MEMORY_CONFIG: u32 = 3222319873; ++pub const VIDIOC_S_AUDOUT: u32 = 1077171762; ++pub const VIDIOC_S_FMT: u32 = 3234878981; ++pub const PPPIOCATTACH: u32 = 1074033725; ++pub const VHOST_GET_VRING_BUSYLOOP_TIMEOUT: u32 = 1074310948; ++pub const FS_IOC_MEASURE_VERITY: u32 = 3221513862; ++pub const CCISS_BIG_PASSTHRU: u32 = 3227533842; ++pub const IPMICTL_SET_MY_LUN_CMD: u32 = 2147772691; ++pub const PCITEST_LEGACY_IRQ: u32 = 20482; ++pub const USBDEVFS_SUBMITURB: u32 = 2151175434; ++pub const AUTOFS_IOC_READY: u32 = 37728; ++pub const BTRFS_IOC_SEND: u32 = 1078498342; ++pub const VIDIOC_G_EXT_CTRLS: u32 = 3223344711; ++pub const JSIOCSBTNMAP: u32 = 1140877875; ++pub const PPPIOCSFLAGS: u32 = 1074033753; ++pub const NVRAM_INIT: u32 = 28736; ++pub const RFKILL_IOCTL_NOINPUT: u32 = 20993; ++pub const BTRFS_IOC_BALANCE: u32 = 1342215180; ++pub const FS_IOC_GETFSMAP: u32 = 3233830971; ++pub const IPMICTL_GET_MY_CHANNEL_LUN_CMD: u32 = 2147772699; ++pub const STP_POLICY_ID_GET: u32 = 2148541697; ++pub const PPSETFLAGS: u32 = 1074032795; ++pub const CEC_ADAP_S_PHYS_ADDR: u32 = 1073897730; ++pub const ATMTCP_CREATE: u32 = 24974; ++pub const IPMI_BMC_IOCTL_FORCE_ABORT: u32 = 45314; ++pub const PPPIOCGXASYNCMAP: u32 = 2149610576; ++pub const VHOST_SET_VRING_CALL: u32 = 1074310945; ++pub const LIRC_GET_FEATURES: u32 = 2147772672; ++pub const GSMIOC_DISABLE_NET: u32 = 18179; ++pub const AUTOFS_IOC_CATATONIC: u32 = 37730; ++pub const NBD_DO_IT: u32 = 43779; ++pub const LIRC_SET_REC_CARRIER_RANGE: u32 = 1074030879; ++pub const IPMICTL_GET_MY_CHANNEL_ADDRESS_CMD: u32 = 2147772697; ++pub const EVIOCSCLOCKID: u32 = 1074021792; ++pub const USBDEVFS_FREE_STREAMS: u32 = 2148029725; ++pub const FSI_SCOM_RESET: u32 = 1074033411; ++pub const PMU_IOC_GRAB_BACKLIGHT: u32 = 2148024838; ++pub const VIDIOC_SUBDEV_S_FMT: u32 = 3227014661; ++pub const FDDEFPRM: u32 = 1075839555; ++pub const TEE_IOC_INVOKE: u32 = 2148574211; ++pub const USBDEVFS_BULK: u32 = 3222820098; ++pub const SCIF_VWRITETO: u32 = 3223876365; ++pub const SONYPI_IOCSBRT: u32 = 1073837568; ++pub const BTRFS_IOC_FILE_EXTENT_SAME: u32 = 3222836278; ++pub const RTC_PIE_ON: u32 = 28677; ++pub const BTRFS_IOC_SCAN_DEV: u32 = 1342215172; ++pub const PPPIOCXFERUNIT: u32 = 29774; ++pub const WDIOC_GETTIMEOUT: u32 = 2147768071; ++pub const BTRFS_IOC_SET_RECEIVED_SUBVOL: u32 = 3234370597; ++pub const DFL_FPGA_PORT_ERR_SET_IRQ: u32 = 1074312774; ++pub const FBIO_WAITFORVSYNC: u32 = 1074021920; ++pub const RTC_PIE_OFF: u32 = 28678; ++pub const EVIOCGRAB: u32 = 1074021776; ++pub const PMU_IOC_SET_BACKLIGHT: u32 = 1074283010; ++pub const EVIOCGREP: u32 = 2148025603; ++pub const PERF_EVENT_IOC_MODIFY_ATTRIBUTES: u32 = 1074275339; ++pub const UFFDIO_CONTINUE: u32 = 3223366151; ++pub const VDUSE_GET_API_VERSION: u32 = 2148040960; ++pub const RTC_RD_TIME: u32 = 2149871625; ++pub const FDMSGOFF: u32 = 582; ++pub const IPMICTL_REGISTER_FOR_CMD_CHANS: u32 = 2148296988; ++pub const CAPI_GET_ERRCODE: u32 = 2147631905; ++pub const PCITEST_SET_IRQTYPE: u32 = 1074024456; ++pub const VIDIOC_SUBDEV_S_EDID: u32 = 3223868969; ++pub const MATROXFB_SET_OUTPUT_MODE: u32 = 1074294522; ++pub const RIO_DEV_ADD: u32 = 1075866903; ++pub const VIDIOC_ENUM_FREQ_BANDS: u32 = 3225441893; ++pub const FBIO_RADEON_SET_MIRROR: u32 = 1074282500; ++pub const PCITEST_GET_IRQTYPE: u32 = 20489; ++pub const JSIOCGVERSION: u32 = 2147772929; ++pub const SONYPI_IOCSBLUE: u32 = 1073837577; ++pub const SNAPSHOT_PREF_IMAGE_SIZE: u32 = 13074; ++pub const F2FS_IOC_GET_FEATURES: u32 = 2147808524; ++pub const SCIF_REG: u32 = 3223876360; ++pub const NILFS_IOCTL_CLEAN_SEGMENTS: u32 = 1081634440; ++pub const FW_CDEV_IOC_INITIATE_BUS_RESET: u32 = 1074012933; ++pub const RIO_WAIT_FOR_ASYNC: u32 = 1074294038; ++pub const VHOST_SET_VRING_NUM: u32 = 1074310928; ++pub const AUTOFS_DEV_IOCTL_PROTOVER: u32 = 3222836082; ++pub const RIO_FREE_DMA: u32 = 1074294036; ++pub const MGSL_IOCRXENABLE: u32 = 27909; ++pub const IOCTL_VM_SOCKETS_GET_LOCAL_CID: u32 = 1977; ++pub const IPMICTL_SET_TIMING_PARMS_CMD: u32 = 2148034838; ++pub const PPPIOCGL2TPSTATS: u32 = 2152231990; ++pub const PERF_EVENT_IOC_PERIOD: u32 = 1074275332; ++pub const PTP_PIN_SETFUNC2: u32 = 1080048912; ++pub const CHIOEXCHANGE: u32 = 1075602178; ++pub const NILFS_IOCTL_GET_SUINFO: u32 = 2149084804; ++pub const CEC_DQEVENT: u32 = 3226493191; ++pub const UI_SET_SWBIT: u32 = 1074025837; ++pub const VHOST_VDPA_SET_CONFIG: u32 = 1074311028; ++pub const TUNSETIFF: u32 = 1074025674; ++pub const CHIOPOSITION: u32 = 1074553603; ++pub const IPMICTL_SET_MAINTENANCE_MODE_CMD: u32 = 1074030879; ++pub const BTRFS_IOC_DEFAULT_SUBVOL: u32 = 1074304019; ++pub const RIO_UNMAP_OUTBOUND: u32 = 1076391184; ++pub const CAPI_CLR_FLAGS: u32 = 2147762981; ++pub const FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE_ONCE: u32 = 1075323663; ++pub const MATROXFB_GET_OUTPUT_CONNECTION: u32 = 2148036344; ++pub const EVIOCSMASK: u32 = 1074808211; ++pub const BTRFS_IOC_FORGET_DEV: u32 = 1342215173; ++pub const CXL_MEM_QUERY_COMMANDS: u32 = 2148060673; ++pub const CEC_S_MODE: u32 = 1074028809; ++pub const MGSL_IOCSIF: u32 = 27914; ++pub const SWITCHTEC_IOCTL_PFF_TO_PORT: u32 = 3222034244; ++pub const PPSETMODE: u32 = 1074032768; ++pub const VFIO_DEVICE_SET_IRQS: u32 = 15214; ++pub const VIDIOC_PREPARE_BUF: u32 = 3227014749; ++pub const CEC_ADAP_G_CONNECTOR_INFO: u32 = 2151964938; ++pub const IOC_OPAL_WRITE_SHADOW_MBR: u32 = 1092645098; ++pub const VIDIOC_SUBDEV_ENUM_FRAME_INTERVAL: u32 = 3225441867; ++pub const UDMABUF_CREATE: u32 = 1075344706; ++pub const SONET_CLRDIAG: u32 = 3221512467; ++pub const PHN_SET_REG: u32 = 1074294785; ++pub const RNDADDTOENTCNT: u32 = 1074024961; ++pub const VBG_IOCTL_CHECK_BALLOON: u32 = 3223344657; ++pub const VIDIOC_OMAP3ISP_STAT_REQ: u32 = 3223869126; ++pub const PPS_FETCH: u32 = 3221778596; ++pub const RTC_AIE_OFF: u32 = 28674; ++pub const VFIO_GROUP_SET_CONTAINER: u32 = 15208; ++pub const FW_CDEV_IOC_RECEIVE_PHY_PACKETS: u32 = 1074275094; ++pub const VFIO_IOMMU_SPAPR_TCE_REMOVE: u32 = 15224; ++pub const VFIO_IOMMU_GET_INFO: u32 = 15216; ++pub const DM_DEV_SUSPEND: u32 = 3241737478; ++pub const F2FS_IOC_GET_COMPRESS_OPTION: u32 = 2147677461; ++pub const FW_CDEV_IOC_STOP_ISO: u32 = 1074012939; ++pub const GPIO_V2_GET_LINEINFO_IOCTL: u32 = 3238048773; ++pub const ATMMPC_CTRL: u32 = 25048; ++pub const PPPIOCSXASYNCMAP: u32 = 1075868751; ++pub const CHIOGSTATUS: u32 = 1074815752; ++pub const FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE: u32 = 3222807309; ++pub const RIO_MPORT_MAINT_PORT_IDX_GET: u32 = 2147773699; ++pub const CAPI_SET_FLAGS: u32 = 2147762980; ++pub const VFIO_GROUP_GET_DEVICE_FD: u32 = 15210; ++pub const VHOST_SET_MEM_TABLE: u32 = 1074310915; ++pub const MATROXFB_SET_OUTPUT_CONNECTION: u32 = 1074294520; ++pub const DFL_FPGA_PORT_GET_REGION_INFO: u32 = 46658; ++pub const VHOST_GET_FEATURES: u32 = 2148052736; ++pub const LIRC_GET_REC_RESOLUTION: u32 = 2147772679; ++pub const PACKET_CTRL_CMD: u32 = 3222820865; ++pub const LIRC_SET_TRANSMITTER_MASK: u32 = 1074030871; ++pub const BTRFS_IOC_ADD_DEV: u32 = 1342215178; ++pub const JSIOCGCORR: u32 = 2149870114; ++pub const VIDIOC_G_FMT: u32 = 3234878980; ++pub const RTC_EPOCH_SET: u32 = 1074294798; ++pub const CAPI_GET_PROFILE: u32 = 3225436937; ++pub const ATM_GETLOOP: u32 = 1074815314; ++pub const SCIF_LISTEN: u32 = 1074033410; ++pub const NBD_CLEAR_QUE: u32 = 43781; ++pub const F2FS_IOC_MOVE_RANGE: u32 = 3223385353; ++pub const LIRC_GET_LENGTH: u32 = 2147772687; ++pub const I8K_SET_FAN: u32 = 3221776775; ++pub const FDSETMAXERRS: u32 = 1075053132; ++pub const VIDIOC_SUBDEV_QUERYCAP: u32 = 2151699968; ++pub const SNAPSHOT_SET_SWAP_AREA: u32 = 1074541325; ++pub const LIRC_GET_REC_TIMEOUT: u32 = 2147772708; ++pub const EVIOCRMFF: u32 = 1074021761; ++pub const GPIO_GET_LINEEVENT_IOCTL: u32 = 3224417284; ++pub const PPRDATA: u32 = 2147577989; ++pub const RIO_MPORT_GET_PROPERTIES: u32 = 2150657284; ++pub const TUNSETVNETHDRSZ: u32 = 1074025688; ++pub const GPIO_GET_LINEINFO_IOCTL: u32 = 3225990146; ++pub const GSMIOC_GETCONF: u32 = 2152482560; ++pub const LIRC_GET_SEND_MODE: u32 = 2147772673; ++pub const PPPIOCSACTIVE: u32 = 1074820166; ++pub const SIOCGSTAMPNS_NEW: u32 = 2148567303; ++pub const IPMICTL_RECEIVE_MSG: u32 = 3224398092; ++pub const LIRC_SET_SEND_DUTY_CYCLE: u32 = 1074030869; ++pub const UI_END_FF_ERASE: u32 = 1074550219; ++pub const SWITCHTEC_IOCTL_FLASH_PART_INFO: u32 = 3222296385; ++pub const FW_CDEV_IOC_SEND_PHY_PACKET: u32 = 3222807317; ++pub const NBD_SET_FLAGS: u32 = 43786; ++pub const VFIO_DEVICE_GET_REGION_INFO: u32 = 15212; ++pub const REISERFS_IOC_UNPACK: u32 = 1074318593; ++pub const FW_CDEV_IOC_REMOVE_DESCRIPTOR: u32 = 1074012935; ++pub const RIO_SET_EVENT_MASK: u32 = 1074031885; ++pub const SNAPSHOT_ALLOC_SWAP_PAGE: u32 = 2148021012; ++pub const VDUSE_VQ_INJECT_IRQ: u32 = 1074037015; ++pub const I2OPASSTHRU: u32 = 2148559116; ++pub const IOC_OPAL_SET_PW: u32 = 1109422304; ++pub const FSI_SCOM_READ: u32 = 3223352065; ++pub const VHOST_VDPA_GET_DEVICE_ID: u32 = 2147790704; ++pub const VIDIOC_QBUF: u32 = 3227014671; ++pub const VIDIOC_S_TUNER: u32 = 1079268894; ++pub const TUNGETVNETHDRSZ: u32 = 2147767511; ++pub const CAPI_NCCI_GETUNIT: u32 = 2147762983; ++pub const DFL_FPGA_PORT_UINT_GET_IRQ_NUM: u32 = 2147792455; ++pub const VIDIOC_OMAP3ISP_STAT_EN: u32 = 3221771975; ++pub const GPIO_V2_LINE_SET_CONFIG_IOCTL: u32 = 3239097357; ++pub const TEE_IOC_VERSION: u32 = 2148312064; ++pub const VIDIOC_LOG_STATUS: u32 = 22086; ++pub const IPMICTL_SEND_COMMAND_SETTIME: u32 = 2150656277; ++pub const VHOST_SET_LOG_FD: u32 = 1074048775; ++pub const SCIF_SEND: u32 = 3222827782; ++pub const VIDIOC_SUBDEV_G_FMT: u32 = 3227014660; ++pub const NS_ADJBUFLEV: u32 = 24931; ++pub const VIDIOC_DBG_S_REGISTER: u32 = 1077433935; ++pub const NILFS_IOCTL_RESIZE: u32 = 1074294411; ++pub const PHN_GETREG: u32 = 3221778437; ++pub const I2OSWDL: u32 = 3224398085; ++pub const VBG_IOCTL_VMMDEV_REQUEST_BIG: u32 = 22019; ++pub const JSIOCGBUTTONS: u32 = 2147576338; ++pub const VFIO_IOMMU_ENABLE: u32 = 15219; ++pub const DM_DEV_RENAME: u32 = 3241737477; ++pub const MEDIA_IOC_SETUP_LINK: u32 = 3224665091; ++pub const VIDIOC_ENUMOUTPUT: u32 = 3225966128; ++pub const STP_POLICY_ID_SET: u32 = 3222283520; ++pub const VHOST_VDPA_SET_CONFIG_CALL: u32 = 1074048887; ++pub const VIDIOC_SUBDEV_G_CROP: u32 = 3224917563; ++pub const VIDIOC_S_CROP: u32 = 1075074620; ++pub const WDIOC_GETTEMP: u32 = 2147768067; ++pub const IOC_OPAL_ADD_USR_TO_LR: u32 = 1092120804; ++pub const UI_SET_LEDBIT: u32 = 1074025833; ++pub const NBD_SET_SOCK: u32 = 43776; ++pub const BTRFS_IOC_SNAP_DESTROY_V2: u32 = 1342215231; ++pub const HIDIOCGCOLLECTIONINFO: u32 = 3222292497; ++pub const I2OSWUL: u32 = 3224398086; ++pub const IOCTL_MEI_NOTIFY_GET: u32 = 2147764227; ++pub const FDFMTTRK: u32 = 1074528840; ++pub const MMTIMER_GETBITS: u32 = 27908; ++pub const VIDIOC_ENUMSTD: u32 = 3225966105; ++pub const VHOST_GET_VRING_BASE: u32 = 3221794578; ++pub const VFIO_DEVICE_IOEVENTFD: u32 = 15220; ++pub const ATMARP_SETENTRY: u32 = 25059; ++pub const CCISS_REVALIDVOLS: u32 = 16906; ++pub const MGSL_IOCLOOPTXDONE: u32 = 27913; ++pub const RTC_VL_READ: u32 = 2147774483; ++pub const ND_IOCTL_ARS_STATUS: u32 = 3224391171; ++pub const RIO_DEV_DEL: u32 = 1075866904; ++pub const VBG_IOCTL_ACQUIRE_GUEST_CAPABILITIES: u32 = 3223606797; ++pub const VIDIOC_SUBDEV_DV_TIMINGS_CAP: u32 = 3230684772; ++pub const SONYPI_IOCSFAN: u32 = 1073837579; ++pub const SPIOCSTYPE: u32 = 1074295041; ++pub const IPMICTL_REGISTER_FOR_CMD: u32 = 2147641614; ++pub const I8K_GET_FAN: u32 = 3221776774; ++pub const TUNGETVNETBE: u32 = 2147767519; ++pub const AUTOFS_DEV_IOCTL_FAIL: u32 = 3222836087; ++pub const UI_END_FF_UPLOAD: u32 = 1080579529; ++pub const TOSH_SMM: u32 = 3222828176; ++pub const SONYPI_IOCGBAT2REM: u32 = 2147644933; ++pub const F2FS_IOC_GET_COMPRESS_BLOCKS: u32 = 2148070673; ++pub const PPPIOCSNPMODE: u32 = 1074295883; ++pub const USBDEVFS_CONTROL: u32 = 3222820096; ++pub const HIDIOCGUSAGE: u32 = 3222816779; ++pub const TUNSETTXFILTER: u32 = 1074025681; ++pub const TUNGETVNETLE: u32 = 2147767517; ++pub const VIDIOC_ENUM_DV_TIMINGS: u32 = 3230946914; ++pub const BTRFS_IOC_INO_PATHS: u32 = 3224933411; ++pub const MGSL_IOCGXSYNC: u32 = 27924; ++pub const HIDIOCGFIELDINFO: u32 = 3224913930; ++pub const VIDIOC_SUBDEV_G_STD: u32 = 2148029975; ++pub const I2OVALIDATE: u32 = 2147772680; ++pub const VIDIOC_TRY_ENCODER_CMD: u32 = 3223869006; ++pub const NILFS_IOCTL_GET_CPINFO: u32 = 2149084802; ++pub const VIDIOC_G_FREQUENCY: u32 = 3224131128; ++pub const VFAT_IOCTL_READDIR_SHORT: u32 = 2184212994; ++pub const ND_IOCTL_GET_CONFIG_DATA: u32 = 3222031877; ++pub const F2FS_IOC_RESERVE_COMPRESS_BLOCKS: u32 = 2148070675; ++pub const FDGETDRVSTAT: u32 = 2152727058; ++pub const SYNC_IOC_MERGE: u32 = 3224387075; ++pub const VIDIOC_S_DV_TIMINGS: u32 = 3229898327; ++pub const PPPIOCBRIDGECHAN: u32 = 1074033717; ++pub const LIRC_SET_SEND_MODE: u32 = 1074030865; ++pub const RIO_ENABLE_PORTWRITE_RANGE: u32 = 1074818315; ++pub const ATM_GETTYPE: u32 = 1074815364; ++pub const PHN_GETREGS: u32 = 3223875591; ++pub const FDSETEMSGTRESH: u32 = 586; ++pub const NILFS_IOCTL_GET_VINFO: u32 = 3222826630; ++pub const MGSL_IOCWAITEVENT: u32 = 3221515528; ++pub const CAPI_INSTALLED: u32 = 2147631906; ++pub const EVIOCGMASK: u32 = 2148550034; ++pub const BTRFS_IOC_SUBVOL_GETFLAGS: u32 = 2148045849; ++pub const FSL_HV_IOCTL_PARTITION_GET_STATUS: u32 = 3222056706; ++pub const MEDIA_IOC_ENUM_ENTITIES: u32 = 3238034433; ++pub const GSMIOC_GETFIRST: u32 = 2147763972; ++pub const FW_CDEV_IOC_FLUSH_ISO: u32 = 1074012952; ++pub const VIDIOC_DBG_G_CHIP_INFO: u32 = 3234354790; ++pub const F2FS_IOC_RELEASE_VOLATILE_WRITE: u32 = 62724; ++pub const CAPI_GET_SERIAL: u32 = 3221504776; ++pub const FDSETDRVPRM: u32 = 1082131088; ++pub const IOC_OPAL_SAVE: u32 = 1092120796; ++pub const VIDIOC_G_DV_TIMINGS: u32 = 3229898328; ++pub const TUNSETIFINDEX: u32 = 1074025690; ++pub const CCISS_SETINTINFO: u32 = 1074283011; ++pub const CM_IOSDBGLVL: u32 = 1074291706; ++pub const RTC_VL_CLR: u32 = 28692; ++pub const VIDIOC_REQBUFS: u32 = 3222558216; ++pub const USBDEVFS_REAPURBNDELAY32: u32 = 1074025741; ++pub const TEE_IOC_SHM_REGISTER: u32 = 3222840329; ++pub const USBDEVFS_SETCONFIGURATION: u32 = 2147767557; ++pub const CCISS_GETNODENAME: u32 = 2148549124; ++pub const VIDIOC_SUBDEV_S_FRAME_INTERVAL: u32 = 3224393238; ++pub const VIDIOC_ENUM_FRAMESIZES: u32 = 3224131146; ++pub const VFIO_DEVICE_PCI_HOT_RESET: u32 = 15217; ++pub const FW_CDEV_IOC_SEND_BROADCAST_REQUEST: u32 = 1076372242; ++pub const LPSETTIMEOUT_NEW: u32 = 1074791951; ++pub const RIO_CM_MPORT_GET_LIST: u32 = 3221512971; ++pub const FW_CDEV_IOC_QUEUE_ISO: u32 = 3222807305; ++pub const FDRAWCMD: u32 = 600; ++pub const SCIF_UNREG: u32 = 3222303497; ++pub const PPPIOCGIDLE64: u32 = 2148561983; ++pub const USBDEVFS_RELEASEINTERFACE: u32 = 2147767568; ++pub const VIDIOC_CROPCAP: u32 = 3224131130; ++pub const DFL_FPGA_PORT_GET_INFO: u32 = 46657; ++pub const PHN_SET_REGS: u32 = 1074294787; ++pub const ATMLEC_DATA: u32 = 25041; ++pub const PPPOEIOCDFWD: u32 = 45313; ++pub const VIDIOC_S_SELECTION: u32 = 3225441887; ++pub const SNAPSHOT_FREE_SWAP_PAGES: u32 = 13065; ++pub const BTRFS_IOC_LOGICAL_INO: u32 = 3224933412; ++pub const VIDIOC_S_CTRL: u32 = 3221771804; ++pub const ZATM_SETPOOL: u32 = 1074815331; ++pub const MTIOCPOS: u32 = 2148035843; ++pub const PMU_IOC_SLEEP: u32 = 16896; ++pub const AUTOFS_DEV_IOCTL_PROTOSUBVER: u32 = 3222836083; ++pub const VBG_IOCTL_CHANGE_FILTER_MASK: u32 = 3223344652; ++pub const NILFS_IOCTL_GET_SUSTAT: u32 = 2150657669; ++pub const VIDIOC_QUERYCAP: u32 = 2154321408; ++pub const HPET_INFO: u32 = 2149083139; ++pub const VIDIOC_AM437X_CCDC_CFG: u32 = 1074288321; ++pub const DM_LIST_DEVICES: u32 = 3241737474; ++pub const TUNSETOWNER: u32 = 1074025676; ++pub const VBG_IOCTL_CHANGE_GUEST_CAPABILITIES: u32 = 3223344654; ++pub const RNDADDENTROPY: u32 = 1074287107; ++pub const USBDEVFS_RESET: u32 = 21780; ++pub const BTRFS_IOC_SUBVOL_CREATE: u32 = 1342215182; ++pub const USBDEVFS_FORBID_SUSPEND: u32 = 21793; ++pub const FDGETDRVTYP: u32 = 2148532751; ++pub const PPWCONTROL: u32 = 1073836164; ++pub const VIDIOC_ENUM_FRAMEINTERVALS: u32 = 3224655435; ++pub const KCOV_DISABLE: u32 = 25445; ++pub const IOC_OPAL_ACTIVATE_LSP: u32 = 1092120799; ++pub const VHOST_VDPA_GET_IOVA_RANGE: u32 = 2148577144; ++pub const PPPIOCSPASS: u32 = 1074820167; ++pub const RIO_CM_CHAN_CONNECT: u32 = 1074291464; ++pub const I2OSWDEL: u32 = 3224398087; ++pub const FS_IOC_SET_ENCRYPTION_POLICY: u32 = 2148296211; ++pub const IOC_OPAL_MBR_DONE: u32 = 1091596521; ++pub const PPPIOCSMAXCID: u32 = 1074033745; ++pub const PPSETPHASE: u32 = 1074032788; ++pub const VHOST_VDPA_SET_VRING_ENABLE: u32 = 1074311029; ++pub const USBDEVFS_GET_SPEED: u32 = 21791; ++pub const SONET_GETFRAMING: u32 = 2147770646; ++pub const VIDIOC_QUERYBUF: u32 = 3227014665; ++pub const VIDIOC_S_EDID: u32 = 3223868969; ++pub const BTRFS_IOC_QGROUP_ASSIGN: u32 = 1075352617; ++pub const PPS_GETCAP: u32 = 2148036771; ++pub const SNAPSHOT_PLATFORM_SUPPORT: u32 = 13071; ++pub const LIRC_SET_REC_TIMEOUT_REPORTS: u32 = 1074030873; ++pub const SCIF_GET_NODEIDS: u32 = 3222827790; ++pub const NBD_DISCONNECT: u32 = 43784; ++pub const VIDIOC_SUBDEV_G_FRAME_INTERVAL: u32 = 3224393237; ++pub const VFIO_IOMMU_DISABLE: u32 = 15220; ++pub const SNAPSHOT_CREATE_IMAGE: u32 = 1074017041; ++pub const SNAPSHOT_POWER_OFF: u32 = 13072; ++pub const APM_IOC_STANDBY: u32 = 16641; ++pub const PPPIOCGUNIT: u32 = 2147775574; ++pub const AUTOFS_IOC_EXPIRE_MULTI: u32 = 1074041702; ++pub const SCIF_BIND: u32 = 3221779201; ++pub const IOC_WATCH_QUEUE_SET_SIZE: u32 = 22368; ++pub const NILFS_IOCTL_CHANGE_CPMODE: u32 = 1074818688; ++pub const IOC_OPAL_LOCK_UNLOCK: u32 = 1092120797; ++pub const F2FS_IOC_SET_PIN_FILE: u32 = 1074066701; ++pub const PPPIOCGRASYNCMAP: u32 = 2147775573; ++pub const MMTIMER_MMAPAVAIL: u32 = 27910; ++pub const I2OPASSTHRU32: u32 = 2148034828; ++pub const DFL_FPGA_FME_PORT_RELEASE: u32 = 1074050689; ++pub const VIDIOC_SUBDEV_QUERY_DV_TIMINGS: u32 = 2156156515; ++pub const UI_SET_SNDBIT: u32 = 1074025834; ++pub const VIDIOC_G_AUDOUT: u32 = 2150913585; ++pub const RTC_PLL_SET: u32 = 1075867666; ++pub const VIDIOC_ENUMAUDIO: u32 = 3224655425; ++pub const AUTOFS_DEV_IOCTL_TIMEOUT: u32 = 3222836090; ++pub const VBG_IOCTL_DRIVER_VERSION_INFO: u32 = 3224131072; ++pub const VHOST_SCSI_GET_EVENTS_MISSED: u32 = 1074048836; ++pub const VHOST_SET_VRING_ADDR: u32 = 1076408081; ++pub const VDUSE_CREATE_DEV: u32 = 1095794946; ++pub const FDFLUSH: u32 = 587; ++pub const VBG_IOCTL_WAIT_FOR_EVENTS: u32 = 3223344650; ++pub const DFL_FPGA_FME_ERR_SET_IRQ: u32 = 1074312836; ++pub const F2FS_IOC_GET_PIN_FILE: u32 = 2147808526; ++pub const SCIF_CONNECT: u32 = 3221779203; ++pub const BLKREPORTZONE: u32 = 3222278786; ++pub const AUTOFS_IOC_ASKUMOUNT: u32 = 2147783536; ++pub const ATM_ADDPARTY: u32 = 1074815476; ++pub const FDSETPRM: u32 = 1075839554; ++pub const ATM_GETSTATZ: u32 = 1074815313; ++pub const ISST_IF_MSR_COMMAND: u32 = 3221814788; ++pub const BTRFS_IOC_GET_SUBVOL_INFO: u32 = 2180551740; ++pub const VIDIOC_UNSUBSCRIBE_EVENT: u32 = 1075861083; ++pub const SEV_ISSUE_CMD: u32 = 3222295296; ++pub const GPIOHANDLE_SET_LINE_VALUES_IOCTL: u32 = 3225465865; ++pub const PCITEST_COPY: u32 = 1074286598; ++pub const IPMICTL_GET_MY_ADDRESS_CMD: u32 = 2147772690; ++pub const CHIOGPICKER: u32 = 2147771140; ++pub const CAPI_NCCI_OPENCOUNT: u32 = 2147762982; ++pub const CXL_MEM_SEND_COMMAND: u32 = 3224423938; ++pub const PERF_EVENT_IOC_SET_FILTER: u32 = 1074275334; ++pub const IOC_OPAL_REVERT_TPR: u32 = 1091072226; ++pub const CHIOGVPARAMS: u32 = 2154849043; ++pub const PTP_PEROUT_REQUEST: u32 = 1077427459; ++pub const FSI_SCOM_CHECK: u32 = 2147775232; ++pub const RTC_IRQP_READ: u32 = 2148036619; ++pub const RIO_MPORT_MAINT_READ_LOCAL: u32 = 2149084421; ++pub const HIDIOCGRDESCSIZE: u32 = 2147764225; ++pub const UI_GET_VERSION: u32 = 2147767597; ++pub const NILFS_IOCTL_GET_CPSTAT: u32 = 2149084803; ++pub const CCISS_GETBUSTYPES: u32 = 2147762695; ++pub const VFIO_IOMMU_SPAPR_TCE_CREATE: u32 = 15223; ++pub const VIDIOC_EXPBUF: u32 = 3225441808; ++pub const UI_SET_RELBIT: u32 = 1074025830; ++pub const VFIO_SET_IOMMU: u32 = 15206; ++pub const VIDIOC_S_MODULATOR: u32 = 1078220343; ++pub const TUNGETFILTER: u32 = 2148553947; ++pub const MEYEIOC_SYNC: u32 = 3221518019; ++pub const CCISS_SETNODENAME: u32 = 1074807301; ++pub const FBIO_GETCONTROL2: u32 = 2148025993; ++pub const TUNSETDEBUG: u32 = 1074025673; ++pub const DM_DEV_REMOVE: u32 = 3241737476; ++pub const HIDIOCSUSAGES: u32 = 1344030740; ++pub const FS_IOC_ADD_ENCRYPTION_KEY: u32 = 3226494487; ++pub const FBIOGET_VBLANK: u32 = 2149598738; ++pub const ATM_GETSTAT: u32 = 1074815312; ++pub const VIDIOC_G_JPEGCOMP: u32 = 2156680765; ++pub const TUNATTACHFILTER: u32 = 1074812117; ++pub const UI_SET_ABSBIT: u32 = 1074025831; ++pub const DFL_FPGA_PORT_ERR_GET_IRQ_NUM: u32 = 2147792453; ++pub const USBDEVFS_REAPURB32: u32 = 1074025740; ++pub const BTRFS_IOC_TRANS_END: u32 = 37895; ++pub const CAPI_REGISTER: u32 = 1074545409; ++pub const F2FS_IOC_COMPRESS_FILE: u32 = 62744; ++pub const USBDEVFS_DISCARDURB: u32 = 21771; ++pub const HE_GET_REG: u32 = 1074815328; ++pub const ATM_SETLOOP: u32 = 1074815315; ++pub const ATMSIGD_CTRL: u32 = 25072; ++pub const CIOC_KERNEL_VERSION: u32 = 3221775114; ++pub const BTRFS_IOC_CLONE_RANGE: u32 = 1075876877; ++pub const SNAPSHOT_UNFREEZE: u32 = 13058; ++pub const F2FS_IOC_START_VOLATILE_WRITE: u32 = 62723; ++pub const PMU_IOC_HAS_ADB: u32 = 2148024836; ++pub const I2OGETIOPS: u32 = 2149607680; ++pub const VIDIOC_S_FBUF: u32 = 1076909579; ++pub const PPRCONTROL: u32 = 2147577987; ++pub const CHIOSPICKER: u32 = 1074029317; ++pub const VFIO_IOMMU_SPAPR_REGISTER_MEMORY: u32 = 15221; ++pub const TUNGETSNDBUF: u32 = 2147767507; ++pub const GSMIOC_SETCONF: u32 = 1078740737; ++pub const IOC_PR_PREEMPT: u32 = 1075343563; ++pub const KCOV_INIT_TRACE: u32 = 2148033281; ++pub const SONYPI_IOCGBAT1CAP: u32 = 2147644930; ++pub const SWITCHTEC_IOCTL_FLASH_INFO: u32 = 2148554560; ++pub const MTIOCTOP: u32 = 1074294017; ++pub const VHOST_VDPA_SET_STATUS: u32 = 1073852274; ++pub const VHOST_SCSI_SET_EVENTS_MISSED: u32 = 1074048835; ++pub const VFIO_IOMMU_DIRTY_PAGES: u32 = 15221; ++pub const BTRFS_IOC_SCRUB_PROGRESS: u32 = 3288372253; ++pub const PPPIOCGMRU: u32 = 2147775571; ++pub const BTRFS_IOC_DEV_REPLACE: u32 = 3391657013; ++pub const PPPIOCGFLAGS: u32 = 2147775578; ++pub const NILFS_IOCTL_SET_SUINFO: u32 = 1075342989; ++pub const FW_CDEV_IOC_GET_CYCLE_TIMER2: u32 = 3222807316; ++pub const ATM_DELLECSADDR: u32 = 1074815375; ++pub const FW_CDEV_IOC_GET_SPEED: u32 = 8977; ++pub const PPPIOCGIDLE32: u32 = 2148037695; ++pub const VFIO_DEVICE_RESET: u32 = 15215; ++pub const GPIO_GET_LINEINFO_UNWATCH_IOCTL: u32 = 3221533708; ++pub const WDIOC_GETSTATUS: u32 = 2147768065; ++pub const BTRFS_IOC_SET_FEATURES: u32 = 1076925497; ++pub const IOCTL_MEI_CONNECT_CLIENT: u32 = 3222292481; ++pub const VIDIOC_OMAP3ISP_AEWB_CFG: u32 = 3223344835; ++pub const PCITEST_READ: u32 = 1074286597; ++pub const VFIO_GROUP_GET_STATUS: u32 = 15207; ++pub const MATROXFB_GET_ALL_OUTPUTS: u32 = 2148036347; ++pub const USBDEVFS_CLEAR_HALT: u32 = 2147767573; ++pub const VIDIOC_DECODER_CMD: u32 = 3225966176; ++pub const VIDIOC_G_AUDIO: u32 = 2150913569; ++pub const CCISS_RESCANDISK: u32 = 16912; ++pub const RIO_DISABLE_PORTWRITE_RANGE: u32 = 1074818316; ++pub const IOC_OPAL_SECURE_ERASE_LR: u32 = 1091596519; ++pub const USBDEVFS_REAPURB: u32 = 1074287884; ++pub const DFL_FPGA_CHECK_EXTENSION: u32 = 46593; ++pub const AUTOFS_IOC_PROTOVER: u32 = 2147783523; ++pub const FSL_HV_IOCTL_MEMCPY: u32 = 3223891717; ++pub const BTRFS_IOC_GET_FEATURES: u32 = 2149094457; ++pub const PCITEST_MSIX: u32 = 1074024455; ++pub const BTRFS_IOC_DEFRAG_RANGE: u32 = 1076925456; ++pub const UI_BEGIN_FF_ERASE: u32 = 3222033866; ++pub const DM_GET_TARGET_VERSION: u32 = 3241737489; ++pub const PPPIOCGIDLE: u32 = 2148561983; ++pub const NVRAM_SETCKS: u32 = 28737; ++pub const WDIOC_GETSUPPORT: u32 = 2150127360; ++pub const GSMIOC_ENABLE_NET: u32 = 1077167874; ++pub const GPIO_GET_CHIPINFO_IOCTL: u32 = 2151986177; ++pub const NE_ADD_VCPU: u32 = 3221532193; ++pub const EVIOCSKEYCODE_V2: u32 = 1076380932; ++pub const PTP_SYS_OFFSET_EXTENDED2: u32 = 3300932882; ++pub const SCIF_FENCE_WAIT: u32 = 3221517072; ++pub const RIO_TRANSFER: u32 = 3222826261; ++pub const FSL_HV_IOCTL_DOORBELL: u32 = 3221794566; ++pub const RIO_MPORT_MAINT_WRITE_LOCAL: u32 = 1075342598; ++pub const I2OEVTREG: u32 = 1074555146; ++pub const I2OPARMGET: u32 = 3223873796; ++pub const EVIOCGID: u32 = 2148025602; ++pub const BTRFS_IOC_QGROUP_CREATE: u32 = 1074828330; ++pub const AUTOFS_DEV_IOCTL_SETPIPEFD: u32 = 3222836088; ++pub const VIDIOC_S_PARM: u32 = 3234616854; ++pub const TUNSETSTEERINGEBPF: u32 = 2147767520; ++pub const ATM_GETNAMES: u32 = 1074815363; ++pub const VIDIOC_QUERYMENU: u32 = 3224131109; ++pub const DFL_FPGA_PORT_DMA_UNMAP: u32 = 46660; ++pub const I2OLCTGET: u32 = 3222825218; ++pub const FS_IOC_GET_ENCRYPTION_PWSALT: u32 = 1074816532; ++pub const NS_SETBUFLEV: u32 = 1074815330; ++pub const BLKCLOSEZONE: u32 = 1074795143; ++pub const SONET_GETFRSENSE: u32 = 2147901719; ++pub const UI_SET_EVBIT: u32 = 1074025828; ++pub const DM_LIST_VERSIONS: u32 = 3241737485; ++pub const HIDIOCGSTRING: u32 = 2164541444; ++pub const PPPIOCATTCHAN: u32 = 1074033720; ++pub const VDUSE_DEV_SET_CONFIG: u32 = 1074299154; ++pub const TUNGETFEATURES: u32 = 2147767503; ++pub const VFIO_GROUP_UNSET_CONTAINER: u32 = 15209; ++pub const IPMICTL_SET_MY_ADDRESS_CMD: u32 = 2147772689; ++pub const CCISS_REGNEWDISK: u32 = 1074020877; ++pub const VIDIOC_QUERY_DV_TIMINGS: u32 = 2156156515; ++pub const PHN_SETREGS: u32 = 1076391944; ++pub const FAT_IOCTL_GET_ATTRIBUTES: u32 = 2147774992; ++pub const FSL_MC_SEND_MC_COMMAND: u32 = 3225440992; ++pub const TUNGETIFF: u32 = 2147767506; ++pub const PTP_CLOCK_GETCAPS2: u32 = 2152742154; ++pub const BTRFS_IOC_RESIZE: u32 = 1342215171; ++pub const VHOST_SET_VRING_ENDIAN: u32 = 1074310931; ++pub const PPS_KC_BIND: u32 = 1074294949; ++pub const F2FS_IOC_WRITE_CHECKPOINT: u32 = 62727; ++pub const UI_SET_FFBIT: u32 = 1074025835; ++pub const IPMICTL_GET_MY_LUN_CMD: u32 = 2147772692; ++pub const CEC_ADAP_G_PHYS_ADDR: u32 = 2147639553; ++pub const CEC_G_MODE: u32 = 2147770632; ++pub const USBDEVFS_RESETEP: u32 = 2147767555; ++pub const MEDIA_REQUEST_IOC_QUEUE: u32 = 31872; ++pub const USBDEVFS_ALLOC_STREAMS: u32 = 2148029724; ++pub const MGSL_IOCSXCTRL: u32 = 27925; ++pub const MEDIA_IOC_G_TOPOLOGY: u32 = 3225975812; ++pub const PPPIOCUNBRIDGECHAN: u32 = 29748; ++pub const F2FS_IOC_COMMIT_ATOMIC_WRITE: u32 = 62722; ++pub const ISST_IF_GET_PLATFORM_INFO: u32 = 2148072960; ++pub const SCIF_FENCE_MARK: u32 = 3222303503; ++pub const USBDEVFS_RELEASE_PORT: u32 = 2147767577; ++pub const VFIO_CHECK_EXTENSION: u32 = 15205; ++pub const BTRFS_IOC_QGROUP_LIMIT: u32 = 2150667307; ++pub const FAT_IOCTL_GET_VOLUME_ID: u32 = 2147774995; ++pub const UI_SET_PHYS: u32 = 1074287980; ++pub const FDWERRORGET: u32 = 2150105623; ++pub const VIDIOC_SUBDEV_G_EDID: u32 = 3223868968; ++pub const MGSL_IOCGSTATS: u32 = 27911; ++pub const RPROC_SET_SHUTDOWN_ON_RELEASE: u32 = 1074050817; ++pub const SIOCGSTAMP_NEW: u32 = 2148567302; ++pub const RTC_WKALM_RD: u32 = 2150133776; ++pub const PHN_GET_REG: u32 = 3221778432; ++pub const DELL_WMI_SMBIOS_CMD: u32 = 3224655616; ++pub const PHN_NOT_OH: u32 = 28676; ++pub const PPGETMODES: u32 = 2147774615; ++pub const CHIOGPARAMS: u32 = 2148819718; ++pub const VFIO_DEVICE_GET_GFX_DMABUF: u32 = 15219; ++pub const VHOST_SET_VRING_BUSYLOOP_TIMEOUT: u32 = 1074310947; ++pub const VIDIOC_SUBDEV_G_SELECTION: u32 = 3225441853; ++pub const BTRFS_IOC_RM_DEV_V2: u32 = 1342215226; ++pub const MGSL_IOCWAITGPIO: u32 = 3222301970; ++pub const PMU_IOC_CAN_SLEEP: u32 = 2148024837; ++pub const KCOV_ENABLE: u32 = 25444; ++pub const BTRFS_IOC_CLONE: u32 = 1074041865; ++pub const F2FS_IOC_DEFRAGMENT: u32 = 3222336776; ++pub const FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE: u32 = 1074012942; ++pub const AGPIOC_ALLOCATE: u32 = 3221766406; ++pub const NE_SET_USER_MEMORY_REGION: u32 = 1075359267; ++pub const MGSL_IOCTXABORT: u32 = 27910; ++pub const MGSL_IOCSGPIO: u32 = 1074818320; ++pub const LIRC_SET_REC_CARRIER: u32 = 1074030868; ++pub const F2FS_IOC_FLUSH_DEVICE: u32 = 1074328842; ++pub const SNAPSHOT_ATOMIC_RESTORE: u32 = 13060; ++pub const RTC_UIE_OFF: u32 = 28676; ++pub const BT_BMC_IOCTL_SMS_ATN: u32 = 45312; ++pub const NVME_IOCTL_ID: u32 = 20032; ++pub const NE_START_ENCLAVE: u32 = 3222318628; ++pub const VIDIOC_STREAMON: u32 = 1074026002; ++pub const FDPOLLDRVSTAT: u32 = 2152727059; ++pub const AUTOFS_DEV_IOCTL_READY: u32 = 3222836086; ++pub const VIDIOC_ENUMAUDOUT: u32 = 3224655426; ++pub const VIDIOC_SUBDEV_S_STD: u32 = 1074288152; ++pub const WDIOC_GETTIMELEFT: u32 = 2147768074; ++pub const ATM_GETLINKRATE: u32 = 1074815361; ++pub const RTC_WKALM_SET: u32 = 1076391951; ++pub const VHOST_GET_BACKEND_FEATURES: u32 = 2148052774; ++pub const ATMARP_ENCAP: u32 = 25061; ++pub const CAPI_GET_FLAGS: u32 = 2147762979; ++pub const IPMICTL_SET_MY_CHANNEL_ADDRESS_CMD: u32 = 2147772696; ++pub const DFL_FPGA_FME_PORT_ASSIGN: u32 = 1074050690; ++pub const NS_GET_OWNER_UID: u32 = 46852; ++pub const VIDIOC_OVERLAY: u32 = 1074025998; ++pub const BTRFS_IOC_WAIT_SYNC: u32 = 1074304022; ++pub const GPIOHANDLE_SET_CONFIG_IOCTL: u32 = 3226776586; ++pub const VHOST_GET_VRING_ENDIAN: u32 = 1074310932; ++pub const ATM_GETADDR: u32 = 1074815366; ++pub const PHN_GET_REGS: u32 = 3221778434; ++pub const AUTOFS_DEV_IOCTL_REQUESTER: u32 = 3222836091; ++pub const AUTOFS_DEV_IOCTL_EXPIRE: u32 = 3222836092; ++pub const SNAPSHOT_S2RAM: u32 = 13067; ++pub const JSIOCSAXMAP: u32 = 1077963313; ++pub const F2FS_IOC_SET_COMPRESS_OPTION: u32 = 1073935638; ++pub const VBG_IOCTL_HGCM_DISCONNECT: u32 = 3223082501; ++pub const SCIF_FENCE_SIGNAL: u32 = 3223876369; ++pub const VFIO_DEVICE_GET_PCI_HOT_RESET_INFO: u32 = 15216; ++pub const VIDIOC_SUBDEV_ENUM_MBUS_CODE: u32 = 3224393218; ++pub const MMTIMER_GETOFFSET: u32 = 27904; ++pub const RIO_CM_CHAN_LISTEN: u32 = 1073898246; ++pub const ATM_SETSC: u32 = 1074029041; ++pub const F2FS_IOC_SHUTDOWN: u32 = 2147768445; ++pub const NVME_IOCTL_RESCAN: u32 = 20038; ++pub const BLKOPENZONE: u32 = 1074795142; ++pub const DM_VERSION: u32 = 3241737472; ++pub const CEC_TRANSMIT: u32 = 3224920325; ++pub const FS_IOC_GET_ENCRYPTION_POLICY_EX: u32 = 3221841430; ++pub const SIOCMKCLIP: u32 = 25056; ++pub const IPMI_BMC_IOCTL_CLEAR_SMS_ATN: u32 = 45313; ++pub const HIDIOCGVERSION: u32 = 2147764225; ++pub const VIDIOC_S_INPUT: u32 = 3221509671; ++pub const VIDIOC_G_CROP: u32 = 3222558267; ++pub const LIRC_SET_WIDEBAND_RECEIVER: u32 = 1074030883; ++pub const EVIOCGEFFECTS: u32 = 2147763588; ++pub const UVCIOC_CTRL_QUERY: u32 = 3222304033; ++pub const IOC_OPAL_GENERIC_TABLE_RW: u32 = 1094217963; ++pub const FS_IOC_READ_VERITY_METADATA: u32 = 3223873159; ++pub const ND_IOCTL_SET_CONFIG_DATA: u32 = 3221769734; ++pub const USBDEVFS_GETDRIVER: u32 = 1090802952; ++pub const IDT77105_GETSTAT: u32 = 1074815282; ++pub const HIDIOCINITREPORT: u32 = 18437; ++pub const VFIO_DEVICE_GET_INFO: u32 = 15211; ++pub const RIO_CM_CHAN_RECEIVE: u32 = 3222299402; ++pub const RNDGETENTCNT: u32 = 2147766784; ++pub const PPPIOCNEWUNIT: u32 = 3221517374; ++pub const BTRFS_IOC_INO_LOOKUP: u32 = 3489698834; ++pub const FDRESET: u32 = 596; ++pub const IOC_PR_REGISTER: u32 = 1075343560; ++pub const HIDIOCSREPORT: u32 = 1074546696; ++pub const TEE_IOC_OPEN_SESSION: u32 = 2148574210; ++pub const TEE_IOC_SUPPL_RECV: u32 = 2148574214; ++pub const BTRFS_IOC_BALANCE_CTL: u32 = 1074041889; ++pub const GPIO_GET_LINEINFO_WATCH_IOCTL: u32 = 3225990155; ++pub const HIDIOCGRAWINFO: u32 = 2148026371; ++pub const PPPIOCSCOMPRESS: u32 = 1074820173; ++pub const USBDEVFS_CONNECTINFO: u32 = 1074287889; ++pub const BLKRESETZONE: u32 = 1074795139; ++pub const CHIOINITELEM: u32 = 25361; ++pub const NILFS_IOCTL_SET_ALLOC_RANGE: u32 = 1074818700; ++pub const AUTOFS_DEV_IOCTL_CATATONIC: u32 = 3222836089; ++pub const RIO_MPORT_MAINT_HDID_SET: u32 = 1073900801; ++pub const PPGETPHASE: u32 = 2147774617; ++pub const USBDEVFS_DISCONNECT_CLAIM: u32 = 2164806939; ++pub const FDMSGON: u32 = 581; ++pub const VIDIOC_G_SLICED_VBI_CAP: u32 = 3228849733; ++pub const BTRFS_IOC_BALANCE_V2: u32 = 3288372256; ++pub const MEDIA_REQUEST_IOC_REINIT: u32 = 31873; ++pub const IOC_OPAL_ERASE_LR: u32 = 1091596518; ++pub const FDFMTBEG: u32 = 583; ++pub const RNDRESEEDCRNG: u32 = 20999; ++pub const ISST_IF_GET_PHY_ID: u32 = 3221814785; ++pub const TUNSETNOCSUM: u32 = 1074025672; ++pub const SONET_GETSTAT: u32 = 2149867792; ++pub const TFD_IOC_SET_TICKS: u32 = 1074287616; ++pub const PPDATADIR: u32 = 1074032784; ++pub const IOC_OPAL_ENABLE_DISABLE_MBR: u32 = 1091596517; ++pub const GPIO_V2_GET_LINE_IOCTL: u32 = 3260068871; ++pub const RIO_CM_CHAN_SEND: u32 = 1074815753; ++pub const PPWCTLONIRQ: u32 = 1073836178; ++pub const SONYPI_IOCGBRT: u32 = 2147579392; ++pub const IOC_PR_RELEASE: u32 = 1074819274; ++pub const PPCLRIRQ: u32 = 2147774611; ++pub const IPMICTL_SET_MY_CHANNEL_LUN_CMD: u32 = 2147772698; ++pub const MGSL_IOCSXSYNC: u32 = 27923; ++pub const HPET_IE_OFF: u32 = 26626; ++pub const IOC_OPAL_ACTIVATE_USR: u32 = 1091596513; ++pub const SONET_SETFRAMING: u32 = 1074028821; ++pub const PERF_EVENT_IOC_PAUSE_OUTPUT: u32 = 1074013193; ++pub const BTRFS_IOC_LOGICAL_INO_V2: u32 = 3224933435; ++pub const VBG_IOCTL_HGCM_CONNECT: u32 = 3231471108; ++pub const BLKFINISHZONE: u32 = 1074795144; ++pub const EVIOCREVOKE: u32 = 1074021777; ++pub const VFIO_DEVICE_FEATURE: u32 = 15221; ++pub const CCISS_GETPCIINFO: u32 = 2148024833; ++pub const ISST_IF_MBOX_COMMAND: u32 = 3221814787; ++pub const SCIF_ACCEPTREQ: u32 = 3222303492; ++pub const PERF_EVENT_IOC_QUERY_BPF: u32 = 3221758986; ++pub const VIDIOC_STREAMOFF: u32 = 1074026003; ++pub const VDUSE_DESTROY_DEV: u32 = 1090552067; ++pub const FDGETFDCSTAT: u32 = 2150105621; ++pub const CM_IOCGATR: u32 = 3221775105; ++pub const VIDIOC_S_PRIORITY: u32 = 1074026052; ++pub const SNAPSHOT_FREEZE: u32 = 13057; ++pub const VIDIOC_ENUMINPUT: u32 = 3226490394; ++pub const ZATM_GETPOOLZ: u32 = 1074815330; ++pub const RIO_DISABLE_DOORBELL_RANGE: u32 = 1074294026; ++pub const GPIO_V2_GET_LINEINFO_WATCH_IOCTL: u32 = 3238048774; ++pub const VIDIOC_G_STD: u32 = 2148029975; ++pub const USBDEVFS_ALLOW_SUSPEND: u32 = 21794; ++pub const SONET_GETSTATZ: u32 = 2149867793; ++pub const SCIF_ACCEPTREG: u32 = 3221779205; ++pub const VIDIOC_ENCODER_CMD: u32 = 3223869005; ++pub const PPPIOCSRASYNCMAP: u32 = 1074033748; ++pub const IOCTL_MEI_NOTIFY_SET: u32 = 1074022402; ++pub const BTRFS_IOC_QUOTA_RESCAN_STATUS: u32 = 2151715885; ++pub const F2FS_IOC_GARBAGE_COLLECT: u32 = 1074066694; ++pub const ATMLEC_CTRL: u32 = 25040; ++pub const MATROXFB_GET_AVAILABLE_OUTPUTS: u32 = 2148036345; ++pub const DM_DEV_CREATE: u32 = 3241737475; ++pub const VHOST_VDPA_GET_VRING_NUM: u32 = 2147659638; ++pub const VIDIOC_G_CTRL: u32 = 3221771803; ++pub const NBD_CLEAR_SOCK: u32 = 43780; ++pub const VFIO_DEVICE_QUERY_GFX_PLANE: u32 = 15218; ++pub const WDIOC_KEEPALIVE: u32 = 2147768069; ++pub const NVME_IOCTL_SUBSYS_RESET: u32 = 20037; ++pub const PTP_EXTTS_REQUEST2: u32 = 1074806027; ++pub const PCITEST_BAR: u32 = 20481; ++pub const MGSL_IOCGGPIO: u32 = 2148560145; ++pub const EVIOCSREP: u32 = 1074283779; ++pub const VFIO_DEVICE_GET_IRQ_INFO: u32 = 15213; ++pub const HPET_DPI: u32 = 26629; ++pub const VDUSE_VQ_SETUP_KICKFD: u32 = 1074299158; ++pub const ND_IOCTL_CALL: u32 = 3225439754; ++pub const HIDIOCGDEVINFO: u32 = 2149337091; ++pub const DM_TABLE_DEPS: u32 = 3241737483; ++pub const BTRFS_IOC_DEV_INFO: u32 = 3489698846; ++pub const VDUSE_IOTLB_GET_FD: u32 = 3223355664; ++pub const FW_CDEV_IOC_GET_INFO: u32 = 3223855872; ++pub const VIDIOC_G_PRIORITY: u32 = 2147767875; ++pub const ATM_NEWBACKENDIF: u32 = 1073897971; ++pub const VIDIOC_S_EXT_CTRLS: u32 = 3223344712; ++pub const VIDIOC_SUBDEV_ENUM_DV_TIMINGS: u32 = 3230946914; ++pub const VIDIOC_OMAP3ISP_CCDC_CFG: u32 = 3224917697; ++pub const VIDIOC_S_HW_FREQ_SEEK: u32 = 1076909650; ++pub const DM_TABLE_LOAD: u32 = 3241737481; ++pub const F2FS_IOC_START_ATOMIC_WRITE: u32 = 62721; ++pub const VIDIOC_G_OUTPUT: u32 = 2147767854; ++pub const ATM_DROPPARTY: u32 = 1074029045; ++pub const CHIOGELEM: u32 = 1080845072; ++pub const BTRFS_IOC_GET_SUPPORTED_FEATURES: u32 = 2152240185; ++pub const EVIOCSKEYCODE: u32 = 1074283780; ++pub const NE_GET_IMAGE_LOAD_INFO: u32 = 3222318626; ++pub const TUNSETLINK: u32 = 1074025677; ++pub const FW_CDEV_IOC_ADD_DESCRIPTOR: u32 = 3222807302; ++pub const BTRFS_IOC_SCRUB_CANCEL: u32 = 37916; ++pub const PPS_SETPARAMS: u32 = 1074294946; ++pub const IOC_OPAL_LR_SETUP: u32 = 1093169379; ++pub const FW_CDEV_IOC_DEALLOCATE: u32 = 1074012931; ++pub const WDIOC_SETTIMEOUT: u32 = 3221509894; ++pub const IOC_WATCH_QUEUE_SET_FILTER: u32 = 22369; ++pub const CAPI_GET_MANUFACTURER: u32 = 3221504774; ++pub const VFIO_IOMMU_SPAPR_UNREGISTER_MEMORY: u32 = 15222; ++pub const ASPEED_P2A_CTRL_IOCTL_SET_WINDOW: u32 = 1074836224; ++pub const VIDIOC_G_EDID: u32 = 3223868968; ++pub const F2FS_IOC_GARBAGE_COLLECT_RANGE: u32 = 1075377419; ++pub const RIO_MAP_INBOUND: u32 = 3223874833; ++pub const IOC_OPAL_TAKE_OWNERSHIP: u32 = 1091072222; ++pub const USBDEVFS_CLAIM_PORT: u32 = 2147767576; ++pub const VIDIOC_S_AUDIO: u32 = 1077171746; ++pub const FS_IOC_GET_ENCRYPTION_NONCE: u32 = 2148558363; ++pub const FW_CDEV_IOC_SEND_STREAM_PACKET: u32 = 1076372243; ++pub const BTRFS_IOC_SNAP_DESTROY: u32 = 1342215183; ++pub const SNAPSHOT_FREE: u32 = 13061; ++pub const I8K_GET_SPEED: u32 = 3221776773; ++pub const HIDIOCGREPORT: u32 = 1074546695; ++pub const HPET_EPI: u32 = 26628; ++pub const JSIOCSCORR: u32 = 1076128289; ++pub const IOC_PR_PREEMPT_ABORT: u32 = 1075343564; ++pub const RIO_MAP_OUTBOUND: u32 = 3223874831; ++pub const ATM_SETESI: u32 = 1074815372; ++pub const FW_CDEV_IOC_START_ISO: u32 = 1074799370; ++pub const ATM_DELADDR: u32 = 1074815369; ++pub const PPFCONTROL: u32 = 1073901710; ++pub const SONYPI_IOCGFAN: u32 = 2147579402; ++pub const RTC_IRQP_SET: u32 = 1074294796; ++pub const PCITEST_WRITE: u32 = 1074286596; ++pub const PPCLAIM: u32 = 28811; ++pub const VIDIOC_S_JPEGCOMP: u32 = 1082938942; ++pub const IPMICTL_UNREGISTER_FOR_CMD: u32 = 2147641615; ++pub const VHOST_SET_FEATURES: u32 = 1074310912; ++pub const TOSHIBA_ACPI_SCI: u32 = 3222828177; ++pub const VIDIOC_DQBUF: u32 = 3227014673; ++pub const BTRFS_IOC_BALANCE_PROGRESS: u32 = 2214630434; ++pub const BTRFS_IOC_SUBVOL_SETFLAGS: u32 = 1074304026; ++pub const ATMLEC_MCAST: u32 = 25042; ++pub const MMTIMER_GETFREQ: u32 = 2148035842; ++pub const VIDIOC_G_SELECTION: u32 = 3225441886; ++pub const RTC_ALM_SET: u32 = 1076129799; ++pub const PPPOEIOCSFWD: u32 = 1074311424; ++pub const IPMICTL_GET_MAINTENANCE_MODE_CMD: u32 = 2147772702; ++pub const FS_IOC_ENABLE_VERITY: u32 = 1082156677; ++pub const NILFS_IOCTL_GET_BDESCS: u32 = 3222826631; ++pub const FDFMTEND: u32 = 585; ++pub const DMA_BUF_SET_NAME: u32 = 1074291201; ++pub const UI_BEGIN_FF_UPLOAD: u32 = 3228063176; ++pub const RTC_UIE_ON: u32 = 28675; ++pub const PPRELEASE: u32 = 28812; ++pub const VFIO_IOMMU_UNMAP_DMA: u32 = 15218; ++pub const VIDIOC_OMAP3ISP_PRV_CFG: u32 = 3228587714; ++pub const GPIO_GET_LINEHANDLE_IOCTL: u32 = 3245126659; ++pub const VFAT_IOCTL_READDIR_BOTH: u32 = 2184212993; ++pub const NVME_IOCTL_ADMIN_CMD: u32 = 3225964097; ++pub const VHOST_SET_VRING_KICK: u32 = 1074310944; ++pub const BTRFS_IOC_SUBVOL_CREATE_V2: u32 = 1342215192; ++pub const BTRFS_IOC_SNAP_CREATE: u32 = 1342215169; ++pub const SONYPI_IOCGBAT2CAP: u32 = 2147644932; ++pub const PPNEGOT: u32 = 1074032785; ++pub const NBD_PRINT_DEBUG: u32 = 43782; ++pub const BTRFS_IOC_INO_LOOKUP_USER: u32 = 3489698878; ++pub const BTRFS_IOC_GET_SUBVOL_ROOTREF: u32 = 3489698877; ++pub const FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS: u32 = 3225445913; ++pub const BTRFS_IOC_FS_INFO: u32 = 2214630431; ++pub const VIDIOC_ENUM_FMT: u32 = 3225441794; ++pub const VIDIOC_G_INPUT: u32 = 2147767846; ++pub const VTPM_PROXY_IOC_NEW_DEV: u32 = 3222577408; ++pub const DFL_FPGA_FME_ERR_GET_IRQ_NUM: u32 = 2147792515; ++pub const ND_IOCTL_DIMM_FLAGS: u32 = 3221769731; ++pub const BTRFS_IOC_QUOTA_RESCAN: u32 = 1077974060; ++pub const MMTIMER_GETCOUNTER: u32 = 2148035849; ++pub const MATROXFB_GET_OUTPUT_MODE: u32 = 3221778170; ++pub const BTRFS_IOC_QUOTA_RESCAN_WAIT: u32 = 37934; ++pub const RIO_CM_CHAN_BIND: u32 = 1074291461; ++pub const HIDIOCGRDESC: u32 = 2416199682; ++pub const MGSL_IOCGIF: u32 = 27915; ++pub const VIDIOC_S_OUTPUT: u32 = 3221509679; ++pub const HIDIOCGREPORTINFO: u32 = 3222030345; ++pub const WDIOC_GETBOOTSTATUS: u32 = 2147768066; ++pub const VDUSE_VQ_GET_INFO: u32 = 3224404245; ++pub const ACRN_IOCTL_ASSIGN_PCIDEV: u32 = 1076142677; ++pub const BLKGETDISKSEQ: u32 = 2148012672; ++pub const ACRN_IOCTL_PM_GET_CPU_STATE: u32 = 3221791328; ++pub const ACRN_IOCTL_DESTROY_VM: u32 = 41489; ++pub const ACRN_IOCTL_SET_PTDEV_INTR: u32 = 1075094099; ++pub const ACRN_IOCTL_CREATE_IOREQ_CLIENT: u32 = 41522; ++pub const ACRN_IOCTL_IRQFD: u32 = 1075356273; ++pub const ACRN_IOCTL_CREATE_VM: u32 = 3224412688; ++pub const ACRN_IOCTL_INJECT_MSI: u32 = 1074831907; ++pub const ACRN_IOCTL_ATTACH_IOREQ_CLIENT: u32 = 41523; ++pub const ACRN_IOCTL_RESET_PTDEV_INTR: u32 = 1075094100; ++pub const ACRN_IOCTL_NOTIFY_REQUEST_FINISH: u32 = 1074307633; ++pub const ACRN_IOCTL_SET_IRQLINE: u32 = 1074307621; ++pub const ACRN_IOCTL_START_VM: u32 = 41490; ++pub const ACRN_IOCTL_SET_VCPU_REGS: u32 = 1093181974; ++pub const ACRN_IOCTL_SET_MEMSEG: u32 = 1075880513; ++pub const ACRN_IOCTL_PAUSE_VM: u32 = 41491; ++pub const ACRN_IOCTL_CLEAR_VM_IOREQ: u32 = 41525; ++pub const ACRN_IOCTL_UNSET_MEMSEG: u32 = 1075880514; ++pub const ACRN_IOCTL_IOEVENTFD: u32 = 1075880560; ++pub const ACRN_IOCTL_DEASSIGN_PCIDEV: u32 = 1076142678; ++pub const ACRN_IOCTL_RESET_VM: u32 = 41493; ++pub const ACRN_IOCTL_DESTROY_IOREQ_CLIENT: u32 = 41524; ++pub const ACRN_IOCTL_VM_INTR_MONITOR: u32 = 1074307620; +--- a/vendor/linux-raw-sys/.cargo-checksum.json ++++ b/vendor/linux-raw-sys/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"CODE_OF_CONDUCT.md":"ccd9e538ce44713a2486cc8e4c01b8c8b846d1ccff15de728d8d6fa9a7f846cd","COPYRIGHT":"3290ae0fbc9ddb77d2239121d710f0bb9d31b3b4744e6d97fe01e652b4c1870b","Cargo.toml":"0d02ea4bc018631a52900423cb7466bc905571bd1d767769739bde626360c123","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-Apache-2.0_WITH_LLVM-exception":"268872b9816f90fd8e85db5a28d33f8150ebb8dd016653fb39ef1f94f2686bc5","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","ORG_CODE_OF_CONDUCT.md":"a62b69bf86e605ee1bcbb2f0a12ba79e4cebb6983a7b6491949750aecc4f2178","README.md":"3d4ae2ec9429adfd329b4506f7ca6faa84dca30d1c3b416f8f4e6f57bdb3aa96","src/aarch64/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/aarch64/general.rs":"0cc1ed00b1ef7efb16a7109138acdf679d591325458938cee150b221af063822","src/aarch64/if_ether.rs":"f558bfec1f5e80235db79f507e4afd3120647a5caddf17a87b7ad5540e5c1462","src/aarch64/io_uring.rs":"9ce4c9005b5b99e041b9d58be6866367605e4bee1e30a7096235cb234ed73e1b","src/aarch64/ioctl.rs":"f83af7f7cab6611c9f316b2289998d3276d844ac8f96111bc65f6c3340c3301a","src/aarch64/net.rs":"9c5fe44f91072b08899a6304cb22a51545034adde444740b67b8b310f3906a30","src/aarch64/netlink.rs":"f6642310b8bd37b5775ba1a52cfe638beddd7c880f8dfacab62c3180255fb75f","src/aarch64/prctl.rs":"a80e2f89aa978210d980538e1d9c5b922bb073d118ee51b1f14c1f397c7cd576","src/aarch64/system.rs":"851a95c0d1b76782970a28c373a313954eea0db35f6ebce562e6047095f587c4","src/arm/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/arm/general.rs":"bdbb40ba5630044c9555fe38a3640638f3ff7f437d94f82428e2bedad32e180f","src/arm/if_ether.rs":"3873beb1f57bdcc52da345608c5deda5937d7b92b114b414ce6161784173b925","src/arm/io_uring.rs":"5e2e254d5853ed30568e17fab184f8cc458607465d19dcee6c87ca1b565d6d2d","src/arm/ioctl.rs":"54cb9bdc5fe4ee7cff30e087bb0d04f1d811b55be7604bb056387f859120935a","src/arm/net.rs":"c79f443ab6585f81a71eff3350700ece82098264206eb79f78714153d6e43529","src/arm/netlink.rs":"2f98b8c0349c2d3d538164e4d06c28fa1fb9308f7691aa097526ce2fb3ac176f","src/arm/prctl.rs":"5477c74fec958d9f9d2028f58e95657840ead28445956e53fe0894e45922f8a5","src/arm/system.rs":"9aca94a4a553e09e6d2d43741fb8c120c05a193822e850951dc469bbd89cc703","src/csky/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/csky/general.rs":"94aba82d2a76a9ca272b4766f8d2f5f14e10bc2166e03d695a5b8b5d207e6755","src/csky/if_ether.rs":"aac7a069000195b9b18c6d25b2d7c338efb1062347a84e31cda7c93de374b3c6","src/csky/io_uring.rs":"bb7541d82f627cb681ea11f4e5c4162b0d0616ca08fcc6d31bcf22ef813f754d","src/csky/ioctl.rs":"77f30e67f9a4748bc31184454a0ff45fd821c3536cd98dc2411def8eeb59a268","src/csky/net.rs":"2796ca3744e82cecd816b4d1b1fba0bcb389fbc4603e0af7b6cdc562c666b512","src/csky/netlink.rs":"9fc99e88df0efc15d39b397c9d653c32b4729e31a2434e730435fbdfcb362da4","src/csky/prctl.rs":"8df2f33387d5b4865d9417f796cc4d43b3cf549cfa41d7ce7d41dd367ed8b6c9","src/csky/system.rs":"a2913685b359e60bbfae413b89a6fd37ea38fa448f980ffadef42d227b33ada5","src/elf.rs":"441bcf378b5603f957e053369d18d95c1efe981665846c220bca82123c04843a","src/lib.rs":"f3399ba35206764ac4e2d755cfc7e0c580464b8fcc76968f6c4b9f64523a1d02","src/loongarch64/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/loongarch64/general.rs":"fadd5884c6ad645300540dd30150984857819a986772fca4eba1e1fc0c3f4f1e","src/loongarch64/if_ether.rs":"a7b0918afc9dbf8e79490f83a809e4bd563af20ab2b3432d58b763ff31418daf","src/loongarch64/io_uring.rs":"ef851913c86bc2d629048e781edc76b59c63e659f8bd4bcd7fa7ff982186ed6d","src/loongarch64/ioctl.rs":"6f631e0ac37f2c2398168683a1523d1559b85369ffe4cdcc284ffe7455672c18","src/loongarch64/net.rs":"21add3f1bfa5898d9a5ef91342f6cd94ad4585df6525b9a4cf6cdf743345a9c7","src/loongarch64/netlink.rs":"789357343b94276e6f8fc8f3a32f06f3d3efd464c7850b2568dc609a49d1f305","src/loongarch64/prctl.rs":"624e4d3b8f3b4f1d6dcb1540c124ed03ce47f0580aa3425c0baed431dcd267ea","src/loongarch64/system.rs":"4cfcd4c28481b9ff5fc0330d5c713d637d3615c0184830d3a4391882eaed68f5","src/mips/errno.rs":"9ab1ed2bf371a27401745c2a6f9692f7e66dfd481d032cb40a354826d394ea8e","src/mips/general.rs":"1c16f4e0a015eaf27e9a30f4b74ec824220798f47c535d3aaf322ad799c054ab","src/mips/if_ether.rs":"1ecdc654cb3eda633bb7192829b1001a0a5ae5a126110b4208bbee5b41f87f5e","src/mips/io_uring.rs":"c69479bb1f862febe78e0989745c202146aaef7e8ceaa0d7bf291af584748992","src/mips/ioctl.rs":"f7464d2cd0548ab4735a1ca8deba47f13ea0946a9bf86adfec1a77feb3a0f475","src/mips/net.rs":"843204e91d8d6c34ddf4d29e1e822980b3e058ff7fc55ecc5f2b0fdf4a72825d","src/mips/netlink.rs":"5045dece259abaa5b5974500a20a9325e4cd6eb87c344dd7448056dff469994f","src/mips/prctl.rs":"cd59615adf6f561ef6c542df59cf25f75877693ca1c4c489f5e460eb7e798d4d","src/mips/system.rs":"acbc69a1fe7299860f8bd142bc2ff5595a410e1528994139062fc680d1a87e71","src/mips32r6/errno.rs":"9ab1ed2bf371a27401745c2a6f9692f7e66dfd481d032cb40a354826d394ea8e","src/mips32r6/general.rs":"1c16f4e0a015eaf27e9a30f4b74ec824220798f47c535d3aaf322ad799c054ab","src/mips32r6/if_ether.rs":"1ecdc654cb3eda633bb7192829b1001a0a5ae5a126110b4208bbee5b41f87f5e","src/mips32r6/io_uring.rs":"c69479bb1f862febe78e0989745c202146aaef7e8ceaa0d7bf291af584748992","src/mips32r6/ioctl.rs":"f7464d2cd0548ab4735a1ca8deba47f13ea0946a9bf86adfec1a77feb3a0f475","src/mips32r6/net.rs":"843204e91d8d6c34ddf4d29e1e822980b3e058ff7fc55ecc5f2b0fdf4a72825d","src/mips32r6/netlink.rs":"5045dece259abaa5b5974500a20a9325e4cd6eb87c344dd7448056dff469994f","src/mips32r6/prctl.rs":"cd59615adf6f561ef6c542df59cf25f75877693ca1c4c489f5e460eb7e798d4d","src/mips32r6/system.rs":"acbc69a1fe7299860f8bd142bc2ff5595a410e1528994139062fc680d1a87e71","src/mips64/errno.rs":"9ab1ed2bf371a27401745c2a6f9692f7e66dfd481d032cb40a354826d394ea8e","src/mips64/general.rs":"700b52614c604ce58aa8a5bb1ebd46221c0106ec2d8d6600d681d1594a89118a","src/mips64/if_ether.rs":"6d24518acba5bc8fa2a775d039ed9594de8349d6028621134626ccaa8ea18bcd","src/mips64/io_uring.rs":"18bd5d96c53aff44f4a37a71f16fa12c11b7c934b395bf841e47d98283146a50","src/mips64/ioctl.rs":"39f3276ec6f36ba78f5635bd418310b21bc228902d4da889fa01094c26f9b57d","src/mips64/net.rs":"e641379a7004ded90413b084504468148ecdbea4f753cbca83a4d22698cd7bab","src/mips64/netlink.rs":"18f139573337be18fb9bd56de4d0bd8af5c80828cdf68ef68751c18dcb39c761","src/mips64/prctl.rs":"a8d9ae240ce582d7b66e13937b99df73c7247ce9f69bfdd12109903d7c6dfb0e","src/mips64/system.rs":"95805c533a8eb8f53c28f138e6a2d12064681cc9db55d3042ee748c655a5d7cd","src/mips64r6/errno.rs":"9ab1ed2bf371a27401745c2a6f9692f7e66dfd481d032cb40a354826d394ea8e","src/mips64r6/general.rs":"700b52614c604ce58aa8a5bb1ebd46221c0106ec2d8d6600d681d1594a89118a","src/mips64r6/if_ether.rs":"6d24518acba5bc8fa2a775d039ed9594de8349d6028621134626ccaa8ea18bcd","src/mips64r6/io_uring.rs":"18bd5d96c53aff44f4a37a71f16fa12c11b7c934b395bf841e47d98283146a50","src/mips64r6/ioctl.rs":"39f3276ec6f36ba78f5635bd418310b21bc228902d4da889fa01094c26f9b57d","src/mips64r6/net.rs":"e641379a7004ded90413b084504468148ecdbea4f753cbca83a4d22698cd7bab","src/mips64r6/netlink.rs":"18f139573337be18fb9bd56de4d0bd8af5c80828cdf68ef68751c18dcb39c761","src/mips64r6/prctl.rs":"a8d9ae240ce582d7b66e13937b99df73c7247ce9f69bfdd12109903d7c6dfb0e","src/mips64r6/system.rs":"95805c533a8eb8f53c28f138e6a2d12064681cc9db55d3042ee748c655a5d7cd","src/powerpc/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/powerpc/general.rs":"7940ad742585d501f4742af51c6310ecf651863a8aaa0305193e9c8ee07aca90","src/powerpc/if_ether.rs":"56ab5fbf8c9d0dd0654412fabdca6759cbb421a876e5cebe2fec10e25728b55c","src/powerpc/io_uring.rs":"38ead79180c96e8af69929dacbc36e8cfbccec96875c61f094e531e6860639db","src/powerpc/ioctl.rs":"513a1dda33b2cd6c57212263c1bf0d8d443e54af6efe75e938fd700c1ca2b630","src/powerpc/net.rs":"b0228b15161fb750596d6e7e8e612381d9cf2acfed208715b93e8bb4b3340dc7","src/powerpc/netlink.rs":"4f10870fbd23de17efd4cba6d5a40ba85564effc5d0b71f9d7f928a42cb77b20","src/powerpc/prctl.rs":"f236987bc8ae993ab2b0e88b2eacbae51eee4da170ac075552070a76c717d803","src/powerpc/system.rs":"3e01e5e145adb87263f04c9e053faac0c0758689fd32917d2c7c2eec1d89f9e6","src/powerpc64/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/powerpc64/general.rs":"7862eb3dfac845331b624b3322bdeb3441bb86e914719e125dd5dc7b3860db43","src/powerpc64/if_ether.rs":"15e12d56b1367cb5c9d8fd1b9995acf1429a923bf603698bd732efe1acc30cd6","src/powerpc64/io_uring.rs":"50018e504d78c584beaec3b1a6d477d30d566d25cb1a40b0a2adfb23d726674f","src/powerpc64/ioctl.rs":"513a1dda33b2cd6c57212263c1bf0d8d443e54af6efe75e938fd700c1ca2b630","src/powerpc64/net.rs":"0a1468b8a270470a619e492fd6c50c59ea9eeaccd1c7827a0a0d55a0ae981cd4","src/powerpc64/netlink.rs":"352a06995f7de6e4fc1c2ff54c1eccb93a3d833a923e834ec75c6a4d30ea5051","src/powerpc64/prctl.rs":"1fcccc5b6dac472a30b7701b5c9e436c238410077cfe158d600b51d55bcc074a","src/powerpc64/system.rs":"500116b7613a504ebad028cec1ba37323310e29864d885ae62191ccb1f86d333","src/riscv32/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/riscv32/general.rs":"16ffe747a8f75ac6594dc7afddef4fbb89735da50af9f19f152fd2f04b509463","src/riscv32/if_ether.rs":"aac7a069000195b9b18c6d25b2d7c338efb1062347a84e31cda7c93de374b3c6","src/riscv32/io_uring.rs":"5c67dde8fdb3641407d4ebd744171606b82596176343fe6766afd3220eda2ab1","src/riscv32/ioctl.rs":"b2a4c7d649b18a4d2a1142400de687d48c195dcf8a86b58ac261413c33809d7b","src/riscv32/net.rs":"2796ca3744e82cecd816b4d1b1fba0bcb389fbc4603e0af7b6cdc562c666b512","src/riscv32/netlink.rs":"9fc99e88df0efc15d39b397c9d653c32b4729e31a2434e730435fbdfcb362da4","src/riscv32/prctl.rs":"8df2f33387d5b4865d9417f796cc4d43b3cf549cfa41d7ce7d41dd367ed8b6c9","src/riscv32/system.rs":"a2913685b359e60bbfae413b89a6fd37ea38fa448f980ffadef42d227b33ada5","src/riscv64/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/riscv64/general.rs":"8ec4907ac81b62e21451731a468e5f4fe7a37a46d80c56b33e0969d2d059d442","src/riscv64/if_ether.rs":"a7b0918afc9dbf8e79490f83a809e4bd563af20ab2b3432d58b763ff31418daf","src/riscv64/io_uring.rs":"ef851913c86bc2d629048e781edc76b59c63e659f8bd4bcd7fa7ff982186ed6d","src/riscv64/ioctl.rs":"6f631e0ac37f2c2398168683a1523d1559b85369ffe4cdcc284ffe7455672c18","src/riscv64/net.rs":"21add3f1bfa5898d9a5ef91342f6cd94ad4585df6525b9a4cf6cdf743345a9c7","src/riscv64/netlink.rs":"789357343b94276e6f8fc8f3a32f06f3d3efd464c7850b2568dc609a49d1f305","src/riscv64/prctl.rs":"624e4d3b8f3b4f1d6dcb1540c124ed03ce47f0580aa3425c0baed431dcd267ea","src/riscv64/system.rs":"4cfcd4c28481b9ff5fc0330d5c713d637d3615c0184830d3a4391882eaed68f5","src/s390x/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/s390x/general.rs":"687f6e3d4502d31aaec08a41335b6a368f0949049875d939065a66df86e06b8a","src/s390x/if_ether.rs":"2a6b2132be1aebe126eb64ea230a82c2ab18433ece37226c9dacd81392ad6ca2","src/s390x/io_uring.rs":"57790b4ce46a4a2a87a329ff935033dfb430117bcc2154fa066c5d681f115319","src/s390x/ioctl.rs":"f806407c91520bc994c7cd638576686710700a4cfa30c8ca3f81d55ce1d6ecdd","src/s390x/net.rs":"3f89cf2040475eb446daa3f54b5cd016ca8d2d3966f02efb3f0f2f425ccc7adb","src/s390x/netlink.rs":"c3c11102a55d15dfb534d748c8bc8ece58c9d56170b6afe07d1f2cc783fd6372","src/s390x/prctl.rs":"6fe9f5349f9a694b391f309f208235c1d4669430d3f051ef64467576e91df7a1","src/s390x/system.rs":"f68e8afbd02bc87a8fec2cae4e367f296873f2c1a651032da4ccc4f1c0ed4670","src/sparc/errno.rs":"b3c5e1a6c8378d613c6ef3dd44e2199ea7455da65e83d6bb19582a79de880f80","src/sparc/general.rs":"a38a371e8ceeecc4384999b4cc8ee6d65a35a20542c96c62e04c24b2b2953858","src/sparc/if_ether.rs":"c574c6d1ea11a8bb213b18928fe2d342c897d8ff04458991a5192eb401fbbc57","src/sparc/io_uring.rs":"d813aabc93f383c8522773ed431209627d810c78bcdb4dae931a702aae55e09f","src/sparc/ioctl.rs":"b2a4c7d649b18a4d2a1142400de687d48c195dcf8a86b58ac261413c33809d7b","src/sparc/net.rs":"00115a0deec75249c34bf61c76d4a95181be21ac3a1b5200875186d5ea501dac","src/sparc/netlink.rs":"0f176c24de7b2b19ac16dd95625947b8047d48bc7b871e12a3acd31f8e97c6f5","src/sparc/prctl.rs":"5f5686fe04d8cc5e746d789340331095044f244c123ecf1468dcb089bbb931cd","src/sparc/system.rs":"6f1f8ce9978693845621880031ac4805f00027315a691cfe1d466703c7a96e8d","src/sparc64/errno.rs":"b3c5e1a6c8378d613c6ef3dd44e2199ea7455da65e83d6bb19582a79de880f80","src/sparc64/general.rs":"d4138f0e663833811365fdc2e1008525df0f21044b5e31ab80d97d63fcb9f45f","src/sparc64/if_ether.rs":"e51661cb54922c3c01853617a61b3d141768adf5b94162c4aefb326d31ef55f5","src/sparc64/io_uring.rs":"688f4678c259eb940aa0216c0183843d436b918d214e13bed56a38ddb55132db","src/sparc64/ioctl.rs":"b2a4c7d649b18a4d2a1142400de687d48c195dcf8a86b58ac261413c33809d7b","src/sparc64/net.rs":"e1b51c9efe4a00b645100f2b4aa6f2349a50627521fa020370b1bf8ab0b3a575","src/sparc64/netlink.rs":"7cec2a77af7ec17cad96d63027fd4a9164f0e6503f2e6cc2a99e79aa1bba3147","src/sparc64/prctl.rs":"ff897312b99274ce4eefecccc9797e34accc69efce1299712ab631e9542cb8ca","src/sparc64/system.rs":"becb2e706ed6df77860a2a3884b28181dca606db22fcd604a8a1803f937e8baf","src/x32/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/x32/general.rs":"c2aeaf3096d559a86d3f72e0ec4a91245edfce35e85c51b50d13e115ec357974","src/x32/if_ether.rs":"859047581be4a3ae923b88516e86230a4f9a447a5203285dd8bcc539038c5c4f","src/x32/io_uring.rs":"40834d29cf819e43a23f9a2e075e2ea0c001be817f7200aa059c24eae6d29123","src/x32/ioctl.rs":"085227ec906237903b5e8b2e90b80fd078ddb4f9e44bbd6c9bee54ea7d5d6b1a","src/x32/net.rs":"e2d77e5bbae1fb298e48382204db55e4e49de2039369e3b2b77097029006c9d1","src/x32/netlink.rs":"f74042f6cf0eabccfa6b8008a89ee7ab347fb7eaa89499757a786b13b2403982","src/x32/prctl.rs":"2d1eb6873dc5b72a8252f12e695d98a045e01026f730302a6515f53a394bba7c","src/x32/system.rs":"69c125aea6b21f2c4981f3386602283a691524671fef1da7d67de3b67fffdc42","src/x86/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/x86/general.rs":"a9b002ea136dabb9fd1c489c999cd1bfeca62490202aab095221fc70c2b6e30e","src/x86/if_ether.rs":"3873beb1f57bdcc52da345608c5deda5937d7b92b114b414ce6161784173b925","src/x86/io_uring.rs":"3f60400dfc11a5eafa5a54466f7f9ca74a63219feda2278c388529bf40c0a6a3","src/x86/ioctl.rs":"8dd0afaa7c3017c3866e579705699be75acc1a095694232b2903a12b3c07a770","src/x86/net.rs":"c79f443ab6585f81a71eff3350700ece82098264206eb79f78714153d6e43529","src/x86/netlink.rs":"2f98b8c0349c2d3d538164e4d06c28fa1fb9308f7691aa097526ce2fb3ac176f","src/x86/prctl.rs":"5477c74fec958d9f9d2028f58e95657840ead28445956e53fe0894e45922f8a5","src/x86/system.rs":"9aca94a4a553e09e6d2d43741fb8c120c05a193822e850951dc469bbd89cc703","src/x86_64/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/x86_64/general.rs":"f0c763abb8d7e7bd594c674d2774b272844829ecee4e3ed42932004616a2380e","src/x86_64/if_ether.rs":"feb5362d90fbd5113b6f1f22fcc77a7b3bb7c8f5081be7eacb2e270d2f24a293","src/x86_64/io_uring.rs":"6c008c59b6905b7872b788e30d546efa3b5bb03a0fe17e33b90bfc8beec23f29","src/x86_64/ioctl.rs":"085227ec906237903b5e8b2e90b80fd078ddb4f9e44bbd6c9bee54ea7d5d6b1a","src/x86_64/net.rs":"0f81db11e3497486f0d2022a8302716816d2442bf7ffd25fa88a25a9bdc1ca83","src/x86_64/netlink.rs":"d47b8b117007b1c29db325dad68ed1b92562b98f90916b1b192f57a935a98038","src/x86_64/prctl.rs":"6d0f63fff8d76cc2f4678f38e40a68d072d7da4094d5217ce92872370bb4df9b","src/x86_64/system.rs":"6a415f104e7dd34829b36c19ad89e0cfcfbc69a846c87f81e202411386d46966"},"package":"da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f"} +\ No newline at end of file ++{"files":{"CODE_OF_CONDUCT.md":"ccd9e538ce44713a2486cc8e4c01b8c8b846d1ccff15de728d8d6fa9a7f846cd","COPYRIGHT":"3290ae0fbc9ddb77d2239121d710f0bb9d31b3b4744e6d97fe01e652b4c1870b","Cargo.toml":"0d02ea4bc018631a52900423cb7466bc905571bd1d767769739bde626360c123","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-Apache-2.0_WITH_LLVM-exception":"268872b9816f90fd8e85db5a28d33f8150ebb8dd016653fb39ef1f94f2686bc5","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","ORG_CODE_OF_CONDUCT.md":"a62b69bf86e605ee1bcbb2f0a12ba79e4cebb6983a7b6491949750aecc4f2178","README.md":"3d4ae2ec9429adfd329b4506f7ca6faa84dca30d1c3b416f8f4e6f57bdb3aa96","src/aarch64/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/aarch64/general.rs":"0cc1ed00b1ef7efb16a7109138acdf679d591325458938cee150b221af063822","src/aarch64/if_ether.rs":"f558bfec1f5e80235db79f507e4afd3120647a5caddf17a87b7ad5540e5c1462","src/aarch64/io_uring.rs":"9ce4c9005b5b99e041b9d58be6866367605e4bee1e30a7096235cb234ed73e1b","src/aarch64/ioctl.rs":"f83af7f7cab6611c9f316b2289998d3276d844ac8f96111bc65f6c3340c3301a","src/aarch64/net.rs":"9c5fe44f91072b08899a6304cb22a51545034adde444740b67b8b310f3906a30","src/aarch64/netlink.rs":"f6642310b8bd37b5775ba1a52cfe638beddd7c880f8dfacab62c3180255fb75f","src/aarch64/prctl.rs":"a80e2f89aa978210d980538e1d9c5b922bb073d118ee51b1f14c1f397c7cd576","src/aarch64/system.rs":"851a95c0d1b76782970a28c373a313954eea0db35f6ebce562e6047095f587c4","src/arm/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/arm/general.rs":"bdbb40ba5630044c9555fe38a3640638f3ff7f437d94f82428e2bedad32e180f","src/arm/if_ether.rs":"3873beb1f57bdcc52da345608c5deda5937d7b92b114b414ce6161784173b925","src/arm/io_uring.rs":"5e2e254d5853ed30568e17fab184f8cc458607465d19dcee6c87ca1b565d6d2d","src/arm/ioctl.rs":"54cb9bdc5fe4ee7cff30e087bb0d04f1d811b55be7604bb056387f859120935a","src/arm/net.rs":"c79f443ab6585f81a71eff3350700ece82098264206eb79f78714153d6e43529","src/arm/netlink.rs":"2f98b8c0349c2d3d538164e4d06c28fa1fb9308f7691aa097526ce2fb3ac176f","src/arm/prctl.rs":"5477c74fec958d9f9d2028f58e95657840ead28445956e53fe0894e45922f8a5","src/arm/system.rs":"9aca94a4a553e09e6d2d43741fb8c120c05a193822e850951dc469bbd89cc703","src/csky/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/csky/general.rs":"94aba82d2a76a9ca272b4766f8d2f5f14e10bc2166e03d695a5b8b5d207e6755","src/csky/if_ether.rs":"aac7a069000195b9b18c6d25b2d7c338efb1062347a84e31cda7c93de374b3c6","src/csky/io_uring.rs":"bb7541d82f627cb681ea11f4e5c4162b0d0616ca08fcc6d31bcf22ef813f754d","src/csky/ioctl.rs":"77f30e67f9a4748bc31184454a0ff45fd821c3536cd98dc2411def8eeb59a268","src/csky/net.rs":"2796ca3744e82cecd816b4d1b1fba0bcb389fbc4603e0af7b6cdc562c666b512","src/csky/netlink.rs":"9fc99e88df0efc15d39b397c9d653c32b4729e31a2434e730435fbdfcb362da4","src/csky/prctl.rs":"8df2f33387d5b4865d9417f796cc4d43b3cf549cfa41d7ce7d41dd367ed8b6c9","src/csky/system.rs":"a2913685b359e60bbfae413b89a6fd37ea38fa448f980ffadef42d227b33ada5","src/elf.rs":"441bcf378b5603f957e053369d18d95c1efe981665846c220bca82123c04843a","src/lib.rs":"f3399ba35206764ac4e2d755cfc7e0c580464b8fcc76968f6c4b9f64523a1d02","src/loongarch64/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/loongarch64/general.rs":"fadd5884c6ad645300540dd30150984857819a986772fca4eba1e1fc0c3f4f1e","src/loongarch64/if_ether.rs":"a7b0918afc9dbf8e79490f83a809e4bd563af20ab2b3432d58b763ff31418daf","src/loongarch64/io_uring.rs":"ef851913c86bc2d629048e781edc76b59c63e659f8bd4bcd7fa7ff982186ed6d","src/loongarch64/ioctl.rs":"6f631e0ac37f2c2398168683a1523d1559b85369ffe4cdcc284ffe7455672c18","src/loongarch64/net.rs":"21add3f1bfa5898d9a5ef91342f6cd94ad4585df6525b9a4cf6cdf743345a9c7","src/loongarch64/netlink.rs":"789357343b94276e6f8fc8f3a32f06f3d3efd464c7850b2568dc609a49d1f305","src/loongarch64/prctl.rs":"624e4d3b8f3b4f1d6dcb1540c124ed03ce47f0580aa3425c0baed431dcd267ea","src/loongarch64/system.rs":"4cfcd4c28481b9ff5fc0330d5c713d637d3615c0184830d3a4391882eaed68f5","src/mips/errno.rs":"9ab1ed2bf371a27401745c2a6f9692f7e66dfd481d032cb40a354826d394ea8e","src/mips/general.rs":"1c16f4e0a015eaf27e9a30f4b74ec824220798f47c535d3aaf322ad799c054ab","src/mips/if_ether.rs":"1ecdc654cb3eda633bb7192829b1001a0a5ae5a126110b4208bbee5b41f87f5e","src/mips/io_uring.rs":"c69479bb1f862febe78e0989745c202146aaef7e8ceaa0d7bf291af584748992","src/mips/ioctl.rs":"f7464d2cd0548ab4735a1ca8deba47f13ea0946a9bf86adfec1a77feb3a0f475","src/mips/net.rs":"843204e91d8d6c34ddf4d29e1e822980b3e058ff7fc55ecc5f2b0fdf4a72825d","src/mips/netlink.rs":"5045dece259abaa5b5974500a20a9325e4cd6eb87c344dd7448056dff469994f","src/mips/prctl.rs":"cd59615adf6f561ef6c542df59cf25f75877693ca1c4c489f5e460eb7e798d4d","src/mips/system.rs":"acbc69a1fe7299860f8bd142bc2ff5595a410e1528994139062fc680d1a87e71","src/mips32r6/errno.rs":"9ab1ed2bf371a27401745c2a6f9692f7e66dfd481d032cb40a354826d394ea8e","src/mips32r6/general.rs":"1c16f4e0a015eaf27e9a30f4b74ec824220798f47c535d3aaf322ad799c054ab","src/mips32r6/if_ether.rs":"1ecdc654cb3eda633bb7192829b1001a0a5ae5a126110b4208bbee5b41f87f5e","src/mips32r6/io_uring.rs":"c69479bb1f862febe78e0989745c202146aaef7e8ceaa0d7bf291af584748992","src/mips32r6/ioctl.rs":"f7464d2cd0548ab4735a1ca8deba47f13ea0946a9bf86adfec1a77feb3a0f475","src/mips32r6/net.rs":"843204e91d8d6c34ddf4d29e1e822980b3e058ff7fc55ecc5f2b0fdf4a72825d","src/mips32r6/netlink.rs":"5045dece259abaa5b5974500a20a9325e4cd6eb87c344dd7448056dff469994f","src/mips32r6/prctl.rs":"cd59615adf6f561ef6c542df59cf25f75877693ca1c4c489f5e460eb7e798d4d","src/mips32r6/system.rs":"acbc69a1fe7299860f8bd142bc2ff5595a410e1528994139062fc680d1a87e71","src/mips64/errno.rs":"9ab1ed2bf371a27401745c2a6f9692f7e66dfd481d032cb40a354826d394ea8e","src/mips64/general.rs":"700b52614c604ce58aa8a5bb1ebd46221c0106ec2d8d6600d681d1594a89118a","src/mips64/if_ether.rs":"6d24518acba5bc8fa2a775d039ed9594de8349d6028621134626ccaa8ea18bcd","src/mips64/io_uring.rs":"18bd5d96c53aff44f4a37a71f16fa12c11b7c934b395bf841e47d98283146a50","src/mips64/ioctl.rs":"39f3276ec6f36ba78f5635bd418310b21bc228902d4da889fa01094c26f9b57d","src/mips64/net.rs":"e641379a7004ded90413b084504468148ecdbea4f753cbca83a4d22698cd7bab","src/mips64/netlink.rs":"18f139573337be18fb9bd56de4d0bd8af5c80828cdf68ef68751c18dcb39c761","src/mips64/prctl.rs":"a8d9ae240ce582d7b66e13937b99df73c7247ce9f69bfdd12109903d7c6dfb0e","src/mips64/system.rs":"95805c533a8eb8f53c28f138e6a2d12064681cc9db55d3042ee748c655a5d7cd","src/mips64r6/errno.rs":"9ab1ed2bf371a27401745c2a6f9692f7e66dfd481d032cb40a354826d394ea8e","src/mips64r6/general.rs":"700b52614c604ce58aa8a5bb1ebd46221c0106ec2d8d6600d681d1594a89118a","src/mips64r6/if_ether.rs":"6d24518acba5bc8fa2a775d039ed9594de8349d6028621134626ccaa8ea18bcd","src/mips64r6/io_uring.rs":"18bd5d96c53aff44f4a37a71f16fa12c11b7c934b395bf841e47d98283146a50","src/mips64r6/ioctl.rs":"39f3276ec6f36ba78f5635bd418310b21bc228902d4da889fa01094c26f9b57d","src/mips64r6/net.rs":"e641379a7004ded90413b084504468148ecdbea4f753cbca83a4d22698cd7bab","src/mips64r6/netlink.rs":"18f139573337be18fb9bd56de4d0bd8af5c80828cdf68ef68751c18dcb39c761","src/mips64r6/prctl.rs":"a8d9ae240ce582d7b66e13937b99df73c7247ce9f69bfdd12109903d7c6dfb0e","src/mips64r6/system.rs":"95805c533a8eb8f53c28f138e6a2d12064681cc9db55d3042ee748c655a5d7cd","src/powerpc/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/powerpc/general.rs":"7940ad742585d501f4742af51c6310ecf651863a8aaa0305193e9c8ee07aca90","src/powerpc/if_ether.rs":"56ab5fbf8c9d0dd0654412fabdca6759cbb421a876e5cebe2fec10e25728b55c","src/powerpc/io_uring.rs":"38ead79180c96e8af69929dacbc36e8cfbccec96875c61f094e531e6860639db","src/powerpc/ioctl.rs":"513a1dda33b2cd6c57212263c1bf0d8d443e54af6efe75e938fd700c1ca2b630","src/powerpc/net.rs":"b0228b15161fb750596d6e7e8e612381d9cf2acfed208715b93e8bb4b3340dc7","src/powerpc/netlink.rs":"4f10870fbd23de17efd4cba6d5a40ba85564effc5d0b71f9d7f928a42cb77b20","src/powerpc/prctl.rs":"f236987bc8ae993ab2b0e88b2eacbae51eee4da170ac075552070a76c717d803","src/powerpc/system.rs":"3e01e5e145adb87263f04c9e053faac0c0758689fd32917d2c7c2eec1d89f9e6","src/powerpc64/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/powerpc64/general.rs":"7862eb3dfac845331b624b3322bdeb3441bb86e914719e125dd5dc7b3860db43","src/powerpc64/if_ether.rs":"15e12d56b1367cb5c9d8fd1b9995acf1429a923bf603698bd732efe1acc30cd6","src/powerpc64/io_uring.rs":"50018e504d78c584beaec3b1a6d477d30d566d25cb1a40b0a2adfb23d726674f","src/powerpc64/ioctl.rs":"513a1dda33b2cd6c57212263c1bf0d8d443e54af6efe75e938fd700c1ca2b630","src/powerpc64/net.rs":"0a1468b8a270470a619e492fd6c50c59ea9eeaccd1c7827a0a0d55a0ae981cd4","src/powerpc64/netlink.rs":"352a06995f7de6e4fc1c2ff54c1eccb93a3d833a923e834ec75c6a4d30ea5051","src/powerpc64/prctl.rs":"1fcccc5b6dac472a30b7701b5c9e436c238410077cfe158d600b51d55bcc074a","src/powerpc64/system.rs":"500116b7613a504ebad028cec1ba37323310e29864d885ae62191ccb1f86d333","src/riscv32/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/riscv32/general.rs":"16ffe747a8f75ac6594dc7afddef4fbb89735da50af9f19f152fd2f04b509463","src/riscv32/if_ether.rs":"aac7a069000195b9b18c6d25b2d7c338efb1062347a84e31cda7c93de374b3c6","src/riscv32/io_uring.rs":"5c67dde8fdb3641407d4ebd744171606b82596176343fe6766afd3220eda2ab1","src/riscv32/ioctl.rs":"6f631e0ac37f2c2398168683a1523d1559b85369ffe4cdcc284ffe7455672c18","src/riscv32/net.rs":"2796ca3744e82cecd816b4d1b1fba0bcb389fbc4603e0af7b6cdc562c666b512","src/riscv32/netlink.rs":"9fc99e88df0efc15d39b397c9d653c32b4729e31a2434e730435fbdfcb362da4","src/riscv32/prctl.rs":"8df2f33387d5b4865d9417f796cc4d43b3cf549cfa41d7ce7d41dd367ed8b6c9","src/riscv32/system.rs":"a2913685b359e60bbfae413b89a6fd37ea38fa448f980ffadef42d227b33ada5","src/riscv64/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/riscv64/general.rs":"8ec4907ac81b62e21451731a468e5f4fe7a37a46d80c56b33e0969d2d059d442","src/riscv64/if_ether.rs":"a7b0918afc9dbf8e79490f83a809e4bd563af20ab2b3432d58b763ff31418daf","src/riscv64/io_uring.rs":"ef851913c86bc2d629048e781edc76b59c63e659f8bd4bcd7fa7ff982186ed6d","src/riscv64/ioctl.rs":"6f631e0ac37f2c2398168683a1523d1559b85369ffe4cdcc284ffe7455672c18","src/riscv64/net.rs":"21add3f1bfa5898d9a5ef91342f6cd94ad4585df6525b9a4cf6cdf743345a9c7","src/riscv64/netlink.rs":"789357343b94276e6f8fc8f3a32f06f3d3efd464c7850b2568dc609a49d1f305","src/riscv64/prctl.rs":"624e4d3b8f3b4f1d6dcb1540c124ed03ce47f0580aa3425c0baed431dcd267ea","src/riscv64/system.rs":"4cfcd4c28481b9ff5fc0330d5c713d637d3615c0184830d3a4391882eaed68f5","src/s390x/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/s390x/general.rs":"687f6e3d4502d31aaec08a41335b6a368f0949049875d939065a66df86e06b8a","src/s390x/if_ether.rs":"2a6b2132be1aebe126eb64ea230a82c2ab18433ece37226c9dacd81392ad6ca2","src/s390x/io_uring.rs":"57790b4ce46a4a2a87a329ff935033dfb430117bcc2154fa066c5d681f115319","src/s390x/ioctl.rs":"f806407c91520bc994c7cd638576686710700a4cfa30c8ca3f81d55ce1d6ecdd","src/s390x/net.rs":"3f89cf2040475eb446daa3f54b5cd016ca8d2d3966f02efb3f0f2f425ccc7adb","src/s390x/netlink.rs":"c3c11102a55d15dfb534d748c8bc8ece58c9d56170b6afe07d1f2cc783fd6372","src/s390x/prctl.rs":"6fe9f5349f9a694b391f309f208235c1d4669430d3f051ef64467576e91df7a1","src/s390x/system.rs":"f68e8afbd02bc87a8fec2cae4e367f296873f2c1a651032da4ccc4f1c0ed4670","src/sparc/errno.rs":"b3c5e1a6c8378d613c6ef3dd44e2199ea7455da65e83d6bb19582a79de880f80","src/sparc/general.rs":"a38a371e8ceeecc4384999b4cc8ee6d65a35a20542c96c62e04c24b2b2953858","src/sparc/if_ether.rs":"c574c6d1ea11a8bb213b18928fe2d342c897d8ff04458991a5192eb401fbbc57","src/sparc/io_uring.rs":"d813aabc93f383c8522773ed431209627d810c78bcdb4dae931a702aae55e09f","src/sparc/ioctl.rs":"b2a4c7d649b18a4d2a1142400de687d48c195dcf8a86b58ac261413c33809d7b","src/sparc/net.rs":"00115a0deec75249c34bf61c76d4a95181be21ac3a1b5200875186d5ea501dac","src/sparc/netlink.rs":"0f176c24de7b2b19ac16dd95625947b8047d48bc7b871e12a3acd31f8e97c6f5","src/sparc/prctl.rs":"5f5686fe04d8cc5e746d789340331095044f244c123ecf1468dcb089bbb931cd","src/sparc/system.rs":"6f1f8ce9978693845621880031ac4805f00027315a691cfe1d466703c7a96e8d","src/sparc64/errno.rs":"b3c5e1a6c8378d613c6ef3dd44e2199ea7455da65e83d6bb19582a79de880f80","src/sparc64/general.rs":"d4138f0e663833811365fdc2e1008525df0f21044b5e31ab80d97d63fcb9f45f","src/sparc64/if_ether.rs":"e51661cb54922c3c01853617a61b3d141768adf5b94162c4aefb326d31ef55f5","src/sparc64/io_uring.rs":"688f4678c259eb940aa0216c0183843d436b918d214e13bed56a38ddb55132db","src/sparc64/ioctl.rs":"b2a4c7d649b18a4d2a1142400de687d48c195dcf8a86b58ac261413c33809d7b","src/sparc64/net.rs":"e1b51c9efe4a00b645100f2b4aa6f2349a50627521fa020370b1bf8ab0b3a575","src/sparc64/netlink.rs":"7cec2a77af7ec17cad96d63027fd4a9164f0e6503f2e6cc2a99e79aa1bba3147","src/sparc64/prctl.rs":"ff897312b99274ce4eefecccc9797e34accc69efce1299712ab631e9542cb8ca","src/sparc64/system.rs":"becb2e706ed6df77860a2a3884b28181dca606db22fcd604a8a1803f937e8baf","src/x32/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/x32/general.rs":"c2aeaf3096d559a86d3f72e0ec4a91245edfce35e85c51b50d13e115ec357974","src/x32/if_ether.rs":"859047581be4a3ae923b88516e86230a4f9a447a5203285dd8bcc539038c5c4f","src/x32/io_uring.rs":"40834d29cf819e43a23f9a2e075e2ea0c001be817f7200aa059c24eae6d29123","src/x32/ioctl.rs":"085227ec906237903b5e8b2e90b80fd078ddb4f9e44bbd6c9bee54ea7d5d6b1a","src/x32/net.rs":"e2d77e5bbae1fb298e48382204db55e4e49de2039369e3b2b77097029006c9d1","src/x32/netlink.rs":"f74042f6cf0eabccfa6b8008a89ee7ab347fb7eaa89499757a786b13b2403982","src/x32/prctl.rs":"2d1eb6873dc5b72a8252f12e695d98a045e01026f730302a6515f53a394bba7c","src/x32/system.rs":"69c125aea6b21f2c4981f3386602283a691524671fef1da7d67de3b67fffdc42","src/x86/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/x86/general.rs":"a9b002ea136dabb9fd1c489c999cd1bfeca62490202aab095221fc70c2b6e30e","src/x86/if_ether.rs":"3873beb1f57bdcc52da345608c5deda5937d7b92b114b414ce6161784173b925","src/x86/io_uring.rs":"3f60400dfc11a5eafa5a54466f7f9ca74a63219feda2278c388529bf40c0a6a3","src/x86/ioctl.rs":"8dd0afaa7c3017c3866e579705699be75acc1a095694232b2903a12b3c07a770","src/x86/net.rs":"c79f443ab6585f81a71eff3350700ece82098264206eb79f78714153d6e43529","src/x86/netlink.rs":"2f98b8c0349c2d3d538164e4d06c28fa1fb9308f7691aa097526ce2fb3ac176f","src/x86/prctl.rs":"5477c74fec958d9f9d2028f58e95657840ead28445956e53fe0894e45922f8a5","src/x86/system.rs":"9aca94a4a553e09e6d2d43741fb8c120c05a193822e850951dc469bbd89cc703","src/x86_64/errno.rs":"db283e5ea7fb63e0f57acb241e6471a951b4218660c01ca37b80be9a53629b92","src/x86_64/general.rs":"f0c763abb8d7e7bd594c674d2774b272844829ecee4e3ed42932004616a2380e","src/x86_64/if_ether.rs":"feb5362d90fbd5113b6f1f22fcc77a7b3bb7c8f5081be7eacb2e270d2f24a293","src/x86_64/io_uring.rs":"6c008c59b6905b7872b788e30d546efa3b5bb03a0fe17e33b90bfc8beec23f29","src/x86_64/ioctl.rs":"085227ec906237903b5e8b2e90b80fd078ddb4f9e44bbd6c9bee54ea7d5d6b1a","src/x86_64/net.rs":"0f81db11e3497486f0d2022a8302716816d2442bf7ffd25fa88a25a9bdc1ca83","src/x86_64/netlink.rs":"d47b8b117007b1c29db325dad68ed1b92562b98f90916b1b192f57a935a98038","src/x86_64/prctl.rs":"6d0f63fff8d76cc2f4678f38e40a68d072d7da4094d5217ce92872370bb4df9b","src/x86_64/system.rs":"6a415f104e7dd34829b36c19ad89e0cfcfbc69a846c87f81e202411386d46966"},"package":"da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f"} diff --git a/meta-balena-rust/recipes-devtools/rust/files/rv32-rustix-libc-backend.patch b/meta-balena-rust/recipes-devtools/rust/files/rv32-rustix-libc-backend.patch new file mode 100644 index 0000000000..7e99b50834 --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/files/rv32-rustix-libc-backend.patch @@ -0,0 +1,32 @@ +Use FICLONE from linux_raw_sys module + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- a/vendor/rustix/src/backend/libc/c.rs ++++ b/vendor/rustix/src/backend/libc/c.rs +@@ -6,6 +6,8 @@ + // things below. + pub(crate) use libc::*; + ++use linux_raw_sys::ioctl::FICLONE; ++ + /// `PROC_SUPER_MAGIC`—The magic number for the procfs filesystem. + #[cfg(all(linux_kernel, target_env = "musl"))] + pub(crate) const PROC_SUPER_MAGIC: u32 = 0x0000_9fa0; +--- a/vendor/rustix/.cargo-checksum.json ++++ b/vendor/rustix/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"CODE_OF_CONDUCT.md":"f210602311e3f74b32f46237fd55f4ce36d798e85e3db1432ec667f63a7ffc44","CONTRIBUTING.md":"3fd57de5c678db1c972da676a8231d2fde9820695ef1f0d53f1e55a3e81d9de0","COPYRIGHT":"377c2e7c53250cc5905c0b0532d35973392af16ffb9596a41d99d202cf3617c9","Cargo.toml":"5a6eafc41863c968362a1b8424dd0a5e1ce6502496b2999ef97ceac81f30fbcd","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-Apache-2.0_WITH_LLVM-exception":"268872b9816f90fd8e85db5a28d33f8150ebb8dd016653fb39ef1f94f2686bc5","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","ORG_CODE_OF_CONDUCT.md":"a62b69bf86e605ee1bcbb2f0a12ba79e4cebb6983a7b6491949750aecc4f2178","README.md":"0acc443488c1d6f7a0a80a91385d06c7a1920c1f5c847214dd6c23a6bd027f75","SECURITY.md":"4d75afb09dd28eb5982e3a1f768ee398d90204669ceef3240a16b31dcf04148a","benches/mod.rs":"e260e67273aa0a37cffdc5cd451699335b8ee656c17275a0d0f2b4563c6018ca","build.rs":"5f93559819ca7fe233f01579d51ff5b58cb6e96ef9e7817a3358a9b410d5bbf6","src/backend/libc/c.rs":"9a929ab2bff99843e8c663b92b93def5c752e96d2e6228520cb50eeec483586b","src/backend/libc/conv.rs":"b66d080db3a4c2756fe722462b543982bf88e5bc8071b9dc98d28ec2aee3dbfc","src/backend/libc/event/epoll.rs":"b6f00ec602f9a6b9a2b7a66a242efda088b67ed66053692dcbba683df4fdaf19","src/backend/libc/event/mod.rs":"7f8547c599b8263eb791890bbe4a0b22fe2676d007ffdcc3e07b2e48d1c994db","src/backend/libc/event/poll_fd.rs":"1186dd69fc78d474975f1b8c55c9dd261229cb0c53a0dd2a88754ef62529a917","src/backend/libc/event/syscalls.rs":"295a930521b345192caaf916b39189299f81f5f7c9f1aaed235baf3bf6f2f5fa","src/backend/libc/event/types.rs":"e81130bc07e8f762ea2942bca1bde048ade0df24aac619907f3055d2dda7d522","src/backend/libc/event/windows_syscalls.rs":"ebfac665c6676c4b803134ab8806be8aa2e96bdbc7799a19c544cd9069b35787","src/backend/libc/fs/dir.rs":"71332c794f4e2438e7c700a0d2206fe0088cf98473030e3f8ccddf252ad7f5b2","src/backend/libc/fs/inotify.rs":"a027a718db8bf6ff9a778c2cfa706850b466240b0a2296d72b9834c0096968e8","src/backend/libc/fs/makedev.rs":"89c679a0ef18dd41b3c6223bce0f329ad35bf6cadbf16e47b33fad3f312ba4a6","src/backend/libc/fs/mod.rs":"3d28b803011b57da6315bb747daf0117218687c0cc610358f5dafddf0b7d44d3","src/backend/libc/fs/syscalls.rs":"229d1c27d53bfbd35310b05aaf8b3307d6b6e9948faf0655713bc662f901bd02","src/backend/libc/fs/types.rs":"ca25c8271e1fd2ff6c28082884ca112fd5e0523b2aa3cd289cd9a399c962a172","src/backend/libc/io/errno.rs":"d33978855c2e0e97d5e1f7a04ab10894f9f2c3e329e949f259a757f89942074e","src/backend/libc/io/mod.rs":"746647bd864e4ec7717925b6d176cebdb392b7d015070244cc48d92780351dd6","src/backend/libc/io/syscalls.rs":"cbd9e9db566597de0a709247c8ba3bd1e6ce266a128d639273353c706f0592b7","src/backend/libc/io/types.rs":"2efd39bb3df19a9db5496217284f3d2235ddb354fac81dd71861109a56bede0b","src/backend/libc/io/windows_syscalls.rs":"fab3fa099aa89cea56a6edc651dd37750e581534f4f45b04a7e425f130b08468","src/backend/libc/io_uring/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/io_uring/syscalls.rs":"5af8146d5971c833e6fd657f652c618b31f854e1b0811864fba9b658cb633e19","src/backend/libc/mm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/mm/syscalls.rs":"c04c61ad3d7f3b24d13f89144d7fa0a05658cea4763207f9250db4f9362de2fe","src/backend/libc/mm/types.rs":"48406d44d79b102ae9d17860749611d26c1f04e3630e9680dfcb20e2efc148a8","src/backend/libc/mod.rs":"778083f85aaca00aa5c8ec36b541e0e8a3e693660a6acf4722b4508f015c278c","src/backend/libc/mount/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/mount/syscalls.rs":"1bc87501a078616d0190d2e85de55f3f968b8cb79d49bd9eb839a350eed26089","src/backend/libc/mount/types.rs":"1b0d527ae5a272ae441fa35192616a867090204404324a341a7864ae1f5ea3fd","src/backend/libc/net/addr.rs":"9bdc2febb20785bc26a820eaba52cb546c67c79cb547f08105087cd0f79d5861","src/backend/libc/net/ext.rs":"0dd64877abe1ba86b47a2ab34340e3f6cc7b53b22d0bb5e237daf6a82edd46b0","src/backend/libc/net/mod.rs":"5f0bd80a6575aba4a714443ca99af76ad15b053f1f8029aa1d9c7fa10e6d9242","src/backend/libc/net/msghdr.rs":"64825203c09cb60ac4e869cd27a44697f1efe53455c41684279d50d8f0a96701","src/backend/libc/net/read_sockaddr.rs":"b1a72b7bd56cd152ed0731f571e4d9411b2974f860fc045319dc74b5b077e569","src/backend/libc/net/send_recv.rs":"1450ca958431a5bf3a85cdeef88b387f30d5c1215de2c56d164ccda38f21b36c","src/backend/libc/net/sockopt.rs":"178a6622bab25bf1813d6c17151f48d820e238db8cbd05be3aae563902d6c53e","src/backend/libc/net/syscalls.rs":"1c703ea3d7a1d0bfa43ffe07425882f310260589d513e1a936de434fa653cf3a","src/backend/libc/net/write_sockaddr.rs":"6f06f6cf6089fbc43f93f4f3830468735c92277595769867cb6c89e1fe1c299a","src/backend/libc/param/auxv.rs":"fc9476c85482b1d44190289224ccf40c96fbf3a2fe3d8554ddb42acb2e97a8ae","src/backend/libc/param/mod.rs":"5234b8f1bcb886cca6ea003d411d75eaeebe58deedd80e3441354bf46ed85d4d","src/backend/libc/pid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/pid/syscalls.rs":"49ea679b96c0741d048e82964038f9a931bc3cf3a0b59c7db3df89629b9c49e6","src/backend/libc/pipe/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/pipe/syscalls.rs":"8affde100f6a9dfc762b79d1e48be5c1039be414f8ef7d5a6acaba882a68d259","src/backend/libc/pipe/types.rs":"bcf2751691748b5084a6d8d8851b496bc2ee9011fc1c717839b09b07d423eb7f","src/backend/libc/prctl/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/prctl/syscalls.rs":"8a2684f444a7555098dce2b92270d81cefdae902716c6e5d59bd7b0657e8a29d","src/backend/libc/process/cpu_set.rs":"b3d36b01b53b0b6c61a20ed8a69d48eccdd90cc17f82f2926ef1e844f002d0b7","src/backend/libc/process/mod.rs":"3f376060815d2ed78081ddf6fb0cddc97dff5dac2f4934f0672cb09736e16377","src/backend/libc/process/syscalls.rs":"278c87df6321cad2bd37049a7cfeecad7dd54f5e3a8449368da4c3409637e6af","src/backend/libc/process/types.rs":"c011d60d93130e1233ee1d69de1e834a6ce05628220a1c0bea9b5c6eb4c853a2","src/backend/libc/process/wait.rs":"0cc556aed976b4bbb3965f74fd76b8216c755fce25043b7b21ce54afa07c9773","src/backend/libc/pty/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/pty/syscalls.rs":"699a4c325fc590b8b5dabfe5a9ff386809be14dd24bf35aa6ef581b2bd75457b","src/backend/libc/rand/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/rand/syscalls.rs":"78c7201e6bcb75e9cab9486d1878861319f865de2b2c46437be68690bd17bf13","src/backend/libc/rand/types.rs":"4eb0b4cdd0a9b089d1c9f6a25ad1ca97be28a38b7b07a705ec605b773f63f880","src/backend/libc/shm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/shm/syscalls.rs":"60d797d4e85e08e6330e6b8d80094356ce377e5484952f88ae2a6e49231c268c","src/backend/libc/shm/types.rs":"2206eac8ee74951b995e1e80f10bf235cc6b04e0a099f4adefce546378838233","src/backend/libc/system/mod.rs":"38563ea68829ca5a4b1b0695ac8a5c05718e85bdc88a36dc805efdfce45d3909","src/backend/libc/system/syscalls.rs":"abe1093f3495668d8576ae55073c74976cffb04d2e1bc20583d7ec12ac848b06","src/backend/libc/system/types.rs":"6871e16aee14fe2ae03cea798c3e509ffe44778a9c0e5608fd73e2e015876d7e","src/backend/libc/termios/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/termios/syscalls.rs":"77c4c6fdfe036251ee1540df5b398a38d87597a5e7e94abaf9b983419ae4ca24","src/backend/libc/thread/futex.rs":"b666828653b12634bbd7fd709acf69641b648ec40962a1d4f904c5db14d2eff5","src/backend/libc/thread/mod.rs":"fa710053974d7f16a6c49242ee6c10a3b9e1143452b9daeaed8837302a679fff","src/backend/libc/thread/syscalls.rs":"c8e84ad232ec1317be989529c24e204c51bb4e1e0212de2c1937b00bc92e5483","src/backend/libc/time/mod.rs":"38563ea68829ca5a4b1b0695ac8a5c05718e85bdc88a36dc805efdfce45d3909","src/backend/libc/time/syscalls.rs":"f82e0725c5af8a52e61ee83aad2c77694f2f7a72ac1e6eb284109a70ac6edc38","src/backend/libc/time/types.rs":"47ab4178a51c246ecc5f2a2fcca7f6ad9c8a1a45d11dadcb95ee0e4f82e8dfe2","src/backend/libc/ugid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/ugid/syscalls.rs":"8edf91b8790add23902c9f5418da6b0723a371677f29f490e0c8af852f0f1a0c","src/backend/libc/winsock_c.rs":"3bf3884fd250eca806ffdf96da68e29c133a697810b78b333ea449e523e58562","src/backend/linux_raw/arch/aarch64.rs":"2a255c9135bc8a321c180f52b88eb2b158bc9170cd222149caeae63c24587d44","src/backend/linux_raw/arch/arm.rs":"165bccb5883d0136e55d42091183765f83d86e9d37a7cb2cec9ae8af32774db6","src/backend/linux_raw/arch/mips.rs":"24af364aa93fd4b9917639d473336490a143f0d1723b09f388e72d534160ee51","src/backend/linux_raw/arch/mips32r6.rs":"e436a2ade34f2f7c58b8924462b07a2499dfc951e1e1318d51759444fb8b658e","src/backend/linux_raw/arch/mips64.rs":"897da9ddc877963ad59464d7f81dc59df8a7e91251e6adea14cfd946e2740a1c","src/backend/linux_raw/arch/mips64r6.rs":"3c08aea13c1139fb0dfbe74ca3d0147f007c3aa2eda641afb82c46f6aa4f6cd1","src/backend/linux_raw/arch/mod.rs":"37eaeea601d39be00d170856a31a8ec6a27b0d3ac22ab3ee642ab0e45dee237d","src/backend/linux_raw/arch/powerpc64.rs":"dfb001f8636a5e46d728900b0804fe6c374e5e18a6f0e76d7d62e0c07da74477","src/backend/linux_raw/arch/riscv64.rs":"41d33242d941030f46077dc2b1bc4c7913fe7630d693a5a7eef966bcf38f9d8b","src/backend/linux_raw/arch/thumb.rs":"2fd979ab421248c0a4c592bc0cefee63edc26528f469b71b63eaed35356e42e8","src/backend/linux_raw/arch/x86.rs":"81c73c0a13925854b54db754f533dec565b1db2d9586e210a2450c6f5915171d","src/backend/linux_raw/arch/x86_64.rs":"e929036a1f3cf93ba538f4523b241605cc7b5e61f84ffe6d9d5cdbcb6f73e543","src/backend/linux_raw/c.rs":"74cdf34fcd5bba9628c04585fa13721073e2bffe6740315c7655d1a55150230f","src/backend/linux_raw/conv.rs":"fd339c2e78e6470cb03614540bea2958eec83f1b6cbecc68696a2d2061365f90","src/backend/linux_raw/event/epoll.rs":"4ae8f9de28c6875ab29cde7da9b4b01a6578e905c7a0e0b461d26025cb24ab52","src/backend/linux_raw/event/mod.rs":"72e46b04637e2d1d2a6b97af616144995399e489d1fe916faf835d72fc8c64cd","src/backend/linux_raw/event/poll_fd.rs":"fe1c289980384edf7334a4afe92f92cb6f51b7c0431ecb19930426a3bdb89fa5","src/backend/linux_raw/event/syscalls.rs":"8782cdf978bff0773bf5f35c1056d5c29a40742cf6f99d9606d951b52596cd34","src/backend/linux_raw/event/types.rs":"9538403f2e2c5ffcc939769d83fbfcc2db03874b45c36a2858ba07a05a3e3635","src/backend/linux_raw/fs/dir.rs":"c675dc5413428d2defd6752e99d210da83639779e853db209de6a1c08d35e0e7","src/backend/linux_raw/fs/inotify.rs":"9fc5edea36e347041a39e583cb473dd84af40c63fff3dfbb85a1a97d2833d8e5","src/backend/linux_raw/fs/makedev.rs":"c6b4505c4bcbbc2460e80f3097eb15e2c8ef38d6c6e7abd78e39c53c372139e2","src/backend/linux_raw/fs/mod.rs":"8689e46f9c4c3e1190ae5fe39176c573cccac10b3739472128ca237f41e2686a","src/backend/linux_raw/fs/syscalls.rs":"a4512f58e2ef01bf0799c96fa7821284866b6826594642565f46d93e566e2e12","src/backend/linux_raw/fs/types.rs":"ccbce0b7971064c71b16a341b7f39bf2c375262ea199d6fcf9d1b073b032ccf1","src/backend/linux_raw/io/errno.rs":"2681fe1f7da132414606a7c0dbc1c2cbc43e45f326f00d06cdff51d9724c8c5e","src/backend/linux_raw/io/mod.rs":"7ae2324427892cca6f5ab53858d847b165f790a72ec25f3d99fb15f0506c9f27","src/backend/linux_raw/io/syscalls.rs":"831ce424f0032e6891d46503e972313fd7a46f15cb2fbb1f87e40fb05a018e9a","src/backend/linux_raw/io/types.rs":"d0df5a62248e1ba19af0f89f86da7ba2312d97065c2814ddf6b08a4a0db23bad","src/backend/linux_raw/io_uring/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/io_uring/syscalls.rs":"0f7c9cb7ccddf5687e4b9e5b23558871a452a29ac6095a0184a06c47b9b18eb6","src/backend/linux_raw/mm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/mm/syscalls.rs":"ac77ee94bb26bc959d3b077ef60e72863ef845c1438646b61755bdb861467bc6","src/backend/linux_raw/mm/types.rs":"46abdd2492301b7fe542ea3949eef2cfe28959cdd1f571ee1350e35b6517349b","src/backend/linux_raw/mod.rs":"bb26fe4783f834a4624c99ecf9e4ea8fa4d1c7fe9adfb6d7310fac689e7797bc","src/backend/linux_raw/mount/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/mount/syscalls.rs":"3947261b5d46b9737f02dc5352c3a3a35c63c461fd75bcd8ae6619dfc0bfb54d","src/backend/linux_raw/mount/types.rs":"af364e3f054b0fa55562827944235055beb752716347645cd1775d1a4d5615c1","src/backend/linux_raw/net/addr.rs":"fbb6c071a8ebc2c557c7013d36d4b540c1ff6ed63103d0a8abcacd8977fbf5c8","src/backend/linux_raw/net/mod.rs":"904b2ccd4228ebcda25db0223b92fb03e4042bcc7b0a202f19410a8a5ff517a5","src/backend/linux_raw/net/msghdr.rs":"a88e8395dd5a25c103dc2172d4e7013e5104a6d70091ad78efd286ebc8284acf","src/backend/linux_raw/net/read_sockaddr.rs":"4ab5d470f03f19a928327603e1d55de8b9e21cbe4bfc6ed65d856803092b1c90","src/backend/linux_raw/net/send_recv.rs":"6d5d2aec61a3c1b4a5fef1a8a487dc8e163da8988d1237541ed008baa01128cc","src/backend/linux_raw/net/sockopt.rs":"2ea8625ecd68a799c14ed48dec2f3e01f085222b6cc36f4916b20143e08ae575","src/backend/linux_raw/net/syscalls.rs":"b231754af1c94f61d206839b45f51516e0210761bbbcc1ef68c1fe6fc8a1bbbb","src/backend/linux_raw/net/write_sockaddr.rs":"a9374256cb47b3f4d5fec308986a109ce51a521abab31590df1f66c04c07d437","src/backend/linux_raw/param/auxv.rs":"c6a74c0b41aa28c850a80aad7cbad677df65c1f3eb78415872f6f3d1166716f4","src/backend/linux_raw/param/init.rs":"a5024f9afe361884f22fb4d65e632ccd8a60f1138ff6bd526df600d40e0d9b7e","src/backend/linux_raw/param/libc_auxv.rs":"167621c0b1bfd06c91c1201e9404d6624aa0a702ade17c6e37d9370c636be589","src/backend/linux_raw/param/mod.rs":"2e6a1a1c00351b9c88bd615aa923f71d76208df5626dd9bea03067f28f81dc31","src/backend/linux_raw/pid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/pid/syscalls.rs":"eef6aa01830ddd510b83f507da2002c03e58318b73744be2c06ebbe33c4f194f","src/backend/linux_raw/pipe/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/pipe/syscalls.rs":"366c730fc3e991bddb9f5a15b8c3917a8e6ace6d1d5a9113b2749e476faf6f83","src/backend/linux_raw/pipe/types.rs":"caee78eaf13af02e5c4024c7459f23287dfd2c544ebab1dc5f728106fafe24da","src/backend/linux_raw/prctl/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/prctl/syscalls.rs":"a18b224307e0d27bda9b7b85c75cd6c7ddfe39f5ce52efb7bb0bf0585b757343","src/backend/linux_raw/process/cpu_set.rs":"dfdcbdf35aff6a3e08e7d38193bf18c12ca8aa64eb0dc417667be82dcc0f7c55","src/backend/linux_raw/process/mod.rs":"fb393c70a9c63ef9a6bf1fb5a2dc94f07d6b0b6987cc5231c15c607015dafd68","src/backend/linux_raw/process/syscalls.rs":"a2e446ba4e09727d11fc3b3d4bb316a659399aad186c08aa5bba80e62741265a","src/backend/linux_raw/process/types.rs":"6811ba822bc12a1a6336649151b4adb1f5d3365684a31c07f01953ea9547743d","src/backend/linux_raw/process/wait.rs":"921aee4b0048746087f52615a98edc2aa0fb4b53d6df44be4533098df55d1b05","src/backend/linux_raw/pty/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/pty/syscalls.rs":"ae09c4aecc0ae87b1ca58d82efc58007b9dddaae78460d615f48da19d1cd0f89","src/backend/linux_raw/rand/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/rand/syscalls.rs":"a84f70251672e92f253838bf05e989434f67373233e88d21d8835cbb792b1fe3","src/backend/linux_raw/rand/types.rs":"a21dbb1ab31eed6b59a57520be5a3c603c36d18ea74e67f7527f40835ba209a3","src/backend/linux_raw/reg.rs":"def5f88730bd625b2298c86559b5a378fce4bf6ce225204740ba087e034abce6","src/backend/linux_raw/runtime/mod.rs":"b2cae8cce3822c3c92942f06ea0b68464040dcac33c6f0f7ee392c6269993347","src/backend/linux_raw/runtime/syscalls.rs":"90849c8e429f215c225d430e7f550b5da0bb96054ef01745d3184f6c890ba8cf","src/backend/linux_raw/runtime/tls.rs":"6316060560a112c2e9cd9807cdba6e8c91414113a04a739160929ae9a67bba1f","src/backend/linux_raw/shm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/shm/syscalls.rs":"3ebf91610b02de0312e1f0f0cc5d56e12b4d93794540087b3182cbdf3cb9c8db","src/backend/linux_raw/shm/types.rs":"b831b474aba7eb97167c9289f5257776a72b39134b44e67a0ecfcef2394dcd47","src/backend/linux_raw/system/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/system/syscalls.rs":"2af6c2672a6528b404b52f501d9803a63e9f47886d3b5d2d2dc5a71cefa7327a","src/backend/linux_raw/system/types.rs":"1ceab8d738a71043473b26e97fa3fd79d588a86d4774cbc9b9e1d4f1447a016e","src/backend/linux_raw/termios/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/termios/syscalls.rs":"151f03b938aec36a38fbf4e4b507ddc84d0999a246ee48abd5893464daa736a8","src/backend/linux_raw/thread/futex.rs":"0aa0f9f5be6a79de81e82c9f11f1bf8831f682a4b2f6cb29669e1591636f084e","src/backend/linux_raw/thread/mod.rs":"6ad4a4b90b9234e79900b27ebbe8837e3a7a36aec532912e3e253edce5225067","src/backend/linux_raw/thread/syscalls.rs":"0e3dca63be7322e1e9c58456b28eb8548abb9f08b4436b87b139e891c01c446d","src/backend/linux_raw/time/mod.rs":"672724f55b7b7be6a7452bb1cc2d28b5f0aaa840a2856fe363acce624e1beefc","src/backend/linux_raw/time/syscalls.rs":"451da0bbb66accdf58ee7f2f8746a93b22ee985907a08717a3d3b1650457d878","src/backend/linux_raw/time/types.rs":"028d2993df8fffe5581f7082b8849381bb21928930dc93e4a536a9c7a316c71d","src/backend/linux_raw/ugid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/ugid/syscalls.rs":"8c86d251db33b399a1d1cbb8e87afe650b78db84f444d3251309b7a0480b54f7","src/backend/linux_raw/vdso.rs":"056314f72c71d4b041739337ca2098afb7fe070f844327f462c293f43481b75b","src/backend/linux_raw/vdso_wrappers.rs":"3bec7ee7daacc93b26c15e829e3ecdea62f9fc62244841ec80ee47a55806a69e","src/bitcast.rs":"e21c87c292c781b27256c6f5dcf9fd52dd69ed6e21016cbd67ac31a8219ebf8e","src/check_types.rs":"e52f710e1cfc12ca13a495f2b43c227b293ff295e1ce3ab332935b28a7579872","src/clockid.rs":"e41172c87401ef7b8ad37ec09b5b690c55c51b37009414a2089b34dcac9d93a9","src/cstr.rs":"41af2a4429fe6c67a8883f8a8f63d66c90df566abda74fd2b03bcef7b9f24218","src/event/eventfd.rs":"81cbd08f7bdf40a6ce1ca692b63da1dc8ba925282990668d9d68f1203e839fa1","src/event/kqueue.rs":"222842df22e66f41d93dacd3cba933810d9313d5ca9959fddabedda9c4312bf2","src/event/mod.rs":"326a7ddfeb33bb95dd31391d65f400fa622e5d0ab827c096cab16af4b6843b51","src/event/poll.rs":"0ee583dbd457a573a82a06c04a2a24bd2c76e751d27a435507d55338e2871327","src/event/port.rs":"4e51ff150e5d17cbd44aa64a38b99c15e26eaaf2e350768b5dcacdfde4fa5212","src/ffi.rs":"c2b8b38c02d72749aceb715c496726caba1f1fa989ad3856d0103a2fafed89ed","src/fs/abs.rs":"10e1a148a5b05476efbb591dcc969c1a6caf3d2d9592741eef22341a97c8f4a3","src/fs/at.rs":"a12f382f7b544ae4bbb7a967de43178dad796e05fd6eb8136e1a34236b48f9dc","src/fs/constants.rs":"23923e0fce3221bdac371fe2d05028f30a87dba4f9b4a573b69dc2d6d39320b2","src/fs/copy_file_range.rs":"d3b644374390d482b2ff749a2459458872b57d0dcf9670368739b7833509a7c2","src/fs/cwd.rs":"9f429a79ace6e17455634da09216ee0ad3d067a4541518b3193ae6a8d9ff1e26","src/fs/dir.rs":"347a52f4ca9ac6321c52e802e97ec90d1b4c62ec955c8996fc17f8f5aed69966","src/fs/fadvise.rs":"1220e2cf5cf58fc7cc950d48738050a052c504f745ca67130daa6410e248230a","src/fs/fcntl.rs":"1d1ee1e0bc962779e1cc1b8b76f39c820746240557daa9e14b47b1799120dc39","src/fs/fcntl_apple.rs":"e2f23f038083621bcdecc98d02ce1023508afaecdb2ed0fba5c8b70f955301e5","src/fs/fcopyfile.rs":"ce565f61e1fbf2e31086077c2f1d01b6bb3b048915edda87fe9a4a4f5e8ff7e4","src/fs/fd.rs":"fe53f211e91352d522ac4f3b553a9366506458e2158295a93c5e746618f7a5fe","src/fs/getpath.rs":"28f6970fc1bbc37bb35c84724b59eac436ea7407a4522e18c2bdacb1fdd2edd9","src/fs/id.rs":"1b5c8a8baf9a9bb1f895f97189cea4e5982a0d35b192afeec6340a6c6222e0cb","src/fs/ioctl.rs":"e798eb41bbc201c375bc295ad2928c2467b45b4fbbff3c82236dccbc0d6391a5","src/fs/makedev.rs":"85520b484cb7c15ab71ea1c368578ea3b7e484d82f8510db92b6ce9f7ca341ae","src/fs/memfd_create.rs":"00df492a3afdfc65a07d6849422596bf6cd4608a653d5d25ba54d6640eacda11","src/fs/mod.rs":"2192ea7f6f81a18d892d3526df00c43d83669f1a1734957ba94cf8269980792e","src/fs/mount.rs":"8f6ea2b997dd83c50c90291b9ada3ed77a9ce1ad701c9b0d533b5113b317be5b","src/fs/openat2.rs":"4a95c15dab533a41201b5fa25c8a212956b7571d58cad696bdaf45af8aef96db","src/fs/raw_dir.rs":"18ad797876d6230c38d4cacbed081c4028e03ace477d0520d9b226b40de942f0","src/fs/seek_from.rs":"a9efa0feb9ac789cf47667e91efee2e3f2dcde16cb3b7a928c99da640fa0e0d6","src/fs/sendfile.rs":"e3b2058741cf4b1698f34d84bb37130cf2b72806d522a16fe541e832cde136cb","src/fs/statx.rs":"f925be3d9a179a903549b3ac18038d004f4f2021e46dad4aa2757907aebefeca","src/fs/sync.rs":"a3b23543834281f347b0f873bd38154d31d404871188ac08f2b20b9196234cfd","src/fs/xattr.rs":"5e222adb52caf69d949ab3f944fb2a482dd6ca3a47200532ca6e72d44cbe8334","src/io/close.rs":"0aa3cd05a8fed8e5244f97b8b6c2e7f65ed93a4e5435c6329852bb3da7514440","src/io/dup.rs":"bbebf4633120e21c7c49ecb93576cffa7e908f8089deb260f8d97426b469a0d4","src/io/errno.rs":"58a4d20ba0924e4d514e3c876fbe08982f1623187642ae14780815e65989c8c8","src/io/fcntl.rs":"5b7696e40757615940745ecc7f33d84678d24f55eba978a8efdd0805cba7b1c1","src/io/ioctl.rs":"3dffbda413fd380f1580e2e75c531a5f4a0487417ea1c235c23fe46b70e46bd9","src/io/is_read_write.rs":"1bfb9ee5d58e0b29b44af12fe2668c7bccc841358698dcde47f1519ff9bb73b4","src/io/mod.rs":"75f1d0646be1d4c7c08b5887d8119b0103be8c25c43ccd4e0e97015508c0bb8f","src/io/read_write.rs":"77b8058769dc0bf5a88d73acd7ce70af1a89c549b00b790e281dc20364bcb6af","src/io_uring.rs":"4e641c9aaeba14890e4a354ad8b1fda8fe617923b4d3d685da22721d66a14bdf","src/ioctl/bsd.rs":"e33772530b1b2d1e7d61ce53d9267e68d88f7f5df13301f90412d89a46c6faaa","src/ioctl/linux.rs":"96df90bbc926783f387e8fe1656841d4c7a857fd4e9f41f95492f7dcece33074","src/ioctl/mod.rs":"d2233ba2a81738828d28d4297f8dafaf254c475174de48bd0fe3891d29a71bfe","src/ioctl/patterns.rs":"af24c47597e619a8e0fd3ca071f21db1963a629b511d9279ef9d36a8030a6fe8","src/lib.rs":"ee2b60b7b29c9f4e0f474534a76961c2ce5c9f3640eea67fa395e633b64efa6e","src/maybe_polyfill/no_std/io/mod.rs":"77889bb5c5a4f2e50e38379cdaa5d0fef4b0cafc3da056735df01f6deae75747","src/maybe_polyfill/no_std/mod.rs":"ec94a4aab4bc475785e469d10fd6bc95667e1d47d958e9cff3a19049d88c8c80","src/maybe_polyfill/no_std/net/ip_addr.rs":"046327ee244f758f2bc31d3be305d8cd0dfd8342aac1add8259e999b4b46c4a7","src/maybe_polyfill/no_std/net/mod.rs":"486555be5c56cf3e049e65a1ea73aa60839c6f6ca667833e88ee4f360f9606dd","src/maybe_polyfill/no_std/net/socket_addr.rs":"bfeb32d32c176cde76323abcffebfc47e9898fb8d7ce3668c602dc8451086a2d","src/maybe_polyfill/no_std/os/fd/mod.rs":"27ef0afbcb0695cbb15101070f417eb51e0ef85ae66ec967d95e80771d507c47","src/maybe_polyfill/no_std/os/fd/owned.rs":"ab86ffa2693a04f3085770faf395f95e5303001711be8b19c44a47a0ac574091","src/maybe_polyfill/no_std/os/fd/raw.rs":"f3648c7bd4a6ff94bd823ed9e0d99d398e02f24875cf9b25962736999e7c6943","src/maybe_polyfill/no_std/os/mod.rs":"27dab639a765827644005d5f2fcc7c825310606b889cc8dd83f54c9528350dc0","src/maybe_polyfill/no_std/os/windows/io/mod.rs":"5bbcc05c83fee5026dd744a994e0458469466d5be39081baa62df07753b92fd2","src/maybe_polyfill/no_std/os/windows/io/raw.rs":"4c32609a489dd938a49328b5637cb3bafb96437f2f9f269ab66d7d3cb90247f6","src/maybe_polyfill/no_std/os/windows/io/socket.rs":"c658f42f24eff44a661f2adfd24a11af80fe9897f3e2af4dc5d2c64808308d65","src/maybe_polyfill/no_std/os/windows/mod.rs":"fdb416f8f231a4e778b5f985b9ae712ece5e1a1402963ad1a5f6a8b9843795f4","src/maybe_polyfill/std/mod.rs":"7c16c86cc73e226e65ead598e4018238b22000a345040b706bf1e1b3eba115fc","src/mm/madvise.rs":"69481cd3354dbffe6cd93b234448e59de6d0fe6440bcf8b12f951f37745bc1dc","src/mm/mmap.rs":"8cd1a8278e138d0805726474bb3016fdaa09a8074bbc8f20d1e842e7fc17efa3","src/mm/mod.rs":"b3a6cb838986d45825b912355cedead761211a494ca6f89b2367a2d2157e340e","src/mm/msync.rs":"a9092be024ecbfa9c14edb935404513498b0da2ac6c99fc31fe4e58196a95f02","src/mm/userfaultfd.rs":"8073443bd181ff0b3ba4d0b1ae67370b4864035a0c8b4898cd709dc47c518ae7","src/mount/fsopen.rs":"160e384e9175fd98669cda1cf3590bb195c2ba7e1c724e9ea06e692595e58ba1","src/mount/mod.rs":"5f0c9df4727592695deb1cd63ae1de021b03dcd9d0d1b68e1f34d12a7136cb19","src/mount/mount_unmount.rs":"8ad11675e5d762d33fbefbed06a6a9f9e52a9b689bd06662446152614321ab77","src/mount/types.rs":"601ae3e10b7dc496fed7f3b40a80e81c6edd7bf13189d7be45c3212d4c684c39","src/net/mod.rs":"a6bc55f9e086caf46a7c00783498d73a328a66f2a991f1ec65d5f13931377b0f","src/net/send_recv/mod.rs":"7b77a70c0ad2601b5da30e8b202e34c6bfc9e10df4ce2b1a35b111522ae123a3","src/net/send_recv/msg.rs":"f100a88648b9eba88272aca77d76351432636022a1d4b0e9485e002a3489d05a","src/net/socket.rs":"1296706d964d110be7cd46b61a0a06dabf382a2377907ba41badfe94807cb50f","src/net/socket_addr_any.rs":"a9af81e967a91b45e51aec4f46a068fade7035c5d19dfaf05bfdcd3b3c32e9bf","src/net/socketpair.rs":"56f4885c31d2664cd16e18a9a88792a4912fedd953cec36dba67e8581fd57921","src/net/sockopt.rs":"4f00ff76d3cd3fd2e915f51eba59827fb60885d6b0c6d37b32ca4306cb8fe836","src/net/types.rs":"35878a8ff12cd7252ed735cb640bad03e4e13c6016769c2d154c0fab08505248","src/net/wsa.rs":"6e546b42f50a851fc833c57cda76cfb347203ed4b0dea574a3d325bf5a2ebf80","src/param/auxv.rs":"8602af47a39bb340d319807bdecdb9be8b467101a9ed96061277b90234801913","src/param/init.rs":"a31c0e5cea61a1a999767fe74f87c0d59eeb6bce66578b842fe0e0c32be27a55","src/param/mod.rs":"25b10acd5b1da8faa6f5204e6b0379b38bfab667916e886cca64bea01a42dec2","src/path/arg.rs":"d87117157ec21f61a5e50b2779b4284fd13dd7db11b20a6bc9e475d0e4a25357","src/path/dec_int.rs":"8ff8e14442c46f8e7a9b80d73973619b4271549b9defd538479bf8c2d93aa72e","src/path/mod.rs":"6b1b949c94bcc47e0f08a3f8e8db5b61ff497d0dfd3e0655f51c01d3e4b7dfd6","src/pid.rs":"f1c486000c5b1311b2d720cee88f089c17ef9a171709673dd06e6f35f4ff98a3","src/pipe.rs":"cec0a831237ab2652556b149767d1b382e9739a1bb21ea401a35b36df7f7a3e7","src/prctl.rs":"19aa584895874ea48b9bbe1bf695b81257b0281df64dfdd91e1b4bfa298661b7","src/process/chdir.rs":"911216459aa429fe9f125f1357d6900b43b0007835b85c719875d00f79a74664","src/process/chroot.rs":"2b5f6124eb19f26ad2705174f7ad50cdc0a5d15abd59ffcf55421228d82130b4","src/process/exit.rs":"48de66e5504a00cb375d8f415ce63b6225a3f5204268d40726a7d0fbba43f587","src/process/id.rs":"e4733f9e8e4b5f50e98ef7a23802e126f1f14ece8b3d7ae7446c6a66affc6bc1","src/process/ioctl.rs":"23ad0285671e8d7ca71a63c50655dbf732ccea8af11d754a0558e0236db37e76","src/process/kill.rs":"96d5ce432c19cf2b600d5248c681c117abf53ae94bbfca7e75ac533a40e3968e","src/process/membarrier.rs":"1c4c39b359d1d0e9bbe16352eedfca9278d9ef298ade8ec00e998617bbcbfed8","src/process/mod.rs":"70e7fc79e4edf3ffd56c20643707cafdc595330db68e4ff8f75dcb3756ad5b1d","src/process/pidfd.rs":"39de2dc7919eeeb53a5980622616140327671cd7e36bcf597aee1749df3a5b5b","src/process/pidfd_getfd.rs":"1faace75bdbcda57a296806dcfa5487811f8d11dad9e6199c98df72feae66724","src/process/prctl.rs":"0130d05362a17a9282f3391189095e1f4f51fb56d7a5205906a0011842df4576","src/process/priority.rs":"f135482e71ea8aa0daf92b9f238051178a4c904070fa8409622f94155df3c544","src/process/procctl.rs":"430ec397782772d5a028903c2813d3e11f7e577af144b9effd9c42629ac8d3d2","src/process/rlimit.rs":"10b79de3ced0e64059a94c879742d46a35a6176c776d8eed75031d5e6340283d","src/process/sched.rs":"b49ef463f44b5e90a04e9a08569d0ae20eecb8667f38f31c786df1eb099db466","src/process/sched_yield.rs":"6565faa3928b66ddc74a65e893e15edfa4b9be4f7e5f5f68527501a7f6bc3350","src/process/umask.rs":"1a0f31a842303c978e3f05ec191e2b5e96104c09c6596473b42b1fac34898a50","src/process/wait.rs":"612920489b5618bf82a9a615947e0acbed6eb310acbb9bb70e934d457dd1dd49","src/procfs.rs":"63b286dd3302be7f426841eb3b9261ef4785c3159ed78c24734bd5094c9b0b2e","src/pty.rs":"652c412e7280d0344b3f9bfe376c106a7f1b42b898b7af344e6e72da268e2bf0","src/rand/getrandom.rs":"1c8166a02a74f5593bb4673ef907524df04cbc1568020a5ab2ff7f4aa1283f8b","src/rand/mod.rs":"cab59332aadd9b679f5b22cbb222d48ee028af5eb9fd4a4d43922da659b895d7","src/runtime.rs":"695e60b9cc22755ce0e653fd63a0c73024a14eb8f576c6071dad6806c32f5552","src/shm.rs":"b96fe8a05ee5d4536464a8843a776d43a938abaf22c772fc35b5373d95644a8d","src/signal.rs":"a294b49d487dafaa42e534f8b1d93e87bec135087676b2ba2ef865cf2fccdaf2","src/static_assertions.rs":"504cf66f0d5b8e335be02f9ae8b0a355abc98c2c82eec0098bdf0988e662e260","src/stdio.rs":"a5de2d7d9c3c5a901f88b6acf4754687c958a2f3a93c7945c2b8fcb948d468af","src/system.rs":"4d7d1eff18094ec85a8ead70a7ccbe8ef78fd7f5705b7dfe3fa52541e9494887","src/termios/ioctl.rs":"a1ac967f7811a482f8bb53847c37c8359f518cd26da9df7b816ba678a0139623","src/termios/mod.rs":"b44b7caa60b6f458657ed58a0e0eca41bb4e6d6be4b0f042bbb8ab7056cebe4b","src/termios/tc.rs":"e41312d15464b83b2457c2502fc3f3b9998cfb02ba68739026dd4285cc7130ac","src/termios/tty.rs":"35a5fc2d26501e0e6dde1a755eeccf7b4f3b4702c5bac30e0953220808ef7034","src/termios/types.rs":"38167a38fb83e84f2845f86b373ecaaa3ebf6c2f91dccd07c10539201d6f5070","src/thread/clock.rs":"f49eb7271eb3e6831d9b0c3a01bfddbe4bd69dee237bbaa059884de452b29e79","src/thread/futex.rs":"985f9a0dce1e2a4892ae7f26bd1bf119ceae3f9fa6b4707e166624fc1cee76d4","src/thread/id.rs":"ad72db4fea9fccb728310bbfd01ef8c00f6cc60fa2a750f6349646a134f7009b","src/thread/libcap.rs":"4c51b7df566d38dd0f85f81ef53279a745a39f0f4e1154791fd38438e2ca7db1","src/thread/mod.rs":"98634ece0b882f123ad887017692f2a4d94a23a1dec278ed660b3497cac5cceb","src/thread/prctl.rs":"6caec7eb4fe122e80ba1ecafc56b710c79ab8b3c97529d5beba74d87af356875","src/thread/setns.rs":"ea9142b1f3a5b3f329683be185f960c50e5c1636149e91fbf59e88a897fc607d","src/time/clock.rs":"e59a29f1bed8c31c3d5b6fad60f2d4fa6cab8dd8e86148bb3693a5e3a1ce735f","src/time/mod.rs":"43afee938c80d124d04d4ba190c03f4d21d1e3bfc154fff309211e4f6eabe940","src/time/timerfd.rs":"f17092b84553741aa2d2b44c6992b5d2c8c96cc2c2007fc9a2c6b2064485e53f","src/timespec.rs":"32a4d930cbc0f6dbd23153290db920671cf4ce65a4a127e176f897c1cde42d7d","src/ugid.rs":"6616c6e35b7e43aee5b150f1efae7a50711e0947943c9a96833dbe214ad9e85f","src/utils.rs":"9ae76f8a41d6cc350cdd58c9084b5c3a5a708eeecd769783debdbcbaef442182","src/weak.rs":"c7cf03bf2aeba494b1999ab32183fa8c603ab72e254c0e312a67f168877e410d"},"package":"2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3"} +\ No newline at end of file ++{"files":{"CODE_OF_CONDUCT.md":"f210602311e3f74b32f46237fd55f4ce36d798e85e3db1432ec667f63a7ffc44","CONTRIBUTING.md":"3fd57de5c678db1c972da676a8231d2fde9820695ef1f0d53f1e55a3e81d9de0","COPYRIGHT":"377c2e7c53250cc5905c0b0532d35973392af16ffb9596a41d99d202cf3617c9","Cargo.toml":"5a6eafc41863c968362a1b8424dd0a5e1ce6502496b2999ef97ceac81f30fbcd","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-Apache-2.0_WITH_LLVM-exception":"268872b9816f90fd8e85db5a28d33f8150ebb8dd016653fb39ef1f94f2686bc5","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","ORG_CODE_OF_CONDUCT.md":"a62b69bf86e605ee1bcbb2f0a12ba79e4cebb6983a7b6491949750aecc4f2178","README.md":"0acc443488c1d6f7a0a80a91385d06c7a1920c1f5c847214dd6c23a6bd027f75","SECURITY.md":"4d75afb09dd28eb5982e3a1f768ee398d90204669ceef3240a16b31dcf04148a","benches/mod.rs":"e260e67273aa0a37cffdc5cd451699335b8ee656c17275a0d0f2b4563c6018ca","build.rs":"5f93559819ca7fe233f01579d51ff5b58cb6e96ef9e7817a3358a9b410d5bbf6","src/backend/libc/c.rs":"92d9c17e26569a9d09cd05a83a06df514ffbb02795765fc8bb0d74bda7711a51","src/backend/libc/conv.rs":"b66d080db3a4c2756fe722462b543982bf88e5bc8071b9dc98d28ec2aee3dbfc","src/backend/libc/event/epoll.rs":"b6f00ec602f9a6b9a2b7a66a242efda088b67ed66053692dcbba683df4fdaf19","src/backend/libc/event/mod.rs":"7f8547c599b8263eb791890bbe4a0b22fe2676d007ffdcc3e07b2e48d1c994db","src/backend/libc/event/poll_fd.rs":"1186dd69fc78d474975f1b8c55c9dd261229cb0c53a0dd2a88754ef62529a917","src/backend/libc/event/syscalls.rs":"295a930521b345192caaf916b39189299f81f5f7c9f1aaed235baf3bf6f2f5fa","src/backend/libc/event/types.rs":"e81130bc07e8f762ea2942bca1bde048ade0df24aac619907f3055d2dda7d522","src/backend/libc/event/windows_syscalls.rs":"ebfac665c6676c4b803134ab8806be8aa2e96bdbc7799a19c544cd9069b35787","src/backend/libc/fs/dir.rs":"71332c794f4e2438e7c700a0d2206fe0088cf98473030e3f8ccddf252ad7f5b2","src/backend/libc/fs/inotify.rs":"a027a718db8bf6ff9a778c2cfa706850b466240b0a2296d72b9834c0096968e8","src/backend/libc/fs/makedev.rs":"89c679a0ef18dd41b3c6223bce0f329ad35bf6cadbf16e47b33fad3f312ba4a6","src/backend/libc/fs/mod.rs":"3d28b803011b57da6315bb747daf0117218687c0cc610358f5dafddf0b7d44d3","src/backend/libc/fs/syscalls.rs":"229d1c27d53bfbd35310b05aaf8b3307d6b6e9948faf0655713bc662f901bd02","src/backend/libc/fs/types.rs":"ca25c8271e1fd2ff6c28082884ca112fd5e0523b2aa3cd289cd9a399c962a172","src/backend/libc/io/errno.rs":"d33978855c2e0e97d5e1f7a04ab10894f9f2c3e329e949f259a757f89942074e","src/backend/libc/io/mod.rs":"746647bd864e4ec7717925b6d176cebdb392b7d015070244cc48d92780351dd6","src/backend/libc/io/syscalls.rs":"cbd9e9db566597de0a709247c8ba3bd1e6ce266a128d639273353c706f0592b7","src/backend/libc/io/types.rs":"2efd39bb3df19a9db5496217284f3d2235ddb354fac81dd71861109a56bede0b","src/backend/libc/io/windows_syscalls.rs":"fab3fa099aa89cea56a6edc651dd37750e581534f4f45b04a7e425f130b08468","src/backend/libc/io_uring/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/io_uring/syscalls.rs":"5af8146d5971c833e6fd657f652c618b31f854e1b0811864fba9b658cb633e19","src/backend/libc/mm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/mm/syscalls.rs":"c04c61ad3d7f3b24d13f89144d7fa0a05658cea4763207f9250db4f9362de2fe","src/backend/libc/mm/types.rs":"48406d44d79b102ae9d17860749611d26c1f04e3630e9680dfcb20e2efc148a8","src/backend/libc/mod.rs":"778083f85aaca00aa5c8ec36b541e0e8a3e693660a6acf4722b4508f015c278c","src/backend/libc/mount/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/mount/syscalls.rs":"1bc87501a078616d0190d2e85de55f3f968b8cb79d49bd9eb839a350eed26089","src/backend/libc/mount/types.rs":"1b0d527ae5a272ae441fa35192616a867090204404324a341a7864ae1f5ea3fd","src/backend/libc/net/addr.rs":"9bdc2febb20785bc26a820eaba52cb546c67c79cb547f08105087cd0f79d5861","src/backend/libc/net/ext.rs":"0dd64877abe1ba86b47a2ab34340e3f6cc7b53b22d0bb5e237daf6a82edd46b0","src/backend/libc/net/mod.rs":"5f0bd80a6575aba4a714443ca99af76ad15b053f1f8029aa1d9c7fa10e6d9242","src/backend/libc/net/msghdr.rs":"64825203c09cb60ac4e869cd27a44697f1efe53455c41684279d50d8f0a96701","src/backend/libc/net/read_sockaddr.rs":"b1a72b7bd56cd152ed0731f571e4d9411b2974f860fc045319dc74b5b077e569","src/backend/libc/net/send_recv.rs":"1450ca958431a5bf3a85cdeef88b387f30d5c1215de2c56d164ccda38f21b36c","src/backend/libc/net/sockopt.rs":"178a6622bab25bf1813d6c17151f48d820e238db8cbd05be3aae563902d6c53e","src/backend/libc/net/syscalls.rs":"1c703ea3d7a1d0bfa43ffe07425882f310260589d513e1a936de434fa653cf3a","src/backend/libc/net/write_sockaddr.rs":"6f06f6cf6089fbc43f93f4f3830468735c92277595769867cb6c89e1fe1c299a","src/backend/libc/param/auxv.rs":"fc9476c85482b1d44190289224ccf40c96fbf3a2fe3d8554ddb42acb2e97a8ae","src/backend/libc/param/mod.rs":"5234b8f1bcb886cca6ea003d411d75eaeebe58deedd80e3441354bf46ed85d4d","src/backend/libc/pid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/pid/syscalls.rs":"49ea679b96c0741d048e82964038f9a931bc3cf3a0b59c7db3df89629b9c49e6","src/backend/libc/pipe/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/pipe/syscalls.rs":"8affde100f6a9dfc762b79d1e48be5c1039be414f8ef7d5a6acaba882a68d259","src/backend/libc/pipe/types.rs":"bcf2751691748b5084a6d8d8851b496bc2ee9011fc1c717839b09b07d423eb7f","src/backend/libc/prctl/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/prctl/syscalls.rs":"8a2684f444a7555098dce2b92270d81cefdae902716c6e5d59bd7b0657e8a29d","src/backend/libc/process/cpu_set.rs":"b3d36b01b53b0b6c61a20ed8a69d48eccdd90cc17f82f2926ef1e844f002d0b7","src/backend/libc/process/mod.rs":"3f376060815d2ed78081ddf6fb0cddc97dff5dac2f4934f0672cb09736e16377","src/backend/libc/process/syscalls.rs":"278c87df6321cad2bd37049a7cfeecad7dd54f5e3a8449368da4c3409637e6af","src/backend/libc/process/types.rs":"c011d60d93130e1233ee1d69de1e834a6ce05628220a1c0bea9b5c6eb4c853a2","src/backend/libc/process/wait.rs":"0cc556aed976b4bbb3965f74fd76b8216c755fce25043b7b21ce54afa07c9773","src/backend/libc/pty/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/pty/syscalls.rs":"699a4c325fc590b8b5dabfe5a9ff386809be14dd24bf35aa6ef581b2bd75457b","src/backend/libc/rand/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/rand/syscalls.rs":"78c7201e6bcb75e9cab9486d1878861319f865de2b2c46437be68690bd17bf13","src/backend/libc/rand/types.rs":"4eb0b4cdd0a9b089d1c9f6a25ad1ca97be28a38b7b07a705ec605b773f63f880","src/backend/libc/shm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/libc/shm/syscalls.rs":"60d797d4e85e08e6330e6b8d80094356ce377e5484952f88ae2a6e49231c268c","src/backend/libc/shm/types.rs":"2206eac8ee74951b995e1e80f10bf235cc6b04e0a099f4adefce546378838233","src/backend/libc/system/mod.rs":"38563ea68829ca5a4b1b0695ac8a5c05718e85bdc88a36dc805efdfce45d3909","src/backend/libc/system/syscalls.rs":"abe1093f3495668d8576ae55073c74976cffb04d2e1bc20583d7ec12ac848b06","src/backend/libc/system/types.rs":"6871e16aee14fe2ae03cea798c3e509ffe44778a9c0e5608fd73e2e015876d7e","src/backend/libc/termios/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/termios/syscalls.rs":"77c4c6fdfe036251ee1540df5b398a38d87597a5e7e94abaf9b983419ae4ca24","src/backend/libc/thread/futex.rs":"b666828653b12634bbd7fd709acf69641b648ec40962a1d4f904c5db14d2eff5","src/backend/libc/thread/mod.rs":"fa710053974d7f16a6c49242ee6c10a3b9e1143452b9daeaed8837302a679fff","src/backend/libc/thread/syscalls.rs":"c8e84ad232ec1317be989529c24e204c51bb4e1e0212de2c1937b00bc92e5483","src/backend/libc/time/mod.rs":"38563ea68829ca5a4b1b0695ac8a5c05718e85bdc88a36dc805efdfce45d3909","src/backend/libc/time/syscalls.rs":"f82e0725c5af8a52e61ee83aad2c77694f2f7a72ac1e6eb284109a70ac6edc38","src/backend/libc/time/types.rs":"47ab4178a51c246ecc5f2a2fcca7f6ad9c8a1a45d11dadcb95ee0e4f82e8dfe2","src/backend/libc/ugid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/libc/ugid/syscalls.rs":"8edf91b8790add23902c9f5418da6b0723a371677f29f490e0c8af852f0f1a0c","src/backend/libc/winsock_c.rs":"3bf3884fd250eca806ffdf96da68e29c133a697810b78b333ea449e523e58562","src/backend/linux_raw/arch/aarch64.rs":"2a255c9135bc8a321c180f52b88eb2b158bc9170cd222149caeae63c24587d44","src/backend/linux_raw/arch/arm.rs":"165bccb5883d0136e55d42091183765f83d86e9d37a7cb2cec9ae8af32774db6","src/backend/linux_raw/arch/mips.rs":"24af364aa93fd4b9917639d473336490a143f0d1723b09f388e72d534160ee51","src/backend/linux_raw/arch/mips32r6.rs":"e436a2ade34f2f7c58b8924462b07a2499dfc951e1e1318d51759444fb8b658e","src/backend/linux_raw/arch/mips64.rs":"897da9ddc877963ad59464d7f81dc59df8a7e91251e6adea14cfd946e2740a1c","src/backend/linux_raw/arch/mips64r6.rs":"3c08aea13c1139fb0dfbe74ca3d0147f007c3aa2eda641afb82c46f6aa4f6cd1","src/backend/linux_raw/arch/mod.rs":"37eaeea601d39be00d170856a31a8ec6a27b0d3ac22ab3ee642ab0e45dee237d","src/backend/linux_raw/arch/powerpc64.rs":"dfb001f8636a5e46d728900b0804fe6c374e5e18a6f0e76d7d62e0c07da74477","src/backend/linux_raw/arch/riscv64.rs":"41d33242d941030f46077dc2b1bc4c7913fe7630d693a5a7eef966bcf38f9d8b","src/backend/linux_raw/arch/thumb.rs":"2fd979ab421248c0a4c592bc0cefee63edc26528f469b71b63eaed35356e42e8","src/backend/linux_raw/arch/x86.rs":"81c73c0a13925854b54db754f533dec565b1db2d9586e210a2450c6f5915171d","src/backend/linux_raw/arch/x86_64.rs":"e929036a1f3cf93ba538f4523b241605cc7b5e61f84ffe6d9d5cdbcb6f73e543","src/backend/linux_raw/c.rs":"74cdf34fcd5bba9628c04585fa13721073e2bffe6740315c7655d1a55150230f","src/backend/linux_raw/conv.rs":"fd339c2e78e6470cb03614540bea2958eec83f1b6cbecc68696a2d2061365f90","src/backend/linux_raw/event/epoll.rs":"4ae8f9de28c6875ab29cde7da9b4b01a6578e905c7a0e0b461d26025cb24ab52","src/backend/linux_raw/event/mod.rs":"72e46b04637e2d1d2a6b97af616144995399e489d1fe916faf835d72fc8c64cd","src/backend/linux_raw/event/poll_fd.rs":"fe1c289980384edf7334a4afe92f92cb6f51b7c0431ecb19930426a3bdb89fa5","src/backend/linux_raw/event/syscalls.rs":"8782cdf978bff0773bf5f35c1056d5c29a40742cf6f99d9606d951b52596cd34","src/backend/linux_raw/event/types.rs":"9538403f2e2c5ffcc939769d83fbfcc2db03874b45c36a2858ba07a05a3e3635","src/backend/linux_raw/fs/dir.rs":"c675dc5413428d2defd6752e99d210da83639779e853db209de6a1c08d35e0e7","src/backend/linux_raw/fs/inotify.rs":"9fc5edea36e347041a39e583cb473dd84af40c63fff3dfbb85a1a97d2833d8e5","src/backend/linux_raw/fs/makedev.rs":"c6b4505c4bcbbc2460e80f3097eb15e2c8ef38d6c6e7abd78e39c53c372139e2","src/backend/linux_raw/fs/mod.rs":"8689e46f9c4c3e1190ae5fe39176c573cccac10b3739472128ca237f41e2686a","src/backend/linux_raw/fs/syscalls.rs":"a4512f58e2ef01bf0799c96fa7821284866b6826594642565f46d93e566e2e12","src/backend/linux_raw/fs/types.rs":"ccbce0b7971064c71b16a341b7f39bf2c375262ea199d6fcf9d1b073b032ccf1","src/backend/linux_raw/io/errno.rs":"2681fe1f7da132414606a7c0dbc1c2cbc43e45f326f00d06cdff51d9724c8c5e","src/backend/linux_raw/io/mod.rs":"7ae2324427892cca6f5ab53858d847b165f790a72ec25f3d99fb15f0506c9f27","src/backend/linux_raw/io/syscalls.rs":"831ce424f0032e6891d46503e972313fd7a46f15cb2fbb1f87e40fb05a018e9a","src/backend/linux_raw/io/types.rs":"d0df5a62248e1ba19af0f89f86da7ba2312d97065c2814ddf6b08a4a0db23bad","src/backend/linux_raw/io_uring/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/io_uring/syscalls.rs":"0f7c9cb7ccddf5687e4b9e5b23558871a452a29ac6095a0184a06c47b9b18eb6","src/backend/linux_raw/mm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/mm/syscalls.rs":"ac77ee94bb26bc959d3b077ef60e72863ef845c1438646b61755bdb861467bc6","src/backend/linux_raw/mm/types.rs":"46abdd2492301b7fe542ea3949eef2cfe28959cdd1f571ee1350e35b6517349b","src/backend/linux_raw/mod.rs":"bb26fe4783f834a4624c99ecf9e4ea8fa4d1c7fe9adfb6d7310fac689e7797bc","src/backend/linux_raw/mount/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/mount/syscalls.rs":"3947261b5d46b9737f02dc5352c3a3a35c63c461fd75bcd8ae6619dfc0bfb54d","src/backend/linux_raw/mount/types.rs":"af364e3f054b0fa55562827944235055beb752716347645cd1775d1a4d5615c1","src/backend/linux_raw/net/addr.rs":"fbb6c071a8ebc2c557c7013d36d4b540c1ff6ed63103d0a8abcacd8977fbf5c8","src/backend/linux_raw/net/mod.rs":"904b2ccd4228ebcda25db0223b92fb03e4042bcc7b0a202f19410a8a5ff517a5","src/backend/linux_raw/net/msghdr.rs":"a88e8395dd5a25c103dc2172d4e7013e5104a6d70091ad78efd286ebc8284acf","src/backend/linux_raw/net/read_sockaddr.rs":"4ab5d470f03f19a928327603e1d55de8b9e21cbe4bfc6ed65d856803092b1c90","src/backend/linux_raw/net/send_recv.rs":"6d5d2aec61a3c1b4a5fef1a8a487dc8e163da8988d1237541ed008baa01128cc","src/backend/linux_raw/net/sockopt.rs":"2ea8625ecd68a799c14ed48dec2f3e01f085222b6cc36f4916b20143e08ae575","src/backend/linux_raw/net/syscalls.rs":"b231754af1c94f61d206839b45f51516e0210761bbbcc1ef68c1fe6fc8a1bbbb","src/backend/linux_raw/net/write_sockaddr.rs":"a9374256cb47b3f4d5fec308986a109ce51a521abab31590df1f66c04c07d437","src/backend/linux_raw/param/auxv.rs":"c6a74c0b41aa28c850a80aad7cbad677df65c1f3eb78415872f6f3d1166716f4","src/backend/linux_raw/param/init.rs":"a5024f9afe361884f22fb4d65e632ccd8a60f1138ff6bd526df600d40e0d9b7e","src/backend/linux_raw/param/libc_auxv.rs":"167621c0b1bfd06c91c1201e9404d6624aa0a702ade17c6e37d9370c636be589","src/backend/linux_raw/param/mod.rs":"2e6a1a1c00351b9c88bd615aa923f71d76208df5626dd9bea03067f28f81dc31","src/backend/linux_raw/pid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/pid/syscalls.rs":"eef6aa01830ddd510b83f507da2002c03e58318b73744be2c06ebbe33c4f194f","src/backend/linux_raw/pipe/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/pipe/syscalls.rs":"366c730fc3e991bddb9f5a15b8c3917a8e6ace6d1d5a9113b2749e476faf6f83","src/backend/linux_raw/pipe/types.rs":"caee78eaf13af02e5c4024c7459f23287dfd2c544ebab1dc5f728106fafe24da","src/backend/linux_raw/prctl/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/prctl/syscalls.rs":"a18b224307e0d27bda9b7b85c75cd6c7ddfe39f5ce52efb7bb0bf0585b757343","src/backend/linux_raw/process/cpu_set.rs":"dfdcbdf35aff6a3e08e7d38193bf18c12ca8aa64eb0dc417667be82dcc0f7c55","src/backend/linux_raw/process/mod.rs":"fb393c70a9c63ef9a6bf1fb5a2dc94f07d6b0b6987cc5231c15c607015dafd68","src/backend/linux_raw/process/syscalls.rs":"a2e446ba4e09727d11fc3b3d4bb316a659399aad186c08aa5bba80e62741265a","src/backend/linux_raw/process/types.rs":"6811ba822bc12a1a6336649151b4adb1f5d3365684a31c07f01953ea9547743d","src/backend/linux_raw/process/wait.rs":"921aee4b0048746087f52615a98edc2aa0fb4b53d6df44be4533098df55d1b05","src/backend/linux_raw/pty/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/pty/syscalls.rs":"ae09c4aecc0ae87b1ca58d82efc58007b9dddaae78460d615f48da19d1cd0f89","src/backend/linux_raw/rand/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/rand/syscalls.rs":"a84f70251672e92f253838bf05e989434f67373233e88d21d8835cbb792b1fe3","src/backend/linux_raw/rand/types.rs":"a21dbb1ab31eed6b59a57520be5a3c603c36d18ea74e67f7527f40835ba209a3","src/backend/linux_raw/reg.rs":"def5f88730bd625b2298c86559b5a378fce4bf6ce225204740ba087e034abce6","src/backend/linux_raw/runtime/mod.rs":"b2cae8cce3822c3c92942f06ea0b68464040dcac33c6f0f7ee392c6269993347","src/backend/linux_raw/runtime/syscalls.rs":"90849c8e429f215c225d430e7f550b5da0bb96054ef01745d3184f6c890ba8cf","src/backend/linux_raw/runtime/tls.rs":"6316060560a112c2e9cd9807cdba6e8c91414113a04a739160929ae9a67bba1f","src/backend/linux_raw/shm/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/shm/syscalls.rs":"3ebf91610b02de0312e1f0f0cc5d56e12b4d93794540087b3182cbdf3cb9c8db","src/backend/linux_raw/shm/types.rs":"b831b474aba7eb97167c9289f5257776a72b39134b44e67a0ecfcef2394dcd47","src/backend/linux_raw/system/mod.rs":"8aa966faf3853d1a93d0ed91f7e5f4a53539b0287b25a5bfe489fa1d07f7cfd7","src/backend/linux_raw/system/syscalls.rs":"2af6c2672a6528b404b52f501d9803a63e9f47886d3b5d2d2dc5a71cefa7327a","src/backend/linux_raw/system/types.rs":"1ceab8d738a71043473b26e97fa3fd79d588a86d4774cbc9b9e1d4f1447a016e","src/backend/linux_raw/termios/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/termios/syscalls.rs":"151f03b938aec36a38fbf4e4b507ddc84d0999a246ee48abd5893464daa736a8","src/backend/linux_raw/thread/futex.rs":"0aa0f9f5be6a79de81e82c9f11f1bf8831f682a4b2f6cb29669e1591636f084e","src/backend/linux_raw/thread/mod.rs":"6ad4a4b90b9234e79900b27ebbe8837e3a7a36aec532912e3e253edce5225067","src/backend/linux_raw/thread/syscalls.rs":"0e3dca63be7322e1e9c58456b28eb8548abb9f08b4436b87b139e891c01c446d","src/backend/linux_raw/time/mod.rs":"672724f55b7b7be6a7452bb1cc2d28b5f0aaa840a2856fe363acce624e1beefc","src/backend/linux_raw/time/syscalls.rs":"451da0bbb66accdf58ee7f2f8746a93b22ee985907a08717a3d3b1650457d878","src/backend/linux_raw/time/types.rs":"028d2993df8fffe5581f7082b8849381bb21928930dc93e4a536a9c7a316c71d","src/backend/linux_raw/ugid/mod.rs":"2c6478857a0751625edabd61acb841819bfba1093b1faeded15693c805d84952","src/backend/linux_raw/ugid/syscalls.rs":"8c86d251db33b399a1d1cbb8e87afe650b78db84f444d3251309b7a0480b54f7","src/backend/linux_raw/vdso.rs":"056314f72c71d4b041739337ca2098afb7fe070f844327f462c293f43481b75b","src/backend/linux_raw/vdso_wrappers.rs":"3bec7ee7daacc93b26c15e829e3ecdea62f9fc62244841ec80ee47a55806a69e","src/bitcast.rs":"e21c87c292c781b27256c6f5dcf9fd52dd69ed6e21016cbd67ac31a8219ebf8e","src/check_types.rs":"e52f710e1cfc12ca13a495f2b43c227b293ff295e1ce3ab332935b28a7579872","src/clockid.rs":"e41172c87401ef7b8ad37ec09b5b690c55c51b37009414a2089b34dcac9d93a9","src/cstr.rs":"41af2a4429fe6c67a8883f8a8f63d66c90df566abda74fd2b03bcef7b9f24218","src/event/eventfd.rs":"81cbd08f7bdf40a6ce1ca692b63da1dc8ba925282990668d9d68f1203e839fa1","src/event/kqueue.rs":"222842df22e66f41d93dacd3cba933810d9313d5ca9959fddabedda9c4312bf2","src/event/mod.rs":"326a7ddfeb33bb95dd31391d65f400fa622e5d0ab827c096cab16af4b6843b51","src/event/poll.rs":"0ee583dbd457a573a82a06c04a2a24bd2c76e751d27a435507d55338e2871327","src/event/port.rs":"4e51ff150e5d17cbd44aa64a38b99c15e26eaaf2e350768b5dcacdfde4fa5212","src/ffi.rs":"c2b8b38c02d72749aceb715c496726caba1f1fa989ad3856d0103a2fafed89ed","src/fs/abs.rs":"10e1a148a5b05476efbb591dcc969c1a6caf3d2d9592741eef22341a97c8f4a3","src/fs/at.rs":"a12f382f7b544ae4bbb7a967de43178dad796e05fd6eb8136e1a34236b48f9dc","src/fs/constants.rs":"23923e0fce3221bdac371fe2d05028f30a87dba4f9b4a573b69dc2d6d39320b2","src/fs/copy_file_range.rs":"d3b644374390d482b2ff749a2459458872b57d0dcf9670368739b7833509a7c2","src/fs/cwd.rs":"9f429a79ace6e17455634da09216ee0ad3d067a4541518b3193ae6a8d9ff1e26","src/fs/dir.rs":"347a52f4ca9ac6321c52e802e97ec90d1b4c62ec955c8996fc17f8f5aed69966","src/fs/fadvise.rs":"1220e2cf5cf58fc7cc950d48738050a052c504f745ca67130daa6410e248230a","src/fs/fcntl.rs":"1d1ee1e0bc962779e1cc1b8b76f39c820746240557daa9e14b47b1799120dc39","src/fs/fcntl_apple.rs":"e2f23f038083621bcdecc98d02ce1023508afaecdb2ed0fba5c8b70f955301e5","src/fs/fcopyfile.rs":"ce565f61e1fbf2e31086077c2f1d01b6bb3b048915edda87fe9a4a4f5e8ff7e4","src/fs/fd.rs":"fe53f211e91352d522ac4f3b553a9366506458e2158295a93c5e746618f7a5fe","src/fs/getpath.rs":"28f6970fc1bbc37bb35c84724b59eac436ea7407a4522e18c2bdacb1fdd2edd9","src/fs/id.rs":"1b5c8a8baf9a9bb1f895f97189cea4e5982a0d35b192afeec6340a6c6222e0cb","src/fs/ioctl.rs":"18b44e1708c7160c3bb7efaf27eefb6d11671f91d5008144fc74695d75a226c6","src/fs/makedev.rs":"85520b484cb7c15ab71ea1c368578ea3b7e484d82f8510db92b6ce9f7ca341ae","src/fs/memfd_create.rs":"00df492a3afdfc65a07d6849422596bf6cd4608a653d5d25ba54d6640eacda11","src/fs/mod.rs":"2192ea7f6f81a18d892d3526df00c43d83669f1a1734957ba94cf8269980792e","src/fs/mount.rs":"8f6ea2b997dd83c50c90291b9ada3ed77a9ce1ad701c9b0d533b5113b317be5b","src/fs/openat2.rs":"4a95c15dab533a41201b5fa25c8a212956b7571d58cad696bdaf45af8aef96db","src/fs/raw_dir.rs":"18ad797876d6230c38d4cacbed081c4028e03ace477d0520d9b226b40de942f0","src/fs/seek_from.rs":"a9efa0feb9ac789cf47667e91efee2e3f2dcde16cb3b7a928c99da640fa0e0d6","src/fs/sendfile.rs":"e3b2058741cf4b1698f34d84bb37130cf2b72806d522a16fe541e832cde136cb","src/fs/statx.rs":"f925be3d9a179a903549b3ac18038d004f4f2021e46dad4aa2757907aebefeca","src/fs/sync.rs":"a3b23543834281f347b0f873bd38154d31d404871188ac08f2b20b9196234cfd","src/fs/xattr.rs":"5e222adb52caf69d949ab3f944fb2a482dd6ca3a47200532ca6e72d44cbe8334","src/io/close.rs":"0aa3cd05a8fed8e5244f97b8b6c2e7f65ed93a4e5435c6329852bb3da7514440","src/io/dup.rs":"bbebf4633120e21c7c49ecb93576cffa7e908f8089deb260f8d97426b469a0d4","src/io/errno.rs":"58a4d20ba0924e4d514e3c876fbe08982f1623187642ae14780815e65989c8c8","src/io/fcntl.rs":"5b7696e40757615940745ecc7f33d84678d24f55eba978a8efdd0805cba7b1c1","src/io/ioctl.rs":"3dffbda413fd380f1580e2e75c531a5f4a0487417ea1c235c23fe46b70e46bd9","src/io/is_read_write.rs":"1bfb9ee5d58e0b29b44af12fe2668c7bccc841358698dcde47f1519ff9bb73b4","src/io/mod.rs":"75f1d0646be1d4c7c08b5887d8119b0103be8c25c43ccd4e0e97015508c0bb8f","src/io/read_write.rs":"77b8058769dc0bf5a88d73acd7ce70af1a89c549b00b790e281dc20364bcb6af","src/io_uring.rs":"4e641c9aaeba14890e4a354ad8b1fda8fe617923b4d3d685da22721d66a14bdf","src/ioctl/bsd.rs":"e33772530b1b2d1e7d61ce53d9267e68d88f7f5df13301f90412d89a46c6faaa","src/ioctl/linux.rs":"96df90bbc926783f387e8fe1656841d4c7a857fd4e9f41f95492f7dcece33074","src/ioctl/mod.rs":"d2233ba2a81738828d28d4297f8dafaf254c475174de48bd0fe3891d29a71bfe","src/ioctl/patterns.rs":"af24c47597e619a8e0fd3ca071f21db1963a629b511d9279ef9d36a8030a6fe8","src/lib.rs":"ee2b60b7b29c9f4e0f474534a76961c2ce5c9f3640eea67fa395e633b64efa6e","src/maybe_polyfill/no_std/io/mod.rs":"77889bb5c5a4f2e50e38379cdaa5d0fef4b0cafc3da056735df01f6deae75747","src/maybe_polyfill/no_std/mod.rs":"ec94a4aab4bc475785e469d10fd6bc95667e1d47d958e9cff3a19049d88c8c80","src/maybe_polyfill/no_std/net/ip_addr.rs":"046327ee244f758f2bc31d3be305d8cd0dfd8342aac1add8259e999b4b46c4a7","src/maybe_polyfill/no_std/net/mod.rs":"486555be5c56cf3e049e65a1ea73aa60839c6f6ca667833e88ee4f360f9606dd","src/maybe_polyfill/no_std/net/socket_addr.rs":"bfeb32d32c176cde76323abcffebfc47e9898fb8d7ce3668c602dc8451086a2d","src/maybe_polyfill/no_std/os/fd/mod.rs":"27ef0afbcb0695cbb15101070f417eb51e0ef85ae66ec967d95e80771d507c47","src/maybe_polyfill/no_std/os/fd/owned.rs":"ab86ffa2693a04f3085770faf395f95e5303001711be8b19c44a47a0ac574091","src/maybe_polyfill/no_std/os/fd/raw.rs":"f3648c7bd4a6ff94bd823ed9e0d99d398e02f24875cf9b25962736999e7c6943","src/maybe_polyfill/no_std/os/mod.rs":"27dab639a765827644005d5f2fcc7c825310606b889cc8dd83f54c9528350dc0","src/maybe_polyfill/no_std/os/windows/io/mod.rs":"5bbcc05c83fee5026dd744a994e0458469466d5be39081baa62df07753b92fd2","src/maybe_polyfill/no_std/os/windows/io/raw.rs":"4c32609a489dd938a49328b5637cb3bafb96437f2f9f269ab66d7d3cb90247f6","src/maybe_polyfill/no_std/os/windows/io/socket.rs":"c658f42f24eff44a661f2adfd24a11af80fe9897f3e2af4dc5d2c64808308d65","src/maybe_polyfill/no_std/os/windows/mod.rs":"fdb416f8f231a4e778b5f985b9ae712ece5e1a1402963ad1a5f6a8b9843795f4","src/maybe_polyfill/std/mod.rs":"7c16c86cc73e226e65ead598e4018238b22000a345040b706bf1e1b3eba115fc","src/mm/madvise.rs":"69481cd3354dbffe6cd93b234448e59de6d0fe6440bcf8b12f951f37745bc1dc","src/mm/mmap.rs":"8cd1a8278e138d0805726474bb3016fdaa09a8074bbc8f20d1e842e7fc17efa3","src/mm/mod.rs":"b3a6cb838986d45825b912355cedead761211a494ca6f89b2367a2d2157e340e","src/mm/msync.rs":"a9092be024ecbfa9c14edb935404513498b0da2ac6c99fc31fe4e58196a95f02","src/mm/userfaultfd.rs":"8073443bd181ff0b3ba4d0b1ae67370b4864035a0c8b4898cd709dc47c518ae7","src/mount/fsopen.rs":"160e384e9175fd98669cda1cf3590bb195c2ba7e1c724e9ea06e692595e58ba1","src/mount/mod.rs":"5f0c9df4727592695deb1cd63ae1de021b03dcd9d0d1b68e1f34d12a7136cb19","src/mount/mount_unmount.rs":"8ad11675e5d762d33fbefbed06a6a9f9e52a9b689bd06662446152614321ab77","src/mount/types.rs":"601ae3e10b7dc496fed7f3b40a80e81c6edd7bf13189d7be45c3212d4c684c39","src/net/mod.rs":"a6bc55f9e086caf46a7c00783498d73a328a66f2a991f1ec65d5f13931377b0f","src/net/send_recv/mod.rs":"7b77a70c0ad2601b5da30e8b202e34c6bfc9e10df4ce2b1a35b111522ae123a3","src/net/send_recv/msg.rs":"f100a88648b9eba88272aca77d76351432636022a1d4b0e9485e002a3489d05a","src/net/socket.rs":"1296706d964d110be7cd46b61a0a06dabf382a2377907ba41badfe94807cb50f","src/net/socket_addr_any.rs":"a9af81e967a91b45e51aec4f46a068fade7035c5d19dfaf05bfdcd3b3c32e9bf","src/net/socketpair.rs":"56f4885c31d2664cd16e18a9a88792a4912fedd953cec36dba67e8581fd57921","src/net/sockopt.rs":"4f00ff76d3cd3fd2e915f51eba59827fb60885d6b0c6d37b32ca4306cb8fe836","src/net/types.rs":"35878a8ff12cd7252ed735cb640bad03e4e13c6016769c2d154c0fab08505248","src/net/wsa.rs":"6e546b42f50a851fc833c57cda76cfb347203ed4b0dea574a3d325bf5a2ebf80","src/param/auxv.rs":"8602af47a39bb340d319807bdecdb9be8b467101a9ed96061277b90234801913","src/param/init.rs":"a31c0e5cea61a1a999767fe74f87c0d59eeb6bce66578b842fe0e0c32be27a55","src/param/mod.rs":"25b10acd5b1da8faa6f5204e6b0379b38bfab667916e886cca64bea01a42dec2","src/path/arg.rs":"d87117157ec21f61a5e50b2779b4284fd13dd7db11b20a6bc9e475d0e4a25357","src/path/dec_int.rs":"8ff8e14442c46f8e7a9b80d73973619b4271549b9defd538479bf8c2d93aa72e","src/path/mod.rs":"6b1b949c94bcc47e0f08a3f8e8db5b61ff497d0dfd3e0655f51c01d3e4b7dfd6","src/pid.rs":"f1c486000c5b1311b2d720cee88f089c17ef9a171709673dd06e6f35f4ff98a3","src/pipe.rs":"cec0a831237ab2652556b149767d1b382e9739a1bb21ea401a35b36df7f7a3e7","src/prctl.rs":"19aa584895874ea48b9bbe1bf695b81257b0281df64dfdd91e1b4bfa298661b7","src/process/chdir.rs":"911216459aa429fe9f125f1357d6900b43b0007835b85c719875d00f79a74664","src/process/chroot.rs":"2b5f6124eb19f26ad2705174f7ad50cdc0a5d15abd59ffcf55421228d82130b4","src/process/exit.rs":"48de66e5504a00cb375d8f415ce63b6225a3f5204268d40726a7d0fbba43f587","src/process/id.rs":"e4733f9e8e4b5f50e98ef7a23802e126f1f14ece8b3d7ae7446c6a66affc6bc1","src/process/ioctl.rs":"23ad0285671e8d7ca71a63c50655dbf732ccea8af11d754a0558e0236db37e76","src/process/kill.rs":"96d5ce432c19cf2b600d5248c681c117abf53ae94bbfca7e75ac533a40e3968e","src/process/membarrier.rs":"1c4c39b359d1d0e9bbe16352eedfca9278d9ef298ade8ec00e998617bbcbfed8","src/process/mod.rs":"70e7fc79e4edf3ffd56c20643707cafdc595330db68e4ff8f75dcb3756ad5b1d","src/process/pidfd.rs":"39de2dc7919eeeb53a5980622616140327671cd7e36bcf597aee1749df3a5b5b","src/process/pidfd_getfd.rs":"1faace75bdbcda57a296806dcfa5487811f8d11dad9e6199c98df72feae66724","src/process/prctl.rs":"0130d05362a17a9282f3391189095e1f4f51fb56d7a5205906a0011842df4576","src/process/priority.rs":"f135482e71ea8aa0daf92b9f238051178a4c904070fa8409622f94155df3c544","src/process/procctl.rs":"430ec397782772d5a028903c2813d3e11f7e577af144b9effd9c42629ac8d3d2","src/process/rlimit.rs":"10b79de3ced0e64059a94c879742d46a35a6176c776d8eed75031d5e6340283d","src/process/sched.rs":"b49ef463f44b5e90a04e9a08569d0ae20eecb8667f38f31c786df1eb099db466","src/process/sched_yield.rs":"6565faa3928b66ddc74a65e893e15edfa4b9be4f7e5f5f68527501a7f6bc3350","src/process/umask.rs":"1a0f31a842303c978e3f05ec191e2b5e96104c09c6596473b42b1fac34898a50","src/process/wait.rs":"612920489b5618bf82a9a615947e0acbed6eb310acbb9bb70e934d457dd1dd49","src/procfs.rs":"63b286dd3302be7f426841eb3b9261ef4785c3159ed78c24734bd5094c9b0b2e","src/pty.rs":"652c412e7280d0344b3f9bfe376c106a7f1b42b898b7af344e6e72da268e2bf0","src/rand/getrandom.rs":"1c8166a02a74f5593bb4673ef907524df04cbc1568020a5ab2ff7f4aa1283f8b","src/rand/mod.rs":"cab59332aadd9b679f5b22cbb222d48ee028af5eb9fd4a4d43922da659b895d7","src/runtime.rs":"695e60b9cc22755ce0e653fd63a0c73024a14eb8f576c6071dad6806c32f5552","src/shm.rs":"b96fe8a05ee5d4536464a8843a776d43a938abaf22c772fc35b5373d95644a8d","src/signal.rs":"a294b49d487dafaa42e534f8b1d93e87bec135087676b2ba2ef865cf2fccdaf2","src/static_assertions.rs":"504cf66f0d5b8e335be02f9ae8b0a355abc98c2c82eec0098bdf0988e662e260","src/stdio.rs":"a5de2d7d9c3c5a901f88b6acf4754687c958a2f3a93c7945c2b8fcb948d468af","src/system.rs":"4d7d1eff18094ec85a8ead70a7ccbe8ef78fd7f5705b7dfe3fa52541e9494887","src/termios/ioctl.rs":"a1ac967f7811a482f8bb53847c37c8359f518cd26da9df7b816ba678a0139623","src/termios/mod.rs":"b44b7caa60b6f458657ed58a0e0eca41bb4e6d6be4b0f042bbb8ab7056cebe4b","src/termios/tc.rs":"e41312d15464b83b2457c2502fc3f3b9998cfb02ba68739026dd4285cc7130ac","src/termios/tty.rs":"35a5fc2d26501e0e6dde1a755eeccf7b4f3b4702c5bac30e0953220808ef7034","src/termios/types.rs":"38167a38fb83e84f2845f86b373ecaaa3ebf6c2f91dccd07c10539201d6f5070","src/thread/clock.rs":"f49eb7271eb3e6831d9b0c3a01bfddbe4bd69dee237bbaa059884de452b29e79","src/thread/futex.rs":"985f9a0dce1e2a4892ae7f26bd1bf119ceae3f9fa6b4707e166624fc1cee76d4","src/thread/id.rs":"ad72db4fea9fccb728310bbfd01ef8c00f6cc60fa2a750f6349646a134f7009b","src/thread/libcap.rs":"4c51b7df566d38dd0f85f81ef53279a745a39f0f4e1154791fd38438e2ca7db1","src/thread/mod.rs":"98634ece0b882f123ad887017692f2a4d94a23a1dec278ed660b3497cac5cceb","src/thread/prctl.rs":"6caec7eb4fe122e80ba1ecafc56b710c79ab8b3c97529d5beba74d87af356875","src/thread/setns.rs":"ea9142b1f3a5b3f329683be185f960c50e5c1636149e91fbf59e88a897fc607d","src/time/clock.rs":"e59a29f1bed8c31c3d5b6fad60f2d4fa6cab8dd8e86148bb3693a5e3a1ce735f","src/time/mod.rs":"43afee938c80d124d04d4ba190c03f4d21d1e3bfc154fff309211e4f6eabe940","src/time/timerfd.rs":"f17092b84553741aa2d2b44c6992b5d2c8c96cc2c2007fc9a2c6b2064485e53f","src/timespec.rs":"32a4d930cbc0f6dbd23153290db920671cf4ce65a4a127e176f897c1cde42d7d","src/ugid.rs":"6616c6e35b7e43aee5b150f1efae7a50711e0947943c9a96833dbe214ad9e85f","src/utils.rs":"9ae76f8a41d6cc350cdd58c9084b5c3a5a708eeecd769783debdbcbaef442182","src/weak.rs":"c7cf03bf2aeba494b1999ab32183fa8c603ab72e254c0e312a67f168877e410d"},"package":"2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3"} +--- a/vendor/rustix/src/fs/ioctl.rs ++++ b/vendor/rustix/src/fs/ioctl.rs +@@ -77,7 +77,7 @@ unsafe impl ioctl::Ioctl for Ficlone<'_> + type Output = (); + + const IS_MUTATING: bool = false; +- const OPCODE: ioctl::Opcode = ioctl::Opcode::old(c::FICLONE as ioctl::RawOpcode); ++ const OPCODE: ioctl::Opcode = ioctl::Opcode::old(linux_raw_sys::ioctl::FICLONE as ioctl::RawOpcode); + + fn as_ptr(&mut self) -> *mut c::c_void { + self.0.as_raw_fd() as *mut c::c_void diff --git a/meta-balena-rust/recipes-devtools/rust/files/target-build-value.patch b/meta-balena-rust/recipes-devtools/rust/files/target-build-value.patch new file mode 100644 index 0000000000..cf59afba5a --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/files/target-build-value.patch @@ -0,0 +1,26 @@ +Add correct build value for cross-compiled targets on stage1 when +bootstapping rustc. + +Upstream-Status: Backport [https://github.com/rust-lang/rust/pull/119619/commits/b888e2f82b9dbe81875f50d13adbc0271a9401ff] + +Signed-off-by: onur-ozkan +Signed-off-by: Yash Shinde +--- +diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs +--- a/src/bootstrap/src/core/build_steps/test.rs ++++ b/src/bootstrap/src/core/build_steps/test.rs +@@ -1489,8 +1489,12 @@ + // NOTE: Only stage 1 is special cased because we need the rustc_private artifacts to match the + // running compiler in stage 2 when plugins run. + let stage_id = if suite == "ui-fulldeps" && compiler.stage == 1 { +- compiler = builder.compiler(compiler.stage - 1, target); +- format!("stage{}-{}", compiler.stage + 1, target) ++ // At stage 0 (stage - 1) we are using the beta compiler. Using `self.target` can lead finding ++ // an incorrect compiler path on cross-targets, as the stage 0 beta compiler is always equal ++ // to `build.build` in the configuration. ++ let build = builder.build.build; ++ compiler = builder.compiler(compiler.stage - 1, build); ++ format!("stage{}-{}", compiler.stage + 1, build) + } else { + format!("stage{}-{}", compiler.stage, target) + }; diff --git a/meta-balena-rust/recipes-devtools/rust/files/target-rust-ccld.c b/meta-balena-rust/recipes-devtools/rust/files/target-rust-ccld.c new file mode 100644 index 0000000000..d3d491fb60 --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/files/target-rust-ccld.c @@ -0,0 +1,19 @@ +/* +* +* Copyright (C) 2022 Wind River Systems +* +* SPDX-License-Identifier: MIT +* +*/ + +#include +#include +#include + +int main (int argc, char *argv[]) +{ + unsetenv("LD_LIBRARY_PATH"); + execvp("target-rust-ccld-wrapper", argv); + + return 0; +} diff --git a/meta-balena-rust/recipes-devtools/rust/files/zlib-off64_t.patch b/meta-balena-rust/recipes-devtools/rust/files/zlib-off64_t.patch new file mode 100644 index 0000000000..6c74da2435 --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/files/zlib-off64_t.patch @@ -0,0 +1,36 @@ +Do not undefine _FILE_OFFSET_BITS when +_LARGEFILE64_SOURCE is defined. This ends up +causing 64bit time_t to fail the build because +it needs 64 bit off_t + +Upstream-Status: Submitted [https://github.com/madler/zlib/pull/764] +Signed-off-by: Khem Raj +Index: rustc-1.72.0-src/vendor/libz-sys/src/zlib/gzguts.h +=================================================================== +--- rustc-1.72.0-src.orig/vendor/libz-sys/src/zlib/gzguts.h ++++ rustc-1.72.0-src/vendor/libz-sys/src/zlib/gzguts.h +@@ -3,15 +3,6 @@ + * For conditions of distribution and use, see copyright notice in zlib.h + */ + +-#ifdef _LARGEFILE64_SOURCE +-# ifndef _LARGEFILE_SOURCE +-# define _LARGEFILE_SOURCE 1 +-# endif +-# ifdef _FILE_OFFSET_BITS +-# undef _FILE_OFFSET_BITS +-# endif +-#endif +- + #ifdef HAVE_HIDDEN + # define ZLIB_INTERNAL __attribute__((visibility ("hidden"))) + #else +Index: rustc-1.72.0-src/vendor/libz-sys/.cargo-checksum.json +=================================================================== +--- rustc-1.72.0-src.orig/vendor/libz-sys/.cargo-checksum.json ++++ rustc-1.72.0-src/vendor/libz-sys/.cargo-checksum.json +@@ -1 +1 @@ +-{"files":{"Cargo.toml":"5fc1259b26541f617473d6b741816705c91322db9740e347a8686e3c0b30ab2e","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"34c467b6945a22696d060b8fdd2379d464acb3408d4c599d3dc5fe4fa1b4c84f","README-zng.md":"2f9f34e6b388a401b8d8318b64997a7521e4198c5c314f8cea11433623628515","README.md":"75701bfcd7158e924f51ece8debb6d4425ccd6ad5d2806004b5f174423f4b2af","build.rs":"b383e60f71c9b40ecc807ac58473f9b85d7036e8359796634cba2701224493a3","build_zng.rs":"b7768e19f0bf876f29eabb6ad6511f530e61d8aa92bfbe89a7cf3818e4824ce7","src/lib.rs":"7c4a3394e17e6250c1f4f2067efecc56b1850827596432ad0ce75e5eea800446","src/smoke.c":"10607c81b73811bfcb9718767312bf97ba2ccf7048ea2f18a2085aa06ad7f91b","src/zlib-ng/CMakeLists.txt":"5840d2c44e335af0f58f8a2545da60be403946b1181641b35ea7425b2e0f44db","src/zlib-ng/FAQ.zlib":"c524f4f86d336b3de71dd6977afddffa9c02fda5c26db4dfefae44959e7614a2","src/zlib-ng/INDEX.md":"989545e90d8e9ac149034f762ce78ed8976ebf9324326228dea37ca190154609","src/zlib-ng/LICENSE.md":"d3c80be055d94d798eaa786116e84fa0b010bc11420b5d2060d978ea77845436","src/zlib-ng/Makefile.in":"1f56adbf5fac7fa36c6e4c11b5f061acb971984c941154cbf0344e2b68b99e7d","src/zlib-ng/PORTING.md":"4105267b5e00f8d608f31dcf4fe2cfede15cc94568211691419e6cba3d8e539e","src/zlib-ng/README.md":"ba04244ad8eea94d834d25aa75b40e7f849844a33c68ed180c2a631378e1f211","src/zlib-ng/adler32.c":"82ffa1b4fc4b198ba8004135f79b8819d9f2b28e851c30c0ab41e6d32dfbf70d","src/zlib-ng/adler32_p.h":"f56915c59a345baf4558374447385a317e29365a4db2fbb38af4de3e1a1a0201","src/zlib-ng/arch/arm/Makefile.in":"95464884ba75a7b12c9ceda5845d8d68d5a7d7dac8a8dc24b27beb2192e5b97b","src/zlib-ng/arch/arm/adler32_neon.c":"3990b8d5570b12c2162218fe0e9bc723a03f1c89b5ed3ba70a74a98976260ee7","src/zlib-ng/arch/arm/arm.h":"855adbb02d7b9a5714a17d9dcff493610e7cd2b9a1f4e58e1c99626ab536e868","src/zlib-ng/arch/arm/armfeature.c":"4800228414695b632b9ceca14409e782d6fc3b357ba7ab00858925fc66b5532e","src/zlib-ng/arch/arm/chunkset_neon.c":"95fc7917d1d30094e15a35c56d1e9c189c5ca3758553a3467d4da793eaed656f","src/zlib-ng/arch/arm/crc32_acle.c":"e2be53267a2a59fc79c4b3bab00e8b25bf64a8fc8bf2c6684e5b1b1fd1480f9d","src/zlib-ng/arch/arm/ctzl.h":"feb70d55e66025fff806e30e48002b35cfff79533d352585cfa5f118edbc90b1","src/zlib-ng/arch/arm/insert_string_acle.c":"d1b1dae5aeada70f2b03c2cbf3112ce55a92401c2d87709081b04dcf5992e1ad","src/zlib-ng/arch/arm/slide_neon.c":"19d8cf5c742ac6b82164c7a183538ad1129f9f17e9b8bce8b40daac3820fb6c4","src/zlib-ng/arch/generic/Makefile.in":"f41a34839986eac8dd52cf91fada0efff4171c059ab5d7db6347c91bd6d9db09","src/zlib-ng/arch/power/Makefile.in":"69644d1a0ff8e7f38005c0a55cdbaf3f0d87f42abf8fc4f4136271c4fedfb846","src/zlib-ng/arch/power/adler32_power8.c":"79b75e98ad3a62facbbdd8c0b178d3f993b57f6e34d320bf47eca33aa8c330a1","src/zlib-ng/arch/power/power.c":"0647afb3b3b7ce2a19b4815ec8fdeee0b37c759413e5ef0a668a2dba22d94803","src/zlib-ng/arch/power/power.h":"f3f15f94fed98a2f7dd5d4568c5172e597228be4141d6895062703c3f70024da","src/zlib-ng/arch/power/slide_hash_power8.c":"932ea533d25e2f5478afe0c47830e7ef24276cad0d75fd91f2d8c799bd4b5d36","src/zlib-ng/arch/s390/Makefile.in":"eef6c3169723f089b0b5f852423ec55bf0364caeddd7cda991f2e76bc1682107","src/zlib-ng/arch/s390/README.md":"730b9a0230609988fbd1bdd52a7abdaa1fa5c65253ac78163dd4a5eccb966abc","src/zlib-ng/arch/s390/dfltcc_common.c":"3d460448ad4c5b687da6b7c0ad8498ece92b771dc7ddd0189e096acca5a1cad4","src/zlib-ng/arch/s390/dfltcc_common.h":"de8902d3863c8a7a3f6ea27dec2ee5a4f17ef5d8646e48a586d0b29fe94c9a0b","src/zlib-ng/arch/s390/dfltcc_deflate.c":"d6941d3c5ada225ec39b98b35bce1d203aa1f2d994a47c8487d377d9ef2f6efc","src/zlib-ng/arch/s390/dfltcc_deflate.h":"5c90a812e2a2f2b842dba027e5640791e52206e74b8423cb78e0b8ea12ed29ad","src/zlib-ng/arch/s390/dfltcc_detail.h":"fe66cd700a1d017eba86c2c6e95f53e9a4d1cb491de9cb3963b2a2907098baa9","src/zlib-ng/arch/s390/dfltcc_inflate.c":"83643b5605cdc2d1d7780e1bdeb007f9dc6a1cca633157abbfb5d3232f2b8816","src/zlib-ng/arch/s390/dfltcc_inflate.h":"d7a4a5ae79abd1a5456521926b918becfe86c253a4fc23723fbc09f7c3303128","src/zlib-ng/arch/s390/self-hosted-builder/actions-runner.Dockerfile":"999c962c49508ebf61414e6f9ffea059926ac500d4c6d707ea1f9e77402f7374","src/zlib-ng/arch/s390/self-hosted-builder/actions-runner.service":"33a359eb58d76152f916b40ee1357f7edfda75e8dfb55a5b12ac83bcd6ed7055","src/zlib-ng/arch/s390/self-hosted-builder/fs/usr/bin/actions-runner":"f647e18728ea15fe927ac9f8cba83a5b343654a0e91b5ebe653bae7af7375110","src/zlib-ng/arch/s390/self-hosted-builder/fs/usr/bin/entrypoint":"add4ebdc4f06ed15bb1de12a8c9ceb370a60baebb0932a1026a75433940ad3df","src/zlib-ng/arch/s390/self-hosted-builder/qemu-user-static.service":"54551049f6181da88700a2a944a72b0af3b8abde876fa28e1348deb5eb96c91b","src/zlib-ng/arch/x86/INDEX.md":"c12f9bf0d66743a6472fb756bf46def8eea1dd235be7fca994dcb22f693a3524","src/zlib-ng/arch/x86/Makefile.in":"9f6fe7567a99e81aaa3bef8ccfa1ad40f524efc285cf8dfe0f497a1530f8016c","src/zlib-ng/arch/x86/adler32_avx.c":"99056732c7bd5d53dc108f282811a40bf21570926781af5dc7b17cb9218963de","src/zlib-ng/arch/x86/adler32_ssse3.c":"883a5520b4481225d097c90c5359106a3c8eb7b921499c94276e999b7c39adc5","src/zlib-ng/arch/x86/chunkset_avx.c":"13c83149146c408ffdc9358bcb5355259f6196e6cc6fe025b7ea3647e313cd0a","src/zlib-ng/arch/x86/chunkset_sse.c":"f14d0557634b53af8cd6e2a1ce9d57df50244a72e85ff3b100b5ca287d1cfa8a","src/zlib-ng/arch/x86/compare258_avx.c":"8b2838d168de4608327f25fe52d53763a82413ee911d87947d3fcd72c7f9bf26","src/zlib-ng/arch/x86/compare258_sse.c":"b5049722ffd4a43a96868eeba5e000271cfc5fcbf3c2657026ead15b1df28a10","src/zlib-ng/arch/x86/crc_folding.c":"defb5a7067562612651f693c910db53cf228b7cd7fef11991504767a7d84f224","src/zlib-ng/arch/x86/crc_folding.h":"939212546611917e9e066e8ed30cdda95680ec1f5fe0890cc4865b4e6d7fc215","src/zlib-ng/arch/x86/insert_string_sse.c":"9e84a75b6a565422eb105261b6729d2a02b89133bd14372c949d5381b5deed3e","src/zlib-ng/arch/x86/slide_avx.c":"5e448e439ac24e7cb10eee176ca37f2c63f73c135c0a2af040e232bad490997d","src/zlib-ng/arch/x86/slide_sse.c":"1946cabb634c905fddef0a22b2fad19dfd99110169567c3beceef71145b2e316","src/zlib-ng/arch/x86/x86.c":"1af56e27b2e951e1ad1344e62c2f7a8c49a776fcdd1cb0f4ea9d6152118a479e","src/zlib-ng/arch/x86/x86.h":"4d2d20ea0087089141e250e77bb3d419954b9092810028b151581b9115a5fe8c","src/zlib-ng/chunkset.c":"cbf26582fff56726cc28bee05ff0a1680c50308b8dd9bb8cfb57d7f0a587d0bd","src/zlib-ng/chunkset_tpl.h":"eaaf0804f6162ab26b2b6de263a478ffb111559e653372e96e400acba9c63563","src/zlib-ng/cmake/detect-arch.c":"e0da3d16195eefb54bef77163db737a66453f25ae16648aa8f6beeac70787662","src/zlib-ng/cmake/detect-arch.cmake":"27fa8da497b39ac70d881e2d345749611dae4c30f7b7a9c9e32f2c042672189a","src/zlib-ng/cmake/detect-coverage.cmake":"e4e372991ba80a16ad47df2716708a56013cc628aa7ed01573a2360c60610125","src/zlib-ng/cmake/detect-install-dirs.cmake":"87031a40428a104f5cf38ecdb8a5028d8c679cfa772a58adde8380c809b34eff","src/zlib-ng/cmake/detect-sanitizer.cmake":"a8f7a4515278532b251b567d82ed576fe1ca7e698992ed92d1beb8e8dd22237f","src/zlib-ng/cmake/run-and-compare.cmake":"13d85c12c9d6c7b1b148bd0c5a5b4faa6a4b56f3823bf03c4f8d914c9c5949d8","src/zlib-ng/cmake/run-and-redirect.cmake":"7f08d18c09aa58113882ec760735a62a1723a5bfcae9f73bd3713a4dbaeab898","src/zlib-ng/cmake/test-compress.cmake":"0d2d1595859ccfb6795bb98700a4f7c1652b025cc344a1291524601087957888","src/zlib-ng/cmake/test-tools.cmake":"63aabfffd53970b8e145870b2a1c03bffa3595f7df04bd86f94e97b6f2a387e7","src/zlib-ng/cmake/toolchain-aarch64.cmake":"46be0bf580a49a528c72005484655afad1de3705b39a66a7b0c213b0fa81cee6","src/zlib-ng/cmake/toolchain-arm.cmake":"05e38076fd6ffb9785ff9844ccecd26436c9dc4c25b7777b62e5f52e788c3882","src/zlib-ng/cmake/toolchain-armhf.cmake":"1a2029163a57415eec9a5dd5f45d3254d349e97b1beb5d16876b741717673341","src/zlib-ng/cmake/toolchain-mingw-i686.cmake":"df9000354b820d3713d1469edc9f94cd095389b0cca83965730b8e64857fdf3f","src/zlib-ng/cmake/toolchain-mingw-x86_64.cmake":"ee316e6e3202919da5d497f9e246466fd715fcf079cb5b4afc4774089d1fefad","src/zlib-ng/cmake/toolchain-powerpc.cmake":"9bd6fc58ce5b70603657f2c195c4a5cf52fae96ad63ac787978831c5858f762c","src/zlib-ng/cmake/toolchain-powerpc64.cmake":"917fc5eef84921d8b38f43c2b4f60870965b4eecc8f018c7b3499e1142c715af","src/zlib-ng/cmake/toolchain-powerpc64le.cmake":"5b2edd36d62de513db2d32bfbf779979d81ac527b981cc3379a4e933fc5a94d1","src/zlib-ng/cmake/toolchain-s390x.cmake":"cf52cecea7bd2a9d1ff5fd8edcb03c531e3b404bbcd15a15dec2e0e19936f2ac","src/zlib-ng/cmake/toolchain-sparc64.cmake":"e543062485d06a7e0fec8135887c5e73363517fa4babc23ef7b780916d75afda","src/zlib-ng/compare258.c":"56bfd48d5ff9ca422fbb728df7a373436c73796561dff118c7d4039fe70d29e2","src/zlib-ng/compress.c":"41df6eb62d6fb1334ecfe0a0c3e50a7ee89528719857f2b8297cbc512149759c","src/zlib-ng/configure":"160f69a1e51c49f6454ece92e4c5e08675ca5d90cf22b8f79cbe54c4381d93c2","src/zlib-ng/crc32.c":"98440be8a99381151a2d740f2e2228e8c1b23b9193c3642c52a4e34799506336","src/zlib-ng/crc32_comb.c":"11a36a6088fb520a58e0304fc99cf12fc8437519e8a70fe74dad58f00af696ec","src/zlib-ng/crc32_comb_tbl.h":"d6615d209d6c7d5248c6f7fe4e5dbded13c0eb87997b37693032c2902927407d","src/zlib-ng/crc32_p.h":"1fa91375a18e090c0a0dfda39de3df36346a0b1be36c808be6b6c29c32eba922","src/zlib-ng/crc32_tbl.h":"d629378ba38ff5775095b64e277bcd41c4b89fab9b5647a9fb29e15da0db0161","src/zlib-ng/deflate.c":"6fb8979ee8bc43f6e12a649708c7eb50e60bb9bdc2e55c45ce3b15aefe779179","src/zlib-ng/deflate.h":"7b3c649965c54446097d6157dd31d3685aa7df1082e9aa64cb3cdf6ac2c4d023","src/zlib-ng/deflate_fast.c":"d51e1368fc997673c64b5ab9a620439df25f313f8274529d974c5f80b89702b8","src/zlib-ng/deflate_medium.c":"1c3d95cbac76052d39595ea750c5536541c18302b9abb398c27b58955318bba8","src/zlib-ng/deflate_p.h":"2e739301e8c53038c2a958c8c8693584cd8dae464ffef05a22db6d6fa9985676","src/zlib-ng/deflate_quick.c":"280905a191d2b2a7274f2453ac537e01a0fb6e7540a0b212c1514bfb8c9415ea","src/zlib-ng/deflate_slow.c":"a2c66723e1e71ffd6ff856407459ab311a4c6546ecf50285081fc7afcd0ccd2e","src/zlib-ng/doc/algorithm.txt":"0d21a0a4c47e512743389628d1385a831a5e5ff716491095a382b923287f4223","src/zlib-ng/doc/rfc1950.txt":"8f0475a5c984657bf26277f73df9456c9b97f175084f0c1748f1eb1f0b9b10b9","src/zlib-ng/doc/rfc1951.txt":"5ebf4b5b7fe1c3a0c0ab9aa3ac8c0f3853a7dc484905e76e03b0b0f301350009","src/zlib-ng/doc/rfc1952.txt":"f7c810fd9d719d002d605207a9b880600f71d039b9626c5b4b03f2122438dd2d","src/zlib-ng/doc/txtvsbin.txt":"47c273bb22c9773248d380549a330e5c262266b1292154b0d3014f731cc73f47","src/zlib-ng/fallback_builtins.h":"1d2c2da88009a58f240bac33f562fe5a0a39c1e773813a2d75b45283ff1396cd","src/zlib-ng/functable.c":"d9db6530035a06f95982ff3d7680a84f4b54b8425874ccbe2ab10b906bd5708a","src/zlib-ng/functable.h":"e5a2d0c10411d23f04295bcb9ddb9889388974b723caef65aa5c4ea4739f4aa7","src/zlib-ng/gzguts.h":"7b69b2f35264169bc794d0d5c00247d93c203f751d226302966c33b524ed9fb0","src/zlib-ng/gzlib.c":"7e6ad5d9d32e6429d56a5303e2c6e6870d69c023d6647a52fb95902828de4011","src/zlib-ng/gzread.c":"d5d47d24dc463b978fe828320dab140494803fd86b511300f903c7c2eabd4d25","src/zlib-ng/gzwrite.c":"1685ad2c88239b3434cd2c4a9d66b67842310b2d1dfd01aec0fc293eef20e858","src/zlib-ng/infback.c":"4decaa412219fc8adb935754c54a4dedf3952aaf67107a12512451c65eadee23","src/zlib-ng/inffast.c":"a134d4aa6a46eebe975ca0cd5ef18894fc852b6a840be21ca7243ddbe6c9d8f9","src/zlib-ng/inffast.h":"42e74a92b496ab0726be317e8497a12bf3c3cf3d0d533440ce65befd3929c71c","src/zlib-ng/inffixed_tbl.h":"a94225335396245e9f0ccb2e9b4b334fe7ee0111ed8e32a26bcd52187f364314","src/zlib-ng/inflate.c":"f33e2e7eeaa4b33ba6a2c327f8c9939e6b847afbdad349da65c97bf81c6083b5","src/zlib-ng/inflate.h":"eb25527d1bdedaa45167926dce4c39d9aaa3147b0f4a95f38f5916528c30a09b","src/zlib-ng/inflate_p.h":"4a94c51194da119770cf662ef289994f0c78d95184d54d6ae5d50a393e8f5a62","src/zlib-ng/inftrees.c":"7a777f5ff02ce60fbad6cb843ceadd7b3a8a8a0476ae010c87a0377c2e88f780","src/zlib-ng/inftrees.h":"fa80eb11c2290b345470a03cb861843e2cb1365135233ea8243e9fd79d3618a1","src/zlib-ng/insert_string.c":"aa22ba53a1e75821499809277f9ca0e5ef92b07a618136dd11ae1734e233b7c9","src/zlib-ng/insert_string_tpl.h":"1ceba9903324d10aad6e1d83653c4d534a5b06fd09076414a06215482be00bac","src/zlib-ng/match_tpl.h":"eeab4c6eea8511a7579738e622af062ad16f4016312e93ad34bc5903d8b3c4a1","src/zlib-ng/test/CVE-2002-0059/test.gz":"60bf96b8f433bd7e057ce3496aceaccd70ec80f596a4aa8bcc7786056705ce66","src/zlib-ng/test/CVE-2003-0107.c":"6ed6fba710f8f2b898750f0ec17720fbf01e45c39e8adbba6409681b34914140","src/zlib-ng/test/CVE-2004-0797/test.gz":"38caae524705f676bde13a8df9fc8c7d2fe105ba6bdbab62a405b0276fd3aa2e","src/zlib-ng/test/CVE-2005-1849/test.gz":"e4d5a60617df4b5dd44eda94751ce1eacdb325792bba6e3cc4676719a3adf742","src/zlib-ng/test/CVE-2005-2096/test.gz":"8f702d4861aa3ec98ac03a59ff26b430939630cb5cd4266d2658d3b836d576f9","src/zlib-ng/test/CVE-2018-25032/default.txt":"d7f8278db331c47bd1208bf41e7903cbddee4f7b47c666c40afdd3c96237752e","src/zlib-ng/test/CVE-2018-25032/fixed.txt":"3b27a98edd2f3f580033f9add11d3469d7808c969a1128ee00c18ac7a12cef57","src/zlib-ng/test/GH-361/test.txt":"358497d0a7251ea42101dc77b02337f46fd89af09643a8288e2a3082e5d24128","src/zlib-ng/test/GH-364/test.bin":"af5570f5a1810b7af78caf4bc70a660f0df51e42baf91d4de5b2328de0e83dfc","src/zlib-ng/test/GH-382/defneg3.dat":"b22bef6b7392401c9e7b079402c4a4074053d7a914d050400e37fd7af6fe26d5","src/zlib-ng/test/GH-751/test.txt":"b83d833803b7bc3124fb2a0034081f0b999ad10c33a8dfa3bfd181dc078ae3ee","src/zlib-ng/test/GH-979/pigz-2.6.tar.gz":"2eed7b0d7449d1d70903f2a62cd6005d262eb3a8c9e98687bc8cbb5809db2a7d","src/zlib-ng/test/Makefile.in":"48d033f2dbb62635624bf2c9e3e7fe279b72afc3411d14cb7cfdbf40f5b80e19","src/zlib-ng/test/README.md":"d60ef4851222ebc2a9fbc23f292ab11bc7fee40ba6171ea768b2ffa005df5b1d","src/zlib-ng/test/abi/ignore":"02aa87f77656dbc1fbddd23f436cd15465a92df0722da4055cae1bc8bf013097","src/zlib-ng/test/abi/zlib-v1.2.11-arm-linux-gnueabihf.abi":"f5e91f25b558a891fecbeb6e2e9575698630ab700d055a38f3bc4fe66257f513","src/zlib-ng/test/abi/zlib-v1.2.11-x86_64-linux-gnu.abi":"038337383cf780587d810cf5400d632f3a1f8517e63ac4a71b6e5224db8b1413","src/zlib-ng/test/abicheck.md":"6b4a87d760b3848fb1ded6782e02a1d074d9e487bdabb29274a62b31cdf48772","src/zlib-ng/test/abicheck.sh":"7ca2884ff37c697d380f620554525f9b9dc7fa76b45f866d284b2ea5b98c65cc","src/zlib-ng/test/adler32_test.c":"db3e8ad9a4e2ecce0c052b0bfe19834d3ff2fb2e9239cc3438a2c95db00b1d21","src/zlib-ng/test/crc32_test.c":"8f1223d8aa4c52a5e7323f422023f6b892ce684eaf7439ad905b855293f40143","src/zlib-ng/test/data/fireworks.jpg":"93b986ce7d7e361f0d3840f9d531b5f40fb6ca8c14d6d74364150e255f126512","src/zlib-ng/test/data/lcet10.txt":"1eb5d7bddb1c3cb68064d5b5f7f27814949674b6702564ff7025ced60795a6d9","src/zlib-ng/test/data/paper-100k.pdf":"60f73a051b7ca35bfec44734b2eed7736cb5c0b7f728beb7b97ade6c5e44849b","src/zlib-ng/test/deflate_quick_bi_valid.c":"a36697e5779a645354823f14540bd60b9378c2f4c5f2bb981d86bb34f29fcbb0","src/zlib-ng/test/deflate_quick_block_open.c":"455bd347bb88debdfacb409846170274991ec9ba71c52b8fd0e526daf57265eb","src/zlib-ng/test/example.c":"1c8d9d14128da9fb5415683aa7318ae0aa94b743f75905288a2a9decd4ead98d","src/zlib-ng/test/fuzz/checksum_fuzzer.c":"65a96358c9a82efc4b251b4f322b02fade7b69f9bc6ac07294e641e3fe1ccdb1","src/zlib-ng/test/fuzz/compress_fuzzer.c":"1ab70608075c4bc60f89aa2f327cff88362ee7b1d31da88ed54ca51e5f99e5c9","src/zlib-ng/test/fuzz/example_dict_fuzzer.c":"be68f9eee3deae7f9163c6288742e5455bc28f659f80fdb276fafe215f028b97","src/zlib-ng/test/fuzz/example_flush_fuzzer.c":"f12246a184dcfe0a19a98cdc742a1fe8da388ad20b406635d63f1fa10d45b9ca","src/zlib-ng/test/fuzz/example_large_fuzzer.c":"f490abcd332fb4e7921292adf6876d38d7f71c8d2443212c781ba88957ff9303","src/zlib-ng/test/fuzz/example_small_fuzzer.c":"a9b3436b291ace821b6013311a1100e19a9e1c67fefd3f97dbd60688f9bf22b1","src/zlib-ng/test/fuzz/minigzip_fuzzer.c":"5faecfe9e6ecc47e746151bd1cc24a2e2dba8b7ffeb270d2c88cb126273ab446","src/zlib-ng/test/fuzz/standalone_fuzz_target_runner.c":"f25649ed35b8b7a3899c8d7ff52f9972dfc7bf274889e0a7a77fbfdf1c1cfef0","src/zlib-ng/test/gh1235.c":"8310ef780dc483a1708750cd7c120b8e9cc0e1614767d24c01869e529074e981","src/zlib-ng/test/hash_head_0.c":"448def3e8ea13fbcac86202e50b8a71b6cea585d7bdbca0bc6cf6056e4059f98","src/zlib-ng/test/infcover.c":"9c0e8068fdc614b1852e8d274231b41ce3ce975d4419ed31e700a0b05e702303","src/zlib-ng/test/inflate_adler32.c":"ab430c97ae8f569784710118038e8ebf53f4136d1a957e1277c0904f9218340b","src/zlib-ng/test/minideflate.c":"34fdce39628ffd173f7736d9fb65dfa40d0b0289def64b935075f6c6cffe1999","src/zlib-ng/test/minigzip.c":"7dbce6528601f7fdd586280885ed439cb539e15f36dd3974274729bfcdd41928","src/zlib-ng/test/pigz/CMakeLists.txt":"aa70f1025adc004985bfe0accee9b7a80e04786d82705e27c377a5e8d4ecbaaa","src/zlib-ng/test/pkgcheck.sh":"581b3de9c58e96038af94c73cbdb30eed32900f7abb8fa7692426fa68059b0ef","src/zlib-ng/test/switchlevels.c":"ceb6cc4d48a637562009d8f7f82635fa9942acd1bfd597acd99454a03a3a98e3","src/zlib-ng/test/testCVEinputs.sh":"5de6198444c16726f8e0a8f2beb5b89c5ae7e7e3736ce760b9fbc719493e7e4f","src/zlib-ng/tools/codecov-upload.sh":"ec7a8f1405820810e486e3d7e2fda7eb958c17877b0000b93abdf09d87732a2f","src/zlib-ng/tools/config.sub":"32186cfeb5db62c99e1dfbfb07f24c1a50977447b4c26d2907021c74422a70d2","src/zlib-ng/tools/makecrct.c":"55c8f7b8e29393e95988a29de8cb1a1bdf2738a69d53627bd0f9d7bf169bf0a8","src/zlib-ng/tools/makefixed.c":"bffd02540231304f9bcc755b8cb9ae5cfbc48975857bbb4547f1d6acce21ef57","src/zlib-ng/tools/maketrees.c":"30e9f70addf691d1241e594a7f31fc78b119b65e8af9ac8e20fe6da01635d3b3","src/zlib-ng/trees.c":"2cd9a1dc8d9231e9fc4e53e56b87307989c1b7f33212cde4ee434ef71c28af2a","src/zlib-ng/trees.h":"24174f3543b01ee1ef370bbf6d15551a21871cded18b2aadf09a71e7904b6f99","src/zlib-ng/trees_emit.h":"2e93093ae5362523a26877d6fd663bb05793795889d2bfb987cbada9a9dc4517","src/zlib-ng/trees_tbl.h":"35f4fd0ec080c1ade342e2dd1b0f5cdc7e9f18990faa48d7a8a69bc318ebe607","src/zlib-ng/uncompr.c":"4ebb486b27930f8a6ec4a3cc90a207d0bcf8a4779d1dbf3b2184a2b2a5735cd1","src/zlib-ng/win32/DLL_FAQ.txt":"f17fd3823726adbae63b91c00d5db1dccae2e289258edabbbbebde04bb6e7e8c","src/zlib-ng/win32/Makefile.a64":"775d6902373d1583430b5d7467f001746be323610c89be27e02bbfe0205994f3","src/zlib-ng/win32/Makefile.arm":"7535e022f482920c3fa7a267e84e39ad790d150f72e5c30414baa156c2fdd9b6","src/zlib-ng/win32/Makefile.msc":"d769a00c0ad4cb5fc624d2ae004dfa3785a2f4310324b03afd2156e759003a06","src/zlib-ng/win32/README-WIN32.txt":"cdcca6e7a5d2d23618a48fafb8eea347227f8ecf1f38a6aa90f0e7e455bc6574","src/zlib-ng/win32/zlib-ng.def":"f240276caf805a10d024fc6a66efe915c435734c69732818d92fb04d08ab350c","src/zlib-ng/win32/zlib-ng1.rc":"ea0ea4d116b583510b113a27fdec2ad4f0890206963f0e3838f275b8005dde5d","src/zlib-ng/win32/zlib.def":"d9c371ff2677567350386441a2e3d0258010d6502290bbac5ac42ea168bd5212","src/zlib-ng/win32/zlib1.rc":"ec5021dba35f9fae5f5f82ad6b6bd059928548e0608e4ede0bcffccf5c1210a1","src/zlib-ng/win32/zlibcompat.def":"73728b9df4379dc70ebd9b2a9f20d6e4ed7c031fa1f351cdeae1de7d1db05bd1","src/zlib-ng/zbuild.h":"d4d52d3296cc949a5d694e7349a8236854f2ec116c184a310e4e62b28caf5b63","src/zlib-ng/zconf-ng.h.in":"f206ac69c1fa48c670648d26028263372a539ed1243a9a26e5b35bf52e2363ff","src/zlib-ng/zconf.h.in":"dbf08736c3bc5e41242b09e13d0a523b440250410476dd58747c14e28984f1e5","src/zlib-ng/zendian.h":"f5cfa865281d2c5d0b097d318500f27daeec346e7882de68e279486d79c52e77","src/zlib-ng/zlib-ng.h":"d51896e8411868ed195d5cf41fda4f1c5a9c891832dfd16b559a5ed6beedd890","src/zlib-ng/zlib-ng.map":"03ef4439594619e215dbb1717f8c13e16159308ef3817761ba1a3cca7f7834df","src/zlib-ng/zlib.h":"7e3666971e08019fc7097f11d593aac9ff6824a1ecc945c48f76009f7c27d55a","src/zlib-ng/zlib.map":"9997aa913dec6da106ab2089d2a72ca5e1b7fafe0807ac0bc1318ce8c8defab9","src/zlib-ng/zlib.pc.cmakein":"17668e07edbe5971043bea26a2f2b92c4c7cf4724620f1156f3ea1436d2aac93","src/zlib-ng/zlib.pc.in":"cf94c9aa44878a62e27c2f75354c08326b3bb5250a9b11496855cf59691177bb","src/zlib-ng/zutil.c":"53418b23c7878e968b4d04df8ebac74f64f60d32277f2343d16da52059dbc782","src/zlib-ng/zutil.h":"a14c18dd4a96909aaf0aa016cb6df97d77cf5b735283527c906181eead22f0e9","src/zlib-ng/zutil_p.h":"c259b33614007463b41d4184e0bdf10d62325445ee9308e1e1885862d201657a","src/zlib/CMakeLists.txt":"d3ea46cd350c74c21c2dd97f6d0ad354db76b2b43cc91ec1144b88267f67a588","src/zlib/ChangeLog":"6933f4ab74360476bc80d9eda2afd98f93588a5d276e1197926267421dd6959e","src/zlib/FAQ":"1e8a0078be0ff1b60d57561a9e4a8cad72892318a8831946cba1abd30d65521c","src/zlib/INDEX":"3b4e325d47ae66456d43fcf143ba21ab67a02a4f81be7ef2da480ba30d774266","src/zlib/LICENSE":"845efc77857d485d91fb3e0b884aaa929368c717ae8186b66fe1ed2495753243","src/zlib/Makefile":"ef23b08ce01239843f1ded3f373bfc432627a477d62f945cbf63b2ac03db118a","src/zlib/Makefile.in":"77a662b885182111d7731eef75176b4c5061002f278b58bf9bf217e2fa16cadb","src/zlib/README":"4bb4d5664fb9d06ef0d47e8ef73104bd545a5a57eb7241be4f2e0be904966322","src/zlib/adler32.c":"d7f1b6e44fee20ab41cef1d650776a039a2348935eb96bcbd294a4096139be3a","src/zlib/amiga/Makefile.pup":"a65cb3cd40b1b8ec77e288974dd9dc53d91ed78bbe495e94ccc84ddd423edf1f","src/zlib/amiga/Makefile.sas":"0e63cf88b505a1a04327bb666af3a985c5e11835c0c00aed4058c0dcc315d60e","src/zlib/compress.c":"6d0f0d0784744acca2678ce325c8d7c4c030e86f057adb78adcee111d2248c0d","src/zlib/configure":"2d964a697f9060d3a8fc5b4272c9d07b22e5fe6f5cf327e5c29f62f67d935759","src/zlib/contrib/README.contrib":"b925ae08d371b33c4b5ffd67c707150729a476caf47cfe2eafc002291f23f931","src/zlib/contrib/ada/buffer_demo.adb":"469cf566a6965767fee6b987a239ed8cedcc66614940d45a9b434331fbb435ce","src/zlib/contrib/ada/mtest.adb":"41b6f31684770334afdc4375871eb1408542f37a823a073556fdbfdb63753160","src/zlib/contrib/ada/read.adb":"fa5b989aef0c5715a3fcb15de93985f7f10aeb0a7f5716745c95ed820eb9af9c","src/zlib/contrib/ada/readme.txt":"8fe9e5303f2e8e8b746c78250e74b7c4aeb7ce6212fdce751fc3a0ce56a47fe2","src/zlib/contrib/ada/test.adb":"5e3abe79b387e09a9a42bd0543105e228f39a335240cffc33d71f0ba66ff2511","src/zlib/contrib/ada/zlib-streams.adb":"f45988e2bac76eb25a0dc981f46576e7432c35dde1790bbc2b650f0090b7fa72","src/zlib/contrib/ada/zlib-streams.ads":"969e8edb0611810fb52159dcb7c40228f4e5da810a7a3576b778116a93038c6b","src/zlib/contrib/ada/zlib-thin.adb":"03d89244ee5ec9771d9b5050e586c609f851af551b2e64eb151f1d5be0b63ae9","src/zlib/contrib/ada/zlib-thin.ads":"631ef170bde16c3ca8d412b54a0e519815b80197d208f8f393e6fe017bb0968e","src/zlib/contrib/ada/zlib.adb":"c9ca5dc34fbcdf06e2dc777b7e9dcd0ba31085b772b440eb0e12421323ab672c","src/zlib/contrib/ada/zlib.ads":"02634bec0d5e4c69d8d2859124380074a57de8d8bd928398379bfacc514236d2","src/zlib/contrib/ada/zlib.gpr":"859bb69dce38dbe9dca06753cf7ae7bd16d48f4fece8b87582dab8e30681d3de","src/zlib/contrib/blast/Makefile":"17d5d26c24bf51cad51045a38ffb73cc3539d29e89885aa249fcfd45a8659d5c","src/zlib/contrib/blast/README":"baa763ae03d88ef7ece6eb80d9a099b43d0b57639d6d281e1c7c6ca79d81daba","src/zlib/contrib/blast/blast.c":"1ab3e479d342bfc144167b808fb00142264bc50f24a110ca88cc774e351c218e","src/zlib/contrib/blast/blast.h":"9c1c422b76311d4cb06863ffc056668b6240f3dd998bc02e89ee590d482bfdc2","src/zlib/contrib/blast/test.pk":"5f5c262c545574a5c221132d5ef832478d222d70b015341795b3860204140d7c","src/zlib/contrib/blast/test.txt":"9679b2c98e1283222d0782b25a1c198dc64ba9ebd1addd6dc6f643a45947cda3","src/zlib/contrib/delphi/ZLib.pas":"6dcc65866e3fb3d33d2a2328c547458156883a3e6749d52ded209357a49d61de","src/zlib/contrib/delphi/ZLibConst.pas":"84bcc580bdf397e570f86f3f5a5b8c7bf537828f30b4b72648b81911f6bf5095","src/zlib/contrib/delphi/readme.txt":"f7420ed2de77d4b498eefbbe6402a1d17dc2d411735289c78a265c7f10fdaee5","src/zlib/contrib/delphi/zlibd32.mak":"850e91b6c9ea05de61a411cbda16fa0f10118cd88bb32c4b7226988776f8d511","src/zlib/contrib/dotzlib/DotZLib.build":"b96137097669644ecb9f42cdd3399d1fce9c512788374609303f7e50abf597f0","src/zlib/contrib/dotzlib/DotZLib.chm":"20d0e3edd57f849143255a7f0df1cd59d41db464a72c0d5ab42846438a729579","src/zlib/contrib/dotzlib/DotZLib.sln":"a979198c5b8d144c1ac8f993bfb6f4085d135aa58ca9dcf63ebabf52b5c695f7","src/zlib/contrib/dotzlib/DotZLib/AssemblyInfo.cs":"314afcfb339ea95f5431047b7ab24631b11c3532c7ce5dc2094ed0cf80a7c16d","src/zlib/contrib/dotzlib/DotZLib/ChecksumImpl.cs":"e7c047a2c3bcf88d3d002ee3d2d05af414acf53cb4451efacc0f2e95a474ea0f","src/zlib/contrib/dotzlib/DotZLib/CircularBuffer.cs":"be84c9736fe7bdc2bfae70466d8fff582504e928d5b5e110fd758090090c8cb7","src/zlib/contrib/dotzlib/DotZLib/CodecBase.cs":"259bdda1b7d6052134e631fa24bfd9dca6e2362563496c8b85257b56c848908c","src/zlib/contrib/dotzlib/DotZLib/Deflater.cs":"06ba6696a3c15c53ba5fd5a1c2bf50b51f217010228fc1e4c8495ee578f480de","src/zlib/contrib/dotzlib/DotZLib/DotZLib.cs":"9837fe993fd631233cc5e53ff084d86754b97f05ec77c54b0764c2706f186134","src/zlib/contrib/dotzlib/DotZLib/DotZLib.csproj":"21606db31dfef6410dd438b73f1db68856eacabcce6c0f0411fc4f17e17001f3","src/zlib/contrib/dotzlib/DotZLib/GZipStream.cs":"8d1de9755c77046b4ac71340a0a54434ebf4fd11b085c44454d7663a9b4df1c5","src/zlib/contrib/dotzlib/DotZLib/Inflater.cs":"9016ca73818f5b6a28791abc3af6da7c4d2773b6a3804f593f6d5737a62b99ad","src/zlib/contrib/dotzlib/DotZLib/UnitTests.cs":"c95048d763c7e367ba0bb7c31981e0610131fa12356bbd9bfdb13376778e9a0c","src/zlib/contrib/dotzlib/LICENSE_1_0.txt":"36266a8fd073568394cb81cdb2b124f7fdae2c64c1a7ed09db34b4d22efa2951","src/zlib/contrib/dotzlib/readme.txt":"d04972a91b1563fb4b7acab4b9ff2b84e57368953cc0596d5f5ea17d97315fd0","src/zlib/contrib/gcc_gvmat64/gvmat64.S":"22ff411b8b1d1b04aeaa8418b68245400267dc43c6f44104f6ccd37f0daee89f","src/zlib/contrib/infback9/README":"890288f02bb3b1f9cc654b87a07fcea695f90f6b9bd672d25bf6be1da2ec1688","src/zlib/contrib/infback9/infback9.c":"0a715c85a1ce3bb8b5a18d60941ffabc0186a886bcc66ba2ee0c4115a8e274e9","src/zlib/contrib/infback9/infback9.h":"dda2302f28157fe43a6143f84802af1740393572c2766559593996fd7a5a3245","src/zlib/contrib/infback9/inffix9.h":"84a2ba4727767c18af6505f0e81d9c814489c8b9ed330a25dad433db72997e43","src/zlib/contrib/infback9/inflate9.h":"32a907676cc36e27d0fdc0d99adb83a0b23f20ab61896269216d40fecf08d349","src/zlib/contrib/infback9/inftree9.c":"1f262e5ae8094c9d8b172241e567c86be560327b840ca8fb771e98461bcb158a","src/zlib/contrib/infback9/inftree9.h":"145072793141cb313c91cdf9dee9d4b8e8a38d77099f87e9cd05c7b5ead8f099","src/zlib/contrib/iostream/test.cpp":"0f3c77e013949eb9c91e6b690ea894e19d97944d6b0885b82806fc3ad99680cf","src/zlib/contrib/iostream/zfstream.cpp":"8ebb9b3d521cc3392953f27658cf1f6dcb763216079f69a1518ec5ca0e42a63b","src/zlib/contrib/iostream/zfstream.h":"4369c35e66f63f52ca4a5e1759bf720507ccabb8f3f132e2f18e68686c812401","src/zlib/contrib/iostream2/zstream.h":"d0343e0c57ff58008b6f29643d289c72713aa2d653fe3dcd2e939fc77e7e20b6","src/zlib/contrib/iostream2/zstream_test.cpp":"f789df183cc58b78751985466380c656308490a9036eb48a7ef79704c3d3f229","src/zlib/contrib/iostream3/README":"43ec48ecbd95a8c45db20b107fac73b740bb11595a4737329188f06b713972cc","src/zlib/contrib/iostream3/TODO":"af5ebc83fb88f69706c8af896733784753dead147687e1c046f410c0997fd88b","src/zlib/contrib/iostream3/test.cc":"8e17fc48dfdbc6e268838b8b427491b5843b6d18bc97caa6924de9fad7abe3da","src/zlib/contrib/iostream3/zfstream.cc":"8cdd67ed0b13c192c11e5ea90e9d5782d6627eb303fbc4aa5ebda2531ec00ff8","src/zlib/contrib/iostream3/zfstream.h":"1bd74778fac45ee090dfc0f182a23e8a849152deb630606884b2635987b357b1","src/zlib/contrib/minizip/Makefile":"0f59cf07531cf34cb359f9dbe26d8207a2bbbdad618557894eb629925f7e8899","src/zlib/contrib/minizip/Makefile.am":"2313a3480a2c3745fa7ce216829cd0367058907d3a0902e5832c66c84a2fdfc6","src/zlib/contrib/minizip/MiniZip64_Changes.txt":"302c62b328647f5472fb7755249a83459be7f8ffb1fae07e8ba318fce8f4126c","src/zlib/contrib/minizip/MiniZip64_info.txt":"122719c32ef1763a5f6ba9c8cdefc1d78a76f7156b09e7b6f69b73f968e0dac3","src/zlib/contrib/minizip/configure.ac":"959e4762ddcb36dcf30512611ca9fbcbcd0c943228a6ac2975708798ae09a438","src/zlib/contrib/minizip/crypt.h":"1d25a0fab3189dc3c6ae43c7813e1e5d07d0d049bd32bd7bd0e9ccd752bfdd5e","src/zlib/contrib/minizip/ioapi.c":"f6878a3ecf6802f0f75cadb41a114fa274636c386bac794c66cbb27a24d9a29f","src/zlib/contrib/minizip/ioapi.h":"9f5448f8d5e8894d6f397dd09d24f7ff39cb818cd493a8bd90dda19553b814ea","src/zlib/contrib/minizip/iowin32.c":"103cdef91d57ceca7a1c1973772ff7e1d44c7b3e227a3640171957302bd9e974","src/zlib/contrib/minizip/iowin32.h":"586f22b9c3c64da253ce2b518e0fad61f19a7b47b289fc704cc9708242294c49","src/zlib/contrib/minizip/make_vms.com":"65736d9c4888f2373d3db0a13864d150c5040453f5bc2a5c8784379a7ea67590","src/zlib/contrib/minizip/miniunz.c":"b29dfb4cff9763497d8f0656c97027995e1ea0b4104e4a217ba7882337ae7a7a","src/zlib/contrib/minizip/miniunzip.1":"66d8684392167091ef0fe01598d6a0daa26e7e448e2df6c3cb257487735b83f7","src/zlib/contrib/minizip/minizip.1":"5404596e8e5587a52f563906119f32ceee30a6d97a966afa5c7afbe4d373e210","src/zlib/contrib/minizip/minizip.c":"b5b8f380297be0d90265356704df1e41bee0e903a2169263a2b50dc22cc3180a","src/zlib/contrib/minizip/minizip.pc.in":"8b6670b42d8e5e519e1cc89db093efc07ba23cb1ddfedd3c93ff2df08c3ce8ac","src/zlib/contrib/minizip/mztools.c":"cd887c4af6d20823bd15f24008b10acf01969b4165d7848656bde843a92428d7","src/zlib/contrib/minizip/mztools.h":"6f82c52279e8f79165f4446be652e5741a49992ac58632470335aa34c564072a","src/zlib/contrib/minizip/unzip.c":"fc9e8d752618a05c1f3a2ce61ebf76d0c8053dd5579458f836834a36e8690bbe","src/zlib/contrib/minizip/unzip.h":"20cdc47658a3e41db897d31650e46cd2c8cca3c83ddaaeb6c7a48dd8b7f18e03","src/zlib/contrib/minizip/zip.c":"bee2d6fa310c9451b24c036d5840a8c7c90b7cf8d12d5767175c207e56fefcc3","src/zlib/contrib/minizip/zip.h":"75b635dca8294790ab7ec1f72e9f1fd352d75b189c3c9b61c68f76bd7e612043","src/zlib/contrib/pascal/example.pas":"d842d456ecb6ff80e34cee2da31deb2072cc69ca837497bea8b8bee203403474","src/zlib/contrib/pascal/readme.txt":"02f997c37991ddae0cb986039f7b4f6fc816b3fd0ffd332cad371d04c12cf1b9","src/zlib/contrib/pascal/zlibd32.mak":"850e91b6c9ea05de61a411cbda16fa0f10118cd88bb32c4b7226988776f8d511","src/zlib/contrib/pascal/zlibpas.pas":"720346d2f40429de31bb16a895f42e878f259b1aff7d46c63e6616e629b3f7d5","src/zlib/contrib/puff/Makefile":"d9d738030464aaae354196c14fd928adf591832fce7d71ac1977c1d8d4923a4b","src/zlib/contrib/puff/README":"c5b9852fb11e0d6b6e916e5134cf034524d901b95368972133e0381e480eb479","src/zlib/contrib/puff/puff.c":"433f7f4495481dd95576dbb548b1bcfc5ca129d30421695fa609f5f6c14908b6","src/zlib/contrib/puff/puff.h":"969b7be2a930db0cdcb19b0e5b29ae6741f5a8f663b6dba6d647e12ec60cfa8e","src/zlib/contrib/puff/pufftest.c":"d24e31c1d277d07c268f34e9490050c6b53c68b128da3efbb1d05fc5b31004f7","src/zlib/contrib/puff/zeros.raw":"b7b0887089f7af1f6d1e0b4c0a1e8eddd10223b23554299455c6c9be71b653a3","src/zlib/contrib/testzlib/testzlib.c":"c6c37b35c6ecc9986a9041f86d879cc37a9e4d8315af9d725071eb3b2cade0c5","src/zlib/contrib/testzlib/testzlib.txt":"2359bbdc84eb8a04e0f1cd16cd81a2896e957f2ad58dab3ca78ef55b7d0dc577","src/zlib/contrib/untgz/Makefile":"8f5ab1564813e091cea8f1bb63da32fd80ac763d029277b0cabf50f60aceefe1","src/zlib/contrib/untgz/Makefile.msc":"d0f537de11d9e0e36e2a98b3971c537265f4b533b4c48797094365ad9ae8388b","src/zlib/contrib/untgz/untgz.c":"9a12d774301d252dcd38bba07ac369319da4c04c4fef8a50fcbf40aebf29c2a1","src/zlib/contrib/vstudio/readme.txt":"df5fe112bef3c23d5767602736f6d0ce43cbb49b584210fe57f6f59e634a49d0","src/zlib/contrib/vstudio/vc10/miniunz.vcxproj":"dd607d43c64581172c20c22112821924dfe862f56b2e5eb8780bdd0714d9527b","src/zlib/contrib/vstudio/vc10/miniunz.vcxproj.filters":"4b8466bf00c70b81c31cc903e756e04151fd90fdcbe102f3568a2c8b6190ea27","src/zlib/contrib/vstudio/vc10/minizip.vcxproj":"af73f2cf8ae51e65e85342faeb40849a2310c97bc77def42b38d7070460a6cf0","src/zlib/contrib/vstudio/vc10/minizip.vcxproj.filters":"f2815f9e3386c393d0a351632823b221ef9689da1f422ecaa561dba2a612fb0a","src/zlib/contrib/vstudio/vc10/testzlib.vcxproj":"c21e64259bf9efe97e1103212e7a6e1b7372b50067b4ba14cfa678e1f491095f","src/zlib/contrib/vstudio/vc10/testzlib.vcxproj.filters":"a7caddbac3ba90b5d482e6d926ef35cc40dc3553ed3776ef6b68a528fd5b0631","src/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj":"3f317d8964f17901c3e68bff5deaec10b6ccc50a572235999e8097292692984c","src/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.filters":"29c9535775aa76320ee4efd001d41961faf6c58cedd8b29d3986e85f73d2f6fb","src/zlib/contrib/vstudio/vc10/zlib.rc":"6041a4727ea47520058a5b4bb8de87592883eb7f26dd39df62879c347f3888d1","src/zlib/contrib/vstudio/vc10/zlibstat.vcxproj":"50402ab8c63f746c034d6ce51d9612aff5b6af9aa27790cffa4b7deed4b30eb8","src/zlib/contrib/vstudio/vc10/zlibstat.vcxproj.filters":"eeb1de64c252c46b822f73f272127f6f9f0570ef22d234e093070ba95a4dde24","src/zlib/contrib/vstudio/vc10/zlibvc.def":"a228e521a561d4456c83c7081b4e9950cfce99133af7d5fdd27f12a8fd53efde","src/zlib/contrib/vstudio/vc10/zlibvc.sln":"e659860f705f31b87ea9139a3cb4ebe1561e120bce495383a54614fc82b49990","src/zlib/contrib/vstudio/vc10/zlibvc.vcxproj":"efad8cb150c0e5122f8c700d95c5de659dff92b171917c66bdbd082fff500b58","src/zlib/contrib/vstudio/vc10/zlibvc.vcxproj.filters":"c801732b7c7017796add50d2b71a228f99f95a46650baad307ff7e8358a2bfb0","src/zlib/contrib/vstudio/vc11/miniunz.vcxproj":"746e4c11fb8af4bcd6a9d68ba81ed1dc366a5de3bed56b291ee969ad733a7bb0","src/zlib/contrib/vstudio/vc11/minizip.vcxproj":"340617cae9cf4fcb003308021d3782ec3639e60d62d79a3aafc0a50bb55b061e","src/zlib/contrib/vstudio/vc11/testzlib.vcxproj":"99eadfdf2e41bc036141c174c4d0035d87572ce5795dcc28f39133f818a79d08","src/zlib/contrib/vstudio/vc11/testzlibdll.vcxproj":"583bdef522b0176829f0d8139ea2a88b9cbc14379d1334f3a863989ed3df9b67","src/zlib/contrib/vstudio/vc11/zlib.rc":"6041a4727ea47520058a5b4bb8de87592883eb7f26dd39df62879c347f3888d1","src/zlib/contrib/vstudio/vc11/zlibstat.vcxproj":"b07f792843d05ac883391075bc3b9625437490d8d40944ad359aa2134a09a3aa","src/zlib/contrib/vstudio/vc11/zlibvc.def":"a228e521a561d4456c83c7081b4e9950cfce99133af7d5fdd27f12a8fd53efde","src/zlib/contrib/vstudio/vc11/zlibvc.sln":"27389b515997defd080519f95aff87e89fcbe8b26d73c5ebb73c544cfef4d60e","src/zlib/contrib/vstudio/vc11/zlibvc.vcxproj":"d02d014ef957119a6fd0ab243c892b74d1592b117750b95fed21097c8ed922d9","src/zlib/contrib/vstudio/vc12/miniunz.vcxproj":"1494af54570f6e93852932956d49a8c25e57b5abc1ac979945605ca9143df9f8","src/zlib/contrib/vstudio/vc12/minizip.vcxproj":"9bf128ed6760ca5f019006f178b1c65f4c7ff122dba8d297b64b0eb72feeb120","src/zlib/contrib/vstudio/vc12/testzlib.vcxproj":"be88bc1220c0447c2379fdab3ac88055f58a8a788d3e9cec494342187e760eaf","src/zlib/contrib/vstudio/vc12/testzlibdll.vcxproj":"93416510256935d79625dc9fd349cfce6968c062d42a138bec404a26b2f92f5e","src/zlib/contrib/vstudio/vc12/zlib.rc":"90067be57a8c5df594a850352642f8b1dcb32e3d088d3805ebafe75a27412b74","src/zlib/contrib/vstudio/vc12/zlibstat.vcxproj":"faa229a851c76b77d65bb4742d8369efe566652bb6a1447d1e3539f289b5313d","src/zlib/contrib/vstudio/vc12/zlibvc.def":"a228e521a561d4456c83c7081b4e9950cfce99133af7d5fdd27f12a8fd53efde","src/zlib/contrib/vstudio/vc12/zlibvc.sln":"162e0faa80a56d89eea71a0b89377708eec2faa0dc72091cc0abb07fbdea49a0","src/zlib/contrib/vstudio/vc12/zlibvc.vcxproj":"8ac8cb2d29b880a738011d29d0511af9b14f321bed90f674109c446f4108d442","src/zlib/contrib/vstudio/vc14/miniunz.vcxproj":"0312511d4a30cea979c4e36edf994a537ed8a9d924f6b5c536cbcd094773c11f","src/zlib/contrib/vstudio/vc14/minizip.vcxproj":"9e7bb7a6ac723e4b2db900627c366f9bb93a351381995d9c69a50c0126f64233","src/zlib/contrib/vstudio/vc14/testzlib.vcxproj":"88667873d9d61d65016b9501ca925532eb55f56230e5911d3e2a01cd8a9fb2a4","src/zlib/contrib/vstudio/vc14/testzlibdll.vcxproj":"69f544898b4275cd3d8e19b8f1f8cb39c1cb98a30cdb033242e4b94c57bfa150","src/zlib/contrib/vstudio/vc14/zlib.rc":"90067be57a8c5df594a850352642f8b1dcb32e3d088d3805ebafe75a27412b74","src/zlib/contrib/vstudio/vc14/zlibstat.vcxproj":"5629eb0cc30674a39aa3636f1cdd190393b0dbd4c69a35e36ad85b6340055605","src/zlib/contrib/vstudio/vc14/zlibvc.def":"a228e521a561d4456c83c7081b4e9950cfce99133af7d5fdd27f12a8fd53efde","src/zlib/contrib/vstudio/vc14/zlibvc.sln":"47a50bbde8ca6336cecd8c0e4b65e515fc46ae84c7b61008ac9864162f777286","src/zlib/contrib/vstudio/vc14/zlibvc.vcxproj":"09f496a2ad3afdd5e3f36b7285440369dcac4559656edc00ed7a74c7ec9fa10f","src/zlib/contrib/vstudio/vc9/miniunz.vcproj":"7db9b2ef5ff05d3de4ba633feab10e85d45434c865d520ffa1974421904996f3","src/zlib/contrib/vstudio/vc9/minizip.vcproj":"7797a9ad3c0056f3a3cf8fcde7618acd1d151c65d15f841fccd8d9d878ae7bb0","src/zlib/contrib/vstudio/vc9/testzlib.vcproj":"8df405917800adccee6bad2116022c2c82d661b37ea40ea16405fe4dbcb4b69f","src/zlib/contrib/vstudio/vc9/testzlibdll.vcproj":"cde6806f5c81d1fc311f9921c17ba56f8e386d097783a6a90875d385837c47e7","src/zlib/contrib/vstudio/vc9/zlib.rc":"6041a4727ea47520058a5b4bb8de87592883eb7f26dd39df62879c347f3888d1","src/zlib/contrib/vstudio/vc9/zlibstat.vcproj":"d393d418d827ad9fb9c6516f1a7620371d15e3f5afef8ba60b51e50acc7199e9","src/zlib/contrib/vstudio/vc9/zlibvc.def":"a228e521a561d4456c83c7081b4e9950cfce99133af7d5fdd27f12a8fd53efde","src/zlib/contrib/vstudio/vc9/zlibvc.sln":"26e58d4b2cfcd941c367fb2a18537b3b9f002f2ac1278b700ea1129c50501452","src/zlib/contrib/vstudio/vc9/zlibvc.vcproj":"eaca98fcf166738b59fcdbd179dac9f98f985c6ba49212b186343a998816f081","src/zlib/crc32.c":"ec3ff0f97858b228513027a490e4330cbb23c6fbdd24d839902ffa89854f209c","src/zlib/crc32.h":"9a2223575183ac2ee8a247f20bf3ac066e8bd0140369556bdbdffc777435749e","src/zlib/deflate.c":"4470e36709ce7d6067fa3e8f60bb7f693b055bee42a0d6655ed71faa2db87fde","src/zlib/deflate.h":"0db1b5ef79ca6ba0f508b7b8bdaa11af45c5ebe2c89ab4f1086dc22b963a52fa","src/zlib/doc/algorithm.txt":"992590931e982c0765286c2d83f6e9ff0a95aabb08e28c30c52bae3e8c4bd5ad","src/zlib/doc/crc-doc.1.0.pdf":"064f9252d6e2e15ea56c2bd18e160e5c9c84bcd137c11a7af497aaa511ace998","src/zlib/doc/rfc1950.txt":"8f0475a5c984657bf26277f73df9456c9b97f175084f0c1748f1eb1f0b9b10b9","src/zlib/doc/rfc1951.txt":"5ebf4b5b7fe1c3a0c0ab9aa3ac8c0f3853a7dc484905e76e03b0b0f301350009","src/zlib/doc/rfc1952.txt":"164ef0897b4cbec63abf1b57f069f3599bd0fb7c72c2a4dee21bd7e03ec9af67","src/zlib/doc/txtvsbin.txt":"d1549fb75137f03102798f70fd34ff76285e717ddd520dd82274c1c0510eacf0","src/zlib/examples/README.examples":"1bc1c677bbebe1aa5e85015bb62f0cf3fcdbf95652d30494159bee6166c1854a","src/zlib/examples/enough.c":"c14a257c60bbe0d65bb54746dd97774a1853ef9e3f78db118a27d8bc0d26d738","src/zlib/examples/fitblk.c":"fd8aaaefd5eb3d9fc388bdc5b715d1c6993ecc9367f5432d3b120a0278904edc","src/zlib/examples/gun.c":"3bfd36b06284ba97d6105b8a6a5d18b2b34b75b3a1285f16d018680fb174915f","src/zlib/examples/gzappend.c":"6de91c8305e37560117bff44136abff72b16b028c0bda0bbac7ea07e4988b0ce","src/zlib/examples/gzjoin.c":"90b9d6c39a5fc91cf1cc9b96b025a508a8015dc502cd9374c754b44078593f57","src/zlib/examples/gzlog.c":"196872021c96099fd30c880ac2cccd1350fdbd81179731f3914153a26ebf72e9","src/zlib/examples/gzlog.h":"681f280437f867820bf39880e2f4fc641d402879e399ba2e6a31d73feefe8edc","src/zlib/examples/gznorm.c":"e5a8f5c3b107f27212f7d5fbfcf072a337a1b4ea32929ae31c168997438a5cc0","src/zlib/examples/zlib_how.html":"80fb647be8450bd7a07d8495244e1f061dfbdbdb53172ca24e7ffff8ace9c72f","src/zlib/examples/zpipe.c":"68140a82582ede938159630bca0fb13a93b4bf1cb2e85b08943c26242cf8f3a6","src/zlib/examples/zran.c":"10f9568b1f54cdb7474a38c5bc479aa0edb07a0eed2e999bdad4c521f6b25330","src/zlib/examples/zran.h":"9a0d4c15f898c43deae2c5e98a5c66c637a1b25573d662fe91a789c386eaf971","src/zlib/gzclose.c":"94446cf8cde67c30e64d0a335b0c941fd3fbad2e77f30180d12e61f9c2a5a6b8","src/zlib/gzguts.h":"fa85c9dabe24e42ba95c702870416ff67ecc58906321f8e74b72a50dfd7df400","src/zlib/gzlib.c":"635b7b6df79a5ce6e0f951669e4c82704d7972d8afb87278b9155c2cb4c5066f","src/zlib/gzread.c":"41c69d43fb3974bae58d9169aea3514221f70dc77bb7a35c79626dd3be01adf2","src/zlib/gzwrite.c":"c7454689751c8f41ec63a1381a0053fb149095abe1c3b89c8a996b2d7ac8adce","src/zlib/infback.c":"6a6cfe3d7e239d590692bc2664ac58d3ef92be30ff4cb3c6dbf5deed28f79eb5","src/zlib/inffast.c":"41d93aefdbfee5455809130af74fcc76cf7259b1aa8b34d0060d14e57463e8bb","src/zlib/inffast.h":"7d8c1c873ce9bc346ad6005bb9d75cce5c6352aaf7395385be216a9452a34908","src/zlib/inffixed.h":"237ba710f090e432b62ebf963bee8b302867e9691406b2d3f8ee89ee7bfef9b0","src/zlib/inflate.c":"f1679575fef1717d908dd09d7bfe8fff89c21941cadd7c255a2ccccfba3a287e","src/zlib/inflate.h":"e8d4a51b07694bf48cb91979c19974cf6a5ab0b8a09d26ec0d14df349230673e","src/zlib/inftrees.c":"b9db40bbb68b63dccbcdfa78d687751e33178af8669f1c1236309cfd5d2edc0e","src/zlib/inftrees.h":"44084a93673386db6282dcb61d739c84518e10dff66d1c6850715137c827464c","src/zlib/make_vms.com":"14ed54bdd391c1648cedfb69d8a73a26dcc7f1187d59b0f18d944b7665cec85b","src/zlib/msdos/Makefile.bor":"292ab363f7ffbc4ae84d37cd9bdffd2dac1003bee52d223a8489844870f20702","src/zlib/msdos/Makefile.dj2":"9208450c2ae6dcbfcc25560b5b9ca763f461e7246e37b0552474edf8fa898906","src/zlib/msdos/Makefile.emx":"c749d6ec7f88e8e639d4f03bdbdcbbe9d1c304210be4c4be621ceb22961d3d64","src/zlib/msdos/Makefile.msc":"0e021a6f42212415b060e4ad468eb415d0a8c1f343137fb9dff2cb8f9ead3027","src/zlib/msdos/Makefile.tc":"2ae12ee2a3e62f7c5a0520d0fbe4adee772bc07fe816002b07ccb43db3daa76a","src/zlib/nintendods/Makefile":"ea5823efe6830132294eddf2f56dbd7db8712244c210bb4968c431b1a91bd066","src/zlib/nintendods/README":"e362426c47b39ff6a7d6c75c6660b20abf076cdfa5e1e421716dc629a71aef95","src/zlib/old/Makefile.emx":"d811f032272aae50123a889297af3a02fbd60d1e42bbef11466462f627ff7b5b","src/zlib/old/Makefile.riscos":"d1a488b160fbfd53272b68a913283a4be08ba9d490796b196dddb2ba535b41e0","src/zlib/old/README":"551a0f4d91fe0f827a31cbdfbb4a71d1f3dc4d06564d80a3f526b749dd104d11","src/zlib/old/descrip.mms":"8ff08c35c056df9c986f23c09cf8936db63ccf12c3c42f7d18a48b36f060cff7","src/zlib/old/os2/Makefile.os2":"6ad247c00f00ff42fd2d62555e86251cef06e4079378241b5f320c227507d51d","src/zlib/old/os2/zlib.def":"ea9c61876d2e20b67ef2d9495991a32798eb40d13ede95859a2f4f03b65b9b61","src/zlib/old/visual-basic.txt":"1727650acbde9a9e6aec9438896377e46a12699cca5d46c5399cef524dedc614","src/zlib/os400/README400":"5eb702a0dd460e2bea59ee83014c3f975e892057850c639f793bb740044a38ba","src/zlib/os400/bndsrc":"3c36a17975eed5a8d33bc5443b39fead1e68c01393496be9c1f4a61444bcb0f6","src/zlib/os400/make.sh":"143394d1e3876c61c29078c0e47310e726e1f5bd42739fe92df9ece65711655f","src/zlib/os400/zlib.inc":"dede38961ae2e7a2590343bf1ff558c6f51e46714dec33f2d11d8c34899b3875","src/zlib/qnx/package.qpg":"d521336be75bdd145281c6d166241905751ec97093ecd6fec97a313f631ac0e1","src/zlib/test/example.c":"64ae90d60b40a8aec4700e5c4e7a71898ebb92948b7a07f939b3e763cb3e8b35","src/zlib/test/infcover.c":"f654f3fcc74b33bd95cda63d13fe0ce589bcfe965544e0c17ee597d75efbd090","src/zlib/test/minigzip.c":"f9777d1e8b337573e12daa8091dcf22e88a9b155fc0acad15b8224c377bfe027","src/zlib/treebuild.xml":"89b50165782643554a38d5c58c203d9648b540e5a455531dcb58b5676a019955","src/zlib/trees.c":"b338f1ec9038bd77efc09c8fdb99ef27b5db5b3da9baa301e544adc8e3b6a662","src/zlib/trees.h":"bb0a9d3ca88ee00c81adb7c636e73b97085f6ef1b52d6d58edbe2b6dc3adeb4d","src/zlib/uncompr.c":"7b3d8ca0f10ef7c74044c3172ca8f9f50389cd0f270ee4517f438e7e06be5623","src/zlib/watcom/watcom_f.mak":"7e039b912f9cffaa40835281430bb284fa9042b0a0d12f6b34700a06bca6576e","src/zlib/watcom/watcom_l.mak":"d11b4064604a034725860e63e3f6d347056372e4b1675b183e20a93533b20cc9","src/zlib/win32/DLL_FAQ.txt":"9e00778319381e6275691dd3a89410c99065b8c0c5db96473abe8c859cbdefd8","src/zlib/win32/Makefile.bor":"7d73a0d2c3e38b7c610bbc9c22f683a4fe1ab9b8b65649a3a8ac4ff7fcc14ba6","src/zlib/win32/Makefile.gcc":"97140c30506a8f6b2edb6b3d8a1b6b539d7929d4b957deba9950301090f579bf","src/zlib/win32/Makefile.msc":"235529bd529d4690d5d4b7871fdd0a1f118f2fe18862cbdec5f5ac674c55a60d","src/zlib/win32/README-WIN32.txt":"f414b3702f8d3bf1de42e0f41604bd78c44e537aae16b6107e3cdaa5759caa16","src/zlib/win32/VisualC.txt":"9ec0babd46eaa012371dee2d3a8a55d9c7130f7895512c3371c737e4a7f6a997","src/zlib/win32/zlib.def":"c00693a5c825f8bfbdb68124fd03cb2fa5269338071147bdaa14434aaf3962b9","src/zlib/win32/zlib1.rc":"54e161029b59e99a4f9cb2281b956f00ecfb1814318ddef9c741ff4f832c5c1d","src/zlib/zconf.h":"80e0a31a4c0e6f20d1bad0df99271b9d535aa9f7c4e62f1a54f643adb4c6dfa2","src/zlib/zconf.h.cmakein":"bb12900d39488e6a9ed67ebd7cf5599f3ced8937b7077d4d5001e470c7a1392e","src/zlib/zconf.h.in":"80e0a31a4c0e6f20d1bad0df99271b9d535aa9f7c4e62f1a54f643adb4c6dfa2","src/zlib/zlib.3":"aefd0162070fcb0379dc18e27b039253cd98c148104c1097dd60e0d0b435e564","src/zlib/zlib.3.pdf":"91343dffd2876dcf4af567f299ce99872b066232451093d6d12e02e4654873d8","src/zlib/zlib.h":"a980a0d104198a53cc220c51ab5856e5be901bec8a2d02e0ee79a8754219dfed","src/zlib/zlib.map":"33e2a7c4defd6222945bb0f7191b6380afb4f518e804af86a44aad4a9090bf9e","src/zlib/zlib.pc.cmakein":"2f1d0b18ce37c2af415a469857f02aee2c41a58877aff21d29e9c6db32b55cb7","src/zlib/zlib.pc.in":"04c01cc2e1a0ed123518b5855f585c93a24526dd88982c414111ea1fc9f07997","src/zlib/zlib2ansi":"b3f9c88abbdf16143e5d5110e44fff198bcda9ee1358e036c8d445e9d0cbce85","src/zlib/zutil.c":"8108af451ad14271065844736ac7c436275b92826c319318070508d769371428","src/zlib/zutil.h":"cf94d865e3a9162c0571cba7f74c8f01efbdca26b981d6cc9c545d4c3991e3c2"},"package":"56ee889ecc9568871456d42f603d6a0ce59ff328d291063a45cbdf0036baf6db"} +\ No newline at end of file ++{"files":{"Cargo.toml":"5fc1259b26541f617473d6b741816705c91322db9740e347a8686e3c0b30ab2e","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"34c467b6945a22696d060b8fdd2379d464acb3408d4c599d3dc5fe4fa1b4c84f","README-zng.md":"2f9f34e6b388a401b8d8318b64997a7521e4198c5c314f8cea11433623628515","README.md":"75701bfcd7158e924f51ece8debb6d4425ccd6ad5d2806004b5f174423f4b2af","build.rs":"b383e60f71c9b40ecc807ac58473f9b85d7036e8359796634cba2701224493a3","build_zng.rs":"b7768e19f0bf876f29eabb6ad6511f530e61d8aa92bfbe89a7cf3818e4824ce7","src/lib.rs":"7c4a3394e17e6250c1f4f2067efecc56b1850827596432ad0ce75e5eea800446","src/smoke.c":"10607c81b73811bfcb9718767312bf97ba2ccf7048ea2f18a2085aa06ad7f91b","src/zlib-ng/CMakeLists.txt":"5840d2c44e335af0f58f8a2545da60be403946b1181641b35ea7425b2e0f44db","src/zlib-ng/FAQ.zlib":"c524f4f86d336b3de71dd6977afddffa9c02fda5c26db4dfefae44959e7614a2","src/zlib-ng/INDEX.md":"989545e90d8e9ac149034f762ce78ed8976ebf9324326228dea37ca190154609","src/zlib-ng/LICENSE.md":"d3c80be055d94d798eaa786116e84fa0b010bc11420b5d2060d978ea77845436","src/zlib-ng/Makefile.in":"1f56adbf5fac7fa36c6e4c11b5f061acb971984c941154cbf0344e2b68b99e7d","src/zlib-ng/PORTING.md":"4105267b5e00f8d608f31dcf4fe2cfede15cc94568211691419e6cba3d8e539e","src/zlib-ng/README.md":"ba04244ad8eea94d834d25aa75b40e7f849844a33c68ed180c2a631378e1f211","src/zlib-ng/adler32.c":"82ffa1b4fc4b198ba8004135f79b8819d9f2b28e851c30c0ab41e6d32dfbf70d","src/zlib-ng/adler32_p.h":"f56915c59a345baf4558374447385a317e29365a4db2fbb38af4de3e1a1a0201","src/zlib-ng/arch/arm/Makefile.in":"95464884ba75a7b12c9ceda5845d8d68d5a7d7dac8a8dc24b27beb2192e5b97b","src/zlib-ng/arch/arm/adler32_neon.c":"3990b8d5570b12c2162218fe0e9bc723a03f1c89b5ed3ba70a74a98976260ee7","src/zlib-ng/arch/arm/arm.h":"855adbb02d7b9a5714a17d9dcff493610e7cd2b9a1f4e58e1c99626ab536e868","src/zlib-ng/arch/arm/armfeature.c":"4800228414695b632b9ceca14409e782d6fc3b357ba7ab00858925fc66b5532e","src/zlib-ng/arch/arm/chunkset_neon.c":"95fc7917d1d30094e15a35c56d1e9c189c5ca3758553a3467d4da793eaed656f","src/zlib-ng/arch/arm/crc32_acle.c":"e2be53267a2a59fc79c4b3bab00e8b25bf64a8fc8bf2c6684e5b1b1fd1480f9d","src/zlib-ng/arch/arm/ctzl.h":"feb70d55e66025fff806e30e48002b35cfff79533d352585cfa5f118edbc90b1","src/zlib-ng/arch/arm/insert_string_acle.c":"d1b1dae5aeada70f2b03c2cbf3112ce55a92401c2d87709081b04dcf5992e1ad","src/zlib-ng/arch/arm/slide_neon.c":"19d8cf5c742ac6b82164c7a183538ad1129f9f17e9b8bce8b40daac3820fb6c4","src/zlib-ng/arch/generic/Makefile.in":"f41a34839986eac8dd52cf91fada0efff4171c059ab5d7db6347c91bd6d9db09","src/zlib-ng/arch/power/Makefile.in":"69644d1a0ff8e7f38005c0a55cdbaf3f0d87f42abf8fc4f4136271c4fedfb846","src/zlib-ng/arch/power/adler32_power8.c":"79b75e98ad3a62facbbdd8c0b178d3f993b57f6e34d320bf47eca33aa8c330a1","src/zlib-ng/arch/power/power.c":"0647afb3b3b7ce2a19b4815ec8fdeee0b37c759413e5ef0a668a2dba22d94803","src/zlib-ng/arch/power/power.h":"f3f15f94fed98a2f7dd5d4568c5172e597228be4141d6895062703c3f70024da","src/zlib-ng/arch/power/slide_hash_power8.c":"932ea533d25e2f5478afe0c47830e7ef24276cad0d75fd91f2d8c799bd4b5d36","src/zlib-ng/arch/s390/Makefile.in":"eef6c3169723f089b0b5f852423ec55bf0364caeddd7cda991f2e76bc1682107","src/zlib-ng/arch/s390/README.md":"730b9a0230609988fbd1bdd52a7abdaa1fa5c65253ac78163dd4a5eccb966abc","src/zlib-ng/arch/s390/dfltcc_common.c":"3d460448ad4c5b687da6b7c0ad8498ece92b771dc7ddd0189e096acca5a1cad4","src/zlib-ng/arch/s390/dfltcc_common.h":"de8902d3863c8a7a3f6ea27dec2ee5a4f17ef5d8646e48a586d0b29fe94c9a0b","src/zlib-ng/arch/s390/dfltcc_deflate.c":"d6941d3c5ada225ec39b98b35bce1d203aa1f2d994a47c8487d377d9ef2f6efc","src/zlib-ng/arch/s390/dfltcc_deflate.h":"5c90a812e2a2f2b842dba027e5640791e52206e74b8423cb78e0b8ea12ed29ad","src/zlib-ng/arch/s390/dfltcc_detail.h":"fe66cd700a1d017eba86c2c6e95f53e9a4d1cb491de9cb3963b2a2907098baa9","src/zlib-ng/arch/s390/dfltcc_inflate.c":"83643b5605cdc2d1d7780e1bdeb007f9dc6a1cca633157abbfb5d3232f2b8816","src/zlib-ng/arch/s390/dfltcc_inflate.h":"d7a4a5ae79abd1a5456521926b918becfe86c253a4fc23723fbc09f7c3303128","src/zlib-ng/arch/s390/self-hosted-builder/actions-runner.Dockerfile":"999c962c49508ebf61414e6f9ffea059926ac500d4c6d707ea1f9e77402f7374","src/zlib-ng/arch/s390/self-hosted-builder/actions-runner.service":"33a359eb58d76152f916b40ee1357f7edfda75e8dfb55a5b12ac83bcd6ed7055","src/zlib-ng/arch/s390/self-hosted-builder/fs/usr/bin/actions-runner":"f647e18728ea15fe927ac9f8cba83a5b343654a0e91b5ebe653bae7af7375110","src/zlib-ng/arch/s390/self-hosted-builder/fs/usr/bin/entrypoint":"add4ebdc4f06ed15bb1de12a8c9ceb370a60baebb0932a1026a75433940ad3df","src/zlib-ng/arch/s390/self-hosted-builder/qemu-user-static.service":"54551049f6181da88700a2a944a72b0af3b8abde876fa28e1348deb5eb96c91b","src/zlib-ng/arch/x86/INDEX.md":"c12f9bf0d66743a6472fb756bf46def8eea1dd235be7fca994dcb22f693a3524","src/zlib-ng/arch/x86/Makefile.in":"9f6fe7567a99e81aaa3bef8ccfa1ad40f524efc285cf8dfe0f497a1530f8016c","src/zlib-ng/arch/x86/adler32_avx.c":"99056732c7bd5d53dc108f282811a40bf21570926781af5dc7b17cb9218963de","src/zlib-ng/arch/x86/adler32_ssse3.c":"883a5520b4481225d097c90c5359106a3c8eb7b921499c94276e999b7c39adc5","src/zlib-ng/arch/x86/chunkset_avx.c":"13c83149146c408ffdc9358bcb5355259f6196e6cc6fe025b7ea3647e313cd0a","src/zlib-ng/arch/x86/chunkset_sse.c":"f14d0557634b53af8cd6e2a1ce9d57df50244a72e85ff3b100b5ca287d1cfa8a","src/zlib-ng/arch/x86/compare258_avx.c":"8b2838d168de4608327f25fe52d53763a82413ee911d87947d3fcd72c7f9bf26","src/zlib-ng/arch/x86/compare258_sse.c":"b5049722ffd4a43a96868eeba5e000271cfc5fcbf3c2657026ead15b1df28a10","src/zlib-ng/arch/x86/crc_folding.c":"defb5a7067562612651f693c910db53cf228b7cd7fef11991504767a7d84f224","src/zlib-ng/arch/x86/crc_folding.h":"939212546611917e9e066e8ed30cdda95680ec1f5fe0890cc4865b4e6d7fc215","src/zlib-ng/arch/x86/insert_string_sse.c":"9e84a75b6a565422eb105261b6729d2a02b89133bd14372c949d5381b5deed3e","src/zlib-ng/arch/x86/slide_avx.c":"5e448e439ac24e7cb10eee176ca37f2c63f73c135c0a2af040e232bad490997d","src/zlib-ng/arch/x86/slide_sse.c":"1946cabb634c905fddef0a22b2fad19dfd99110169567c3beceef71145b2e316","src/zlib-ng/arch/x86/x86.c":"1af56e27b2e951e1ad1344e62c2f7a8c49a776fcdd1cb0f4ea9d6152118a479e","src/zlib-ng/arch/x86/x86.h":"4d2d20ea0087089141e250e77bb3d419954b9092810028b151581b9115a5fe8c","src/zlib-ng/chunkset.c":"cbf26582fff56726cc28bee05ff0a1680c50308b8dd9bb8cfb57d7f0a587d0bd","src/zlib-ng/chunkset_tpl.h":"eaaf0804f6162ab26b2b6de263a478ffb111559e653372e96e400acba9c63563","src/zlib-ng/cmake/detect-arch.c":"e0da3d16195eefb54bef77163db737a66453f25ae16648aa8f6beeac70787662","src/zlib-ng/cmake/detect-arch.cmake":"27fa8da497b39ac70d881e2d345749611dae4c30f7b7a9c9e32f2c042672189a","src/zlib-ng/cmake/detect-coverage.cmake":"e4e372991ba80a16ad47df2716708a56013cc628aa7ed01573a2360c60610125","src/zlib-ng/cmake/detect-install-dirs.cmake":"87031a40428a104f5cf38ecdb8a5028d8c679cfa772a58adde8380c809b34eff","src/zlib-ng/cmake/detect-sanitizer.cmake":"a8f7a4515278532b251b567d82ed576fe1ca7e698992ed92d1beb8e8dd22237f","src/zlib-ng/cmake/run-and-compare.cmake":"13d85c12c9d6c7b1b148bd0c5a5b4faa6a4b56f3823bf03c4f8d914c9c5949d8","src/zlib-ng/cmake/run-and-redirect.cmake":"7f08d18c09aa58113882ec760735a62a1723a5bfcae9f73bd3713a4dbaeab898","src/zlib-ng/cmake/test-compress.cmake":"0d2d1595859ccfb6795bb98700a4f7c1652b025cc344a1291524601087957888","src/zlib-ng/cmake/test-tools.cmake":"63aabfffd53970b8e145870b2a1c03bffa3595f7df04bd86f94e97b6f2a387e7","src/zlib-ng/cmake/toolchain-aarch64.cmake":"46be0bf580a49a528c72005484655afad1de3705b39a66a7b0c213b0fa81cee6","src/zlib-ng/cmake/toolchain-arm.cmake":"05e38076fd6ffb9785ff9844ccecd26436c9dc4c25b7777b62e5f52e788c3882","src/zlib-ng/cmake/toolchain-armhf.cmake":"1a2029163a57415eec9a5dd5f45d3254d349e97b1beb5d16876b741717673341","src/zlib-ng/cmake/toolchain-mingw-i686.cmake":"df9000354b820d3713d1469edc9f94cd095389b0cca83965730b8e64857fdf3f","src/zlib-ng/cmake/toolchain-mingw-x86_64.cmake":"ee316e6e3202919da5d497f9e246466fd715fcf079cb5b4afc4774089d1fefad","src/zlib-ng/cmake/toolchain-powerpc.cmake":"9bd6fc58ce5b70603657f2c195c4a5cf52fae96ad63ac787978831c5858f762c","src/zlib-ng/cmake/toolchain-powerpc64.cmake":"917fc5eef84921d8b38f43c2b4f60870965b4eecc8f018c7b3499e1142c715af","src/zlib-ng/cmake/toolchain-powerpc64le.cmake":"5b2edd36d62de513db2d32bfbf779979d81ac527b981cc3379a4e933fc5a94d1","src/zlib-ng/cmake/toolchain-s390x.cmake":"cf52cecea7bd2a9d1ff5fd8edcb03c531e3b404bbcd15a15dec2e0e19936f2ac","src/zlib-ng/cmake/toolchain-sparc64.cmake":"e543062485d06a7e0fec8135887c5e73363517fa4babc23ef7b780916d75afda","src/zlib-ng/compare258.c":"56bfd48d5ff9ca422fbb728df7a373436c73796561dff118c7d4039fe70d29e2","src/zlib-ng/compress.c":"41df6eb62d6fb1334ecfe0a0c3e50a7ee89528719857f2b8297cbc512149759c","src/zlib-ng/configure":"160f69a1e51c49f6454ece92e4c5e08675ca5d90cf22b8f79cbe54c4381d93c2","src/zlib-ng/crc32.c":"98440be8a99381151a2d740f2e2228e8c1b23b9193c3642c52a4e34799506336","src/zlib-ng/crc32_comb.c":"11a36a6088fb520a58e0304fc99cf12fc8437519e8a70fe74dad58f00af696ec","src/zlib-ng/crc32_comb_tbl.h":"d6615d209d6c7d5248c6f7fe4e5dbded13c0eb87997b37693032c2902927407d","src/zlib-ng/crc32_p.h":"1fa91375a18e090c0a0dfda39de3df36346a0b1be36c808be6b6c29c32eba922","src/zlib-ng/crc32_tbl.h":"d629378ba38ff5775095b64e277bcd41c4b89fab9b5647a9fb29e15da0db0161","src/zlib-ng/deflate.c":"6fb8979ee8bc43f6e12a649708c7eb50e60bb9bdc2e55c45ce3b15aefe779179","src/zlib-ng/deflate.h":"7b3c649965c54446097d6157dd31d3685aa7df1082e9aa64cb3cdf6ac2c4d023","src/zlib-ng/deflate_fast.c":"d51e1368fc997673c64b5ab9a620439df25f313f8274529d974c5f80b89702b8","src/zlib-ng/deflate_medium.c":"1c3d95cbac76052d39595ea750c5536541c18302b9abb398c27b58955318bba8","src/zlib-ng/deflate_p.h":"2e739301e8c53038c2a958c8c8693584cd8dae464ffef05a22db6d6fa9985676","src/zlib-ng/deflate_quick.c":"280905a191d2b2a7274f2453ac537e01a0fb6e7540a0b212c1514bfb8c9415ea","src/zlib-ng/deflate_slow.c":"a2c66723e1e71ffd6ff856407459ab311a4c6546ecf50285081fc7afcd0ccd2e","src/zlib-ng/doc/algorithm.txt":"0d21a0a4c47e512743389628d1385a831a5e5ff716491095a382b923287f4223","src/zlib-ng/doc/rfc1950.txt":"8f0475a5c984657bf26277f73df9456c9b97f175084f0c1748f1eb1f0b9b10b9","src/zlib-ng/doc/rfc1951.txt":"5ebf4b5b7fe1c3a0c0ab9aa3ac8c0f3853a7dc484905e76e03b0b0f301350009","src/zlib-ng/doc/rfc1952.txt":"f7c810fd9d719d002d605207a9b880600f71d039b9626c5b4b03f2122438dd2d","src/zlib-ng/doc/txtvsbin.txt":"47c273bb22c9773248d380549a330e5c262266b1292154b0d3014f731cc73f47","src/zlib-ng/fallback_builtins.h":"1d2c2da88009a58f240bac33f562fe5a0a39c1e773813a2d75b45283ff1396cd","src/zlib-ng/functable.c":"d9db6530035a06f95982ff3d7680a84f4b54b8425874ccbe2ab10b906bd5708a","src/zlib-ng/functable.h":"e5a2d0c10411d23f04295bcb9ddb9889388974b723caef65aa5c4ea4739f4aa7","src/zlib-ng/gzguts.h":"7b69b2f35264169bc794d0d5c00247d93c203f751d226302966c33b524ed9fb0","src/zlib-ng/gzlib.c":"7e6ad5d9d32e6429d56a5303e2c6e6870d69c023d6647a52fb95902828de4011","src/zlib-ng/gzread.c":"d5d47d24dc463b978fe828320dab140494803fd86b511300f903c7c2eabd4d25","src/zlib-ng/gzwrite.c":"1685ad2c88239b3434cd2c4a9d66b67842310b2d1dfd01aec0fc293eef20e858","src/zlib-ng/infback.c":"4decaa412219fc8adb935754c54a4dedf3952aaf67107a12512451c65eadee23","src/zlib-ng/inffast.c":"a134d4aa6a46eebe975ca0cd5ef18894fc852b6a840be21ca7243ddbe6c9d8f9","src/zlib-ng/inffast.h":"42e74a92b496ab0726be317e8497a12bf3c3cf3d0d533440ce65befd3929c71c","src/zlib-ng/inffixed_tbl.h":"a94225335396245e9f0ccb2e9b4b334fe7ee0111ed8e32a26bcd52187f364314","src/zlib-ng/inflate.c":"f33e2e7eeaa4b33ba6a2c327f8c9939e6b847afbdad349da65c97bf81c6083b5","src/zlib-ng/inflate.h":"eb25527d1bdedaa45167926dce4c39d9aaa3147b0f4a95f38f5916528c30a09b","src/zlib-ng/inflate_p.h":"4a94c51194da119770cf662ef289994f0c78d95184d54d6ae5d50a393e8f5a62","src/zlib-ng/inftrees.c":"7a777f5ff02ce60fbad6cb843ceadd7b3a8a8a0476ae010c87a0377c2e88f780","src/zlib-ng/inftrees.h":"fa80eb11c2290b345470a03cb861843e2cb1365135233ea8243e9fd79d3618a1","src/zlib-ng/insert_string.c":"aa22ba53a1e75821499809277f9ca0e5ef92b07a618136dd11ae1734e233b7c9","src/zlib-ng/insert_string_tpl.h":"1ceba9903324d10aad6e1d83653c4d534a5b06fd09076414a06215482be00bac","src/zlib-ng/match_tpl.h":"eeab4c6eea8511a7579738e622af062ad16f4016312e93ad34bc5903d8b3c4a1","src/zlib-ng/test/CVE-2002-0059/test.gz":"60bf96b8f433bd7e057ce3496aceaccd70ec80f596a4aa8bcc7786056705ce66","src/zlib-ng/test/CVE-2003-0107.c":"6ed6fba710f8f2b898750f0ec17720fbf01e45c39e8adbba6409681b34914140","src/zlib-ng/test/CVE-2004-0797/test.gz":"38caae524705f676bde13a8df9fc8c7d2fe105ba6bdbab62a405b0276fd3aa2e","src/zlib-ng/test/CVE-2005-1849/test.gz":"e4d5a60617df4b5dd44eda94751ce1eacdb325792bba6e3cc4676719a3adf742","src/zlib-ng/test/CVE-2005-2096/test.gz":"8f702d4861aa3ec98ac03a59ff26b430939630cb5cd4266d2658d3b836d576f9","src/zlib-ng/test/CVE-2018-25032/default.txt":"d7f8278db331c47bd1208bf41e7903cbddee4f7b47c666c40afdd3c96237752e","src/zlib-ng/test/CVE-2018-25032/fixed.txt":"3b27a98edd2f3f580033f9add11d3469d7808c969a1128ee00c18ac7a12cef57","src/zlib-ng/test/GH-361/test.txt":"358497d0a7251ea42101dc77b02337f46fd89af09643a8288e2a3082e5d24128","src/zlib-ng/test/GH-364/test.bin":"af5570f5a1810b7af78caf4bc70a660f0df51e42baf91d4de5b2328de0e83dfc","src/zlib-ng/test/GH-382/defneg3.dat":"b22bef6b7392401c9e7b079402c4a4074053d7a914d050400e37fd7af6fe26d5","src/zlib-ng/test/GH-751/test.txt":"b83d833803b7bc3124fb2a0034081f0b999ad10c33a8dfa3bfd181dc078ae3ee","src/zlib-ng/test/GH-979/pigz-2.6.tar.gz":"2eed7b0d7449d1d70903f2a62cd6005d262eb3a8c9e98687bc8cbb5809db2a7d","src/zlib-ng/test/Makefile.in":"48d033f2dbb62635624bf2c9e3e7fe279b72afc3411d14cb7cfdbf40f5b80e19","src/zlib-ng/test/README.md":"d60ef4851222ebc2a9fbc23f292ab11bc7fee40ba6171ea768b2ffa005df5b1d","src/zlib-ng/test/abi/ignore":"02aa87f77656dbc1fbddd23f436cd15465a92df0722da4055cae1bc8bf013097","src/zlib-ng/test/abi/zlib-v1.2.11-arm-linux-gnueabihf.abi":"f5e91f25b558a891fecbeb6e2e9575698630ab700d055a38f3bc4fe66257f513","src/zlib-ng/test/abi/zlib-v1.2.11-x86_64-linux-gnu.abi":"038337383cf780587d810cf5400d632f3a1f8517e63ac4a71b6e5224db8b1413","src/zlib-ng/test/abicheck.md":"6b4a87d760b3848fb1ded6782e02a1d074d9e487bdabb29274a62b31cdf48772","src/zlib-ng/test/abicheck.sh":"7ca2884ff37c697d380f620554525f9b9dc7fa76b45f866d284b2ea5b98c65cc","src/zlib-ng/test/adler32_test.c":"db3e8ad9a4e2ecce0c052b0bfe19834d3ff2fb2e9239cc3438a2c95db00b1d21","src/zlib-ng/test/crc32_test.c":"8f1223d8aa4c52a5e7323f422023f6b892ce684eaf7439ad905b855293f40143","src/zlib-ng/test/data/fireworks.jpg":"93b986ce7d7e361f0d3840f9d531b5f40fb6ca8c14d6d74364150e255f126512","src/zlib-ng/test/data/lcet10.txt":"1eb5d7bddb1c3cb68064d5b5f7f27814949674b6702564ff7025ced60795a6d9","src/zlib-ng/test/data/paper-100k.pdf":"60f73a051b7ca35bfec44734b2eed7736cb5c0b7f728beb7b97ade6c5e44849b","src/zlib-ng/test/deflate_quick_bi_valid.c":"a36697e5779a645354823f14540bd60b9378c2f4c5f2bb981d86bb34f29fcbb0","src/zlib-ng/test/deflate_quick_block_open.c":"455bd347bb88debdfacb409846170274991ec9ba71c52b8fd0e526daf57265eb","src/zlib-ng/test/example.c":"1c8d9d14128da9fb5415683aa7318ae0aa94b743f75905288a2a9decd4ead98d","src/zlib-ng/test/fuzz/checksum_fuzzer.c":"65a96358c9a82efc4b251b4f322b02fade7b69f9bc6ac07294e641e3fe1ccdb1","src/zlib-ng/test/fuzz/compress_fuzzer.c":"1ab70608075c4bc60f89aa2f327cff88362ee7b1d31da88ed54ca51e5f99e5c9","src/zlib-ng/test/fuzz/example_dict_fuzzer.c":"be68f9eee3deae7f9163c6288742e5455bc28f659f80fdb276fafe215f028b97","src/zlib-ng/test/fuzz/example_flush_fuzzer.c":"f12246a184dcfe0a19a98cdc742a1fe8da388ad20b406635d63f1fa10d45b9ca","src/zlib-ng/test/fuzz/example_large_fuzzer.c":"f490abcd332fb4e7921292adf6876d38d7f71c8d2443212c781ba88957ff9303","src/zlib-ng/test/fuzz/example_small_fuzzer.c":"a9b3436b291ace821b6013311a1100e19a9e1c67fefd3f97dbd60688f9bf22b1","src/zlib-ng/test/fuzz/minigzip_fuzzer.c":"5faecfe9e6ecc47e746151bd1cc24a2e2dba8b7ffeb270d2c88cb126273ab446","src/zlib-ng/test/fuzz/standalone_fuzz_target_runner.c":"f25649ed35b8b7a3899c8d7ff52f9972dfc7bf274889e0a7a77fbfdf1c1cfef0","src/zlib-ng/test/gh1235.c":"8310ef780dc483a1708750cd7c120b8e9cc0e1614767d24c01869e529074e981","src/zlib-ng/test/hash_head_0.c":"448def3e8ea13fbcac86202e50b8a71b6cea585d7bdbca0bc6cf6056e4059f98","src/zlib-ng/test/infcover.c":"9c0e8068fdc614b1852e8d274231b41ce3ce975d4419ed31e700a0b05e702303","src/zlib-ng/test/inflate_adler32.c":"ab430c97ae8f569784710118038e8ebf53f4136d1a957e1277c0904f9218340b","src/zlib-ng/test/minideflate.c":"34fdce39628ffd173f7736d9fb65dfa40d0b0289def64b935075f6c6cffe1999","src/zlib-ng/test/minigzip.c":"7dbce6528601f7fdd586280885ed439cb539e15f36dd3974274729bfcdd41928","src/zlib-ng/test/pigz/CMakeLists.txt":"aa70f1025adc004985bfe0accee9b7a80e04786d82705e27c377a5e8d4ecbaaa","src/zlib-ng/test/pkgcheck.sh":"581b3de9c58e96038af94c73cbdb30eed32900f7abb8fa7692426fa68059b0ef","src/zlib-ng/test/switchlevels.c":"ceb6cc4d48a637562009d8f7f82635fa9942acd1bfd597acd99454a03a3a98e3","src/zlib-ng/test/testCVEinputs.sh":"5de6198444c16726f8e0a8f2beb5b89c5ae7e7e3736ce760b9fbc719493e7e4f","src/zlib-ng/tools/codecov-upload.sh":"ec7a8f1405820810e486e3d7e2fda7eb958c17877b0000b93abdf09d87732a2f","src/zlib-ng/tools/config.sub":"32186cfeb5db62c99e1dfbfb07f24c1a50977447b4c26d2907021c74422a70d2","src/zlib-ng/tools/makecrct.c":"55c8f7b8e29393e95988a29de8cb1a1bdf2738a69d53627bd0f9d7bf169bf0a8","src/zlib-ng/tools/makefixed.c":"bffd02540231304f9bcc755b8cb9ae5cfbc48975857bbb4547f1d6acce21ef57","src/zlib-ng/tools/maketrees.c":"30e9f70addf691d1241e594a7f31fc78b119b65e8af9ac8e20fe6da01635d3b3","src/zlib-ng/trees.c":"2cd9a1dc8d9231e9fc4e53e56b87307989c1b7f33212cde4ee434ef71c28af2a","src/zlib-ng/trees.h":"24174f3543b01ee1ef370bbf6d15551a21871cded18b2aadf09a71e7904b6f99","src/zlib-ng/trees_emit.h":"2e93093ae5362523a26877d6fd663bb05793795889d2bfb987cbada9a9dc4517","src/zlib-ng/trees_tbl.h":"35f4fd0ec080c1ade342e2dd1b0f5cdc7e9f18990faa48d7a8a69bc318ebe607","src/zlib-ng/uncompr.c":"4ebb486b27930f8a6ec4a3cc90a207d0bcf8a4779d1dbf3b2184a2b2a5735cd1","src/zlib-ng/win32/DLL_FAQ.txt":"f17fd3823726adbae63b91c00d5db1dccae2e289258edabbbbebde04bb6e7e8c","src/zlib-ng/win32/Makefile.a64":"775d6902373d1583430b5d7467f001746be323610c89be27e02bbfe0205994f3","src/zlib-ng/win32/Makefile.arm":"7535e022f482920c3fa7a267e84e39ad790d150f72e5c30414baa156c2fdd9b6","src/zlib-ng/win32/Makefile.msc":"d769a00c0ad4cb5fc624d2ae004dfa3785a2f4310324b03afd2156e759003a06","src/zlib-ng/win32/README-WIN32.txt":"cdcca6e7a5d2d23618a48fafb8eea347227f8ecf1f38a6aa90f0e7e455bc6574","src/zlib-ng/win32/zlib-ng.def":"f240276caf805a10d024fc6a66efe915c435734c69732818d92fb04d08ab350c","src/zlib-ng/win32/zlib-ng1.rc":"ea0ea4d116b583510b113a27fdec2ad4f0890206963f0e3838f275b8005dde5d","src/zlib-ng/win32/zlib.def":"d9c371ff2677567350386441a2e3d0258010d6502290bbac5ac42ea168bd5212","src/zlib-ng/win32/zlib1.rc":"ec5021dba35f9fae5f5f82ad6b6bd059928548e0608e4ede0bcffccf5c1210a1","src/zlib-ng/win32/zlibcompat.def":"73728b9df4379dc70ebd9b2a9f20d6e4ed7c031fa1f351cdeae1de7d1db05bd1","src/zlib-ng/zbuild.h":"d4d52d3296cc949a5d694e7349a8236854f2ec116c184a310e4e62b28caf5b63","src/zlib-ng/zconf-ng.h.in":"f206ac69c1fa48c670648d26028263372a539ed1243a9a26e5b35bf52e2363ff","src/zlib-ng/zconf.h.in":"dbf08736c3bc5e41242b09e13d0a523b440250410476dd58747c14e28984f1e5","src/zlib-ng/zendian.h":"f5cfa865281d2c5d0b097d318500f27daeec346e7882de68e279486d79c52e77","src/zlib-ng/zlib-ng.h":"d51896e8411868ed195d5cf41fda4f1c5a9c891832dfd16b559a5ed6beedd890","src/zlib-ng/zlib-ng.map":"03ef4439594619e215dbb1717f8c13e16159308ef3817761ba1a3cca7f7834df","src/zlib-ng/zlib.h":"7e3666971e08019fc7097f11d593aac9ff6824a1ecc945c48f76009f7c27d55a","src/zlib-ng/zlib.map":"9997aa913dec6da106ab2089d2a72ca5e1b7fafe0807ac0bc1318ce8c8defab9","src/zlib-ng/zlib.pc.cmakein":"17668e07edbe5971043bea26a2f2b92c4c7cf4724620f1156f3ea1436d2aac93","src/zlib-ng/zlib.pc.in":"cf94c9aa44878a62e27c2f75354c08326b3bb5250a9b11496855cf59691177bb","src/zlib-ng/zutil.c":"53418b23c7878e968b4d04df8ebac74f64f60d32277f2343d16da52059dbc782","src/zlib-ng/zutil.h":"a14c18dd4a96909aaf0aa016cb6df97d77cf5b735283527c906181eead22f0e9","src/zlib-ng/zutil_p.h":"c259b33614007463b41d4184e0bdf10d62325445ee9308e1e1885862d201657a","src/zlib/CMakeLists.txt":"d3ea46cd350c74c21c2dd97f6d0ad354db76b2b43cc91ec1144b88267f67a588","src/zlib/ChangeLog":"6933f4ab74360476bc80d9eda2afd98f93588a5d276e1197926267421dd6959e","src/zlib/FAQ":"1e8a0078be0ff1b60d57561a9e4a8cad72892318a8831946cba1abd30d65521c","src/zlib/INDEX":"3b4e325d47ae66456d43fcf143ba21ab67a02a4f81be7ef2da480ba30d774266","src/zlib/LICENSE":"845efc77857d485d91fb3e0b884aaa929368c717ae8186b66fe1ed2495753243","src/zlib/Makefile":"ef23b08ce01239843f1ded3f373bfc432627a477d62f945cbf63b2ac03db118a","src/zlib/Makefile.in":"77a662b885182111d7731eef75176b4c5061002f278b58bf9bf217e2fa16cadb","src/zlib/README":"4bb4d5664fb9d06ef0d47e8ef73104bd545a5a57eb7241be4f2e0be904966322","src/zlib/adler32.c":"d7f1b6e44fee20ab41cef1d650776a039a2348935eb96bcbd294a4096139be3a","src/zlib/amiga/Makefile.pup":"a65cb3cd40b1b8ec77e288974dd9dc53d91ed78bbe495e94ccc84ddd423edf1f","src/zlib/amiga/Makefile.sas":"0e63cf88b505a1a04327bb666af3a985c5e11835c0c00aed4058c0dcc315d60e","src/zlib/compress.c":"6d0f0d0784744acca2678ce325c8d7c4c030e86f057adb78adcee111d2248c0d","src/zlib/configure":"2d964a697f9060d3a8fc5b4272c9d07b22e5fe6f5cf327e5c29f62f67d935759","src/zlib/contrib/README.contrib":"b925ae08d371b33c4b5ffd67c707150729a476caf47cfe2eafc002291f23f931","src/zlib/contrib/ada/buffer_demo.adb":"469cf566a6965767fee6b987a239ed8cedcc66614940d45a9b434331fbb435ce","src/zlib/contrib/ada/mtest.adb":"41b6f31684770334afdc4375871eb1408542f37a823a073556fdbfdb63753160","src/zlib/contrib/ada/read.adb":"fa5b989aef0c5715a3fcb15de93985f7f10aeb0a7f5716745c95ed820eb9af9c","src/zlib/contrib/ada/readme.txt":"8fe9e5303f2e8e8b746c78250e74b7c4aeb7ce6212fdce751fc3a0ce56a47fe2","src/zlib/contrib/ada/test.adb":"5e3abe79b387e09a9a42bd0543105e228f39a335240cffc33d71f0ba66ff2511","src/zlib/contrib/ada/zlib-streams.adb":"f45988e2bac76eb25a0dc981f46576e7432c35dde1790bbc2b650f0090b7fa72","src/zlib/contrib/ada/zlib-streams.ads":"969e8edb0611810fb52159dcb7c40228f4e5da810a7a3576b778116a93038c6b","src/zlib/contrib/ada/zlib-thin.adb":"03d89244ee5ec9771d9b5050e586c609f851af551b2e64eb151f1d5be0b63ae9","src/zlib/contrib/ada/zlib-thin.ads":"631ef170bde16c3ca8d412b54a0e519815b80197d208f8f393e6fe017bb0968e","src/zlib/contrib/ada/zlib.adb":"c9ca5dc34fbcdf06e2dc777b7e9dcd0ba31085b772b440eb0e12421323ab672c","src/zlib/contrib/ada/zlib.ads":"02634bec0d5e4c69d8d2859124380074a57de8d8bd928398379bfacc514236d2","src/zlib/contrib/ada/zlib.gpr":"859bb69dce38dbe9dca06753cf7ae7bd16d48f4fece8b87582dab8e30681d3de","src/zlib/contrib/blast/Makefile":"17d5d26c24bf51cad51045a38ffb73cc3539d29e89885aa249fcfd45a8659d5c","src/zlib/contrib/blast/README":"baa763ae03d88ef7ece6eb80d9a099b43d0b57639d6d281e1c7c6ca79d81daba","src/zlib/contrib/blast/blast.c":"1ab3e479d342bfc144167b808fb00142264bc50f24a110ca88cc774e351c218e","src/zlib/contrib/blast/blast.h":"9c1c422b76311d4cb06863ffc056668b6240f3dd998bc02e89ee590d482bfdc2","src/zlib/contrib/blast/test.pk":"5f5c262c545574a5c221132d5ef832478d222d70b015341795b3860204140d7c","src/zlib/contrib/blast/test.txt":"9679b2c98e1283222d0782b25a1c198dc64ba9ebd1addd6dc6f643a45947cda3","src/zlib/contrib/delphi/ZLib.pas":"6dcc65866e3fb3d33d2a2328c547458156883a3e6749d52ded209357a49d61de","src/zlib/contrib/delphi/ZLibConst.pas":"84bcc580bdf397e570f86f3f5a5b8c7bf537828f30b4b72648b81911f6bf5095","src/zlib/contrib/delphi/readme.txt":"f7420ed2de77d4b498eefbbe6402a1d17dc2d411735289c78a265c7f10fdaee5","src/zlib/contrib/delphi/zlibd32.mak":"850e91b6c9ea05de61a411cbda16fa0f10118cd88bb32c4b7226988776f8d511","src/zlib/contrib/dotzlib/DotZLib.build":"b96137097669644ecb9f42cdd3399d1fce9c512788374609303f7e50abf597f0","src/zlib/contrib/dotzlib/DotZLib.chm":"20d0e3edd57f849143255a7f0df1cd59d41db464a72c0d5ab42846438a729579","src/zlib/contrib/dotzlib/DotZLib.sln":"a979198c5b8d144c1ac8f993bfb6f4085d135aa58ca9dcf63ebabf52b5c695f7","src/zlib/contrib/dotzlib/DotZLib/AssemblyInfo.cs":"314afcfb339ea95f5431047b7ab24631b11c3532c7ce5dc2094ed0cf80a7c16d","src/zlib/contrib/dotzlib/DotZLib/ChecksumImpl.cs":"e7c047a2c3bcf88d3d002ee3d2d05af414acf53cb4451efacc0f2e95a474ea0f","src/zlib/contrib/dotzlib/DotZLib/CircularBuffer.cs":"be84c9736fe7bdc2bfae70466d8fff582504e928d5b5e110fd758090090c8cb7","src/zlib/contrib/dotzlib/DotZLib/CodecBase.cs":"259bdda1b7d6052134e631fa24bfd9dca6e2362563496c8b85257b56c848908c","src/zlib/contrib/dotzlib/DotZLib/Deflater.cs":"06ba6696a3c15c53ba5fd5a1c2bf50b51f217010228fc1e4c8495ee578f480de","src/zlib/contrib/dotzlib/DotZLib/DotZLib.cs":"9837fe993fd631233cc5e53ff084d86754b97f05ec77c54b0764c2706f186134","src/zlib/contrib/dotzlib/DotZLib/DotZLib.csproj":"21606db31dfef6410dd438b73f1db68856eacabcce6c0f0411fc4f17e17001f3","src/zlib/contrib/dotzlib/DotZLib/GZipStream.cs":"8d1de9755c77046b4ac71340a0a54434ebf4fd11b085c44454d7663a9b4df1c5","src/zlib/contrib/dotzlib/DotZLib/Inflater.cs":"9016ca73818f5b6a28791abc3af6da7c4d2773b6a3804f593f6d5737a62b99ad","src/zlib/contrib/dotzlib/DotZLib/UnitTests.cs":"c95048d763c7e367ba0bb7c31981e0610131fa12356bbd9bfdb13376778e9a0c","src/zlib/contrib/dotzlib/LICENSE_1_0.txt":"36266a8fd073568394cb81cdb2b124f7fdae2c64c1a7ed09db34b4d22efa2951","src/zlib/contrib/dotzlib/readme.txt":"d04972a91b1563fb4b7acab4b9ff2b84e57368953cc0596d5f5ea17d97315fd0","src/zlib/contrib/gcc_gvmat64/gvmat64.S":"22ff411b8b1d1b04aeaa8418b68245400267dc43c6f44104f6ccd37f0daee89f","src/zlib/contrib/infback9/README":"890288f02bb3b1f9cc654b87a07fcea695f90f6b9bd672d25bf6be1da2ec1688","src/zlib/contrib/infback9/infback9.c":"0a715c85a1ce3bb8b5a18d60941ffabc0186a886bcc66ba2ee0c4115a8e274e9","src/zlib/contrib/infback9/infback9.h":"dda2302f28157fe43a6143f84802af1740393572c2766559593996fd7a5a3245","src/zlib/contrib/infback9/inffix9.h":"84a2ba4727767c18af6505f0e81d9c814489c8b9ed330a25dad433db72997e43","src/zlib/contrib/infback9/inflate9.h":"32a907676cc36e27d0fdc0d99adb83a0b23f20ab61896269216d40fecf08d349","src/zlib/contrib/infback9/inftree9.c":"1f262e5ae8094c9d8b172241e567c86be560327b840ca8fb771e98461bcb158a","src/zlib/contrib/infback9/inftree9.h":"145072793141cb313c91cdf9dee9d4b8e8a38d77099f87e9cd05c7b5ead8f099","src/zlib/contrib/iostream/test.cpp":"0f3c77e013949eb9c91e6b690ea894e19d97944d6b0885b82806fc3ad99680cf","src/zlib/contrib/iostream/zfstream.cpp":"8ebb9b3d521cc3392953f27658cf1f6dcb763216079f69a1518ec5ca0e42a63b","src/zlib/contrib/iostream/zfstream.h":"4369c35e66f63f52ca4a5e1759bf720507ccabb8f3f132e2f18e68686c812401","src/zlib/contrib/iostream2/zstream.h":"d0343e0c57ff58008b6f29643d289c72713aa2d653fe3dcd2e939fc77e7e20b6","src/zlib/contrib/iostream2/zstream_test.cpp":"f789df183cc58b78751985466380c656308490a9036eb48a7ef79704c3d3f229","src/zlib/contrib/iostream3/README":"43ec48ecbd95a8c45db20b107fac73b740bb11595a4737329188f06b713972cc","src/zlib/contrib/iostream3/TODO":"af5ebc83fb88f69706c8af896733784753dead147687e1c046f410c0997fd88b","src/zlib/contrib/iostream3/test.cc":"8e17fc48dfdbc6e268838b8b427491b5843b6d18bc97caa6924de9fad7abe3da","src/zlib/contrib/iostream3/zfstream.cc":"8cdd67ed0b13c192c11e5ea90e9d5782d6627eb303fbc4aa5ebda2531ec00ff8","src/zlib/contrib/iostream3/zfstream.h":"1bd74778fac45ee090dfc0f182a23e8a849152deb630606884b2635987b357b1","src/zlib/contrib/minizip/Makefile":"0f59cf07531cf34cb359f9dbe26d8207a2bbbdad618557894eb629925f7e8899","src/zlib/contrib/minizip/Makefile.am":"2313a3480a2c3745fa7ce216829cd0367058907d3a0902e5832c66c84a2fdfc6","src/zlib/contrib/minizip/MiniZip64_Changes.txt":"302c62b328647f5472fb7755249a83459be7f8ffb1fae07e8ba318fce8f4126c","src/zlib/contrib/minizip/MiniZip64_info.txt":"122719c32ef1763a5f6ba9c8cdefc1d78a76f7156b09e7b6f69b73f968e0dac3","src/zlib/contrib/minizip/configure.ac":"959e4762ddcb36dcf30512611ca9fbcbcd0c943228a6ac2975708798ae09a438","src/zlib/contrib/minizip/crypt.h":"1d25a0fab3189dc3c6ae43c7813e1e5d07d0d049bd32bd7bd0e9ccd752bfdd5e","src/zlib/contrib/minizip/ioapi.c":"f6878a3ecf6802f0f75cadb41a114fa274636c386bac794c66cbb27a24d9a29f","src/zlib/contrib/minizip/ioapi.h":"9f5448f8d5e8894d6f397dd09d24f7ff39cb818cd493a8bd90dda19553b814ea","src/zlib/contrib/minizip/iowin32.c":"103cdef91d57ceca7a1c1973772ff7e1d44c7b3e227a3640171957302bd9e974","src/zlib/contrib/minizip/iowin32.h":"586f22b9c3c64da253ce2b518e0fad61f19a7b47b289fc704cc9708242294c49","src/zlib/contrib/minizip/make_vms.com":"65736d9c4888f2373d3db0a13864d150c5040453f5bc2a5c8784379a7ea67590","src/zlib/contrib/minizip/miniunz.c":"b29dfb4cff9763497d8f0656c97027995e1ea0b4104e4a217ba7882337ae7a7a","src/zlib/contrib/minizip/miniunzip.1":"66d8684392167091ef0fe01598d6a0daa26e7e448e2df6c3cb257487735b83f7","src/zlib/contrib/minizip/minizip.1":"5404596e8e5587a52f563906119f32ceee30a6d97a966afa5c7afbe4d373e210","src/zlib/contrib/minizip/minizip.c":"b5b8f380297be0d90265356704df1e41bee0e903a2169263a2b50dc22cc3180a","src/zlib/contrib/minizip/minizip.pc.in":"8b6670b42d8e5e519e1cc89db093efc07ba23cb1ddfedd3c93ff2df08c3ce8ac","src/zlib/contrib/minizip/mztools.c":"cd887c4af6d20823bd15f24008b10acf01969b4165d7848656bde843a92428d7","src/zlib/contrib/minizip/mztools.h":"6f82c52279e8f79165f4446be652e5741a49992ac58632470335aa34c564072a","src/zlib/contrib/minizip/unzip.c":"fc9e8d752618a05c1f3a2ce61ebf76d0c8053dd5579458f836834a36e8690bbe","src/zlib/contrib/minizip/unzip.h":"20cdc47658a3e41db897d31650e46cd2c8cca3c83ddaaeb6c7a48dd8b7f18e03","src/zlib/contrib/minizip/zip.c":"bee2d6fa310c9451b24c036d5840a8c7c90b7cf8d12d5767175c207e56fefcc3","src/zlib/contrib/minizip/zip.h":"75b635dca8294790ab7ec1f72e9f1fd352d75b189c3c9b61c68f76bd7e612043","src/zlib/contrib/pascal/example.pas":"d842d456ecb6ff80e34cee2da31deb2072cc69ca837497bea8b8bee203403474","src/zlib/contrib/pascal/readme.txt":"02f997c37991ddae0cb986039f7b4f6fc816b3fd0ffd332cad371d04c12cf1b9","src/zlib/contrib/pascal/zlibd32.mak":"850e91b6c9ea05de61a411cbda16fa0f10118cd88bb32c4b7226988776f8d511","src/zlib/contrib/pascal/zlibpas.pas":"720346d2f40429de31bb16a895f42e878f259b1aff7d46c63e6616e629b3f7d5","src/zlib/contrib/puff/Makefile":"d9d738030464aaae354196c14fd928adf591832fce7d71ac1977c1d8d4923a4b","src/zlib/contrib/puff/README":"c5b9852fb11e0d6b6e916e5134cf034524d901b95368972133e0381e480eb479","src/zlib/contrib/puff/puff.c":"433f7f4495481dd95576dbb548b1bcfc5ca129d30421695fa609f5f6c14908b6","src/zlib/contrib/puff/puff.h":"969b7be2a930db0cdcb19b0e5b29ae6741f5a8f663b6dba6d647e12ec60cfa8e","src/zlib/contrib/puff/pufftest.c":"d24e31c1d277d07c268f34e9490050c6b53c68b128da3efbb1d05fc5b31004f7","src/zlib/contrib/puff/zeros.raw":"b7b0887089f7af1f6d1e0b4c0a1e8eddd10223b23554299455c6c9be71b653a3","src/zlib/contrib/testzlib/testzlib.c":"c6c37b35c6ecc9986a9041f86d879cc37a9e4d8315af9d725071eb3b2cade0c5","src/zlib/contrib/testzlib/testzlib.txt":"2359bbdc84eb8a04e0f1cd16cd81a2896e957f2ad58dab3ca78ef55b7d0dc577","src/zlib/contrib/untgz/Makefile":"8f5ab1564813e091cea8f1bb63da32fd80ac763d029277b0cabf50f60aceefe1","src/zlib/contrib/untgz/Makefile.msc":"d0f537de11d9e0e36e2a98b3971c537265f4b533b4c48797094365ad9ae8388b","src/zlib/contrib/untgz/untgz.c":"9a12d774301d252dcd38bba07ac369319da4c04c4fef8a50fcbf40aebf29c2a1","src/zlib/contrib/vstudio/readme.txt":"df5fe112bef3c23d5767602736f6d0ce43cbb49b584210fe57f6f59e634a49d0","src/zlib/contrib/vstudio/vc10/miniunz.vcxproj":"dd607d43c64581172c20c22112821924dfe862f56b2e5eb8780bdd0714d9527b","src/zlib/contrib/vstudio/vc10/miniunz.vcxproj.filters":"4b8466bf00c70b81c31cc903e756e04151fd90fdcbe102f3568a2c8b6190ea27","src/zlib/contrib/vstudio/vc10/minizip.vcxproj":"af73f2cf8ae51e65e85342faeb40849a2310c97bc77def42b38d7070460a6cf0","src/zlib/contrib/vstudio/vc10/minizip.vcxproj.filters":"f2815f9e3386c393d0a351632823b221ef9689da1f422ecaa561dba2a612fb0a","src/zlib/contrib/vstudio/vc10/testzlib.vcxproj":"c21e64259bf9efe97e1103212e7a6e1b7372b50067b4ba14cfa678e1f491095f","src/zlib/contrib/vstudio/vc10/testzlib.vcxproj.filters":"a7caddbac3ba90b5d482e6d926ef35cc40dc3553ed3776ef6b68a528fd5b0631","src/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj":"3f317d8964f17901c3e68bff5deaec10b6ccc50a572235999e8097292692984c","src/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.filters":"29c9535775aa76320ee4efd001d41961faf6c58cedd8b29d3986e85f73d2f6fb","src/zlib/contrib/vstudio/vc10/zlib.rc":"6041a4727ea47520058a5b4bb8de87592883eb7f26dd39df62879c347f3888d1","src/zlib/contrib/vstudio/vc10/zlibstat.vcxproj":"50402ab8c63f746c034d6ce51d9612aff5b6af9aa27790cffa4b7deed4b30eb8","src/zlib/contrib/vstudio/vc10/zlibstat.vcxproj.filters":"eeb1de64c252c46b822f73f272127f6f9f0570ef22d234e093070ba95a4dde24","src/zlib/contrib/vstudio/vc10/zlibvc.def":"a228e521a561d4456c83c7081b4e9950cfce99133af7d5fdd27f12a8fd53efde","src/zlib/contrib/vstudio/vc10/zlibvc.sln":"e659860f705f31b87ea9139a3cb4ebe1561e120bce495383a54614fc82b49990","src/zlib/contrib/vstudio/vc10/zlibvc.vcxproj":"efad8cb150c0e5122f8c700d95c5de659dff92b171917c66bdbd082fff500b58","src/zlib/contrib/vstudio/vc10/zlibvc.vcxproj.filters":"c801732b7c7017796add50d2b71a228f99f95a46650baad307ff7e8358a2bfb0","src/zlib/contrib/vstudio/vc11/miniunz.vcxproj":"746e4c11fb8af4bcd6a9d68ba81ed1dc366a5de3bed56b291ee969ad733a7bb0","src/zlib/contrib/vstudio/vc11/minizip.vcxproj":"340617cae9cf4fcb003308021d3782ec3639e60d62d79a3aafc0a50bb55b061e","src/zlib/contrib/vstudio/vc11/testzlib.vcxproj":"99eadfdf2e41bc036141c174c4d0035d87572ce5795dcc28f39133f818a79d08","src/zlib/contrib/vstudio/vc11/testzlibdll.vcxproj":"583bdef522b0176829f0d8139ea2a88b9cbc14379d1334f3a863989ed3df9b67","src/zlib/contrib/vstudio/vc11/zlib.rc":"6041a4727ea47520058a5b4bb8de87592883eb7f26dd39df62879c347f3888d1","src/zlib/contrib/vstudio/vc11/zlibstat.vcxproj":"b07f792843d05ac883391075bc3b9625437490d8d40944ad359aa2134a09a3aa","src/zlib/contrib/vstudio/vc11/zlibvc.def":"a228e521a561d4456c83c7081b4e9950cfce99133af7d5fdd27f12a8fd53efde","src/zlib/contrib/vstudio/vc11/zlibvc.sln":"27389b515997defd080519f95aff87e89fcbe8b26d73c5ebb73c544cfef4d60e","src/zlib/contrib/vstudio/vc11/zlibvc.vcxproj":"d02d014ef957119a6fd0ab243c892b74d1592b117750b95fed21097c8ed922d9","src/zlib/contrib/vstudio/vc12/miniunz.vcxproj":"1494af54570f6e93852932956d49a8c25e57b5abc1ac979945605ca9143df9f8","src/zlib/contrib/vstudio/vc12/minizip.vcxproj":"9bf128ed6760ca5f019006f178b1c65f4c7ff122dba8d297b64b0eb72feeb120","src/zlib/contrib/vstudio/vc12/testzlib.vcxproj":"be88bc1220c0447c2379fdab3ac88055f58a8a788d3e9cec494342187e760eaf","src/zlib/contrib/vstudio/vc12/testzlibdll.vcxproj":"93416510256935d79625dc9fd349cfce6968c062d42a138bec404a26b2f92f5e","src/zlib/contrib/vstudio/vc12/zlib.rc":"90067be57a8c5df594a850352642f8b1dcb32e3d088d3805ebafe75a27412b74","src/zlib/contrib/vstudio/vc12/zlibstat.vcxproj":"faa229a851c76b77d65bb4742d8369efe566652bb6a1447d1e3539f289b5313d","src/zlib/contrib/vstudio/vc12/zlibvc.def":"a228e521a561d4456c83c7081b4e9950cfce99133af7d5fdd27f12a8fd53efde","src/zlib/contrib/vstudio/vc12/zlibvc.sln":"162e0faa80a56d89eea71a0b89377708eec2faa0dc72091cc0abb07fbdea49a0","src/zlib/contrib/vstudio/vc12/zlibvc.vcxproj":"8ac8cb2d29b880a738011d29d0511af9b14f321bed90f674109c446f4108d442","src/zlib/contrib/vstudio/vc14/miniunz.vcxproj":"0312511d4a30cea979c4e36edf994a537ed8a9d924f6b5c536cbcd094773c11f","src/zlib/contrib/vstudio/vc14/minizip.vcxproj":"9e7bb7a6ac723e4b2db900627c366f9bb93a351381995d9c69a50c0126f64233","src/zlib/contrib/vstudio/vc14/testzlib.vcxproj":"88667873d9d61d65016b9501ca925532eb55f56230e5911d3e2a01cd8a9fb2a4","src/zlib/contrib/vstudio/vc14/testzlibdll.vcxproj":"69f544898b4275cd3d8e19b8f1f8cb39c1cb98a30cdb033242e4b94c57bfa150","src/zlib/contrib/vstudio/vc14/zlib.rc":"90067be57a8c5df594a850352642f8b1dcb32e3d088d3805ebafe75a27412b74","src/zlib/contrib/vstudio/vc14/zlibstat.vcxproj":"5629eb0cc30674a39aa3636f1cdd190393b0dbd4c69a35e36ad85b6340055605","src/zlib/contrib/vstudio/vc14/zlibvc.def":"a228e521a561d4456c83c7081b4e9950cfce99133af7d5fdd27f12a8fd53efde","src/zlib/contrib/vstudio/vc14/zlibvc.sln":"47a50bbde8ca6336cecd8c0e4b65e515fc46ae84c7b61008ac9864162f777286","src/zlib/contrib/vstudio/vc14/zlibvc.vcxproj":"09f496a2ad3afdd5e3f36b7285440369dcac4559656edc00ed7a74c7ec9fa10f","src/zlib/contrib/vstudio/vc9/miniunz.vcproj":"7db9b2ef5ff05d3de4ba633feab10e85d45434c865d520ffa1974421904996f3","src/zlib/contrib/vstudio/vc9/minizip.vcproj":"7797a9ad3c0056f3a3cf8fcde7618acd1d151c65d15f841fccd8d9d878ae7bb0","src/zlib/contrib/vstudio/vc9/testzlib.vcproj":"8df405917800adccee6bad2116022c2c82d661b37ea40ea16405fe4dbcb4b69f","src/zlib/contrib/vstudio/vc9/testzlibdll.vcproj":"cde6806f5c81d1fc311f9921c17ba56f8e386d097783a6a90875d385837c47e7","src/zlib/contrib/vstudio/vc9/zlib.rc":"6041a4727ea47520058a5b4bb8de87592883eb7f26dd39df62879c347f3888d1","src/zlib/contrib/vstudio/vc9/zlibstat.vcproj":"d393d418d827ad9fb9c6516f1a7620371d15e3f5afef8ba60b51e50acc7199e9","src/zlib/contrib/vstudio/vc9/zlibvc.def":"a228e521a561d4456c83c7081b4e9950cfce99133af7d5fdd27f12a8fd53efde","src/zlib/contrib/vstudio/vc9/zlibvc.sln":"26e58d4b2cfcd941c367fb2a18537b3b9f002f2ac1278b700ea1129c50501452","src/zlib/contrib/vstudio/vc9/zlibvc.vcproj":"eaca98fcf166738b59fcdbd179dac9f98f985c6ba49212b186343a998816f081","src/zlib/crc32.c":"ec3ff0f97858b228513027a490e4330cbb23c6fbdd24d839902ffa89854f209c","src/zlib/crc32.h":"9a2223575183ac2ee8a247f20bf3ac066e8bd0140369556bdbdffc777435749e","src/zlib/deflate.c":"4470e36709ce7d6067fa3e8f60bb7f693b055bee42a0d6655ed71faa2db87fde","src/zlib/deflate.h":"0db1b5ef79ca6ba0f508b7b8bdaa11af45c5ebe2c89ab4f1086dc22b963a52fa","src/zlib/doc/algorithm.txt":"992590931e982c0765286c2d83f6e9ff0a95aabb08e28c30c52bae3e8c4bd5ad","src/zlib/doc/crc-doc.1.0.pdf":"064f9252d6e2e15ea56c2bd18e160e5c9c84bcd137c11a7af497aaa511ace998","src/zlib/doc/rfc1950.txt":"8f0475a5c984657bf26277f73df9456c9b97f175084f0c1748f1eb1f0b9b10b9","src/zlib/doc/rfc1951.txt":"5ebf4b5b7fe1c3a0c0ab9aa3ac8c0f3853a7dc484905e76e03b0b0f301350009","src/zlib/doc/rfc1952.txt":"164ef0897b4cbec63abf1b57f069f3599bd0fb7c72c2a4dee21bd7e03ec9af67","src/zlib/doc/txtvsbin.txt":"d1549fb75137f03102798f70fd34ff76285e717ddd520dd82274c1c0510eacf0","src/zlib/examples/README.examples":"1bc1c677bbebe1aa5e85015bb62f0cf3fcdbf95652d30494159bee6166c1854a","src/zlib/examples/enough.c":"c14a257c60bbe0d65bb54746dd97774a1853ef9e3f78db118a27d8bc0d26d738","src/zlib/examples/fitblk.c":"fd8aaaefd5eb3d9fc388bdc5b715d1c6993ecc9367f5432d3b120a0278904edc","src/zlib/examples/gun.c":"3bfd36b06284ba97d6105b8a6a5d18b2b34b75b3a1285f16d018680fb174915f","src/zlib/examples/gzappend.c":"6de91c8305e37560117bff44136abff72b16b028c0bda0bbac7ea07e4988b0ce","src/zlib/examples/gzjoin.c":"90b9d6c39a5fc91cf1cc9b96b025a508a8015dc502cd9374c754b44078593f57","src/zlib/examples/gzlog.c":"196872021c96099fd30c880ac2cccd1350fdbd81179731f3914153a26ebf72e9","src/zlib/examples/gzlog.h":"681f280437f867820bf39880e2f4fc641d402879e399ba2e6a31d73feefe8edc","src/zlib/examples/gznorm.c":"e5a8f5c3b107f27212f7d5fbfcf072a337a1b4ea32929ae31c168997438a5cc0","src/zlib/examples/zlib_how.html":"80fb647be8450bd7a07d8495244e1f061dfbdbdb53172ca24e7ffff8ace9c72f","src/zlib/examples/zpipe.c":"68140a82582ede938159630bca0fb13a93b4bf1cb2e85b08943c26242cf8f3a6","src/zlib/examples/zran.c":"10f9568b1f54cdb7474a38c5bc479aa0edb07a0eed2e999bdad4c521f6b25330","src/zlib/examples/zran.h":"9a0d4c15f898c43deae2c5e98a5c66c637a1b25573d662fe91a789c386eaf971","src/zlib/gzclose.c":"94446cf8cde67c30e64d0a335b0c941fd3fbad2e77f30180d12e61f9c2a5a6b8","src/zlib/gzguts.h":"40d57fbcef5d4d849e416e03b680026b18302e4b0da5907a96a012d7ced91b8c","src/zlib/gzlib.c":"635b7b6df79a5ce6e0f951669e4c82704d7972d8afb87278b9155c2cb4c5066f","src/zlib/gzread.c":"41c69d43fb3974bae58d9169aea3514221f70dc77bb7a35c79626dd3be01adf2","src/zlib/gzwrite.c":"c7454689751c8f41ec63a1381a0053fb149095abe1c3b89c8a996b2d7ac8adce","src/zlib/infback.c":"6a6cfe3d7e239d590692bc2664ac58d3ef92be30ff4cb3c6dbf5deed28f79eb5","src/zlib/inffast.c":"41d93aefdbfee5455809130af74fcc76cf7259b1aa8b34d0060d14e57463e8bb","src/zlib/inffast.h":"7d8c1c873ce9bc346ad6005bb9d75cce5c6352aaf7395385be216a9452a34908","src/zlib/inffixed.h":"237ba710f090e432b62ebf963bee8b302867e9691406b2d3f8ee89ee7bfef9b0","src/zlib/inflate.c":"f1679575fef1717d908dd09d7bfe8fff89c21941cadd7c255a2ccccfba3a287e","src/zlib/inflate.h":"e8d4a51b07694bf48cb91979c19974cf6a5ab0b8a09d26ec0d14df349230673e","src/zlib/inftrees.c":"b9db40bbb68b63dccbcdfa78d687751e33178af8669f1c1236309cfd5d2edc0e","src/zlib/inftrees.h":"44084a93673386db6282dcb61d739c84518e10dff66d1c6850715137c827464c","src/zlib/make_vms.com":"14ed54bdd391c1648cedfb69d8a73a26dcc7f1187d59b0f18d944b7665cec85b","src/zlib/msdos/Makefile.bor":"292ab363f7ffbc4ae84d37cd9bdffd2dac1003bee52d223a8489844870f20702","src/zlib/msdos/Makefile.dj2":"9208450c2ae6dcbfcc25560b5b9ca763f461e7246e37b0552474edf8fa898906","src/zlib/msdos/Makefile.emx":"c749d6ec7f88e8e639d4f03bdbdcbbe9d1c304210be4c4be621ceb22961d3d64","src/zlib/msdos/Makefile.msc":"0e021a6f42212415b060e4ad468eb415d0a8c1f343137fb9dff2cb8f9ead3027","src/zlib/msdos/Makefile.tc":"2ae12ee2a3e62f7c5a0520d0fbe4adee772bc07fe816002b07ccb43db3daa76a","src/zlib/nintendods/Makefile":"ea5823efe6830132294eddf2f56dbd7db8712244c210bb4968c431b1a91bd066","src/zlib/nintendods/README":"e362426c47b39ff6a7d6c75c6660b20abf076cdfa5e1e421716dc629a71aef95","src/zlib/old/Makefile.emx":"d811f032272aae50123a889297af3a02fbd60d1e42bbef11466462f627ff7b5b","src/zlib/old/Makefile.riscos":"d1a488b160fbfd53272b68a913283a4be08ba9d490796b196dddb2ba535b41e0","src/zlib/old/README":"551a0f4d91fe0f827a31cbdfbb4a71d1f3dc4d06564d80a3f526b749dd104d11","src/zlib/old/descrip.mms":"8ff08c35c056df9c986f23c09cf8936db63ccf12c3c42f7d18a48b36f060cff7","src/zlib/old/os2/Makefile.os2":"6ad247c00f00ff42fd2d62555e86251cef06e4079378241b5f320c227507d51d","src/zlib/old/os2/zlib.def":"ea9c61876d2e20b67ef2d9495991a32798eb40d13ede95859a2f4f03b65b9b61","src/zlib/old/visual-basic.txt":"1727650acbde9a9e6aec9438896377e46a12699cca5d46c5399cef524dedc614","src/zlib/os400/README400":"5eb702a0dd460e2bea59ee83014c3f975e892057850c639f793bb740044a38ba","src/zlib/os400/bndsrc":"3c36a17975eed5a8d33bc5443b39fead1e68c01393496be9c1f4a61444bcb0f6","src/zlib/os400/make.sh":"143394d1e3876c61c29078c0e47310e726e1f5bd42739fe92df9ece65711655f","src/zlib/os400/zlib.inc":"dede38961ae2e7a2590343bf1ff558c6f51e46714dec33f2d11d8c34899b3875","src/zlib/qnx/package.qpg":"d521336be75bdd145281c6d166241905751ec97093ecd6fec97a313f631ac0e1","src/zlib/test/example.c":"64ae90d60b40a8aec4700e5c4e7a71898ebb92948b7a07f939b3e763cb3e8b35","src/zlib/test/infcover.c":"f654f3fcc74b33bd95cda63d13fe0ce589bcfe965544e0c17ee597d75efbd090","src/zlib/test/minigzip.c":"f9777d1e8b337573e12daa8091dcf22e88a9b155fc0acad15b8224c377bfe027","src/zlib/treebuild.xml":"89b50165782643554a38d5c58c203d9648b540e5a455531dcb58b5676a019955","src/zlib/trees.c":"b338f1ec9038bd77efc09c8fdb99ef27b5db5b3da9baa301e544adc8e3b6a662","src/zlib/trees.h":"bb0a9d3ca88ee00c81adb7c636e73b97085f6ef1b52d6d58edbe2b6dc3adeb4d","src/zlib/uncompr.c":"7b3d8ca0f10ef7c74044c3172ca8f9f50389cd0f270ee4517f438e7e06be5623","src/zlib/watcom/watcom_f.mak":"7e039b912f9cffaa40835281430bb284fa9042b0a0d12f6b34700a06bca6576e","src/zlib/watcom/watcom_l.mak":"d11b4064604a034725860e63e3f6d347056372e4b1675b183e20a93533b20cc9","src/zlib/win32/DLL_FAQ.txt":"9e00778319381e6275691dd3a89410c99065b8c0c5db96473abe8c859cbdefd8","src/zlib/win32/Makefile.bor":"7d73a0d2c3e38b7c610bbc9c22f683a4fe1ab9b8b65649a3a8ac4ff7fcc14ba6","src/zlib/win32/Makefile.gcc":"97140c30506a8f6b2edb6b3d8a1b6b539d7929d4b957deba9950301090f579bf","src/zlib/win32/Makefile.msc":"235529bd529d4690d5d4b7871fdd0a1f118f2fe18862cbdec5f5ac674c55a60d","src/zlib/win32/README-WIN32.txt":"f414b3702f8d3bf1de42e0f41604bd78c44e537aae16b6107e3cdaa5759caa16","src/zlib/win32/VisualC.txt":"9ec0babd46eaa012371dee2d3a8a55d9c7130f7895512c3371c737e4a7f6a997","src/zlib/win32/zlib.def":"c00693a5c825f8bfbdb68124fd03cb2fa5269338071147bdaa14434aaf3962b9","src/zlib/win32/zlib1.rc":"54e161029b59e99a4f9cb2281b956f00ecfb1814318ddef9c741ff4f832c5c1d","src/zlib/zconf.h":"80e0a31a4c0e6f20d1bad0df99271b9d535aa9f7c4e62f1a54f643adb4c6dfa2","src/zlib/zconf.h.cmakein":"bb12900d39488e6a9ed67ebd7cf5599f3ced8937b7077d4d5001e470c7a1392e","src/zlib/zconf.h.in":"80e0a31a4c0e6f20d1bad0df99271b9d535aa9f7c4e62f1a54f643adb4c6dfa2","src/zlib/zlib.3":"aefd0162070fcb0379dc18e27b039253cd98c148104c1097dd60e0d0b435e564","src/zlib/zlib.3.pdf":"91343dffd2876dcf4af567f299ce99872b066232451093d6d12e02e4654873d8","src/zlib/zlib.h":"a980a0d104198a53cc220c51ab5856e5be901bec8a2d02e0ee79a8754219dfed","src/zlib/zlib.map":"33e2a7c4defd6222945bb0f7191b6380afb4f518e804af86a44aad4a9090bf9e","src/zlib/zlib.pc.cmakein":"2f1d0b18ce37c2af415a469857f02aee2c41a58877aff21d29e9c6db32b55cb7","src/zlib/zlib.pc.in":"04c01cc2e1a0ed123518b5855f585c93a24526dd88982c414111ea1fc9f07997","src/zlib/zlib2ansi":"b3f9c88abbdf16143e5d5110e44fff198bcda9ee1358e036c8d445e9d0cbce85","src/zlib/zutil.c":"8108af451ad14271065844736ac7c436275b92826c319318070508d769371428","src/zlib/zutil.h":"cf94d865e3a9162c0571cba7f74c8f01efbdca26b981d6cc9c545d4c3991e3c2"},"package":"56ee889ecc9568871456d42f603d6a0ce59ff328d291063a45cbdf0036baf6db"} +\ No newline at end of file diff --git a/meta-balena-rust/recipes-devtools/rust/libstd-rs_1.62.0.bb b/meta-balena-rust/recipes-devtools/rust/libstd-rs_1.62.0.bb deleted file mode 100644 index eec0245ae1..0000000000 --- a/meta-balena-rust/recipes-devtools/rust/libstd-rs_1.62.0.bb +++ /dev/null @@ -1,7 +0,0 @@ -require rust-source.inc -require libstd-rs.inc - -# libstd moved from src/libstd to library/std in 1.47+ -S = "${RUSTSRC}/library/std" - -BBCLASSEXTEND = "nativesdk" diff --git a/meta-balena-rust/recipes-devtools/rust/libstd-rs.inc b/meta-balena-rust/recipes-devtools/rust/libstd-rs_1.75.0.bb similarity index 55% rename from meta-balena-rust/recipes-devtools/rust/libstd-rs.inc rename to meta-balena-rust/recipes-devtools/rust/libstd-rs_1.75.0.bb index 987956344a..d2bf266f9d 100644 --- a/meta-balena-rust/recipes-devtools/rust/libstd-rs.inc +++ b/meta-balena-rust/recipes-devtools/rust/libstd-rs_1.75.0.bb @@ -1,8 +1,16 @@ SUMMARY = "Rust standard libaries" HOMEPAGE = "http://www.rust-lang.org" SECTION = "devel" -LICENSE = "MIT | Apache-2.0" -LIC_FILES_CHKSUM = "file://../../COPYRIGHT;md5=93a95682d51b4cb0a633a97046940ef0" +LICENSE = "(MIT | Apache-2.0) & Unicode-TOU" +LIC_FILES_CHKSUM = "file://../../COPYRIGHT;md5=c2cccf560306876da3913d79062a54b9" + +require rust-source.inc + +# The dummy crate named `sysroot` represents the standard library target. +# +# See fd4c81f4c19e ("Add a `sysroot` crate to represent the standard library crates") +# https://github.com/rust-lang/rust/pull/108865/ +S = "${RUSTSRC}/library/sysroot" RUSTLIB_DEP = "" inherit cargo @@ -17,8 +25,6 @@ RUSTFLAGS += "-Cembed-bitcode=yes" # Needed so cargo can find libbacktrace RUSTFLAGS += "-L ${STAGING_LIBDIR} -C link-arg=-Wl,-soname,libstd.so" -S = "${RUSTSRC}/src/libstd" - CARGO_FEATURES ?= "panic-unwind backtrace" CARGO_BUILD_FLAGS += "--features '${CARGO_FEATURES}'" CARGO_VENDORING_DIRECTORY = "${RUSTSRC}/vendor" @@ -35,6 +41,13 @@ do_install () { # With the incremental build support added in 1.24, the libstd deps directory also includes dependency # files that get installed. Those are really only needed to incrementally rebuild the libstd library # itself and don't need to be installed. - rm -f ${B}/${TARGET_SYS}/${BUILD_DIR}/deps/*.d - cp ${B}/${TARGET_SYS}/${BUILD_DIR}/deps/* ${D}${rustlibdir} + rm -f ${B}/${RUST_TARGET_SYS}/${BUILD_DIR}/deps/*.d + cp ${B}/${RUST_TARGET_SYS}/${BUILD_DIR}/deps/* ${D}${rustlibdir} } + +BBCLASSEXTEND = "nativesdk" + +# Since 1.70.0 upgrade this fails to build with gold: +# http://errors.yoctoproject.org/Errors/Details/708194/ +# ld: error: version script assignment of to symbol __rust_alloc_error_handler_should_panic failed: symbol not defined +LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd', '', d)}" diff --git a/meta-balena-rust/recipes-devtools/rust/rust-cross-canadian-common.inc b/meta-balena-rust/recipes-devtools/rust/rust-cross-canadian-common.inc deleted file mode 100644 index 1f21c8af26..0000000000 --- a/meta-balena-rust/recipes-devtools/rust/rust-cross-canadian-common.inc +++ /dev/null @@ -1,54 +0,0 @@ - -RUST_ALTERNATE_EXE_PATH = "${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-config" - -require rust.inc - -DEPENDS += "rust-llvm (=${PV})" - -inherit cross-canadian - -DEPENDS += " \ - virtual/${HOST_PREFIX}gcc-crosssdk \ - virtual/nativesdk-libc rust-llvm-native \ - virtual/${TARGET_PREFIX}compilerlibs \ - virtual/nativesdk-${HOST_PREFIX}compilerlibs \ - gcc-cross-${TARGET_ARCH} \ - " - -# The host tools are likely not to be able to do the necessary operation on -# the target architecturea. Alternatively one could check compatibility -# between host/target. -EXCLUDE_FROM_SHLIBS_${RUSTLIB_TARGET_PN} = "1" - -DEBUG_PREFIX_MAP = "-fdebug-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR} \ - -fdebug-prefix-map=${STAGING_DIR_HOST}= \ - -fdebug-prefix-map=${STAGING_DIR_NATIVE}= \ - " - -python do_rust_gen_targets () { - wd = d.getVar('WORKDIR') + '/targets/' - rust_gen_target(d, 'TARGET', wd, d.getVar('TARGET_LLVM_FEATURES') or "", d.getVar('TARGET_LLVM_CPU'), d.getVar('TARGET_ARCH')) - rust_gen_target(d, 'HOST', wd, "", "generic", d.getVar('HOST_ARCH')) - rust_gen_target(d, 'BUILD', wd, "", "generic", d.getVar('BUILD_ARCH')) -} - -INHIBIT_DEFAULT_RUST_DEPS = "1" - -export WRAPPER_TARGET_CC = "${CCACHE}${TARGET_PREFIX}gcc --sysroot=${STAGING_DIR_TARGET} ${TARGET_CC_ARCH} ${SECURITY_NOPIE_CFLAGS}" -export WRAPPER_TARGET_CXX = "${CCACHE}${TARGET_PREFIX}g++ --sysroot=${STAGING_DIR_TARGET} ${TARGET_CC_ARCH} ${SECURITY_NOPIE_CFLAGS}" -export WRAPPER_TARGET_CCLD = "${TARGET_PREFIX}gcc --sysroot=${STAGING_DIR_TARGET} ${TARGET_CC_ARCH} ${SECURITY_NOPIE_CFLAGS}" -export WRAPPER_TARGET_LDFLAGS = "${TARGET_LDFLAGS}" -export WRAPPER_TARGET_AR = "${TARGET_PREFIX}ar" - -python do_configure:prepend() { - targets = [d.getVar("TARGET_SYS", True), "{}-unknown-linux-gnu".format(d.getVar("HOST_ARCH", True))] - hosts = ["{}-unknown-linux-gnu".format(d.getVar("HOST_ARCH", True))] -} - -INSANE_SKIP:${RUSTLIB_TARGET_PN} = "file-rdeps arch ldflags" -SKIP_FILEDEPS:${RUSTLIB_TARGET_PN} = "1" - -INHIBIT_PACKAGE_DEBUG_SPLIT = "1" -INHIBIT_PACKAGE_STRIP = "1" -INHIBIT_SYSROOT_STRIP = "1" - diff --git a/meta-balena-rust/recipes-devtools/rust/rust-cross-canadian.inc b/meta-balena-rust/recipes-devtools/rust/rust-cross-canadian.inc index 8bbbd61bdc..7bfef6d175 100644 --- a/meta-balena-rust/recipes-devtools/rust/rust-cross-canadian.inc +++ b/meta-balena-rust/recipes-devtools/rust/rust-cross-canadian.inc @@ -1,78 +1,91 @@ +SUMMARY = "Rust compiler and runtime libaries (cross-canadian for ${TARGET_ARCH} target)" +PN = "rust-cross-canadian-${TRANSLATED_TARGET_ARCH}" -require rust-cross-canadian-common.inc +inherit rust-target-config +inherit rust-common -RUSTLIB_TARGET_PN = "rust-cross-canadian-rustlib-target-${TRANSLATED_TARGET_ARCH}" -RUSTLIB_HOST_PN = "rust-cross-canadian-rustlib-host-${TRANSLATED_TARGET_ARCH}" -RUSTLIB_SRC_PN = "rust-cross-canadian-src" -RUSTLIB_PKGS = "${RUSTLIB_SRC_PN} ${RUSTLIB_TARGET_PN} ${RUSTLIB_HOST_PN}" -PN = "rust-cross-canadian-${TRANSLATED_TARGET_ARCH}" +LICENSE = "MIT" + +MODIFYTOS = "0" + +DEPENDS += "virtual/${SDK_PREFIX}gcc virtual/nativesdk-libc virtual/nativesdk-${SDK_PREFIX}compilerlibs" -PACKAGES = "${RUSTLIB_PKGS} ${PN}" -RDEPENDS:${PN} += "${RUSTLIB_PKGS}" +SRC_URI += "file://target-rust-ccld.c" +LIC_FILES_CHKSUM = "file://target-rust-ccld.c;md5=af4e0e29f81a34cffe05aa07c89e93e9;endline=7" +S = "${WORKDIR}" -# The default behaviour of x.py changed in 1.47+ so now we need to -# explicitly ask for the stage 2 compiler to be assembled. -do_compile () { - rust_runx build --stage 2 +# Need to use our SDK's sh here, see #14878 +create_sdk_wrapper () { + file="$1" + shift + cat <<- EOF > "${file}" + #!/bin/sh + \$$1 \$@ + EOF + + chmod +x "$file" } do_install () { # Rust requires /usr/lib to contain the libs. - # Similar story is with /usr/bin ruquiring `lib` to be at the same level. # The required structure is retained for simplicity. SYS_LIBDIR=$(dirname ${D}${libdir}) SYS_BINDIR=$(dirname ${D}${bindir}) RUSTLIB_DIR=${SYS_LIBDIR}/${TARGET_SYS}/rustlib - install -d "${SYS_BINDIR}" - cp build/${SNAPSHOT_BUILD_SYS}/stage2/bin/* ${SYS_BINDIR} - for i in ${SYS_BINDIR}/*; do - chrpath -r "\$ORIGIN/../lib" ${i} - done - - install -d "${D}${libdir}" - cp -pRd build/${SNAPSHOT_BUILD_SYS}/stage2/lib/${TARGET_SYS}/*.so ${SYS_LIBDIR} - cp -pRd build/${SNAPSHOT_BUILD_SYS}/stage2/lib/${TARGET_SYS}/rustlib ${RUSTLIB_DIR} - - for i in ${SYS_LIBDIR}/*.so; do - chrpath -r "\$ORIGIN/../lib" ${i} - done - for i in ${RUSTLIB_DIR}/*/lib/*.so; do - chrpath -d ${i} - done - - install -m 0644 "${WORKDIR}/targets/${TARGET_SYS}.json" "${RUSTLIB_DIR}" - - SRC_DIR=${RUSTLIB_DIR}/src/rust - install -d ${SRC_DIR}/src/llvm-project - cp -R --no-dereference build/${SNAPSHOT_BUILD_SYS}/stage2/lib/rustlib/src/rust/src/llvm-project/libunwind ${SRC_DIR}/src/llvm-project - cp -R --no-dereference build/${SNAPSHOT_BUILD_SYS}/stage2/lib/rustlib/src/rust/library ${SRC_DIR} - cp --no-dereference build/${SNAPSHOT_BUILD_SYS}/stage2/lib/rustlib/src/rust/Cargo.lock ${SRC_DIR} - # Remove executable bit from any files so then SDK doesn't try to relocate. - chmod -R -x+X ${SRC_DIR} + install -d ${RUSTLIB_DIR} + install -m 0644 "${RUST_TARGETS_DIR}/${RUST_HOST_SYS}.json" "${RUSTLIB_DIR}" + install -m 0644 "${RUST_TARGETS_DIR}/${RUST_TARGET_SYS}.json" "${RUSTLIB_DIR}" + + # Uses SDK's CC as linker so linked binaries works out of box. + # We have a problem as rust sets LD_LIBRARY_PATH and this will break running host + # binaries (even /bin/sh) in the SDK as they detect a newer glibc from the SDK + # in those paths and we hit symbol errors. We saw particular problems with symbol + # mismatch on ubuntu1804 during development. To avoid this we have an SDK built + # binary which unsets LD_LIBRARY_PATH, which can then call the wrapper script + # where the context is easier to do the env maniupations needed + install -d ${SYS_BINDIR} + outfile="${SYS_BINDIR}/target-rust-ccld" + ${CC} ${WORKDIR}/target-rust-ccld.c -o $outfile + chmod +x "$outfile" + create_sdk_wrapper "${SYS_BINDIR}/target-rust-ccld-wrapper" "CC" ENV_SETUP_DIR=${D}${base_prefix}/environment-setup.d mkdir "${ENV_SETUP_DIR}" - ENV_SETUP_SH="${ENV_SETUP_DIR}/rust.sh" + RUST_ENV_SETUP_SH="${ENV_SETUP_DIR}/rust.sh" + + RUST_TARGET_TRIPLE=`echo ${RUST_TARGET_SYS} | tr '[:lower:]' '[:upper:]' | sed 's/-/_/g'` + RUST_HOST_TRIPLE=`echo ${RUST_HOST_SYS} | tr '[:lower:]' '[:upper:]' | sed 's/-/_/g'` + SDKLOADER=${@bb.utils.contains('SDK_ARCH', 'x86_64', 'ld-linux-x86-64.so.2', '', d)}${@bb.utils.contains('SDK_ARCH', 'i686', 'ld-linux.so.2', '', d)}${@bb.utils.contains('SDK_ARCH', 'aarch64', 'ld-linux-aarch64.so.1', '', d)}${@bb.utils.contains('SDK_ARCH', 'ppc64le', 'ld64.so.2', '', d)}${@bb.utils.contains('SDK_ARCH', 'riscv64', 'ld-linux-riscv64-lp64d.so.1', '', d)} - cat <<- EOF > "${ENV_SETUP_SH}" - export RUSTFLAGS="--sysroot=\$OECORE_NATIVE_SYSROOT/usr -C link-arg=--sysroot=\$OECORE_TARGET_SYSROOT -L\$OECORE_NATIVE_SYSROOT/usr/lib/${TARGET_SYS}/rustlib/${TARGET_SYS}/lib" + cat <<- EOF > "${RUST_ENV_SETUP_SH}" + export CARGO_TARGET_${RUST_TARGET_TRIPLE}_RUSTFLAGS="--sysroot=\$OECORE_TARGET_SYSROOT/usr -C link-arg=--sysroot=\$OECORE_TARGET_SYSROOT" + export CARGO_TARGET_${RUST_HOST_TRIPLE}_RUNNER="\$OECORE_NATIVE_SYSROOT/lib/${SDKLOADER}" export RUST_TARGET_PATH="\$OECORE_NATIVE_SYSROOT/usr/lib/${TARGET_SYS}/rustlib" EOF chown -R root.root ${D} + + CARGO_ENV_SETUP_SH="${ENV_SETUP_DIR}/cargo.sh" + cat <<- EOF > "${CARGO_ENV_SETUP_SH}" + export CARGO_HOME="\$OECORE_TARGET_SYSROOT/home/cargo" + mkdir -p "\$CARGO_HOME" + # Init the default target once, it might be otherwise user modified. + if [ ! -f "\$CARGO_HOME/config" ]; then + touch "\$CARGO_HOME/config" + echo "[build]" >> "\$CARGO_HOME/config" + echo 'target = "'${RUST_TARGET_SYS}'"' >> "\$CARGO_HOME/config" + echo '# TARGET_SYS' >> "\$CARGO_HOME/config" + echo '[target.'${RUST_TARGET_SYS}']' >> "\$CARGO_HOME/config" + echo 'linker = "target-rust-ccld"' >> "\$CARGO_HOME/config" + fi + + # Keep the below off as long as HTTP/2 is disabled. + export CARGO_HTTP_MULTIPLEXING=false + + export CARGO_HTTP_CAINFO="\$OECORE_NATIVE_SYSROOT/etc/ssl/certs/ca-certificates.crt" + EOF } -PKG_SYS_LIBDIR = "${SDKPATHNATIVE}/usr/lib" -PKG_SYS_BINDIR = "${SDKPATHNATIVE}/usr/bin" -PKG_RUSTLIB_DIR = "${PKG_SYS_LIBDIR}/${TARGET_SYS}/rustlib" -FILES:${PN} = "${PKG_SYS_LIBDIR}/*.so ${PKG_SYS_BINDIR} ${base_prefix}/environment-setup.d" -FILES:${RUSTLIB_TARGET_PN} = "${PKG_RUSTLIB_DIR}/${TARGET_SYS} ${PKG_RUSTLIB_DIR}/${TARGET_SYS}.json" -FILES:${RUSTLIB_HOST_PN} = "${PKG_RUSTLIB_DIR}/${BUILD_ARCH}-unknown-linux-gnu" -FILES:${RUSTLIB_SRC_PN} = "${PKG_RUSTLIB_DIR}/src" - -SUMMARY:${RUSTLIB_TARGET_PN} = "Rust cross canadian libaries for ${TARGET_SYS}" -SUMMARY:${RUSTLIB_HOST_PN} = "Rust cross canadian libaries for ${HOST_SYS}" -SUMMARY:${RUSTLIB_SRC_PN} = "Rust standard library sources for cross canadian toolchain" -SUMMARY:${PN} = "Rust crost canadian compiler" +FILES:${PN} += "${base_prefix}/environment-setup.d" diff --git a/meta-balena-rust/recipes-devtools/rust/rust-cross-canadian_1.62.0.bb b/meta-balena-rust/recipes-devtools/rust/rust-cross-canadian_1.62.0.bb deleted file mode 100644 index 766912c019..0000000000 --- a/meta-balena-rust/recipes-devtools/rust/rust-cross-canadian_1.62.0.bb +++ /dev/null @@ -1,6 +0,0 @@ -require rust-cross-canadian.inc -require rust-source.inc -require rust-snapshot.inc - -FILESEXTRAPATHS:prepend := "${THISDIR}/rust:" - diff --git a/meta-balena-rust/recipes-devtools/rust/rust-cross-canadian_1.75.0.bb b/meta-balena-rust/recipes-devtools/rust/rust-cross-canadian_1.75.0.bb new file mode 100644 index 0000000000..55865238ab --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/rust-cross-canadian_1.75.0.bb @@ -0,0 +1,2 @@ +inherit cross-canadian +require rust-cross-canadian.inc \ No newline at end of file diff --git a/meta-balena-rust/recipes-devtools/rust/rust-cross.inc b/meta-balena-rust/recipes-devtools/rust/rust-cross.inc deleted file mode 100644 index f6babfeeda..0000000000 --- a/meta-balena-rust/recipes-devtools/rust/rust-cross.inc +++ /dev/null @@ -1,66 +0,0 @@ -python do_rust_gen_targets () { - wd = d.getVar('WORKDIR') + '/targets/' - # It is important 'TARGET' is last here so that it overrides our less - # informed choices for BUILD & HOST if TARGET happens to be the same as - # either of them. - for thing in ['BUILD', 'HOST', 'TARGET']: - bb.debug(1, "rust_gen_target for " + thing) - features = "" - cpu = "generic" - arch = d.getVar('{}_ARCH'.format(thing)) - abi = "" - if thing is "TARGET": - abi = d.getVar('ABIEXTENSION') - # arm and armv7 have different targets in llvm - if arch == "arm" and target_is_armv7(d): - arch = 'armv7' - features = d.getVar('TARGET_LLVM_FEATURES') or "" - cpu = d.getVar('TARGET_LLVM_CPU') - rust_gen_target(d, thing, wd, features, cpu, arch, abi) -} - -# Otherwise we'll depend on what we provide -INHIBIT_DEFAULT_RUST_DEPS = "1" - -# Unlike native (which nicely maps it's DEPENDS) cross wipes them out completely. -# Generally, we (and cross in general) need the same things that native needs, -# so it might make sense to take it's mapping. For now, though, we just mention -# the bits we need explicitly. -DEPENDS += "rust-llvm-native" -DEPENDS += "rust-native" - -# In the cross compilation case, rustc doesn't seem to get the rpath quite -# right. It manages to include '../../lib/${TARGET_PREFIX}', but doesn't -# include the '../../lib' (ie: relative path from cross_bindir to normal -# libdir. As a result, we end up not being able to properly reference files in normal ${libdir}. -# Most of the time this happens to work fine as the systems libraries are -# subsituted, but sometimes a host system will lack a library, or the right -# version of a library (libtinfo was how I noticed this). -# -# FIXME: this should really be fixed in rust itself. -# FIXME: using hard-coded relative paths is wrong, we should ask bitbake for -# the relative path between 2 of it's vars. -HOST_POST_LINK_ARGS:append = " -Wl,-rpath=../../lib" -BUILD_POST_LINK_ARGS:append = " -Wl,-rpath=../../lib" - -# We need the same thing for the calls to the compiler when building the runtime crap -TARGET_CC_ARCH:append = " --sysroot=${STAGING_DIR_TARGET}" - -do_rust_setup_snapshot () { -} - -do_configure () { -} - -do_compile () { -} - -do_install () { - mkdir -p ${D}${prefix}/${base_libdir_native}/rustlib - cp ${WORKDIR}/targets/${TARGET_SYS}.json ${D}${prefix}/${base_libdir_native}/rustlib -} - -rust_cross_sysroot_preprocess() { - sysroot_stage_dir ${D}${prefix}/${base_libdir_native}/rustlib ${SYSROOT_DESTDIR}${prefix}/${base_libdir_native}/rustlib -} -SYSROOT_PREPROCESS_FUNCS += "rust_cross_sysroot_preprocess" diff --git a/meta-balena-rust/recipes-devtools/rust/rust-cross_1.62.0.bb b/meta-balena-rust/recipes-devtools/rust/rust-cross_1.62.0.bb deleted file mode 100644 index 5358d98da8..0000000000 --- a/meta-balena-rust/recipes-devtools/rust/rust-cross_1.62.0.bb +++ /dev/null @@ -1,8 +0,0 @@ -require rust.inc -inherit cross -require rust-cross.inc -require rust-source.inc - -DEPENDS += "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}compilerlibs virtual/libc" -PROVIDES = "virtual/${TARGET_PREFIX}rust" -PN = "rust-cross-${TUNE_PKGARCH}-${TCLIBC}" diff --git a/meta-balena-rust/recipes-devtools/rust/rust-crosssdk_1.62.0.bb b/meta-balena-rust/recipes-devtools/rust/rust-crosssdk_1.62.0.bb deleted file mode 100644 index 6ea8cb09b2..0000000000 --- a/meta-balena-rust/recipes-devtools/rust/rust-crosssdk_1.62.0.bb +++ /dev/null @@ -1,8 +0,0 @@ -require rust.inc -inherit crosssdk -require rust-cross.inc -require rust-source.inc - -DEPENDS += "virtual/${TARGET_PREFIX}gcc-crosssdk virtual/nativesdk-${TARGET_PREFIX}compilerlibs virtual/nativesdk-libc" -PROVIDES = "virtual/nativesdk-${TARGET_PREFIX}rust" -PN = "rust-crosssdk-${TUNE_PKGARCH}-${RUST_LIBC}" diff --git a/meta-balena-rust/recipes-devtools/rust/rust-llvm_1.62.0.bb b/meta-balena-rust/recipes-devtools/rust/rust-llvm_1.62.0.bb deleted file mode 100644 index 5b94e22f7b..0000000000 --- a/meta-balena-rust/recipes-devtools/rust/rust-llvm_1.62.0.bb +++ /dev/null @@ -1,6 +0,0 @@ -# check src/llvm-project/llvm/CMakeLists.txt for llvm version in use -# -LLVM_RELEASE = "13.0.0" -require rust-source.inc -require rust-llvm.inc - diff --git a/meta-balena-rust/recipes-devtools/rust/rust-llvm.inc b/meta-balena-rust/recipes-devtools/rust/rust-llvm_1.75.0.bb similarity index 76% rename from meta-balena-rust/recipes-devtools/rust/rust-llvm.inc rename to meta-balena-rust/recipes-devtools/rust/rust-llvm_1.75.0.bb index 9baad12dc8..13bdadb5e7 100644 --- a/meta-balena-rust/recipes-devtools/rust/rust-llvm.inc +++ b/meta-balena-rust/recipes-devtools/rust/rust-llvm_1.75.0.bb @@ -2,6 +2,12 @@ SUMMARY = "LLVM compiler framework (packaged with rust)" LICENSE ?= "Apache-2.0-with-LLVM-exception" HOMEPAGE = "http://www.rust-lang.org" +# check src/llvm-project/llvm/CMakeLists.txt for llvm version in use +# +LLVM_RELEASE = "17.0.6" + +require rust-source.inc + SRC_URI += "file://0002-llvm-allow-env-override-of-exe-path.patch;striplevel=2 \ file://0001-AsmMatcherEmitter-sort-ClassInfo-lists-by-name-as-we.patch;striplevel=2 \ file://0003-llvm-fix-include-benchmarks.patch;striplevel=2" @@ -10,7 +16,7 @@ S = "${RUSTSRC}/src/llvm-project/llvm" LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=8a15a0759ef07f2682d2ba4b893c9afe" -inherit cmake python3native +inherit cmake DEPENDS += "ninja-native rust-llvm-native" @@ -24,12 +30,15 @@ CXXFLAGS:remove = "-g" LLVM_DIR = "llvm${LLVM_RELEASE}" +RUST_LLVM_TARGETS ?= "ARM;AArch64;Mips;PowerPC;RISCV;X86" + EXTRA_OECMAKE = " \ -DCMAKE_BUILD_TYPE=Release \ - -DLLVM_TARGETS_TO_BUILD='ARM;AArch64;Mips;PowerPC;RISCV;X86' \ + -DLLVM_TARGETS_TO_BUILD='${RUST_LLVM_TARGETS}' \ -DLLVM_BUILD_DOCS=OFF \ -DLLVM_ENABLE_TERMINFO=OFF \ -DLLVM_ENABLE_ZLIB=OFF \ + -DLLVM_ENABLE_ZSTD=OFF \ -DLLVM_ENABLE_LIBXML2=OFF \ -DLLVM_ENABLE_FFI=OFF \ -DLLVM_INSTALL_UTILS=ON \ @@ -40,8 +49,22 @@ EXTRA_OECMAKE = " \ -DLLVM_TARGET_ARCH=${TARGET_ARCH} \ -DCMAKE_INSTALL_PREFIX:PATH=${libdir}/llvm-rust \ " + +# Forcibly disable the detection of these packages as otherwise +# it will look at the host Python install +EXTRA_OECMAKE += "\ + -DPY_PYGMENTS_FOUND=OFF \ + -DPY_PYGMENTS_LEXERS_C_CPP_FOUND=OFF \ + -DPY_YAML_FOUND=OFF \ +" + EXTRA_OECMAKE:append:class-target = "\ - -DCMAKE_CROSSCOMPILING:BOOL=ON \ + -DLLVM_BUILD_TOOLS=OFF \ + -DLLVM_TABLEGEN=${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-tblgen \ + -DLLVM_CONFIG_PATH=${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-config \ +" + +EXTRA_OECMAKE:append:class-nativesdk = "\ -DLLVM_BUILD_TOOLS=OFF \ -DLLVM_TABLEGEN=${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-tblgen \ -DLLVM_CONFIG_PATH=${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-config \ @@ -68,4 +91,4 @@ FILES:${PN}-staticdev =+ "${libdir}/llvm-rust/*/*.a" FILES:${PN} += "${libdir}/libLLVM*.so.* ${libdir}/llvm-rust/lib/*.so.* ${libdir}/llvm-rust/bin" FILES:${PN}-dev += "${datadir}/llvm ${libdir}/llvm-rust/lib/*.so ${libdir}/llvm-rust/include ${libdir}/llvm-rust/share ${libdir}/llvm-rust/lib/cmake" -BBCLASSEXTEND = "native" +BBCLASSEXTEND = "native nativesdk" diff --git a/meta-balena-rust/recipes-devtools/rust/rust-snapshot.inc b/meta-balena-rust/recipes-devtools/rust/rust-snapshot.inc index 3bd7b07cef..a52cb30c48 100644 --- a/meta-balena-rust/recipes-devtools/rust/rust-snapshot.inc +++ b/meta-balena-rust/recipes-devtools/rust/rust-snapshot.inc @@ -1,32 +1,58 @@ ## This is information on the rust-snapshot (binary) used to build our current release. -## snapshot info is taken from rust/src/stage0.txt +## snapshot info is taken from rust/src/stage0.json ## Rust is self-hosting and bootstraps itself with a pre-built previous version of itself. ## The exact (previous) version that has been used is specified in the source tarball. ## The version is replicated here. -## TODO: find a way to add additional SRC_URIs based on the contents of an -## earlier SRC_URI. -RS_VERSION = "1.61.0" -CARGO_VERSION = "1.61.0" -# TODO: Add hashes for other architecture toolchains as well. Make a script? -SRC_URI[rust-std-snapshot-x86_64.sha256sum] = "270b07aa5f2de52255a117e1e587138d77375ce0d09a1d7fead085f29b3977e9" -SRC_URI[rustc-snapshot-x86_64.sha256sum] = "21c4613f389ed130fbaaf88f1e984319f72b5fc10734569a5ba19e22ebb03abd" -SRC_URI[cargo-snapshot-x86_64.sha256sum] = "9461727d754f865ef2a87479d40bbe4c5176f80963b7c50b7797bc8940d7a0a0" +SNAPSHOT_VERSION = "1.74.0" -SRC_URI[rust-std-snapshot-aarch64.sha256sum] = "57d60a519dbce12146849f7e72d55f3cffe9cdcbff8d58e90bb62d3c016bb5c0" -SRC_URI[rustc-snapshot-aarch64.sha256sum] = "c996de6391e3ea94629fbc09b03bce186fcde345159f43ec95a82c500adb5e94" -SRC_URI[cargo-snapshot-aarch64.sha256sum] = "a055e6cfd9b5f8938780db6179d2ef92990c714ce64278337d7edf3d29c8ab62" +SRC_URI[cargo-snapshot-aarch64.sha256sum] = "a18dc9132cf76ccba90bcbb53b56a4d37ebfb34845f61e79f7b5d4710a269647" +SRC_URI[rust-std-snapshot-aarch64.sha256sum] = "c5ad01692bc08ce6f4db2ac815be63498b45013380c71f22b3d33bf3be767270" +SRC_URI[rustc-snapshot-aarch64.sha256sum] = "a49bb365481913ead305658e7e9dc621da7895036b840fb57b1bc85c721d07e6" -SRC_URI[rust-std-snapshot-powerpc64le.sha256sum] = "36c0ccff14c80419507561db050f9533f0abd43fc50f3ddb859c10df74b1c351" -SRC_URI[rustc-snapshot-powerpc64le.sha256sum] = "dc54893d747e4f3330515caa75e404f78c6c5475a1216d1428f5e7ce1c2e9602" -SRC_URI[cargo-snapshot-powerpc64le.sha256sum] = "09817011ff1ef4b7006387c7cabb6a059731792a9372533dec7d87e7f014444b" +SRC_URI[cargo-snapshot-i686.sha256sum] = "9f5b5226a69f95950a381ec5bb15dde7a90865a6df8aa0b470082a40d42d9f38" +SRC_URI[rust-std-snapshot-i686.sha256sum] = "69757b72def9c433753e8bb575c817fc1ba389cf1a9c25276db1491ec025e495" +SRC_URI[rustc-snapshot-i686.sha256sum] = "7a2bc1bf7e51942d32e82f461eacebe7f929c3eec210dcb7dc6624efd997d7da" + +SRC_URI[cargo-snapshot-loongarch64.sha256sum] = "77d6d55122150d8fc56d31fb166fd1b2ae48bff7376459c1b0030727fc604998" +SRC_URI[rust-std-snapshot-loongarch64.sha256sum] = "13b85a882e912d0d8b3228feb5c263d34ec353d483c9defbd3e6bba38935553b" +SRC_URI[rustc-snapshot-loongarch64.sha256sum] = "703e8c81f9ca3100fc459db92fd5899de62cf77393f334f98159cd97feb11633" + +SRC_URI[cargo-snapshot-powerpc.sha256sum] = "08ea8a345839f34d26f21b94ed6d458e6a38513999f7ddc05175c371983e6deb" +SRC_URI[rust-std-snapshot-powerpc.sha256sum] = "458ee056fbeccf1cf96c20506654e5e9104c4e8f23d46cd4bb9b97ff5b3f4d55" +SRC_URI[rustc-snapshot-powerpc.sha256sum] = "d4095cbe26ec197274dae9409e68843653e8c08c0b79e8cd74e72d9907e99816" + +SRC_URI[cargo-snapshot-powerpc64.sha256sum] = "696863642318f139634e6856f5e946ea970318ce79d4d9b1595871a70a662a89" +SRC_URI[rust-std-snapshot-powerpc64.sha256sum] = "7ec56629b7d887753ce3a895fb73b77d2d395acac30207c2b69237ef63279872" +SRC_URI[rustc-snapshot-powerpc64.sha256sum] = "ca162463db262df9d646687386a1c19f15c8ca9bf1f29eea94f2a8a6d7a6102d" + +SRC_URI[cargo-snapshot-powerpc64le.sha256sum] = "2eccd404aabe5137a8e45b6173c27d08862a0e674d5866be71aff1434f271d50" +SRC_URI[rust-std-snapshot-powerpc64le.sha256sum] = "785956d68855de18546c87d6d06cd2505cb8a10edba84327bf2b448420a31d55" +SRC_URI[rustc-snapshot-powerpc64le.sha256sum] = "8727b1a92e88ac1ce05198ee185dac86553edd7f50b726781c9ab64544b59809" + +SRC_URI[cargo-snapshot-riscv64gc.sha256sum] = "5b224e465e006b5fe959ad64d0df0540c4318ba4e39edd89794d520eef60b026" +SRC_URI[rust-std-snapshot-riscv64gc.sha256sum] = "2a500156825dde03a53c965e5764a440b1ebce973b8a31f21e8bd8104271d56e" +SRC_URI[rustc-snapshot-riscv64gc.sha256sum] = "f4f27f1c40208b61ea7e61f9edf2de1787aea78a1edb7fe15bceb20de5c7a4a3" + +SRC_URI[cargo-snapshot-s390x.sha256sum] = "06267377c811271d6e4ba6feea1d4b84a9f4c5c8d1dbd46092d0a0595f24e9b6" +SRC_URI[rust-std-snapshot-s390x.sha256sum] = "35142541b88a1244c8225c64ee18585446d7e67841a9335ccaa95acf2d34dde5" +SRC_URI[rustc-snapshot-s390x.sha256sum] = "41eae7788549aec58a6980ae6222d3330a01a37d1e7856d087a4e9c8a19aa890" + +SRC_URI[cargo-snapshot-x86_64.sha256sum] = "f219386d4569c40b660518e99267afff428c13bf980bda7a614c8d4038d013f6" +SRC_URI[rust-std-snapshot-x86_64.sha256sum] = "548413213012e2f62b08ed8a913a51210ae7402619027224580176031f2789ea" +SRC_URI[rustc-snapshot-x86_64.sha256sum] = "7d464be2ae0d6ce69f056d1ea9a8ce2b3b1d537418caea216fdd303903972181" + +SRC_URI[rust-std-snapshot-i586.sha256sum] = "bd4502462c5e2b2617b23f28862e544f14c4d02658f6d331f0cfbbba914aa4c0" + +SRC_URI[rust-std-snapshot-sparc64.sha256sum] = "68e96875ca7fc6ed0e023fcf752f28b95e9cc7d9881af4e8e167259fdaec7168" SRC_URI += " \ - https://static.rust-lang.org/dist/${RUST_STD_SNAPSHOT}.tar.xz;name=rust-std-snapshot-${RUST_BUILD_ARCH};subdir=rust-snapshot-components \ - https://static.rust-lang.org/dist/${RUSTC_SNAPSHOT}.tar.xz;name=rustc-snapshot-${RUST_BUILD_ARCH};subdir=rust-snapshot-components \ - https://static.rust-lang.org/dist/${CARGO_SNAPSHOT}.tar.xz;name=cargo-snapshot-${RUST_BUILD_ARCH};subdir=rust-snapshot-components \ + ${RUST_DIST_SERVER}/dist/${RUST_STD_SNAPSHOT}.tar.xz;name=rust-std-snapshot-${RUST_BUILD_ARCH};subdir=rust-snapshot-components \ + ${RUST_DIST_SERVER}/dist/${RUSTC_SNAPSHOT}.tar.xz;name=rustc-snapshot-${RUST_BUILD_ARCH};subdir=rust-snapshot-components \ + ${RUST_DIST_SERVER}/dist/${CARGO_SNAPSHOT}.tar.xz;name=cargo-snapshot-${RUST_BUILD_ARCH};subdir=rust-snapshot-components \ " -RUST_STD_SNAPSHOT = "rust-std-${RS_VERSION}-${RUST_BUILD_ARCH}-unknown-linux-gnu" -RUSTC_SNAPSHOT = "rustc-${RS_VERSION}-${RUST_BUILD_ARCH}-unknown-linux-gnu" -CARGO_SNAPSHOT = "cargo-${CARGO_VERSION}-${RUST_BUILD_ARCH}-unknown-linux-gnu" +RUST_DIST_SERVER = "https://static.rust-lang.org" +RUST_STD_SNAPSHOT = "rust-std-${SNAPSHOT_VERSION}-${RUST_BUILD_ARCH}-unknown-linux-gnu" +RUSTC_SNAPSHOT = "rustc-${SNAPSHOT_VERSION}-${RUST_BUILD_ARCH}-unknown-linux-gnu" +CARGO_SNAPSHOT = "cargo-${SNAPSHOT_VERSION}-${RUST_BUILD_ARCH}-unknown-linux-gnu" diff --git a/meta-balena-rust/recipes-devtools/rust/rust-source.inc b/meta-balena-rust/recipes-devtools/rust/rust-source.inc index fda26534e8..b14221b6cb 100644 --- a/meta-balena-rust/recipes-devtools/rust/rust-source.inc +++ b/meta-balena-rust/recipes-devtools/rust/rust-source.inc @@ -1,7 +1,24 @@ -SRC_URI += "https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz;name=rust" -SRC_URI[rust.sha256sum] = "6c00ef115c894c2645e60b5049a4f5dacf1dc0c993f3074f7ae4fdf4c755dd5e" +RUST_VERSION ?= "${@d.getVar('PV').split('-')[0]}" -RUSTSRC = "${WORKDIR}/rustc-${PV}-src" +SRC_URI += "https://static.rust-lang.org/dist/rustc-${RUST_VERSION}-src.tar.xz;name=rust \ + file://hardcodepaths.patch;patchdir=${RUSTSRC} \ + file://zlib-off64_t.patch;patchdir=${RUSTSRC} \ + file://0001-Revert-Map-source-absolute-paths-to-OUT_DIR-as-relat.patch;patchdir=${RUSTSRC} \ + file://rv32-missing-syscalls.patch;patchdir=${RUSTSRC} \ + file://rv32-rustix-libc-backend.patch;patchdir=${RUSTSRC} \ + file://rv32-cargo-rustix-0.38.19-fix.patch;patchdir=${RUSTSRC} \ + file://cargo-path.patch;patchdir=${RUSTSRC} \ + file://custom-target-cfg.patch;patchdir=${RUSTSRC} \ + file://rustc-bootstrap.patch;patchdir=${RUSTSRC} \ + file://target-build-value.patch;patchdir=${RUSTSRC} \ + file://0001-Handle-vendored-sources-when-remapping-paths.patch;patchdir=${RUSTSRC} \ + file://repro-issue-fix-with-v175.patch;patchdir=${RUSTSRC} \ +" +SRC_URI[rust.sha256sum] = "4526f786d673e4859ff2afa0bab2ba13c918b796519a25c1acce06dba9542340" + +RUSTSRC = "${WORKDIR}/rustc-${RUST_VERSION}-src" UPSTREAM_CHECK_URI = "https://forge.rust-lang.org/infra/other-installation-methods.html" UPSTREAM_CHECK_REGEX = "rustc-(?P\d+(\.\d+)+)-src" + +CVE_STATUS[CVE-2024-24576] = "not-applicable-platform: Issue only applies on Windows" diff --git a/meta-balena-rust/recipes-devtools/rust/rust-target.inc b/meta-balena-rust/recipes-devtools/rust/rust-target.inc deleted file mode 100644 index 3f637b3ba5..0000000000 --- a/meta-balena-rust/recipes-devtools/rust/rust-target.inc +++ /dev/null @@ -1,10 +0,0 @@ -require rust.inc - -DEPENDS += "rust-llvm (=${PV})" - -# Otherwise we'll depend on what we provide -INHIBIT_DEFAULT_RUST_DEPS:class-native = "1" -# We don't need to depend on gcc-native because yocto assumes it exists -PROVIDES:class-native = "virtual/${TARGET_PREFIX}rust" - -BBCLASSEXTEND = "native" diff --git a/meta-balena-rust/recipes-devtools/rust/rust-tools-cross-canadian.inc b/meta-balena-rust/recipes-devtools/rust/rust-tools-cross-canadian.inc deleted file mode 100644 index f0358551ae..0000000000 --- a/meta-balena-rust/recipes-devtools/rust/rust-tools-cross-canadian.inc +++ /dev/null @@ -1,38 +0,0 @@ - -require rust-cross-canadian-common.inc - -RUST_TOOLS_CLIPPY_PN = "rust-tools-clippy-cross-canadian-${TRANSLATED_TARGET_ARCH}" -RUST_TOOLS_RUSTFMT_PN = "rust-tools-rustfmt-cross-canadian-${TRANSLATED_TARGET_ARCH}" -RUST_TOOLS_PKGS = "${RUST_TOOLS_CLIPPY_PN} ${RUST_TOOLS_RUSTFMT_PN}" -PN = "rust-tools-cross-canadian-${TRANSLATED_TARGET_ARCH}" - -PACKAGES = "${RUST_TOOLS_CLIPPY_PN} ${RUST_TOOLS_RUSTFMT_PN} ${PN}" -RDEPENDS:${PN} += "${RUST_TOOLS_PKGS}" - -do_compile () { - rust_runx build --stage 2 src/tools/clippy - rust_runx build --stage 2 src/tools/rustfmt -} - -do_install () { - SYS_BINDIR=$(dirname ${D}${bindir}) - - install -d "${SYS_BINDIR}" - cp build/${SNAPSHOT_BUILD_SYS}/stage2-tools-bin/* ${SYS_BINDIR} - for i in ${SYS_BINDIR}/*; do - chrpath -r "\$ORIGIN/../lib" ${i} - done - - chown -R root.root ${D} -} - -ALLOW_EMPTY:${PN} = "1" - -PKG_SYS_BINDIR = "${SDKPATHNATIVE}/usr/bin" -FILES:${RUST_TOOLS_CLIPPY_PN} = "${PKG_SYS_BINDIR}/cargo-clippy ${PKG_SYS_BINDIR}/clippy-driver" -FILES:${RUST_TOOLS_RUSTFMT_PN} = "${PKG_SYS_BINDIR}/rustfmt" - -SUMMARY:${PN} = "Rust helper tools" -SUMMARY:${RUST_TOOLS_CLIPPY_PN} = "A collection of lints to catch common mistakes and improve your Rust code" -SUMMARY:${RUST_TOOLS_RUSTFMT_PN} = "A tool for formatting Rust code according to style guidelines" - diff --git a/meta-balena-rust/recipes-devtools/rust/rust-tools-cross-canadian_1.62.0.bb b/meta-balena-rust/recipes-devtools/rust/rust-tools-cross-canadian_1.62.0.bb deleted file mode 100644 index 2d809d68f5..0000000000 --- a/meta-balena-rust/recipes-devtools/rust/rust-tools-cross-canadian_1.62.0.bb +++ /dev/null @@ -1,6 +0,0 @@ -require rust-tools-cross-canadian.inc -require rust-source.inc -require rust-snapshot.inc - -FILESEXTRAPATHS:prepend := "${THISDIR}/rust:" - diff --git a/meta-balena-rust/recipes-devtools/rust/rust.inc b/meta-balena-rust/recipes-devtools/rust/rust.inc deleted file mode 100644 index 262e5b6d26..0000000000 --- a/meta-balena-rust/recipes-devtools/rust/rust.inc +++ /dev/null @@ -1,210 +0,0 @@ -SUMMARY = "Rust compiler and runtime libaries" -HOMEPAGE = "http://www.rust-lang.org" -SECTION = "devel" -LICENSE = "MIT | Apache-2.0" -LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=93a95682d51b4cb0a633a97046940ef0" - -inherit rust -inherit cargo_common - -DEPENDS += "file-native python3-native" -DEPENDS:append:class-native = " rust-llvm-native" - -S = "${RUSTSRC}" - -# We generate local targets, and need to be able to locate them -export RUST_TARGET_PATH="${WORKDIR}/targets/" - -export FORCE_CRATE_HASH="${BB_TASKHASH}" - -RUST_ALTERNATE_EXE_PATH ?= "${STAGING_LIBDIR}/llvm-rust/bin/llvm-config" -export YOCTO_ALTERNATE_EXE_PATH = "${RUST_ALTERNATE_EXE_PATH}" -export YOCTO_ALTERNATE_MULTILIB_NAME = "/${BASELIB}" - -# We don't want to use bitbakes vendoring because the rust sources do their -# own vendoring. -CARGO_DISABLE_BITBAKE_VENDORING = "1" - -# We can't use RUST_BUILD_SYS here because that may be "musl" if -# TCLIBC="musl". Snapshots are always -unknown-linux-gnu -SNAPSHOT_BUILD_SYS = "${RUST_BUILD_ARCH}-unknown-linux-gnu" -setup_cargo_environment () { - # The first step is to build bootstrap and some early stage tools, - # these are build for the same target as the snapshot, e.g. - # x86_64-unknown-linux-gnu. - # Later stages are build for the native target (i.e. target.x86_64-linux) - cargo_common_do_configure - - printf '[target.%s]\n' "${SNAPSHOT_BUILD_SYS}" >> ${CARGO_HOME}/config - printf "linker = '%s'\n" "${RUST_BUILD_CCLD}" >> ${CARGO_HOME}/config -} - -include rust-common.inc - -do_rust_setup_snapshot () { - for installer in "${WORKDIR}/rust-snapshot-components/"*"/install.sh"; do - "${installer}" --prefix="${WORKDIR}/rust-snapshot" --disable-ldconfig - done - - # Some versions of rust (e.g. 1.18.0) tries to find cargo in stage0/bin/cargo - # and fail without it there. - mkdir -p ${RUSTSRC}/build/${BUILD_SYS} - ln -sf ${WORKDIR}/rust-snapshot/ ${RUSTSRC}/build/${BUILD_SYS}/stage0 - - # Need to use uninative's loader if enabled/present since the library paths - # are used internally by rust and result in symbol mismatches if we don't - if [ ! -z "${UNINATIVE_LOADER}" -a -e "${UNINATIVE_LOADER}" ]; then - for bin in cargo rustc rustdoc; do - patchelf-uninative ${WORKDIR}/rust-snapshot/bin/$bin --set-interpreter ${UNINATIVE_LOADER} - done - fi -} -addtask rust_setup_snapshot after do_unpack before do_configure -do_rust_setup_snapshot[dirs] += "${WORKDIR}/rust-snapshot" -do_rust_setup_snapshot[vardepsexclude] += "UNINATIVE_LOADER" - -python do_configure() { - import json - try: - import configparser - except ImportError: - import ConfigParser as configparser - - # toml is rather similar to standard ini like format except it likes values - # that look more JSON like. So for our purposes simply escaping all values - # as JSON seem to work fine. - - e = lambda s: json.dumps(s) - - config = configparser.RawConfigParser() - - # [target.ARCH-poky-linux] - target_section = "target.{}".format(d.getVar('TARGET_SYS', True)) - config.add_section(target_section) - - llvm_config = d.expand("${YOCTO_ALTERNATE_EXE_PATH}") - config.set(target_section, "llvm-config", e(llvm_config)) - - config.set(target_section, "cxx", e(d.expand("${RUST_TARGET_CXX}"))) - config.set(target_section, "cc", e(d.expand("${RUST_TARGET_CC}"))) - - # If we don't do this rust-native will compile it's own llvm for BUILD. - # [target.${BUILD_ARCH}-unknown-linux-gnu] - target_section = "target.{}".format(d.getVar('SNAPSHOT_BUILD_SYS', True)) - config.add_section(target_section) - - config.set(target_section, "llvm-config", e(llvm_config)) - - config.set(target_section, "cxx", e(d.expand("${RUST_BUILD_CXX}"))) - config.set(target_section, "cc", e(d.expand("${RUST_BUILD_CC}"))) - - # [llvm] - config.add_section("llvm") - config.set("llvm", "static-libstdcpp", e(False)) - - # [rust] - config.add_section("rust") - config.set("rust", "rpath", e(True)) - config.set("rust", "channel", e("stable")) - - # Whether or not to optimize the compiler and standard library - config.set("rust", "optimize", e(True)) - - # [build] - config.add_section("build") - config.set("build", "submodules", e(False)) - config.set("build", "docs", e(False)) - - rustc = d.expand("${WORKDIR}/rust-snapshot/bin/rustc") - config.set("build", "rustc", e(rustc)) - - # Support for the profiler runtime to generate e.g. coverage report, - # PGO etc. - config.set("build", "profiler", e(True)) - - cargo = d.expand("${WORKDIR}/rust-snapshot/bin/cargo") - config.set("build", "cargo", e(cargo)) - - config.set("build", "vendor", e(True)) - - if not "targets" in locals(): - targets = [d.getVar("TARGET_SYS", True)] - config.set("build", "target", e(targets)) - - if not "hosts" in locals(): - hosts = [d.getVar("HOST_SYS", True)] - config.set("build", "host", e(hosts)) - - # We can't use BUILD_SYS since that is something the rust snapshot knows - # nothing about when trying to build some stage0 tools (like fabricate) - config.set("build", "build", e(d.getVar("SNAPSHOT_BUILD_SYS", True))) - - # [install] - config.add_section("install") - # ./x.py install doesn't have any notion of "destdir" - # but we can prepend ${D} to all the directories instead - config.set("install", "prefix", e(d.getVar("D", True) + d.getVar("prefix", True))) - config.set("install", "bindir", e(d.getVar("D", True) + d.getVar("bindir", True))) - config.set("install", "libdir", e(d.getVar("D", True) + d.getVar("libdir", True))) - config.set("install", "datadir", e(d.getVar("D", True) + d.getVar("datadir", True))) - config.set("install", "mandir", e(d.getVar("D", True) + d.getVar("mandir", True))) - - with open("config.toml", "w") as f: - f.write('changelog-seen = 2\n\n') - config.write(f) - - # set up ${WORKDIR}/cargo_home - bb.build.exec_func("setup_cargo_environment", d) -} - -def get_parallel_make_argument(d): - if "parallel_make_argument" in dir(oe.utils): - return oe.utils.parallel_make_argument(d, '-j %d') - return d.getVar('PARALLEL_MAKE') - -rust_runx () { - echo "COMPILE ${PN}" "$@" - - # CFLAGS, LDFLAGS, CXXFLAGS, CPPFLAGS are used by rust's build for a - # wide range of targets (not just TARGET). Yocto's settings for them will - # be inappropriate, avoid using. - unset CFLAGS - unset LDFLAGS - unset CXXFLAGS - unset CPPFLAGS - - oe_cargo_fix_env - - python3 src/bootstrap/bootstrap.py ${@get_parallel_make_argument(d)} "$@" --verbose -} -rust_runx[vardepsexclude] += "PARALLEL_MAKE" - -do_compile () { - rust_runx build -} - -rust_do_install () { - mkdir -p ${D}${bindir} - cp build/${HOST_SYS}/stage2/bin/* ${D}${bindir} - - mkdir -p ${D}${libdir}/rustlib - cp -pRd build/${HOST_SYS}/stage2/lib/* ${D}${libdir} - # Remove absolute symlink so bitbake doesn't complain - rm -f ${D}${libdir}/rustlib/src/rust -} - -rust_install_targets() { - # Install our custom target.json files - local td="${D}${libdir}/rustlib/" - install -d "$td" - for tgt in "${WORKDIR}/targets/"* ; do - install -m 0644 "$tgt" "$td" - done -} - - -do_install () { - rust_do_install - rust_install_targets -} -# ex: sts=4 et sw=4 ts=8 diff --git a/meta-balena-rust/recipes-devtools/rust/rust_1.62.0.bb b/meta-balena-rust/recipes-devtools/rust/rust_1.62.0.bb deleted file mode 100644 index b505ad46ca..0000000000 --- a/meta-balena-rust/recipes-devtools/rust/rust_1.62.0.bb +++ /dev/null @@ -1,21 +0,0 @@ -require rust-target.inc -require rust-source.inc -require rust-snapshot.inc - -INSANE_SKIP:${PN}:class-native = "already-stripped" - -do_compile () { - rust_runx build --stage 2 -} - -rust_do_install() { - rust_runx install -} - -python () { - pn = d.getVar('PN') - - if not pn.endswith("-native"): - raise bb.parse.SkipRecipe("Rust recipe doesn't work for target builds at this time. Fixes welcome.") -} - diff --git a/meta-balena-rust/recipes-devtools/rust/rust_1.75.0.bb b/meta-balena-rust/recipes-devtools/rust/rust_1.75.0.bb new file mode 100644 index 0000000000..76e1fe2d84 --- /dev/null +++ b/meta-balena-rust/recipes-devtools/rust/rust_1.75.0.bb @@ -0,0 +1,361 @@ +SUMMARY = "Rust compiler and runtime libaries" +HOMEPAGE = "http://www.rust-lang.org" +SECTION = "devel" +LICENSE = "(MIT | Apache-2.0) & Unicode-TOU" +LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=c2cccf560306876da3913d79062a54b9" + +inherit rust +inherit cargo_common + +DEPENDS += "file-native python3-native" +DEPENDS:append:class-native = " rust-llvm-native" +DEPENDS:append:class-nativesdk = " nativesdk-rust-llvm" + +DEPENDS += "rust-llvm (=${PV})" + +RDEPENDS:${PN}:append:class-target = " gcc g++ binutils" + +# Otherwise we'll depend on what we provide +INHIBIT_DEFAULT_RUST_DEPS:class-native = "1" +# We don't need to depend on gcc-native because yocto assumes it exists +PROVIDES:class-native = "virtual/${TARGET_PREFIX}rust" + +S = "${RUSTSRC}" + +# Use at your own risk, accepted values are stable, beta and nightly +RUST_CHANNEL ?= "stable" +PV .= "${@bb.utils.contains('RUST_CHANNEL', 'stable', '', '-${RUST_CHANNEL}', d)}" + +export FORCE_CRATE_HASH="${BB_TASKHASH}" + +RUST_ALTERNATE_EXE_PATH ?= "${STAGING_LIBDIR}/llvm-rust/bin/llvm-config" +RUST_ALTERNATE_EXE_PATH_NATIVE = "${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-config" + +# We don't want to use bitbakes vendoring because the rust sources do their +# own vendoring. +CARGO_DISABLE_BITBAKE_VENDORING = "1" + +# We can't use RUST_BUILD_SYS here because that may be "musl" if +# TCLIBC="musl". Snapshots are always -unknown-linux-gnu +setup_cargo_environment () { + # The first step is to build bootstrap and some early stage tools, + # these are build for the same target as the snapshot, e.g. + # x86_64-unknown-linux-gnu. + # Later stages are build for the native target (i.e. target.x86_64-linux) + cargo_common_do_configure +} + +inherit rust-target-config + +do_rust_setup_snapshot () { + for installer in "${WORKDIR}/rust-snapshot-components/"*"/install.sh"; do + "${installer}" --prefix="${WORKDIR}/rust-snapshot" --disable-ldconfig + done + + # Some versions of rust (e.g. 1.18.0) tries to find cargo in stage0/bin/cargo + # and fail without it there. + mkdir -p ${RUSTSRC}/build/${BUILD_SYS} + ln -sf ${WORKDIR}/rust-snapshot/ ${RUSTSRC}/build/${BUILD_SYS}/stage0 + + # Need to use uninative's loader if enabled/present since the library paths + # are used internally by rust and result in symbol mismatches if we don't + if [ ! -z "${UNINATIVE_LOADER}" -a -e "${UNINATIVE_LOADER}" ]; then + for bin in cargo rustc rustdoc; do + patchelf-uninative ${WORKDIR}/rust-snapshot/bin/$bin --set-interpreter ${UNINATIVE_LOADER} + done + fi +} +addtask rust_setup_snapshot after do_unpack before do_configure +addtask do_test_compile after do_configure do_rust_gen_targets +do_rust_setup_snapshot[dirs] += "${WORKDIR}/rust-snapshot" +do_rust_setup_snapshot[vardepsexclude] += "UNINATIVE_LOADER" + +python do_configure() { + import json + import configparser + + # toml is rather similar to standard ini like format except it likes values + # that look more JSON like. So for our purposes simply escaping all values + # as JSON seem to work fine. + + e = lambda s: json.dumps(s) + + config = configparser.RawConfigParser() + + # [target.ARCH-poky-linux] + host_section = "target.{}".format(d.getVar('RUST_HOST_SYS')) + config.add_section(host_section) + + llvm_config_target = d.expand("${RUST_ALTERNATE_EXE_PATH}") + llvm_config_build = d.expand("${RUST_ALTERNATE_EXE_PATH_NATIVE}") + config.set(host_section, "llvm-config", e(llvm_config_target)) + + config.set(host_section, "cxx", e(d.expand("${RUST_TARGET_CXX}"))) + config.set(host_section, "cc", e(d.expand("${RUST_TARGET_CC}"))) + config.set(host_section, "linker", e(d.expand("${RUST_TARGET_CCLD}"))) + if "musl" in host_section: + config.set(host_section, "musl-root", e(d.expand("${STAGING_DIR_HOST}${exec_prefix}"))) + + # If we don't do this rust-native will compile it's own llvm for BUILD. + # [target.${BUILD_ARCH}-unknown-linux-gnu] + build_section = "target.{}".format(d.getVar('RUST_BUILD_SYS')) + if build_section != host_section: + config.add_section(build_section) + + config.set(build_section, "llvm-config", e(llvm_config_build)) + + config.set(build_section, "cxx", e(d.expand("${RUST_BUILD_CXX}"))) + config.set(build_section, "cc", e(d.expand("${RUST_BUILD_CC}"))) + config.set(build_section, "linker", e(d.expand("${RUST_BUILD_CCLD}"))) + + target_section = "target.{}".format(d.getVar('RUST_TARGET_SYS')) + if target_section != host_section and target_section != build_section: + config.add_section(target_section) + + config.set(target_section, "llvm-config", e(llvm_config_target)) + + config.set(target_section, "cxx", e(d.expand("${RUST_TARGET_CXX}"))) + config.set(target_section, "cc", e(d.expand("${RUST_TARGET_CC}"))) + config.set(target_section, "linker", e(d.expand("${RUST_TARGET_CCLD}"))) + + # [llvm] + config.add_section("llvm") + config.set("llvm", "static-libstdcpp", e(False)) + if "llvm" in (d.getVar('TC_CXX_RUNTIME') or ""): + config.set("llvm", "use-libcxx", e(True)) + + # [rust] + config.add_section("rust") + config.set("rust", "rpath", e(True)) + config.set("rust", "remap-debuginfo", e(True)) + config.set("rust", "channel", e(d.expand("${RUST_CHANNEL}"))) + + # Whether or not to optimize the compiler and standard library + config.set("rust", "optimize", e(True)) + + # Emits extraneous output from tests to ensure that failures of the test + # harness are debuggable just from logfiles + config.set("rust", "verbose-tests", e(True)) + + # [build] + config.add_section("build") + config.set("build", "submodules", e(False)) + config.set("build", "docs", e(False)) + config.set("build", "tools", ["rust-demangler",]) + + rustc = d.expand("${WORKDIR}/rust-snapshot/bin/rustc") + config.set("build", "rustc", e(rustc)) + + cargo = d.expand("${WORKDIR}/rust-snapshot/bin/cargo") + config.set("build", "cargo", e(cargo)) + + config.set("build", "vendor", e(True)) + + config.set("build", "target", e([d.getVar("RUST_TARGET_SYS")])) + + config.set("build", "host", e([d.getVar("RUST_HOST_SYS")])) + + # We can't use BUILD_SYS since that is something the rust snapshot knows + # nothing about when trying to build some stage0 tools (like fabricate) + config.set("build", "build", e(d.getVar("RUST_BUILD_SYS"))) + + # [install] + config.add_section("install") + # ./x.py install doesn't have any notion of "destdir" + # but we can prepend ${D} to all the directories instead + config.set("install", "prefix", e(d.getVar("D") + d.getVar("prefix"))) + config.set("install", "bindir", e(d.getVar("D") + d.getVar("bindir"))) + config.set("install", "libdir", e(d.getVar("D") + d.getVar("libdir"))) + config.set("install", "datadir", e(d.getVar("D") + d.getVar("datadir"))) + config.set("install", "mandir", e(d.getVar("D") + d.getVar("mandir"))) + config.set("install", "sysconfdir", e(d.getVar("D") + d.getVar("sysconfdir"))) + + with open("config.toml", "w") as f: + f.write('change-id = 116881\n\n') + config.write(f) + + # set up ${WORKDIR}/cargo_home + bb.build.exec_func("setup_cargo_environment", d) +} + +rust_runx () { + echo "COMPILE ${PN}" "$@" + + # CFLAGS, LDFLAGS, CXXFLAGS, CPPFLAGS are used by rust's build for a + # wide range of targets (not just TARGET). Yocto's settings for them will + # be inappropriate, avoid using. + unset CFLAGS + unset LDFLAGS + unset CXXFLAGS + unset CPPFLAGS + + export RUSTFLAGS="${RUST_DEBUG_REMAP}" + + # Copy the natively built llvm-config into the target so we can run it. Horrible, + # but works! + if [ ${RUST_ALTERNATE_EXE_PATH_NATIVE} != ${RUST_ALTERNATE_EXE_PATH} -a ! -f ${RUST_ALTERNATE_EXE_PATH} ]; then + mkdir -p `dirname ${RUST_ALTERNATE_EXE_PATH}` + cp ${RUST_ALTERNATE_EXE_PATH_NATIVE} ${RUST_ALTERNATE_EXE_PATH} + if [ -e ${STAGING_LIBDIR_NATIVE}/libc++.so.1 ]; then + chrpath -r \$ORIGIN/../../../../../`basename ${STAGING_DIR_NATIVE}`${libdir_native} ${RUST_ALTERNATE_EXE_PATH} + else + chrpath -d ${RUST_ALTERNATE_EXE_PATH} + fi + fi + + oe_cargo_fix_env + + python3 src/bootstrap/bootstrap.py ${@oe.utils.parallel_make_argument(d, '-j %d')} "$@" --verbose +} +rust_runx[vardepsexclude] += "PARALLEL_MAKE" + +require rust-source.inc +require rust-snapshot.inc + +INSANE_SKIP:${PN}:class-native = "already-stripped" +FILES:${PN} += "${libdir}/rustlib" +FILES:${PN} += "${libdir}/*.so" +FILES:${PN}-dev = "" + +do_compile () { +} + +do_test_compile[dirs] = "${B}" +do_test_compile () { + rust_runx build src/tools/remote-test-server --target "${RUST_TARGET_SYS}" +} + +ALLOW_EMPTY:${PN} = "1" + +PACKAGES =+ "${PN}-rustdoc ${PN}-tools-clippy ${PN}-tools-rustfmt" +FILES:${PN}-rustdoc = "${bindir}/rustdoc" +FILES:${PN}-tools-clippy = "${bindir}/cargo-clippy ${bindir}/clippy-driver" +FILES:${PN}-tools-rustfmt = "${bindir}/rustfmt" +RDEPENDS:${PN}-rustdoc = "${PN}" +RDEPENDS:${PN}-tools-clippy = "${PN}" +RDEPENDS:${PN}-tools-rustfmt = "${PN}" + +SUMMARY:${PN}-tools-clippy = "A collection of lints to catch common mistakes and improve your Rust code" +SUMMARY:${PN}-tools-rustfmt = "A tool for formatting Rust code according to style guidelines" + +do_install () { + rust_do_install +} + +rust_do_install() { + rust_runx install +} + +rust_do_install:class-nativesdk() { + export PSEUDO_UNLOAD=1 + rust_runx install + rust_runx install clippy + rust_runx install rustfmt + unset PSEUDO_UNLOAD + + install -d ${D}${bindir} + for i in cargo-clippy clippy-driver rustfmt; do + cp build/${RUST_BUILD_SYS}/stage2-tools/${RUST_HOST_SYS}/release/$i ${D}${bindir} + chrpath -r "\$ORIGIN/../lib" ${D}${bindir}/$i + done + + chown root:root ${D}/ -R + rm ${D}${libdir}/rustlib/uninstall.sh + rm ${D}${libdir}/rustlib/install.log + rm ${D}${libdir}/rustlib/manifest* +} + +EXTRA_TOOLS ?= "cargo-clippy clippy-driver rustfmt" +rust_do_install:class-target() { + export PSEUDO_UNLOAD=1 + rust_runx install + rust_runx install clippy + rust_runx install rustfmt + unset PSEUDO_UNLOAD + + install -d ${D}${bindir} + for i in ${EXTRA_TOOLS}; do + cp build/${RUST_BUILD_SYS}/stage2-tools/${RUST_HOST_SYS}/release/$i ${D}${bindir} + chrpath -r "\$ORIGIN/../lib" ${D}${bindir}/$i + done + + install -d ${D}${libdir}/rustlib/${RUST_HOST_SYS} + install -m 0644 ${WORKDIR}/rust-targets/${RUST_HOST_SYS}.json ${D}${libdir}/rustlib/${RUST_HOST_SYS}/target.json + + chown root:root ${D}/ -R + rm ${D}${libdir}/rustlib/uninstall.sh + rm ${D}${libdir}/rustlib/install.log + rm ${D}${libdir}/rustlib/manifest* +} + +addtask do_update_snapshot after do_patch +do_update_snapshot[nostamp] = "1" + +# Run with `bitbake -c update_snapshot rust` to update `rust-snapshot.inc` +# with the checksums for the rust snapshot associated with this rustc-src +# tarball. +python do_update_snapshot() { + import json + import re + import sys + + from collections import defaultdict + + with open(os.path.join(d.getVar("S"), "src", "stage0.json")) as f: + j = json.load(f) + + config_dist_server = j['config']['dist_server'] + compiler_date = j['compiler']['date'] + compiler_version = j['compiler']['version'] + + src_uri = defaultdict(list) + for k, v in j['checksums_sha256'].items(): + m = re.search(f"dist/{compiler_date}/(?P.*)-{compiler_version}-(?P.*)-unknown-linux-gnu\\.tar\\.xz", k) + if m: + component = m.group('component') + arch = m.group('arch') + src_uri[arch].append(f"SRC_URI[{component}-snapshot-{arch}.sha256sum] = \"{v}\"") + + snapshot = """\ +## This is information on the rust-snapshot (binary) used to build our current release. +## snapshot info is taken from rust/src/stage0.json +## Rust is self-hosting and bootstraps itself with a pre-built previous version of itself. +## The exact (previous) version that has been used is specified in the source tarball. +## The version is replicated here. + +SNAPSHOT_VERSION = "%s" + +""" % compiler_version + + for arch, components in src_uri.items(): + snapshot += "\n".join(components) + "\n\n" + + snapshot += """\ +SRC_URI += " \\ + ${RUST_DIST_SERVER}/dist/${RUST_STD_SNAPSHOT}.tar.xz;name=rust-std-snapshot-${RUST_BUILD_ARCH};subdir=rust-snapshot-components \\ + ${RUST_DIST_SERVER}/dist/${RUSTC_SNAPSHOT}.tar.xz;name=rustc-snapshot-${RUST_BUILD_ARCH};subdir=rust-snapshot-components \\ + ${RUST_DIST_SERVER}/dist/${CARGO_SNAPSHOT}.tar.xz;name=cargo-snapshot-${RUST_BUILD_ARCH};subdir=rust-snapshot-components \\ +" + +RUST_DIST_SERVER = "%s" + +RUST_STD_SNAPSHOT = "rust-std-${SNAPSHOT_VERSION}-${RUST_BUILD_ARCH}-unknown-linux-gnu" +RUSTC_SNAPSHOT = "rustc-${SNAPSHOT_VERSION}-${RUST_BUILD_ARCH}-unknown-linux-gnu" +CARGO_SNAPSHOT = "cargo-${SNAPSHOT_VERSION}-${RUST_BUILD_ARCH}-unknown-linux-gnu" +""" % config_dist_server + + with open(os.path.join(d.getVar("THISDIR"), "rust-snapshot.inc"), "w") as f: + f.write(snapshot) +} + +RUSTLIB_DEP:class-nativesdk = "" + +# musl builds include libunwind.a +INSANE_SKIP:${PN} = "staticdev" + +BBCLASSEXTEND = "native nativesdk" + +# Since 1.70.0 upgrade this fails to build with gold: +# http://errors.yoctoproject.org/Errors/Details/708196/ +# ld: error: version script assignment of to symbol __rust_alloc_error_handler_should_panic failed: symbol not defined +LDFLAGS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd', '', d)}" diff --git a/meta-balena-warrior/recipes-devtools/cmake/cmake-native_3.20.1.bb b/meta-balena-warrior/recipes-devtools/cmake/cmake-native_3.20.1.bb new file mode 100644 index 0000000000..d91e42ef9a --- /dev/null +++ b/meta-balena-warrior/recipes-devtools/cmake/cmake-native_3.20.1.bb @@ -0,0 +1,53 @@ +require cmake.inc +inherit native + +DEPENDS += "bzip2-replacement-native xz-native zlib-native curl-native ncurses-native" + +SRC_URI += "file://OEToolchainConfig.cmake \ + file://environment.d-cmake.sh \ + file://0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch \ + file://0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch \ + " + + +B = "${WORKDIR}/build" +do_configure[cleandirs] = "${B}" + +CMAKE_EXTRACONF = "\ + -DCMAKE_LIBRARY_PATH=${STAGING_LIBDIR_NATIVE} \ + -DBUILD_CursesDialog=1 \ + -DCMAKE_USE_SYSTEM_LIBRARIES=1 \ + -DCMAKE_USE_SYSTEM_LIBRARY_JSONCPP=0 \ + -DCMAKE_USE_SYSTEM_LIBRARY_LIBARCHIVE=0 \ + -DCMAKE_USE_SYSTEM_LIBRARY_LIBUV=0 \ + -DCMAKE_USE_SYSTEM_LIBRARY_LIBRHASH=0 \ + -DCMAKE_USE_SYSTEM_LIBRARY_EXPAT=0 \ + -DENABLE_ACL=0 -DHAVE_ACL_LIBACL_H=0 \ + -DHAVE_SYS_ACL_H=0 \ +" + +do_configure () { + ${S}/configure --verbose --prefix=${prefix} \ + ${@oe.utils.parallel_make_argument(d, '--parallel=%d')} \ + ${@bb.utils.contains('CCACHE', 'ccache ', '--enable-ccache', '', d)} \ + -- ${CMAKE_EXTRACONF} +} + +do_compile() { + oe_runmake +} + +do_install() { + oe_runmake 'DESTDIR=${D}' install + + # The following codes are here because eSDK needs to provide compatibilty + # for SDK. That is, eSDK could also be used like traditional SDK. + mkdir -p ${D}${datadir}/cmake + install -m 644 ${WORKDIR}/OEToolchainConfig.cmake ${D}${datadir}/cmake/ + mkdir -p ${D}${base_prefix}/environment-setup.d + install -m 644 ${WORKDIR}/environment.d-cmake.sh ${D}${base_prefix}/environment-setup.d/cmake.sh +} + +do_compile[progress] = "percent" + +SYSROOT_DIRS_NATIVE += "${datadir}/cmake ${base_prefix}/environment-setup.d" diff --git a/meta-balena-warrior/recipes-devtools/cmake/cmake.inc b/meta-balena-warrior/recipes-devtools/cmake/cmake.inc index 68a71e9139..2e6059f980 100644 --- a/meta-balena-warrior/recipes-devtools/cmake/cmake.inc +++ b/meta-balena-warrior/recipes-devtools/cmake/cmake.inc @@ -2,23 +2,29 @@ # Released under the MIT license (see packages/COPYING) SUMMARY = "Cross-platform, open-source make system" +DESCRIPTION = "CMake is used to control the software compilation process \ +using simple platform and compiler independent configuration files. CMake \ +generates native makefiles and workspaces that can be used in the compiler \ +environment of your choice." HOMEPAGE = "http://www.cmake.org/" BUGTRACKER = "http://public.kitware.com/Bug/my_view_page.php" SECTION = "console/utils" -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://Copyright.txt;md5=f61f5f859bc5ddba2b050eb10335e013 \ - file://Source/cmake.h;md5=4494dee184212fc89c469c3acd555a14;beginline=1;endline=3 \ +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://Copyright.txt;md5=31023e1d3f51ca90a58f55bcee8e2339 \ + file://Source/cmake.h;beginline=1;endline=2;md5=a5f70e1fef8614734eae0d62b4f5891b \ " CMAKE_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:2])}" SRC_URI = "https://cmake.org/files/v${CMAKE_MAJOR_VERSION}/cmake-${PV}.tar.gz \ - file://0002-cmake-Prevent-the-detection-of-Qt5.patch \ file://0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch \ file://0004-Fail-silently-if-system-Qt-installation-is-broken.patch \ " -SRC_URI[md5sum] = "b5a544ffc73f6922a6cf371fcb6bae22" -SRC_URI[sha256sum] = "fdd928fee35f472920071d1c7f1a6a2b72c9b25e04f7a37b409349aef3f20e9b" +SRC_URI[sha256sum] = "3f1808b9b00281df06c91dd7a021d7f52f724101000da7985a401678dfe035b0" UPSTREAM_CHECK_REGEX = "cmake-(?P\d+(\.\d+)+)\.tar" + +# This is specific to the npm package that installs cmake, so isn't +# relevant to OpenEmbedded +CVE_CHECK_WHITELIST += "CVE-2016-10642" diff --git a/meta-balena-warrior/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch b/meta-balena-warrior/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch index f690720870..06e10bf861 100644 --- a/meta-balena-warrior/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch +++ b/meta-balena-warrior/recipes-devtools/cmake/cmake/0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch @@ -1,9 +1,8 @@ -From 71085723f8028b3e1c4029fc1abe1243ac49ffc6 Mon Sep 17 00:00:00 2001 +From ac9b8d316ff3e013bc9d3c063db99aa1f064ce6a Mon Sep 17 00:00:00 2001 From: Cody P Schafer Date: Thu, 27 Apr 2017 11:35:05 -0400 -Subject: [PATCH 1/5] CMakeDetermineSystem: use oe environment vars to load - default toolchain file in sdk -Organization: O.S. Systems Software LTDA. +Subject: [PATCH] CMakeDetermineSystem: use oe environment vars to load default + toolchain file in sdk Passing the toolchain by: @@ -20,15 +19,16 @@ because '-D' options are cache entries themselves. Upstream-Status: Inappropriate [oe-core specific] Signed-off-by: Cody P Schafer Signed-off-by: Otavio Salvador + --- Modules/CMakeDetermineSystem.cmake | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Modules/CMakeDetermineSystem.cmake b/Modules/CMakeDetermineSystem.cmake -index 600d5580e..32d7f1945 100644 +index bae270d..5bb6bc0 100644 --- a/Modules/CMakeDetermineSystem.cmake +++ b/Modules/CMakeDetermineSystem.cmake -@@ -82,6 +82,13 @@ else() +@@ -111,6 +111,13 @@ else() endif() endif() @@ -42,6 +42,3 @@ index 600d5580e..32d7f1945 100644 # if a toolchain file is used, the user wants to cross compile. # in this case read the toolchain file and keep the CMAKE_HOST_SYSTEM_* # variables around so they can be used in CMakeLists.txt. --- -2.18.0 - diff --git a/meta-balena-warrior/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch b/meta-balena-warrior/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch deleted file mode 100644 index 3bea6935b7..0000000000 --- a/meta-balena-warrior/recipes-devtools/cmake/cmake/0002-cmake-Prevent-the-detection-of-Qt5.patch +++ /dev/null @@ -1,122 +0,0 @@ -From 7a1f4e724f9c68498f401244c2938e784a2e6fbd Mon Sep 17 00:00:00 2001 -From: Otavio Salvador -Date: Wed, 17 Jan 2018 10:02:14 -0200 -Subject: [PATCH 2/5] cmake: Prevent the detection of Qt5 -Organization: O.S. Systems Software LTDA. - -CMake doesn't have dependency on qt4/qt5, so these tests usually fail -but still can cause undeterministic results or build failures (when -OE_QMAKE_PATH_EXTERNAL_HOST_BINS is undefined or native qmake removed -while running the test in cmake) - -Upstream-Status: Inappropriate [configuration] - -Signed-off-by: Otavio Salvador ---- - Source/QtDialog/CMakeLists.txt | 2 +- - Tests/CMakeLists.txt | 2 +- - Tests/Qt4And5Automoc/CMakeLists.txt | 4 ++-- - Tests/QtAutogen/AutogenTest.cmake | 2 +- - Tests/QtAutogen/MacOsFW/CMakeLists.txt | 2 +- - Tests/RunCMake/CMakeLists.txt | 2 +- - Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake | 2 +- - 7 files changed, 8 insertions(+), 8 deletions(-) - -diff --git a/Source/QtDialog/CMakeLists.txt b/Source/QtDialog/CMakeLists.txt -index 330b74729..e7709dee6 100644 ---- a/Source/QtDialog/CMakeLists.txt -+++ b/Source/QtDialog/CMakeLists.txt -@@ -6,7 +6,7 @@ if(POLICY CMP0020) - cmake_policy(SET CMP0020 NEW) # Drop when CMake >= 2.8.11 required - endif() - CMake_OPTIONAL_COMPONENT(cmake-gui) --find_package(Qt5Widgets QUIET) -+#find_package(Qt5Widgets QUIET) - if (Qt5Widgets_FOUND) - include_directories(${Qt5Widgets_INCLUDE_DIRS}) - add_definitions(${Qt5Widgets_DEFINITONS}) -diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt -index b8b724ed8..63f6bb6d2 100644 ---- a/Tests/CMakeLists.txt -+++ b/Tests/CMakeLists.txt -@@ -1297,7 +1297,7 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release - set(CMake_TEST_Qt5 1) - endif() - if(CMake_TEST_Qt5) -- find_package(Qt5Widgets QUIET NO_MODULE) -+ #find_package(Qt5Widgets QUIET NO_MODULE) - endif() - if(CMake_TEST_Qt5 AND Qt5Widgets_FOUND) - add_subdirectory(Qt5Autogen) -diff --git a/Tests/Qt4And5Automoc/CMakeLists.txt b/Tests/Qt4And5Automoc/CMakeLists.txt -index ad74961d9..a9dd74b15 100644 ---- a/Tests/Qt4And5Automoc/CMakeLists.txt -+++ b/Tests/Qt4And5Automoc/CMakeLists.txt -@@ -3,11 +3,11 @@ cmake_minimum_required(VERSION 2.8.12) - project(Qt4And5Automoc) - - if (QT_REVERSE_FIND_ORDER) -- find_package(Qt5Core REQUIRED) -+ #find_package(Qt5Core REQUIRED) - find_package(Qt4 REQUIRED) - else() - find_package(Qt4 REQUIRED) -- find_package(Qt5Core REQUIRED) -+ #find_package(Qt5Core REQUIRED) - endif() - - set(CMAKE_AUTOMOC ON) -diff --git a/Tests/QtAutogen/AutogenTest.cmake b/Tests/QtAutogen/AutogenTest.cmake -index 8c0a14fca..e9923b21a 100644 ---- a/Tests/QtAutogen/AutogenTest.cmake -+++ b/Tests/QtAutogen/AutogenTest.cmake -@@ -22,7 +22,7 @@ if (QT_TEST_VERSION EQUAL 4) - endmacro() - - elseif(QT_TEST_VERSION EQUAL 5) -- find_package(Qt5Widgets REQUIRED) -+ #find_package(Qt5Widgets REQUIRED) - - set(QT_QTCORE_TARGET Qt5::Core) - set(QT_QTGUI_TARGET Qt5::Widgets) -diff --git a/Tests/QtAutogen/MacOsFW/CMakeLists.txt b/Tests/QtAutogen/MacOsFW/CMakeLists.txt -index 26d201926..e48e1c8de 100644 ---- a/Tests/QtAutogen/MacOsFW/CMakeLists.txt -+++ b/Tests/QtAutogen/MacOsFW/CMakeLists.txt -@@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.10) - project(MacOsFW) - include("../AutogenTest.cmake") - --find_package(Qt5Test REQUIRED) -+#find_package(Qt5Test REQUIRED) - - set(CMAKE_CXX_STANDARD 11) - set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/output/bin) -diff --git a/Tests/RunCMake/CMakeLists.txt b/Tests/RunCMake/CMakeLists.txt -index 637c5c2cb..c0376effc 100644 ---- a/Tests/RunCMake/CMakeLists.txt -+++ b/Tests/RunCMake/CMakeLists.txt -@@ -310,7 +310,7 @@ add_RunCMake_test(configure_file) - add_RunCMake_test(CTestTimeoutAfterMatch) - - find_package(Qt4 QUIET) --find_package(Qt5Core QUIET) -+#find_package(Qt5Core QUIET) - if (QT4_FOUND AND Qt5Core_FOUND AND NOT Qt5Core_VERSION VERSION_LESS 5.1.0) - add_RunCMake_test(IncompatibleQt) - endif() -diff --git a/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake b/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake -index 4fccdc418..b76e1e531 100644 ---- a/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake -+++ b/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake -@@ -1,6 +1,6 @@ - - find_package(Qt4 REQUIRED) --find_package(Qt5Core REQUIRED) -+#find_package(Qt5Core REQUIRED) - - add_executable(mainexe main.cpp) - target_link_libraries(mainexe Qt4::QtCore Qt5::Core) --- -2.18.0 - diff --git a/meta-balena-warrior/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch b/meta-balena-warrior/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch index 55cf47188a..575a5cb7fb 100644 --- a/meta-balena-warrior/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch +++ b/meta-balena-warrior/recipes-devtools/cmake/cmake/0003-cmake-support-OpenEmbedded-Qt4-tool-binary-names.patch @@ -1,8 +1,7 @@ -From c783ceeef485c23e13c3d9f0418719cb0e0b86ee Mon Sep 17 00:00:00 2001 +From 2d02ac91d5a5d72eaddba4894eaa6db3ed8fee62 Mon Sep 17 00:00:00 2001 From: Otavio Salvador Date: Thu, 12 May 2011 15:36:03 +0000 -Subject: [PATCH 3/5] cmake: support OpenEmbedded Qt4 tool binary names -Organization: O.S. Systems Software LTDA. +Subject: [PATCH] cmake: support OpenEmbedded Qt4 tool binary names The FindQt4 module looks for Qt4 binaries to be able to gather the paths used for compilation and also to be using during other processes @@ -20,15 +19,16 @@ Instead of find_program, _find_qt4_program is now used. Signed-off-by: Moritz Blume Signed-off-by: Otavio Salvador + --- Modules/FindQt4.cmake | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Modules/FindQt4.cmake b/Modules/FindQt4.cmake -index 847a798af..7ad981879 100644 +index 3993968..b2a8585 100644 --- a/Modules/FindQt4.cmake +++ b/Modules/FindQt4.cmake -@@ -517,7 +517,7 @@ endfunction() +@@ -518,7 +518,7 @@ endfunction() set(QT4_INSTALLED_VERSION_TOO_OLD FALSE) @@ -37,7 +37,7 @@ index 847a798af..7ad981879 100644 _qt4_find_qmake("${_QT4_QMAKE_NAMES}" QT_QMAKE_EXECUTABLE QTVERSION) if (QT_QMAKE_EXECUTABLE AND -@@ -1135,12 +1135,12 @@ if (QT_QMAKE_EXECUTABLE AND +@@ -1136,12 +1136,12 @@ if (QT_QMAKE_EXECUTABLE AND _find_qt4_program(QT_MOC_EXECUTABLE Qt4::moc moc-qt4 moc4 moc) _find_qt4_program(QT_UIC_EXECUTABLE Qt4::uic uic-qt4 uic4 uic) _find_qt4_program(QT_UIC3_EXECUTABLE Qt4::uic3 uic3) @@ -54,6 +54,3 @@ index 847a798af..7ad981879 100644 _find_qt4_program(QT_DESIGNER_EXECUTABLE Qt4::designer designer-qt4 designer4 designer) _find_qt4_program(QT_LINGUIST_EXECUTABLE Qt4::linguist linguist-qt4 linguist4 linguist) --- -2.18.0 - diff --git a/meta-balena-warrior/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch b/meta-balena-warrior/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch index a59c680454..1b196db81a 100644 --- a/meta-balena-warrior/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch +++ b/meta-balena-warrior/recipes-devtools/cmake/cmake/0004-Fail-silently-if-system-Qt-installation-is-broken.patch @@ -1,8 +1,7 @@ -From 9516fc4260f701c6d9db0c341bb36480362e1747 Mon Sep 17 00:00:00 2001 +From 60864efbe52cc12018efaafbc4e4c3c8b4af2b65 Mon Sep 17 00:00:00 2001 From: Otavio Salvador Date: Thu, 5 Jul 2018 10:26:48 -0300 -Subject: [PATCH 4/5] Fail silently if system Qt installation is broken -Organization: O.S. Systems Software LTDA. +Subject: [PATCH] Fail silently if system Qt installation is broken Fixes a regression in behaviour from 2.8.10 to 2.8.11 resulting in the following error if the system Qt installation is broken: @@ -23,15 +22,16 @@ within the if(QT_QTCORE_FOUND) statement. Signed-off-by: Moritz Blume Signed-off-by: Otavio Salvador + --- Modules/FindQt4.cmake | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/Modules/FindQt4.cmake b/Modules/FindQt4.cmake -index 7ad981879..8b6f43cda 100644 +index b2a8585..77c89aa 100644 --- a/Modules/FindQt4.cmake +++ b/Modules/FindQt4.cmake -@@ -987,25 +987,26 @@ if (QT_QMAKE_EXECUTABLE AND +@@ -988,25 +988,26 @@ if (QT_QMAKE_EXECUTABLE AND endif() endmacro() @@ -77,6 +77,3 @@ index 7ad981879..8b6f43cda 100644 foreach(QT_MODULE ${QT_MODULES}) _QT4_ADJUST_LIB_VARS(${QT_MODULE}) --- -2.18.0 - diff --git a/meta-balena-warrior/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch b/meta-balena-warrior/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch index ad42d409d9..d6f7308fe0 100644 --- a/meta-balena-warrior/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch +++ b/meta-balena-warrior/recipes-devtools/cmake/cmake/0005-Disable-use-of-ext2fs-ext2_fs.h-by-cmake-s-internal-.patch @@ -1,7 +1,8 @@ -From 0df8d46d14c371f21c327966a553c4c187a8acfe Mon Sep 17 00:00:00 2001 +From fd9a04c1434e12f21c043385e306e0b52d38d749 Mon Sep 17 00:00:00 2001 From: Otavio Salvador Date: Thu, 5 Jul 2018 10:28:04 -0300 -Subject: [PATCH 5/5] Disable use of ext2fs/ext2_fs.h by cmake's internal +Subject: [PATCH] Disable use of ext2fs/ext2_fs.h by cmake's internal + libarchive copy Organization: O.S. Systems Software LTDA. @@ -12,15 +13,16 @@ Upstream-Status: Inappropriate [config] Signed-off-by: Paul Eggleton Signed-off-by: Otavio Salvador + --- Utilities/cmlibarchive/CMakeLists.txt | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/Utilities/cmlibarchive/CMakeLists.txt b/Utilities/cmlibarchive/CMakeLists.txt -index 206f3c6a5..642fb0dd9 100644 +index bfcaf30..2960683 100644 --- a/Utilities/cmlibarchive/CMakeLists.txt +++ b/Utilities/cmlibarchive/CMakeLists.txt -@@ -430,12 +430,8 @@ LA_CHECK_INCLUDE_FILE("copyfile.h" HAVE_COPYFILE_H) +@@ -682,12 +682,8 @@ LA_CHECK_INCLUDE_FILE("copyfile.h" HAVE_COPYFILE_H) LA_CHECK_INCLUDE_FILE("direct.h" HAVE_DIRECT_H) LA_CHECK_INCLUDE_FILE("dlfcn.h" HAVE_DLFCN_H) LA_CHECK_INCLUDE_FILE("errno.h" HAVE_ERRNO_H) @@ -34,7 +36,4 @@ index 206f3c6a5..642fb0dd9 100644 +SET(HAVE_WORKING_EXT2_IOC_GETFLAGS 0) LA_CHECK_INCLUDE_FILE("fcntl.h" HAVE_FCNTL_H) LA_CHECK_INCLUDE_FILE("grp.h" HAVE_GRP_H) - LA_CHECK_INCLUDE_FILE("inttypes.h" HAVE_INTTYPES_H) --- -2.18.0 - + LA_CHECK_INCLUDE_FILE("io.h" HAVE_IO_H) diff --git a/meta-balena-warrior/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake b/meta-balena-warrior/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake index 398069eef2..8f6f3a272d 100644 --- a/meta-balena-warrior/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake +++ b/meta-balena-warrior/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake @@ -19,7 +19,7 @@ if ($ENV{SDKTARGETSYSROOT} MATCHES "/sysroots/([a-zA-Z0-9_-]+)-.+-.+") endif() # Include the toolchain configuration subscripts -file( GLOB toolchain_config_files "${CMAKE_TOOLCHAIN_FILE}.d/*.cmake" ) +file( GLOB toolchain_config_files "${CMAKE_CURRENT_LIST_FILE}.d/*.cmake" ) foreach(config ${toolchain_config_files}) include(${config}) endforeach() diff --git a/meta-balena-warrior/recipes-devtools/cmake/cmake_3.20.1.bb b/meta-balena-warrior/recipes-devtools/cmake/cmake_3.20.1.bb new file mode 100644 index 0000000000..64c92b89f2 --- /dev/null +++ b/meta-balena-warrior/recipes-devtools/cmake/cmake_3.20.1.bb @@ -0,0 +1,53 @@ +require cmake.inc + +inherit cmake bash-completion + +DEPENDS += "curl expat zlib libarchive xz ncurses bzip2" + +SRC_URI_append_class-nativesdk = " \ + file://OEToolchainConfig.cmake \ + file://environment.d-cmake.sh \ + file://0001-CMakeDetermineSystem-use-oe-environment-vars-to-load.patch \ +" + +# Strip ${prefix} from ${docdir}, set result into docdir_stripped +python () { + prefix=d.getVar("prefix") + docdir=d.getVar("docdir") + + if not docdir.startswith(prefix): + bb.fatal('docdir must contain prefix as its prefix') + + docdir_stripped = docdir[len(prefix):] + if len(docdir_stripped) > 0 and docdir_stripped[0] == '/': + docdir_stripped = docdir_stripped[1:] + + d.setVar("docdir_stripped", docdir_stripped) +} + +EXTRA_OECMAKE=" \ + -DCMAKE_DOC_DIR=${docdir_stripped}/cmake-${CMAKE_MAJOR_VERSION} \ + -DCMAKE_USE_SYSTEM_LIBRARIES=1 \ + -DCMAKE_USE_SYSTEM_LIBRARY_JSONCPP=0 \ + -DCMAKE_USE_SYSTEM_LIBRARY_LIBUV=0 \ + -DCMAKE_USE_SYSTEM_LIBRARY_LIBRHASH=0 \ + -DKWSYS_CHAR_IS_SIGNED=1 \ + -DBUILD_CursesDialog=0 \ + -DKWSYS_LFS_WORKS=1 \ +" + +do_install_append_class-nativesdk() { + mkdir -p ${D}${datadir}/cmake + install -m 644 ${WORKDIR}/OEToolchainConfig.cmake ${D}${datadir}/cmake/ + + mkdir -p ${D}${SDKPATHNATIVE}/environment-setup.d + install -m 644 ${WORKDIR}/environment.d-cmake.sh ${D}${SDKPATHNATIVE}/environment-setup.d/cmake.sh +} + +FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}" + +FILES_${PN} += "${datadir}/cmake-${CMAKE_MAJOR_VERSION} ${datadir}/cmake ${datadir}/aclocal ${datadir}/emacs ${datadir}/vim" +FILES_${PN}-doc += "${docdir}/cmake-${CMAKE_MAJOR_VERSION}" +FILES_${PN}-dev = "" + +BBCLASSEXTEND = "nativesdk"