[Tarantool-patches] [PATCH luajit 3/5] test: run LuaJIT tests via CMake

Timur Safin tsafin at tarantool.org
Tue Feb 9 11:16:57 MSK 2021


: From: Igor Munkin <imun at tarantool.org>
: Subject: Re: [PATCH luajit 3/5] test: run LuaJIT tests via CMake
: 
: Timur,
: 
: Thanks for your review!
: 
: >
: > I don't like this. It reminds me of bad examples of this note
: > in the libev code like "this is so uncontrollably lame" which
: > actually distract users. We should rather put comments in more
: > neutral way (IMVHO).
: 
: Unfortunately... CMake is a crap and I can't fix it. Well, honestly I
: don't want to fix it. But you're right: I can fix all these comments
: (athough I don't really want to). I have no idea how to express this in
: a more neutral way, so I propose the following:
: 1. s/CMake is a crap/there is no convenient way to make it in CMake/g.
: 2. Leave everything else unchanged.

Hmm, ok.

: 
: This is not only emotions. Such comments prevent one from unintentional
: refactoring of such fragile places with no failures and also from
: bothering the oldies with the questions kinda "dude, why is this done so
: badly". In other words, primarily I have left this for the history.
: 
: If you're OK, then I'll fix the way described above.
: 
: >
: > : +  # Add the directory where the lib is built to the LUA_CPATH
: > : +  # environment variable, so interpreter can find and load it.
: > : +  # XXX: Here we see the other side of the coin. If one joins two
: > : +  # strings with semicolon, the value automatically becomes the
: > : +  # list. I have no idea what is wrong with this tool, but I found
: > : +  # a single working solution to make LUA_CPATH be a string via
: > : +  # "escaping" the semicolon right in string interpolation.
: > : +  set(LUA_CPATH
: > :
: "${CMAKE_CURRENT_BINARY_DIR}/?${CMAKE_SHARED_LIBRARY_SUFFIX}\;${LUA_CPATH}"
: > : PARENT_SCOPE)
: > : +  # Also add this directory to LD_LIBRARY_PATH environment
: > : +  # variable, so FFI machinery can find and load it.
: > : +  set(LD_LIBRARY_PATH "${CMAKE_CURRENT_BINARY_DIR}:${LD_LIBRARY_PATH}"
: > : PARENT_SCOPE)
: > : +endmacro()
: > : +
: > : +add_subdirectory(gh-4427-ffi-sandwich)
: > : +add_subdirectory(lj-flush-on-trace)
: > : +add_subdirectory(misclib-getmetrics-capi)
: >
: > I liked you introduced globs for test files addition (blow),
: > but unfortunately you didn't complete this with subdirectory addition
: 
: I have thought about it for some time, and I have a strong rationale (at
: least for me) to not introducing such change: this doesn't work whether
: there are directories inside containing no tests. Furthermore, we're
: going to re-implement several C tests, so I would like to leave
: everything as it is (if you don't mind) and return to this place later.

Ok, if you plan to refactor it, because today it looks inconsistent a bit.

: 
: >
: > Please see my proposed patch (with reworded comments and new macro) here
: https://gist.github.com/tsafin/6c7505c0c764ab2b474667bf0d65fb45.
: >
: 
: <snipped>
: 
: >
: > Regards,
: > Timur
: >
: 
: --
: Best regards,
: IM

Regards,
Timur



More information about the Tarantool-patches mailing list