From: Igor Munkin via Tarantool-patches <tarantool-patches@dev.tarantool.org>
To: Sergey Kaplun <skaplun@tarantool.org>
Cc: tarantool-patches@dev.tarantool.org
Subject: Re: [Tarantool-patches] [PATCH luajit 2/5] build: replace GNU Make with CMake
Date: Sun, 28 Feb 2021 21:18:11 +0300 [thread overview]
Message-ID: <20210228181811.GG9042@tarantool.org> (raw)
In-Reply-To: <20210227104807.GB6842@root>
Sergey,
On 27.02.21, Sergey Kaplun wrote:
> Igor,
>
> LGTM, except a few nitpicks regarding to the commit message.
Thanks, added your tag:
| Reviewed-by: Sergey Kaplun <skaplun@tarantool.org>
>
<snipped>
> > > > > > +if(CMAKE_LIBRARY_ARCHITECTURE)
> > > > > > + AppendFlags(TARGET_C_FLAGS -DLUA_MULTILIB='"lib/${CMAKE_LIBRARY_ARCHITECTURE}"')
> > > > > > +endif()
> > > > >
> > > > > What about `LUA_LMULTILIB`?
> > > > >
> > > > > Side note: should we provide `DESTDIR` or/and `MULTILIB` control variable
> > > > > like it does in Makefile.original?
> > > >
> > > > DESTDIR is supported out of the box in CMake. MULTILIB is "autodetected"
> > > > via CMake[1] (I hope, but never tried). Regardging LMULTILIB, I have no
> > > > idea what its purpose is. Do you?
> > >
> > > To configure default CPATH, IINM, see luaconf.h for details.
> >
> > My fault, ask you in a different way: how do you suppose to use it?
>
> For example, if I want to separate directories with Lua libraries and C
> libraries. May be it is the superfluous customization. If you think so,
> please add the notice that this option is not implemented in CMake, and
> users should use original Makefile.
I added the notice and reworded the commit message the following way.
Hope it covers all your nits regarding new build system NYIs.
| build: replace GNU Make with CMake
|
| Within this patch the LuaJIT build system is partially ported from GNU
| Make to CMake. These changes provide CMake build system for all
| supported host architectures, but only for the following OS: GNU/Linux,
| OSX, FreeBSD. For other platforms, environment tweaking and specific
| builds (such as 'amalg', stripped binary and shared library,
| cross-compiling support) use the old build system (see the recipe in the
| previous commit).
|
| Several components of the new build system such as automatic version
| detection, source files list generation and some recipes for
| CMakeLists.txt are taken verbatim or adapted from LuaVela repository.
|
| Part of tarantool/tarantool#4862
>
<snipped>
>
> >
> > >
> > > | + AppendFlags(TARGET_SHARED_FLAGS -image_base 7fff04c4a000)
> > >
> > > Also I've found that this line produces warnings from linker like:
> > >
> > > || ld: warning: -seg1addr not 16384 byte aligned, rounding up
> > >
> > > So, I suggest the following solution for cmake and for the original
> > > Makefile (just add 8Kb):
> >
> > There is the same value in the build system of the vanilla LuaJIT[2], so
> > I leave everything intact. BTW, I see no warning on my Mac.
>
> This is why I mentioned Darwin version and add corresponding patch for
> the old Makefile too. Anyway, the linker can handle this by itself, so
> lets drop this as is. We can return to this with a new issue (inside our
> or LuaJIT repo).
You can start with creating an issue in LuaJIT queue, if the problem is
reproduced with vanilla build system.
>
<snipped>
> > > >
> > > > [1]: https://cmake.org/cmake/help/v3.1/variable/CMAKE_LIBRARY_ARCHITECTURE.html
<snipped>
> > [2]: https://github.com/LuaJIT/LuaJIT/blob/v2.1/src/Makefile#L327
<snipped>
> --
> Best regards,
> Sergey Kaplun
--
Best regards,
IM
next prev parent reply other threads:[~2021-02-28 18:18 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-02 20:57 [Tarantool-patches] [PATCH luajit 0/5] Self-sufficient LuaJIT testing environment Igor Munkin via Tarantool-patches
2021-02-02 20:57 ` [Tarantool-patches] [PATCH luajit 1/5] build: preserve the original build system Igor Munkin via Tarantool-patches
2021-02-04 22:53 ` Timur Safin via Tarantool-patches
2021-02-08 15:56 ` Igor Munkin via Tarantool-patches
2021-02-09 11:38 ` Sergey Kaplun via Tarantool-patches
2021-02-09 12:47 ` Igor Munkin via Tarantool-patches
2021-02-09 14:45 ` Sergey Kaplun via Tarantool-patches
2021-02-09 15:28 ` Igor Munkin via Tarantool-patches
2021-02-10 9:35 ` Sergey Kaplun via Tarantool-patches
2021-02-02 20:57 ` [Tarantool-patches] [PATCH luajit 2/5] build: replace GNU Make with CMake Igor Munkin via Tarantool-patches
2021-02-04 22:53 ` Timur Safin via Tarantool-patches
2021-02-08 15:56 ` Igor Munkin via Tarantool-patches
2021-02-09 13:55 ` Timur Safin via Tarantool-patches
2021-02-09 15:09 ` Igor Munkin via Tarantool-patches
2021-02-11 19:23 ` Sergey Kaplun via Tarantool-patches
2021-02-16 15:28 ` Igor Munkin via Tarantool-patches
2021-02-18 9:56 ` Sergey Kaplun via Tarantool-patches
2021-02-20 19:18 ` Igor Munkin via Tarantool-patches
2021-02-27 10:48 ` Sergey Kaplun via Tarantool-patches
2021-02-28 18:18 ` Igor Munkin via Tarantool-patches [this message]
2021-02-13 3:47 ` Sergey Kaplun via Tarantool-patches
2021-02-16 15:32 ` Igor Munkin via Tarantool-patches
2021-02-02 20:57 ` [Tarantool-patches] [PATCH luajit 3/5] test: run LuaJIT tests via CMake Igor Munkin via Tarantool-patches
2021-02-08 15:05 ` Timur Safin via Tarantool-patches
2021-02-08 16:29 ` Igor Munkin via Tarantool-patches
2021-02-09 8:16 ` Timur Safin via Tarantool-patches
2021-02-09 8:43 ` Igor Munkin via Tarantool-patches
2021-02-09 13:59 ` Timur Safin via Tarantool-patches
2021-02-09 15:10 ` Igor Munkin via Tarantool-patches
2021-02-14 18:48 ` Sergey Kaplun via Tarantool-patches
2021-02-19 19:04 ` Igor Munkin via Tarantool-patches
2021-02-27 13:50 ` Sergey Kaplun via Tarantool-patches
2021-02-28 18:18 ` Igor Munkin via Tarantool-patches
2021-02-02 20:57 ` [Tarantool-patches] [PATCH luajit 4/5] test: fix warnings found with luacheck in misclib* Igor Munkin via Tarantool-patches
[not found] ` <012f01d6fe1a$a2aa6890$e7ff39b0$@tarantool.org>
[not found] ` <2c495492-50f4-acfd-ad66-2cb44abb5fa1@tarantool.org>
2021-02-08 15:40 ` Sergey Bronnikov via Tarantool-patches
2021-02-08 15:58 ` Igor Munkin via Tarantool-patches
2021-02-08 15:57 ` Igor Munkin via Tarantool-patches
2021-02-14 19:16 ` Sergey Kaplun via Tarantool-patches
2021-02-16 15:29 ` Igor Munkin via Tarantool-patches
2021-02-16 16:36 ` Sergey Kaplun via Tarantool-patches
2021-02-02 20:57 ` [Tarantool-patches] [PATCH luajit 5/5] test: run luacheck static analysis via CMake Igor Munkin via Tarantool-patches
2021-02-04 22:52 ` Timur Safin via Tarantool-patches
2021-02-08 15:57 ` Igor Munkin via Tarantool-patches
2021-02-14 19:32 ` Sergey Kaplun via Tarantool-patches
2021-02-19 19:14 ` Igor Munkin via Tarantool-patches
2021-02-28 22:04 ` [Tarantool-patches] [PATCH luajit 0/5] Self-sufficient LuaJIT testing environment Igor Munkin via Tarantool-patches
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210228181811.GG9042@tarantool.org \
--to=tarantool-patches@dev.tarantool.org \
--cc=imun@tarantool.org \
--cc=skaplun@tarantool.org \
--subject='Re: [Tarantool-patches] [PATCH luajit 2/5] build: replace GNU Make with CMake' \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox