ci, iwyu: Request IPC file generation explicitly #35468

pull hebasto wants to merge 1 commits into bitcoin:master from hebasto:260605-iwyu-ipc changing 2 files +5 −2
  1. hebasto commented at 4:37 PM on June 5, 2026: member

    Fixes a part of #35361:

    ... other sporadic error output:

    [1](https://github.com/bitcoin/bitcoin/actions/runs/26292243180/job/77395542650#step:11:11661)
    error: no such file or directory: '/home/admin/actions-runner/_work/_temp/build/src/ipc/capnp/common.capnp.c++'
    error: no input files
    error: unable to handle compilation, expected exactly one compiler job in ''
    error: no such file or directory: '/home/admin/actions-runner/_work/_temp/build/src/ipc/capnp/common.capnp.proxy-client.c++'
    error: no input files
    error: unable to handle compilation, expected exactly one compiler job in ''
    error: no such file or directory: '/home/admin/actions-runner/_work/_temp/build/src/ipc/capnp/common.capnp.proxy-server.c++'
    error: no input files
    error: unable to handle compilation, expected exactly one compiler job in ''
    error: no such file or directory: '/home/admin/actions-runner/_work/_temp/build/src/ipc/capnp/common.capnp.proxy-types.c++'
    error: no input files
    
  2. hebasto added the label Tests on Jun 5, 2026
  3. DrahtBot commented at 4:37 PM on June 5, 2026: contributor

    <!--e57a25ab6845829454e8d69fc972939a-->

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    <!--006a51241073e994b41acfe9ec718e94-->

    Code Coverage & Benchmarks

    For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/35468.

    <!--021abf342d371248e50ceaed478a90ca-->

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    Stale ACK ryanofsky

    If your review is incorrectly listed, please copy-paste <code>&lt;!--meta-tag:bot-skip--&gt;</code> into the comment that the bot should ignore.

    <!--174a7506f384e20aa4161008e828411d-->

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #34914 (contrib: replace deprecated --deep codesign flag, fix accidental --verify skip on ci by Sjors)

    If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

    <!--5faf32d7da4f0f540f40219e4f7537a3-->

  4. hebasto commented at 4:38 PM on June 5, 2026: member

    Suggested by @ryanofsky in #35418#pullrequestreview-4437523909:

    ... why the IWYU job shouldn't do make bitcoin_ipc_headers bitcoin_ipc_test_headers to generate missing files.

  5. in ci/test/03_test_script.sh:126 in f83600137c
     122 | @@ -123,7 +123,7 @@ cmake -S "$BASE_ROOT_DIR" -B "$BASE_BUILD_DIR" "${CMAKE_ARGS[@]}" || (
     123 |    false
     124 |  )
     125 |  
     126 | -if [[ "${GOAL}" != all && "${GOAL}" != codegen ]]; then
     127 | +if [[ "${GOAL}" != all && "${RUN_IWYU}" != true ]]; then
    


    ryanofsky commented at 6:04 PM on June 5, 2026:

    In commit "ci, iwyu: Request IPC file generation explicitly" (f83600137cf6926790417338adecf52fac208eaf)

    Might be better to do:

    if [[ "${GOAL}" != all && "${GOAL}" != *codegen* ]]; then
    

    to avoid needing to reference the IWYU tool here or limit this specifically to IWYU.

    Also IMO it would be nicer to just never prepend "all" here and make require CI jobs to specify "all" if they want it.


    hebasto commented at 11:18 AM on July 7, 2026:

    Thanks! Reworked.

  6. in ci/test/00_setup_env_native_iwyu.sh:23 in f83600137c
      16 | @@ -17,7 +17,10 @@ export RUN_FUNCTIONAL_TESTS=false
      17 |  export RUN_FUZZ_TESTS=false
      18 |  export RUN_CHECK_DEPS=false
      19 |  export RUN_IWYU=true
      20 | -export GOAL="codegen"
      21 | +# Adding non-codegen targets to the build goal is a workaround
      22 | +# for https://gitlab.kitware.com/cmake/cmake/-/work_items/27862
      23 | +# and https://github.com/bitcoin-core/libmultiprocess/issues/284.
      24 | +export GOAL="codegen bitcoin_ipc_headers bitcoin_ipc_test_headers"
    


    ryanofsky commented at 6:20 PM on June 5, 2026:

    In commit "ci, iwyu: Request IPC file generation explicitly" (f83600137cf6926790417338adecf52fac208eaf)

    Could also add mptest_headers as an alternative to #35418


    hebasto commented at 11:17 AM on July 7, 2026:

    Thanks! Added.

  7. ryanofsky approved
  8. ryanofsky commented at 6:21 PM on June 5, 2026: contributor

    Code review ACK f83600137cf6926790417338adecf52fac208eaf. Thanks for implementing this

  9. hebasto commented at 7:39 PM on June 5, 2026: member

    The build log still shows several errors like the following:

    /home/runner/work/_temp/build/src/ipc/capnp/init.capnp.h:18:10: fatal error: 'mp/proxy.capnp.h' file not found
       18 | #include <mp/proxy.capnp.h>
          |   
    

    To fix these, https://github.com/bitcoin-core/libmultiprocess/pull/291 is required, as it introduces the necessary build target.

  10. ryanofsky referenced this in commit 9cc3479ab3 on Jun 9, 2026
  11. hebasto force-pushed on Jul 7, 2026
  12. hebasto marked this as ready for review on Jul 7, 2026
  13. hebasto commented at 10:47 AM on July 7, 2026: member

    Rebased on top of the merged bitcoin/bitcoin#35661 and undrafted.

  14. in ci/test/00_setup_env_native_iwyu.sh:21 in 365e2d8362 outdated
      16 | @@ -17,7 +17,10 @@ export RUN_FUNCTIONAL_TESTS=false
      17 |  export RUN_FUZZ_TESTS=false
      18 |  export RUN_CHECK_DEPS=false
      19 |  export RUN_IWYU=true
      20 | -export GOAL="codegen"
      21 | +# Adding non-codegen targets to the build goal is a workaround
      22 | +# for https://gitlab.kitware.com/cmake/cmake/-/work_items/27862
    


    fanquake commented at 10:56 AM on July 7, 2026:

    Looking at both of those threads, there doesn't seem to be any real conclusions about what should be done, or if upstream changes will/should be made?


    hebasto commented at 11:08 AM on July 7, 2026:

    Right. Both discussions are still ongoing.

    I expect that https://gitlab.kitware.com/cmake/cmake/-/work_items/27862 will be resolved as described by @purpleKarrot:

    ... codegen should generate all files required by a compilation database.... I support that statement.. The whole purpose of generating a compiler database is to get access to the compiler command lines independently from what is actually built or would be built by default.

  15. hebasto marked this as a draft on Jul 7, 2026
  16. hebasto force-pushed on Jul 7, 2026
  17. DrahtBot added the label CI failed on Jul 7, 2026
  18. ci, iwyu: Request IPC file generation explicitly
    Fixes a part of https://github.com/bitcoin/bitcoin/issues/35361.
    2d7f70e2af
  19. hebasto force-pushed on Jul 7, 2026
  20. hebasto marked this as ready for review on Jul 7, 2026
  21. DrahtBot removed the label CI failed on Jul 7, 2026

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-07-09 06:47 UTC