mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-04-29 23:09:44 -04:00
Merge bitcoin/bitcoin#31899: cmake: Exclude generated sources from translation
Some checks are pending
CI / test each commit (push) Waiting to run
CI / macOS 14 native, arm64, no depends, sqlite only, gui (push) Waiting to run
CI / macOS 14 native, arm64, fuzz (push) Waiting to run
CI / Win64 native, VS 2022 (push) Waiting to run
CI / Win64 native fuzz, VS 2022 (push) Waiting to run
CI / ASan + LSan + UBSan + integer, no depends, USDT (push) Waiting to run
Some checks are pending
CI / test each commit (push) Waiting to run
CI / macOS 14 native, arm64, no depends, sqlite only, gui (push) Waiting to run
CI / macOS 14 native, arm64, fuzz (push) Waiting to run
CI / Win64 native, VS 2022 (push) Waiting to run
CI / Win64 native fuzz, VS 2022 (push) Waiting to run
CI / ASan + LSan + UBSan + integer, no depends, USDT (push) Waiting to run
ff4ddd3d2e
Revert "cmake: Ensure generated sources are up to date for `translate` target" (Hennadii Stepanov)03b3166aac
cmake: Exclude generated sources from translation (Hennadii Stepanov) Pull request description: This PR fixes an error encountered when building the `translate` target: ``` $ gmake -j $(nproc) -C depends MULTIPROCESS=1 $ cmake -G "Unix Makefiles" --preset dev-mode --toolchain depends/x86_64-pc-linux-gnu/toolchain.cmake -DWITH_USDT=OFF $ cmake --build build_dev_mode -t translate gmake[3]: *** No rule to make target 'src/test/ipc_test.capnp.c++', needed by 'src/qt/CMakeFiles/translate'. Stop. gmake[2]: *** [CMakeFiles/Makefile2:1646: src/qt/CMakeFiles/translate.dir/all] Error 2 gmake[1]: *** [CMakeFiles/Makefile2:1653: src/qt/CMakeFiles/translate.dir/rule] Error 2 gmake: *** [Makefile:699: translate] Error 2 ``` The previous [attempt](864386a744
) to address this issue worked only with Ninja generators and has been reverted. Essentially, this PR modifies the `translate` target so that it ignores generated sources rather than attempting to update them. At present, multiprocess-specific sources do not contain any translatable strings. Nonetheless, it is prudent to maintain a general approach. ACKs for top commit: TheCharlatan: ACKff4ddd3d2e
pablomartin4btc: tACKff4ddd3d2e
Tree-SHA512: 6471498a33b145e073f76bd007591b0449e5d520f141c3e3afeca02a09c160fd0f572ec7172dd84703cdc2a1175ad8f3c91e8b0bf705d671338d760786765f56
This commit is contained in:
commit
e606c577cb
1 changed files with 7 additions and 2 deletions
|
@ -288,7 +288,13 @@ function(get_translatable_sources var)
|
||||||
get_target_property(target_source_dir ${target} SOURCE_DIR)
|
get_target_property(target_source_dir ${target} SOURCE_DIR)
|
||||||
cmake_path(APPEND target_source_dir ${source} OUTPUT_VARIABLE source)
|
cmake_path(APPEND target_source_dir ${source} OUTPUT_VARIABLE source)
|
||||||
endif()
|
endif()
|
||||||
|
get_property(is_generated
|
||||||
|
SOURCE ${source} TARGET_DIRECTORY ${target}
|
||||||
|
PROPERTY GENERATED
|
||||||
|
)
|
||||||
|
if(NOT is_generated)
|
||||||
list(APPEND result ${source})
|
list(APPEND result ${source})
|
||||||
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
|
@ -319,7 +325,6 @@ else()
|
||||||
COMMAND Qt5::lconvert -drop-translations -o ${CMAKE_CURRENT_SOURCE_DIR}/locale/bitcoin_en.xlf -i ${CMAKE_CURRENT_SOURCE_DIR}/locale/bitcoin_en.ts
|
COMMAND Qt5::lconvert -drop-translations -o ${CMAKE_CURRENT_SOURCE_DIR}/locale/bitcoin_en.xlf -i ${CMAKE_CURRENT_SOURCE_DIR}/locale/bitcoin_en.ts
|
||||||
COMMAND ${SED_EXECUTABLE} -i.old -e "s|source-language=\"en\" target-language=\"en\"|source-language=\"en\"|" -e "/<target xml:space=\"preserve\"><\\/target>/d" ${CMAKE_CURRENT_SOURCE_DIR}/locale/bitcoin_en.xlf
|
COMMAND ${SED_EXECUTABLE} -i.old -e "s|source-language=\"en\" target-language=\"en\"|source-language=\"en\"|" -e "/<target xml:space=\"preserve\"><\\/target>/d" ${CMAKE_CURRENT_SOURCE_DIR}/locale/bitcoin_en.xlf
|
||||||
COMMAND ${CMAKE_COMMAND} -E rm ${CMAKE_CURRENT_SOURCE_DIR}/locale/bitcoin_en.xlf.old
|
COMMAND ${CMAKE_COMMAND} -E rm ${CMAKE_CURRENT_SOURCE_DIR}/locale/bitcoin_en.xlf.old
|
||||||
DEPENDS ${translatable_sources}
|
|
||||||
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/src
|
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/src
|
||||||
VERBATIM
|
VERBATIM
|
||||||
)
|
)
|
||||||
|
|
Loading…
Add table
Reference in a new issue