[Tarantool-patches] [PATCH luajit 2/8] test: introduce MakeLuaPath.cmake helper
Igor Munkin
imun at tarantool.org
Wed Aug 31 18:07:22 MSK 2022
Sergey,
Thanks for you review!
On 15.08.22, Sergey Bronnikov wrote:
> Igor, thanks for the patch! See my comments inline.
>
> On 11.08.2022 14:17, Igor Munkin wrote:
> > While extending test suites it is often required to append additional
> > path where Lua or Lua-C auxiliary modules are located to LUA_PATH or
> > LUA_CPATH environment variables. Due to insane semicolon interpolation
> > in CMake strings (that converts such string to a list as a result), we
> > need to escape semicolon in LUA_PATH/LUA_CPATH strings while building
> > the resulting value.
> >
> > After the years of struggling MakeLuaPath.cmake module is introduced to
> > make LUA_PATH and LUA_CPATH definition convenient with <make_lua_path>
> > helper. This function takes all paths given as a variable list argument,
> > joins them in a reverse order by a semicolon and yields the resulting
> > string to a specified CMake variable.
> >
> > Signed-off-by: Igor Munkin<imun at tarantool.org>
> > ---
> > cmake/MakeLuaPath.cmake | 46 +++++++++++++++++++++++
> > test/CMakeLists.txt | 2 +
> > test/PUC-Rio-Lua-5.1-tests/CMakeLists.txt | 8 +++-
> > test/lua-Harness-tests/CMakeLists.txt | 16 +++++---
> > test/tarantool-tests/CMakeLists.txt | 28 ++++++++------
> > 5 files changed, 81 insertions(+), 19 deletions(-)
> > create mode 100644 cmake/MakeLuaPath.cmake
> >
> > diff --git a/cmake/MakeLuaPath.cmake b/cmake/MakeLuaPath.cmake
> > new file mode 100644
> > index 00000000..9a5a3bb8
> > --- /dev/null
> > +++ b/cmake/MakeLuaPath.cmake
<snipped>
> > +
> > + # FIXME: if we update to CMake >= 3.5, can remove this line.
>
> I would replace comment with condition that will check CMake version
>
> and will fail when CMake >= 3.5:
>
> |if (CMAKE_VERSION VERSION_GREATER_EQUAL 35) |
>
> message(FATAL_ERROR "Please remove snippet for CMake < 3.5")
>
> endif()
I doubt this is a working solution. The comment means, that there is no
need to include a separate module if CMake to be used is greater than
3.5. With your code, fatal error is raised in that case. I have CMake
3.20 on my local machine and LuaJIT fails to be built with your check
added (I've fixed the typo in the version number).
Ignoring for now.
>
>
> > + include(CMakeParseArguments)
<snipped>
--
Best regards,
IM
More information about the Tarantool-patches
mailing list