lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


> Now I'm privately considering whether we need a top-level Makefile at
> all

I would agree with dropping it. For the platforms that I build on it is rarely used.

The src/makefile I use for a variety platforms (even slightly modified for VC9). Because (as has been discussed on this list) that the src/makefile is not cross compile friendly I find myself modifying it for most platforms.

Finally, the readline vs linenoise discussion: I use linenoise on lightly resourced linux platforms, if readline deserves a macro then so does linenoise.

> src/Makefile:
> 	default all o a clean depend echo none
> 	aix ansi bsd freebsd generic linux macosx mingw posix solaris
>
I know and use

  all o a clean depend echo
  bsd freebsd generic linux posix solaris

My main suggestion for the Makefile is to document(brief) the list of the major impact macros, e.g.

LUA_USE_POSIX
LUA_USE_DLOPEN
LUA_USE_READLINE


It beats having to lookup luaconf.h each time.


DB



On 15/6/2010 10:28 PM, Luiz Henrique de Figueiredo wrote:
I didn't get much feedback from my posting about Makefile targets:
	http://lua-users.org/lists/lua-l/2010-05/msg00353.html

Now I'm privately considering whether we need a top-level Makefile at
all: it's merely an executable documentation of which files normally go
where but it's not essential to building or even installing Lua. Users
of the Lua interpreter need to install only one file. Developers need a
handful more. Both audiences know where they want to put those files, so
we could just leave the decision of where and how to install the needed
files to them! Or to downstream packagers.

The situation of src/Makefile is slightly different: it is an executable
documentation of which files depend on which (which gcc can generate)
and of which flags work in which platforms (which is a pain to discover
if you don't know). But src/Makefile is not really needed if you only
want to build the Lua interpreter: use etc/all.c (or etc/one.c in 5.2).

Again, my motivation is to have the simplest possible files that are
helpful but not a source of noise. So perhaps we can simplify the Makefiles
and still be useful without being in the way of users and packagers.

Quick poll: you know and use the Makefile targets below?

Makefile:
	all clean test install uninstall local none echo pecho lecho

src/Makefile:
	default all o a clean depend echo none
	aix ansi bsd freebsd generic linux macosx mingw posix solaris

All feedback welcome.