Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compilation Errors on x86_64-pc-windows-gnu Target due to Uninitialized Variables in aws-lc #397

Closed
Lilit0x opened this issue Apr 17, 2024 · 4 comments
Assignees
Labels
build problem Build failure

Comments

@Lilit0x
Copy link

Lilit0x commented Apr 17, 2024

Problem:

I encountered a compilation issue when building my project that depends on aws-lc-rs v1.7.0 for the x86_64-pc-windows-gnu target. The compilation process fails with errors related to potentially uninitialized variables in the aws-lc C code. I tried to suppress the warnings by setting the CFLAGS=-Wno-maybe-uninitialized variable.

I am using github actions CI for the build process:

jobs:
  windows-release:
    name: release x86_64-pc-windows-gnu
    runs-on: windows-latest
    strategy:
      matrix:
        toolchain: [stable]
        triple:
          - { target: x86_64-pc-windows-gnu, cross: false }
    steps:
      - uses: ilammy/setup-nasm@v1
      - uses: actions/checkout@v2
        with:
          repository: opsfolio/resource-surveillance
          token: ${{ secrets.GH_PAT }}
          ref: 'main' 

      - name: Install toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: ${{ matrix.toolchain }}
          override: true
          target: ${{ matrix.triple.target }}
          default: true
  
      - name: Get Release Upload URL
        id: get_upload_url
        uses: actions/github-script@v5
        with:
          script: |
              const tag = process.env.GITHUB_REF.split('/').pop();
              const releases = await github.rest.repos.listReleases({
                  owner: context.repo.owner,
                  repo: context.repo.repo,
              });
              const release = releases.data.find(release => release.tag_name === tag);
              if (!release) {
                  throw new Error(`Release not found for tag ${tag}`);
              }
              return release.upload_url;
          result-encoding: string
        env:
              GITHUB_REF: ${{ github.ref }}
      - name: Suppress C warnings
        run: echo "CFLAGS=-Wno-maybe-uninitialized" >> $GITHUB_ENV

      - name: Build with Cargo
        run: |
          cargo build --release --target ${{ matrix.triple.target }}
          .\target\${{ matrix.triple.target }}\release\surveilr.exe --help
          Compress-Archive -Path .\target\${{ matrix.triple.target }}\release\surveilr.exe -DestinationPath resource-surveillance_${{ github.ref_name }}_${{ matrix.triple.target }}.zip
  
      - name: Upload To Releases
        uses: actions/upload-release-asset@v1
        env: 
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        with:
          upload_url: ${{ steps.get_upload_url.outputs.result }}
          asset_path: resource-surveillance_${{ github.ref_name }}_${{ matrix.triple.target }}.zip
          asset_name: resource-surveillance_${{ github.ref_name }}_${{ matrix.triple.target }}.zip
          asset_content_type: application/zip

Relevant details

AWS-LC for Rust versions: v1.7.0

System information: Github hosted windows runner

Build log:

