From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from [87.239.111.99] (localhost [127.0.0.1]) by dev.tarantool.org (Postfix) with ESMTP id 1F91A6ECEC; Sun, 13 Sep 2026 02:49:56 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 1F91A6ECEC DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tarantool.org; s=dev; t=1789256996; bh=9uCSsPnLjP58tfLCg/0pKRnMNRbMe7iWHVxgmAc3gsQ=; h=To:Cc:Date:Subject:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From:Reply-To:From; b=W63TSjOgjZoyGBc4Ksfl1N8lw6a9+3slsegSmCb762EV816I92NQsipUjYmnyGVCg nrI9ifbafK3JcC+5XrndDPn/9xBL0Yt2TKybLtbSjV+5eM12pnQa5odD3LL9rDLxZe MsqZbUCS4ADdr56Xmbo06AB5Wm0R/JEomXYRa87w= Received: from send174.i.mail.ru (send174.i.mail.ru [95.163.59.13]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 2BF216ECEC for ; Sun, 13 Sep 2026 02:49:54 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 dev.tarantool.org 2BF216ECEC Received: by exim-smtp-5d69b54bdd-gpg66 with esmtpa (envelope-from ) id 1x5XTk-000000009x7-3Ldi; Sun, 13 Sep 2026 02:49:53 +0300 To: Sergey Kaplun Cc: tarantool-patches@dev.tarantool.org, Alexander Turenko Date: Sun, 13 Sep 2026 02:49:48 +0300 Message-ID: <783b19798eebe5c8cb7406a3f0ee052fddd4c9eb.1789256599.git.alexander.turenko@tarantool.org> X-Mailer: git-send-email 2.55.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Mailru-Src: smtp X-7564579A: 646B95376F6C166E X-77F55803: 4F1203BC0FB41BD969DCC1097515C590D09F94FCA7DDD95AE6D046AB5007F165182A05F538085040014D8B8D51EE0F763DE06ABAFEAF6705F1F88D28DC7B3D9C3CB31C47D1F294C8168CA2B421C46119 X-7FA49CB5: FF5795518A3D127A4AD6D5ED66289B5278DA827A17800CE7ED971EE68B26EF8CEA1F7E6F0F101C67BD4B6F7A4D31EC0BCC500DACC3FED6E28638F802B75D45FF8AA50765F7900637AC83A81C8FD4AD23D82A6BABE6F325AC2E85FA5F3EDFCBAA7353EFBB55337566A65793D567D8D18CC7113B24DF26049A33BEBF19F7FCB6A0A01ADDB51E4ECCAD389733CBF5DBD5E913377AFFFEAFD269176DF2183F8FC7C08794E14F7ADDB10D8941B15DA834481FCF19DD082D7633A0EF3E4896CB9E6436389733CBF5DBD5E9D5E8D9A59859A8B6197FFA0EFC27E0ACA471835C12D1D977C4224003CC836476EB9C4185024447017B076A6E789B0E975F5C1EE8F4F765FCA26C8913F777CCC43AA81AA40904B5D9CF19DD082D7633A0C84D3B47A649675F3AA81AA40904B5D98AA50765F7900637425E60B8FADAE700D81D268191BDAD3D3666184CF4C3C14F3FC91FA280E0CE3D1A620F70A64A45A98AA50765F79006372E808ACE2090B5E1725E5C173C3A84C3C5EA940A35A165FF2DBA43225CD8A89F1FC58B5115ECA9A2262FEC7FBD7D1F5BB5C8C57E37DE458BEDA766A37F9254B7 X-87b9d050: 1 X-C1DE0DAB: 0D63561A33F958A5748D86548782165F5002B1117B3ED6968E26D4DDF4457434B2920F75BA9A967F823CB91A9FED034534781492E4B8EEAD05E80F4396618BB2C79554A2A72441328621D336A7BC284946AD531847A6065A535571D14F44ED41 X-C8649E89: 1C3962B70DF3F0AD73CAD6646DEDE191716CD42B3DD1D34C77DD89D51EBB774225B6776AC983F447FC0B9F89525902EE6F57B2FD27647F25E66C117BDB76D659741EC59E408C7E62827AEF22826FFC488F0E2480CF56670910315F1D1EE4968C568950E209677F99B8341EE9D5BE9A0AF501787590496BF7D6679DCE2B8A977823C29146FD516B276536EB022892E5344C41F94D744909CE8C38AF1336F30FB31612CB4B0C47B912DD8663F6CFD812E6ED6A17656DB59BCAD427812AF56FC65B X-D57D3AED: 3ZO7eAau8CL7WIMRKs4sN3D3tLDjz0dLbV79QFUyzQ2Ujvy7cMT6pYYqY16iZVKkSc3dCLJ7zSJH7+u4VD18S7Vl4ZUrpaVfd2+vE6kuoey4m4VkSEu53w8ahmwBjZKM/YPHZyZHvz5uv+WouB9+ObcCpyrx6l7KImUglyhkEat/+ysWwi0gdhEs0JGjl6ggRWTy1haxBpVdbIX1nthFXOcIETfglQORZ0zpDET4Zrk3igikrdHlWEh0ucjtxEo83KofJT2Itw4= X-Mailru-Sender: B47E023F65B285261C1D5576E0A1F3DBD98523962EB50FF2B951B70A5BD4BD8E01093D52E6B8BF0FE4432189A1BA3D85A49F40704E9220DFAAFFD2005305549D18B10D50888C45584E6C5BCC4624BC7972D6B4FCE48DF648AE208404248635DF X-Mras: Ok Subject: [Tarantool-patches] [PATCH] build: fix CMP0175 warnings X-BeenThere: tarantool-patches@dev.tarantool.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Alexander Turenko via Tarantool-patches Reply-To: Alexander Turenko Errors-To: tarantool-patches-bounces@dev.tarantool.org Sender: "Tarantool-patches" The following pattern was used to add custom `make LuaJIT-foo` commands: ```cmake add_custom_target(${PROJECT_NAME}-foo DEPENDS <...>) add_custom_command(TARGET ${PROJECT_NAME}-foo COMMAND <...> ) ``` However, recent cmake versions (verified on 4.3.4) warns about the `add_custom_command` syntax (quoted [1]): > `add_custom_command()` rejects invalid arguments. > > <...> > > The `TARGET` form requires exactly one of `PRE_BUILD`, `PRE_LINK`, or > `POST_BUILD` to be given. Previously, if none were given, `POST_BUILD` > was assumed, or if multiple keywords were given, the last one was > used. The fix could be add the `POST_BUILD` keyword. However, it is more natural to just use `add_custom_target` with `COMMAND` instead: ```cmake add_custom_target(${PROJECT_NAME}-foo COMMAND <...> DEPENDS <...> ) ``` The same change is proposed to tarantool: [2]. [1]: https://cmake.org/cmake/help/latest/policy/CMP0175.html [2]: https://github.com/tarantool/tarantool/pull/13177 --- cmake/CodeCoverage.cmake | 3 +-- cmake/CodeSpell.cmake | 5 ++--- test/CMakeLists.txt | 14 ++++---------- test/PUC-Rio-Lua-5.1-tests/libs/CMakeLists.txt | 4 ++-- 4 files changed, 9 insertions(+), 17 deletions(-) diff --git a/cmake/CodeCoverage.cmake b/cmake/CodeCoverage.cmake index 51345f1f..5c45bd11 100644 --- a/cmake/CodeCoverage.cmake +++ b/cmake/CodeCoverage.cmake @@ -16,8 +16,7 @@ if(NOT GCOVR OR NOT GCOV) endif() file(MAKE_DIRECTORY ${COVERAGE_DIR}) -add_custom_target(${PROJECT_NAME}-coverage) -add_custom_command(TARGET ${PROJECT_NAME}-coverage +add_custom_target(${PROJECT_NAME}-coverage COMMENT "Building coverage report" COMMAND ${GCOVR} diff --git a/cmake/CodeSpell.cmake b/cmake/CodeSpell.cmake index 31aa0a02..8592551a 100644 --- a/cmake/CodeSpell.cmake +++ b/cmake/CodeSpell.cmake @@ -35,9 +35,8 @@ set(CODESPELL_WHITELIST set(IGNORE_WORDS ${PROJECT_SOURCE_DIR}/.codespell-ignore-words.txt) -add_custom_target(${PROJECT_NAME}-codespell) if(CODESPELL) - add_custom_command(TARGET ${PROJECT_NAME}-codespell + add_custom_target(${PROJECT_NAME}-codespell COMMENT "Running codespell" COMMAND ${CODESPELL} @@ -51,7 +50,7 @@ else() set(STR1 "codespell is not found,") set(STR2 "so ${PROJECT_NAME}-codespell target is dummy") string(CONCAT WARN_MSG "${STR1} ${STR2}") - add_custom_command(TARGET ${PROJECT_NAME}-codespell + add_custom_target(${PROJECT_NAME}-codespell COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --red ${WARN_MSG} COMMENT ${WARN_MSG} ) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 26b15892..efdfa3d5 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -15,9 +15,6 @@ if(LUACHECK) set(LUACHECK_RC ${LUACHECK_SOURCE_DIR}/.luacheckrc) file(GLOB_RECURSE LUACHECK_DEPS ${LUACHECK_SOURCE_DIR}/*.lua) add_custom_target(${PROJECT_NAME}-luacheck - DEPENDS ${LUACHECK_RC} ${LUACHECK_DEPS} - ) - add_custom_command(TARGET ${PROJECT_NAME}-luacheck COMMENT "Running luacheck static analysis" COMMAND ${LUACHECK} ${LUACHECK_SOURCE_DIR} @@ -31,10 +28,10 @@ if(LUACHECK) # the working directory, hence luacheck should be run in the # project root directory. WORKING_DIRECTORY ${LUACHECK_SOURCE_DIR} + DEPENDS ${LUACHECK_RC} ${LUACHECK_DEPS} ) else() - add_custom_target(${PROJECT_NAME}-luacheck) - add_custom_command(TARGET ${PROJECT_NAME}-luacheck + add_custom_target(${PROJECT_NAME}-luacheck COMMENT "`luacheck' is not found, so ${PROJECT_NAME}-luacheck target is dummy" ) endif() @@ -45,19 +42,16 @@ if(FLAKE8) set(FLAKE8_RC ${FLAKE8_SOURCE_DIR}/.flake8rc) file(GLOB_RECURSE FLAKE8_DEPS ${FLAKE8_SOURCE_DIR}/*.py) add_custom_target(${PROJECT_NAME}-flake8 - DEPENDS ${FLAKE8_DEPS} - ) - add_custom_command(TARGET ${PROJECT_NAME}-flake8 COMMENT "Running flake8 static analysis" COMMAND ${FLAKE8} ${FLAKE8_DEPS} --config ${FLAKE8_RC} --jobs ${CMAKE_BUILD_PARALLEL_LEVEL} WORKING_DIRECTORY ${FLAKE8_SOURCE_DIR} + DEPENDS ${FLAKE8_DEPS} ) else() - add_custom_target(${PROJECT_NAME}-flake8) - add_custom_command(TARGET ${PROJECT_NAME}-flake8 + add_custom_target(${PROJECT_NAME}-flake8 COMMENT "`flake8' is not found, so ${PROJECT_NAME}-flake8 target is dummy" ) endif() diff --git a/test/PUC-Rio-Lua-5.1-tests/libs/CMakeLists.txt b/test/PUC-Rio-Lua-5.1-tests/libs/CMakeLists.txt index d4eb365a..e75b9e6d 100644 --- a/test/PUC-Rio-Lua-5.1-tests/libs/CMakeLists.txt +++ b/test/PUC-Rio-Lua-5.1-tests/libs/CMakeLists.txt @@ -24,11 +24,11 @@ list(APPEND TESTLIBS ${LIB2COPY}) # subdirectory "libs/P1", to be used by tests. # Instead of tracking empty directory with some anchor-file for # git, create this directory via CMake. -add_custom_target(PUC-Rio-Lua-5.1-tests-prepare DEPENDS ${TESTLIBS}) -add_custom_command(TARGET PUC-Rio-Lua-5.1-tests-prepare +add_custom_target(PUC-Rio-Lua-5.1-tests-prepare COMMENT "Create directory for PUC-Rio Lua 5.1 tests" COMMAND ${CMAKE_COMMAND} -E make_directory P1 WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + DEPENDS ${TESTLIBS} ) # vim: expandtab tabstop=2 shiftwidth=2 -- 2.55.0