error: failed to run custom build command for `aws-lc-sys v0.15.0`
Caused by:
  process didn't exit successfully: `D:\a\releases.opsfolio.com\releases.opsfolio.com\target\release\build\aws-lc-sys-b9f51cce91766728\build-script-main` (exit code: 101)
  --- stdout
  cargo:rerun-if-env-changed=AWS_LC_SYS_INTERNAL_NO_PREFIX
  cargo:rerun-if-env-changed=AWS_LC_RUST_INTERNAL_BINDGEN
  cargo:rerun-if-env-changed=AWS_LC_SYS_CMAKE_BUILDER
  cargo:rerun-if-env-changed=AWS_LC_SYS_STATIC
  cargo:rerun-if-env-changed=AWS_LC_SYS_INCLUDES
  cargo:rustc-cfg=use_bindgen_generated
  cargo:rerun-if-env-changed=AWS_LC_SYS_STATIC
  CMAKE_TOOLCHAIN_FILE_x86_64-pc-windows-gnu = None
  CMAKE_TOOLCHAIN_FILE_x86_64_pc_windows_gnu = None
  TARGET_CMAKE_TOOLCHAIN_FILE = None
  CMAKE_TOOLCHAIN_FILE = None
  CMAKE_GENERATOR_x86_64-pc-windows-gnu = None
  CMAKE_GENERATOR_x86_64_pc_windows_gnu = None
  TARGET_CMAKE_GENERATOR = None
  CMAKE_GENERATOR = None
  CMAKE_PREFIX_PATH_x86_64-pc-windows-gnu = None
  CMAKE_PREFIX_PATH_x86_64_pc_windows_gnu = None
  TARGET_CMAKE_PREFIX_PATH = None
  CMAKE_PREFIX_PATH = None
  CMAKE_x86_64-pc-windows-gnu = None
  CMAKE_x86_64_pc_windows_gnu = None
  TARGET_CMAKE = None
  CMAKE = Some("cmake")
  running: "cmake" "C:\\Users\\runneradmin\\.cargo\\registry\\src\\index.crates.io-6f17d22bba15001f\\aws-lc-sys-0.15.0" "-G" "MSYS Makefiles" "-DBUILD_SHARED_LIBS=0" "-DCMAKE_BUILD_TYPE=release" "-DBORINGSSL_PREFIX=aws_lc_0_15_0_" "-DBORINGSSL_PREFIX_HEADERS=C:\\Users\\runneradmin\\.cargo\\registry\\src\\index.crates.io-6f17d22bba15001f\\aws-lc-sys-0.15.0\\generated-include" "-DBUILD_TESTING=OFF" "-DBUILD_LIBSSL=OFF" "-DDISABLE_PERL=ON" "-DDISABLE_GO=ON" "-DCMAKE_SYSTEM_NAME=Windows" "-DCMAKE_SYSTEM_PROCESSOR=AMD64" "-DCMAKE_INSTALL_PREFIX=D:\\a\\releases.opsfolio.com\\releases.opsfolio.com\\target\\x86_64-pc-windows-gnu\\release\\build\\aws-lc-sys-b313b0142cce05c4\\out" "-DCMAKE_C_FLAGS= -ffunction-sections -fdata-sections -m64" "-DCMAKE_CXX_FLAGS= -ffunction-sections -fdata-sections -m64" "-DCMAKE_ASM_FLAGS= -ffunction-sections -fdata-sections -m64" "--no-warn-unused-cli"
  Not searching for unused variables given on the command line.
  -- The C compiler identification is GNU 12.2.0
  -- Detecting C compiler ABI info
  -- Detecting C compiler ABI info - done
  -- Check for working C compiler: C:/mingw64/bin/gcc.exe - skipped
  -- Detecting C compile features
  -- Detecting C compile features - done
  -- Go not found. Disabling some code generation and using pre-generated code in generated-src/
  -- Perl not found. Disabling some code generation and using pre-generated code in generated-src/
  -- Run check_run file_to_test 'memcmp_invalid_stripped_check.c', flag_to_set 'MEMCMP_INVALID_STRIPPED', and compile_flags '-O3 -DNDEBUG'.
  -- stdalign_check.c probe is positive, enabling AWS_LC_STDALIGN_AVAILABLE
  -- builtin_swap_check.c probe is positive, enabling AWS_LC_BUILTIN_SWAP_SUPPORTED
  -- The ASM_NASM compiler identification is NASM
  -- Found assembler: C:/Users/runneradmin/nasm/nasm.exe
  -- Performing Test CMAKE_HAVE_LIBC_PTHREAD
  -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
  -- Found Threads: TRUE
  -- Configuring done (10.6s)
  -- Generating done (0.2s)
  -- Build files have been written to: D:/a/releases.opsfolio.com/releases.opsfolio.com/target/x86_64-pc-windows-gnu/release/build/aws-lc-sys-b313b0142cce05c4/out/build
  running: "cmake" "--build" "." "--target" "install" "--config" "Release" "--parallel" "4"
  [  0%] Built target boringssl_prefix_symbols
  [  0%] Building C object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/cpucap/cpucap.c.obj
  [  0%] Building C object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/fips_shared_support.c.obj
  [  1%] Building C object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/bcm.c.obj
  [  1%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_bitstr.c.obj
  [  2%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_bool.c.obj
  [  2%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_d2i_fp.c.obj
  [  3%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/aesni-gcm-avx512.asm.obj
  [  3%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/aesni-gcm-x86_64.asm.obj
  [  3%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_dup.c.obj
  [  4%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_gentm.c.obj
  [  4%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_i2d_fp.c.obj
  [  4%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_int.c.obj
  [  5%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/aesni-xts-avx512.asm.obj
  [  6%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_mbstr.c.obj
  [  5%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/aesni-x86_64.asm.obj
  [  6%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/ghash-ssse3-x86_64.asm.obj
  [  6%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_object.c.obj
  [  7%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/ghash-x86_64.asm.obj
  [  8%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_octet.c.obj
  [  8%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_strex.c.obj
  [  8%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/md5-x86_64.asm.obj
  [  8%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/p256-x86_64-asm.asm.obj
  [  8%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_strnid.c.obj
  [  9%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/p256_beeu-x86_64-asm.asm.obj
  [ 10%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_time.c.obj
  [ 10%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_type.c.obj
  [ 10%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/rdrand-x86_64.asm.obj
  [ 11%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/rsaz-avx2.asm.obj
  [ 11%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_utctm.c.obj
  [ 12%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/a_utf8.c.obj
  [ 12%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/asn1_lib.c.obj
  [ 12%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/sha1-x86_64.asm.obj
  [ 12%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/sha256-x86_64.asm.obj
  [ 13%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/asn1_par.c.obj
  [ 13%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/asn_pack.c.obj
  [ 13%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/f_int.c.obj
  [ 14%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/sha512-x86_64.asm.obj
  [ 14%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/vpaes-x86_64.asm.obj
  [ 15%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/f_string.c.obj
  [ 15%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/tasn_dec.c.obj
  [ 15%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/tasn_enc.c.obj
  [ 15%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/x86_64-mont5.asm.obj
  [ 16%] Building ASM_NASM object aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/x86_64-mont.asm.obj
  [ 17%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/tasn_fre.c.obj
  [ 17%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/tasn_new.c.obj
  [ 17%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/tasn_typ.c.obj
  [ 17%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/posix_time.c.obj
  [ 18%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/asn1/tasn_utl.c.obj
  [ 19%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/base64/base64.c.obj
  [ 19%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bio/bio.c.obj
  [ 19%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bio/bio_mem.c.obj
  [ 20%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bio/connect.c.obj
  [ 20%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bio/fd.c.obj
  [ 20%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bio/errno.c.obj
  [ 21%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bio/file.c.obj
  [ 21%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bio/hexdump.c.obj
  [ 22%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bio/pair.c.obj
  [ 22%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bio/printf.c.obj
  [ 22%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bio/socket.c.obj
  [ 22%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/blake2/blake2.c.obj
  [ 23%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bio/socket_helper.c.obj
  [ 23%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bn_extra/bn_asn1.c.obj
  [ 24%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bn_extra/convert.c.obj
  [ 24%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/buf/buf.c.obj
  [ 24%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bytestring/asn1_compat.c.obj
  [ 25%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bytestring/ber.c.obj
  [ 25%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bytestring/cbb.c.obj
  [ 26%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bytestring/cbs.c.obj
  [ 26%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/bytestring/unicode.c.obj
  [ 26%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/chacha/chacha.c.obj
  [ 27%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/cipher_extra.c.obj
  [ 27%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/derive_key.c.obj
  [ 27%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/e_aesctrhmac.c.obj
  [ 28%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/e_aesgcmsiv.c.obj
  [ 28%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/e_chacha20poly1305.c.obj
  [ 29%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/e_aes_cbc_hmac_sha1.c.obj
  [ 29%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/e_aes_cbc_hmac_sha256.c.obj
  [ 29%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/e_des.c.obj
  [ 30%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/e_null.c.obj
  [ 30%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/e_rc2.c.obj
  [ 30%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/e_rc4.c.obj
  [ 31%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/e_tls.c.obj
  [ 31%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/tls_cbc.c.obj
  [ 31%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/conf/conf.c.obj
  [ 32%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/crypto.c.obj
  [ 32%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/curve25519/curve25519.c.obj
  [ 33%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/curve25519/curve25519_nohw.c.obj
  [ 33%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/curve25519/curve25519_s2n_bignum_asm.c.obj
  [ 33%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/curve25519/spake25519.c.obj
  [ 34%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/des/des.c.obj
  [ 34%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/dh_extra/params.c.obj
  [ 34%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/dh_extra/dh_asn1.c.obj
  [ 35%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/digest_extra/digest_extra.c.obj
  [ 35%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/dsa/dsa.c.obj
  [ 36%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/dsa/dsa_asn1.c.obj
  [ 36%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ecdh_extra/ecdh_extra.c.obj
  [ 36%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ecdsa_extra/ecdsa_asn1.c.obj
  [ 37%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ec_extra/ec_asn1.c.obj
  [ 37%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ec_extra/ec_derive.c.obj
  [ 37%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ec_extra/hash_to_curve.c.obj
  [ 38%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/err/err.c.obj
  [ 38%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/err_data.c.obj
  [ 38%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/engine/engine.c.obj
  [ 38%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/p_dsa_asn1.c.obj
  [ 39%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/evp_asn1.c.obj
  [ 40%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/p_ec_asn1.c.obj
  [ 40%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/p_ed25519.c.obj
  [ 40%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/p_ed25519_asn1.c.obj
  [ 41%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/p_hmac_asn1.c.obj
  [ 41%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/p_kem.c.obj
  [ 41%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/p_kem_asn1.c.obj
  [ 42%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/p_rsa_asn1.c.obj
  [ 42%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/p_x25519.c.obj
  [ 43%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/p_x25519_asn1.c.obj
  [ 43%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/p_methods.c.obj
  [ 43%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/print.c.obj
  [ 44%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/scrypt.c.obj
  [ 44%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/evp_extra/sign.c.obj
  [ 44%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ex_data.c.obj
  [ 45%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/hpke/hpke.c.obj
  [ 45%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/hrss/hrss.c.obj
  [ 46%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/kem/kem.c.obj
  [ 46%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/kem/kem_methods.c.obj
  [ 46%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/kyber/kyber512r3_ref.c.obj
  [ 47%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/kyber/kyber768r3_ref.c.obj
  [ 47%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/kyber/kyber1024r3_ref.c.obj
  [ 47%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/kyber/pqcrystals_kyber_ref_common/fips202.c.obj
  [ 48%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/kyber/kem_kyber.c.obj
  [ 48%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/lhash/lhash.c.obj
  [ 48%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/mem.c.obj
  [ 49%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/obj/obj.c.obj
  [ 49%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/obj/obj_xref.c.obj
  [ 50%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ocsp/ocsp_asn.c.obj
  [ 50%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ocsp/ocsp_client.c.obj
  [ 50%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ocsp/ocsp_extension.c.obj
  [ 51%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ocsp/ocsp_http.c.obj
  [ 51%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ocsp/ocsp_lib.c.obj
  [ 51%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ocsp/ocsp_print.c.obj
  [ 52%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ocsp/ocsp_server.c.obj
  [ 52%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/ocsp/ocsp_verify.c.obj
  [ 53%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pem/pem_all.c.obj
  [ 53%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pem/pem_info.c.obj
  [ 53%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pem/pem_lib.c.obj
  [ 54%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pem/pem_oth.c.obj
  [ 54%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pem/pem_pk8.c.obj
  [ 55%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pem/pem_x509.c.obj
  [ 55%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pem/pem_pkey.c.obj
  [ 55%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pem/pem_xaux.c.obj
  [ 55%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pkcs7/pkcs7.c.obj
  [ 56%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pkcs7/pkcs7_x509.c.obj
  [ 56%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pkcs8/pkcs8.c.obj
  [ 57%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pkcs8/pkcs8_x509.c.obj
  [ 57%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pkcs8/p5_pbev2.c.obj
  [ 58%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/poly1305/poly1305_arm.c.obj
  [ 57%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/poly1305/poly1305.c.obj
  [ 58%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/poly1305/poly1305_vec.c.obj
  [ 58%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/pool/pool.c.obj
  [ 59%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/rand_extra/deterministic.c.obj
  [ 59%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/rand_extra/entropy_passive.c.obj
  [ 60%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/rand_extra/forkunsafe.c.obj
  [ 60%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/rand_extra/fuchsia.c.obj
  [ 60%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/rand_extra/rand_extra.c.obj
  [ 61%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/rand_extra/pq_custom_randombytes.c.obj
  [ 61%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/rand_extra/trusty.c.obj
  [ 61%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/rand_extra/windows.c.obj
  [ 62%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/rc4/rc4.c.obj
  [ 62%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/refcount_c11.c.obj
  [ 62%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/refcount_lock.c.obj
  [ 63%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/refcount_win.c.obj
  [ 63%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/rsa_extra/rsa_asn1.c.obj
  [ 64%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/rsa_extra/rsassa_pss_asn1.c.obj
  [ 64%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/rsa_extra/rsa_crypt.c.obj
  [ 64%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/rsa_extra/rsa_print.c.obj
  [ 65%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/stack/stack.c.obj
  [ 65%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/siphash/siphash.c.obj
  [ 65%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/thread.c.obj
  [ 66%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/thread_none.c.obj
  [ 66%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/thread_pthread.c.obj
  [ 67%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/thread_win.c.obj
  [ 67%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/trust_token/pmbtoken.c.obj
  [ 67%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/trust_token/trust_token.c.obj
  [ 68%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/trust_token/voprf.c.obj
  [ 68%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/a_digest.c.obj
  [ 68%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/a_sign.c.obj
  [ 69%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/a_verify.c.obj
  [ 69%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/algorithm.c.obj
  [ 69%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/asn1_gen.c.obj
  [ 70%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/by_dir.c.obj
  [ 70%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/by_file.c.obj
  [ 71%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/i2d_pr.c.obj
  [ 71%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/name_print.c.obj
  [ 71%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/policy.c.obj
  [ 72%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/rsa_pss.c.obj
  [ 72%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/t_crl.c.obj
  [ 72%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/t_req.c.obj
  [ 73%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/t_x509.c.obj
  [ 73%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/t_x509a.c.obj
  [ 74%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509.c.obj
  [ 74%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_att.c.obj
  [ 74%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_cmp.c.obj
  [ 75%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_d2.c.obj
  [ 75%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_def.c.obj
  [ 75%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_ext.c.obj
  [ 76%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_lu.c.obj
  [ 76%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_obj.c.obj
  [ 77%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_req.c.obj
  [ 77%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_set.c.obj
  [ 77%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_v3.c.obj
  [ 77%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_trs.c.obj
  [ 78%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_txt.c.obj
  [ 78%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_vfy.c.obj
  [ 79%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509_vpm.c.obj
  [ 79%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509cset.c.obj
  [ 79%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509name.c.obj
  [ 80%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509rset.c.obj
  [ 81%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x_algor.c.obj
  [ 81%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x509spki.c.obj
  [ 81%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x_all.c.obj
  [ 81%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x_attrib.c.obj
  [ 81%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x_exten.c.obj
  [ 82%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x_crl.c.obj
  [ 83%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x_pubkey.c.obj
  [ 82%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x_name.c.obj
  [ 83%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x_req.c.obj
  [ 84%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x_sig.c.obj
  [ 84%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x_spki.c.obj
  [ 84%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x_val.c.obj
  [ 85%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x_x509.c.obj
  [ 85%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509/x_x509a.c.obj
  [ 85%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_akey.c.obj
  [ 86%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_akeya.c.obj
  [ 86%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_alt.c.obj
  [ 86%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_bcons.c.obj
  [ 87%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_bitst.c.obj
  [ 87%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_conf.c.obj
  [ 88%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_cpols.c.obj
  [ 88%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_crld.c.obj
  [ 88%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_enum.c.obj
  [ 89%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_extku.c.obj
  [ 89%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_genn.c.obj
  [ 89%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_ia5.c.obj
  [ 90%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_info.c.obj
  [ 90%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_int.c.obj
  [ 91%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_lib.c.obj
  [ 91%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_ncons.c.obj
  [ 91%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_ocsp.c.obj
  [ 92%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_pcons.c.obj
  [ 92%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_pmaps.c.obj
  [ 92%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_prn.c.obj
  [ 93%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_purp.c.obj
  [ 93%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_skey.c.obj
  [ 93%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/x509v3/v3_utl.c.obj
  [ 94%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/decrepit/bio/base64_bio.c.obj
  [ 94%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/decrepit/blowfish/blowfish.c.obj
  [ 95%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/decrepit/cast/cast.c.obj
  [ 95%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/decrepit/cast/cast_tables.c.obj
  [ 95%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/decrepit/cfb/cfb.c.obj
  [ 96%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/decrepit/dh/dh_decrepit.c.obj
  [ 96%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/decrepit/evp/evp_do_all.c.obj
  [ 97%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/decrepit/rsa/rsa_decrepit.c.obj
  [ 97%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/decrepit/ripemd/ripemd.c.obj
  [ 97%] Building C object aws-lc/crypto/CMakeFiles/crypto_objects.dir/decrepit/x509/x509_decrepit.c.obj
  [ 98%] Building ASM_NASM object aws-lc/crypto/CMakeFiles/crypto_objects.dir/chacha/chacha-x86_64.asm.obj
  [ 98%] Building ASM_NASM object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/chacha20_poly1305_x86_64.asm.obj
  [ 98%] Building ASM_NASM object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/aes128gcmsiv-x86_64.asm.obj
  [ 98%] Building ASM_NASM object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/aesni-sha256-x86_64.asm.obj
  [ 99%] Building ASM_NASM object aws-lc/crypto/CMakeFiles/crypto_objects.dir/cipher_extra/aesni-sha1-x86_64.asm.obj
  [ 99%] Building ASM_NASM object aws-lc/crypto/CMakeFiles/crypto_objects.dir/test/trampoline-x86_64.asm.obj
  [ 99%] Built target crypto_objects
  --- stderr
  CMake Deprecation Warning at CMakeLists.txt:4 (cmake_minimum_required):
    Compatibility with CMake < 3.5 will be removed from a future version of
    CMake.
    Update the VERSION argument <min> value or use a ...<max> suffix to tell
    CMake that the project does not need compatibility with older versions.
  CMake Deprecation Warning at aws-lc/CMakeLists.txt:1 (cmake_minimum_required):
    Compatibility with CMake < 3.5 will be removed from a future version of
    CMake.
    Update the VERSION argument <min> value or use a ...<max> suffix to tell
    CMake that the project does not need compatibility with older versions.
  Copying platform assembly files from C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/generated-src/win-x86_64/crypto/ to D:/a/releases.opsfolio.com/releases.opsfolio.com/target/x86_64-pc-windows-gnu/release/build/aws-lc-sys-b313b0142cce05c4/out/build/aws-lc/crypto
  In file included from C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/include/openssl/base.h:80,
                   from C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/include/openssl/crypto.h:18,
                   from C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/crypto/fipsmodule/bcm.c:19:
  D:/a/releases.opsfolio.com/releases.opsfolio.com/target/x86_64-pc-windows-gnu/release/build/aws-lc-sys-b313b0142cce05c4/out/build/aws-lc/symbol_prefix_include/openssl/boringssl_prefix_symbols.h: In function 'aws_lc_0_15_0_ecdsa_digestverify_no_self_test':
  D:/a/releases.opsfolio.com/releases.opsfolio.com/target/x86_64-pc-windows-gnu/release/build/aws-lc-sys-b313b0142cce05c4/out/build/aws-lc/symbol_prefix_include/openssl/boringssl_prefix_symbols.h:20:26: error: 'digest_len' may be used uninitialized [-Werror=maybe-uninitialized]
     20 | #define BORINGSSL_PREFIX aws_lc_0_15_0
        |                          ^~~~~~~~~~~~~
  In file included from C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/crypto/fipsmodule/bcm.c:92:
  C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/crypto/fipsmodule/ecdsa/ecdsa.c:458:16: note: 'digest_len' was declared here
    458 |   unsigned int digest_len;
        |                ^~~~~~~~~~
  In file included from C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/crypto/fipsmodule/bcm.c:89:
  In function 'aws_lc_0_15_0_EVP_Digest',
      inlined from 'aws_lc_0_15_0_ecdsa_digestsign_no_self_test' at C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/crypto/fipsmodule/ecdsa/ecdsa.c:446:8:
  C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/crypto/fipsmodule/digest/digest.c:322:45: error: 'digest_len' may be used uninitialized [-Werror=maybe-uninitialized]
    322 |     ret &= EVP_DigestFinalXOF(&ctx, out_md, *out_size);
        |                                             ^~~~~~~~~
  C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/crypto/fipsmodule/ecdsa/ecdsa.c: In function 'aws_lc_0_15_0_ecdsa_digestsign_no_self_test':
  C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/crypto/fipsmodule/ecdsa/ecdsa.c:445:16: note: 'digest_len' declared here
    445 |   unsigned int digest_len;
        |                ^~~~~~~~~~
  D:/a/releases.opsfolio.com/releases.opsfolio.com/target/x86_64-pc-windows-gnu/release/build/aws-lc-sys-b313b0142cce05c4/out/build/aws-lc/symbol_prefix_include/openssl/boringssl_prefix_symbols.h: In function 'aws_lc_0_15_0_rsa_digestsign_no_self_test':
  D:/a/releases.opsfolio.com/releases.opsfolio.com/target/x86_64-pc-windows-gnu/release/build/aws-lc-sys-b313b0142cce05c4/out/build/aws-lc/symbol_prefix_include/openssl/boringssl_prefix_symbols.h:20:26: error: 'digest_len' may be used uninitialized [-Werror=maybe-uninitialized]
     20 | #define BORINGSSL_PREFIX aws_lc_0_15_0
        |                          ^~~~~~~~~~~~~
  In file included from C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/crypto/fipsmodule/bcm.c:134:
  C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/crypto/fipsmodule/rsa/rsa.c:695:16: note: 'digest_len' was declared here
    695 |   unsigned int digest_len;
        |                ^~~~~~~~~~
  D:/a/releases.opsfolio.com/releases.opsfolio.com/target/x86_64-pc-windows-gnu/release/build/aws-lc-sys-b313b0142cce05c4/out/build/aws-lc/symbol_prefix_include/openssl/boringssl_prefix_symbols.h: In function 'aws_lc_0_15_0_rsa_digestverify_no_self_test':
  D:/a/releases.opsfolio.com/releases.opsfolio.com/target/x86_64-pc-windows-gnu/release/build/aws-lc-sys-b313b0142cce05c4/out/build/aws-lc/symbol_prefix_include/openssl/boringssl_prefix_symbols.h:20:26: error: 'digest_len' may be used uninitialized [-Werror=maybe-uninitialized]
     20 | #define BORINGSSL_PREFIX aws_lc_0_15_0
        |                          ^~~~~~~~~~~~~
  C:/Users/runneradmin/.cargo/registry/src/index.crates.io-6f17d22bba15001f/aws-lc-sys-0.15.0/aws-lc/crypto/fipsmodule/rsa/rsa.c:763:16: note: 'digest_len' was declared here
    763 |   unsigned int digest_len;
        |                ^~~~~~~~~~
  cc1.exe: all warnings being treated as errors
  make.exe[2]: *** [aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/build.make:77: aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/bcm.c.obj] Error 1
  make.exe[1]: *** [CMakeFiles/Makefile2:258: aws-lc/crypto/fipsmodule/CMakeFiles/fipsmodule.dir/all] Error 2
  make.exe[1]: *** Waiting for unfinished jobs....
  make.exe: *** [Makefile:136: all] Error 2
  thread 'main' panicked at C:\Users\runneradmin\.cargo\registry\src\index.crates.io-6f17d22bba15001f\cmake-0.1.50\src\lib.rs:1098:5:
  command did not execute successfully, got: exit code: 2
  build script failed, must exit now
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
@justsmth
Copy link
Contributor

I suspect the reason we're not seeing this failure in our CI is that we're not performing a --release build. Optimized/release builds are more likely to produce such "maybe-uninitialized" variable warnings. In the cases above, I believe these are all actually false-positives from the compiler given how the variables are being used -- but that doesn't make this problem any less painful for our consumer.

I'd need to investigate what workarounds are available for this type of issue. I'm not sure that CFLAGS gets propagated through. One option for now is to perform a debug build (instead of --release). I hope to have a patch release available to address this issue soon.

@justsmth
Copy link
Contributor

I'm able to reproduce this error in our CI: https://github.com/aws/aws-lc-rs/actions/runs/8723216911/job/23930952090?pr=399

justsmth added a commit to aws/aws-lc that referenced this issue Apr 17, 2024
### Issues:
Resolves: 
* aws/aws-lc-rs#397

### Description of changes: 
* Perform "release" build for MinGW in the CI.
* Address several GCC 12/13 warnings


By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache 2.0 license and the ISC license.
@Lilit0x
Copy link
Author

Lilit0x commented Apr 18, 2024

I'd need to investigate what workarounds are available for this type of issue. I'm not sure that CFLAGS gets propagated through. One option for now is to perform a debug build (instead of --release). I hope to have a patch release available to address this issue soon.

I can confirm that debug builds compile successfully. I'll stick with that for now pending the fix. Thank you.

@justsmth justsmth added the build problem Build failure label Apr 25, 2024
@justsmth justsmth self-assigned this Apr 25, 2024
@justsmth
Copy link
Contributor

justsmth commented May 3, 2024

As of our v1.7.1 release, I believe this issue to be resolved. Feel free to reopen or create a new issue if you are still having a problem building aws-lc-rs. Thanks!

@justsmth justsmth closed this as completed May 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build problem Build failure
Projects
None yet
Development

No branches or pull requests

2 participants