lua-users home
lua-l archive

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


On Sun, 07 Feb 2021 16:27:04 +0100, Fontana Nicola <ntd@entidi.it>
wrote:

> Il giorno dom, 07/02/2021 alle 09.57 +0100, Milan Obuch ha scritto:
> > Hi,
> > 
> > my first and the only, for now, project using Lua is Lua plugin for
> > Claws Mail. I did develop it on FreeBSD with some hardwired paths
> > for Lua library location and similar, using Lua 5.2. I'd like to
> > ask how to make it portable for other platform, using other version
> > of Lua if desired, and avoid hardwired paths.
> > 
> > Currently, I have Makefile.am containing two targets with hardwired
> > items, namely
> > 
> > lua_la_LIBADD = $(cygwin_export_lib) \
> >         $(GTK_LIBS) \
> >         -L/usr/local/lib -llua-5.2
> > 
> > lua_la_CPPFLAGS = \
> >         -I$(top_srcdir)/src \
> >         -I$(top_builddir)/src/common \
> >         -I$(top_srcdir)/src/common \
> >         -I$(top_srcdir)/src/gtk \
> >         $(GLIB_CFLAGS) \
> >         $(GTK_CFLAGS) \
> >         $(ENCHANT_CFLAGS) \
> >         -I/usr/local/include/lua52
> > 
> > In global configure, I added --disable-lua-plugin and
> > --enable-lua-plugin options, but they are doing just this, allowing
> > my plugin to build, but I'd like to add there some logic (I am
> > tempted to write magic) to define $(LUA_LIBS) and $(LUA_CFLAGS) so
> > I can use them in Makefile.am instead of hardwired values.  
> 
> Hi Milan,
> 
> if you are using autoconf you can check ax_lua:
> 
> https://github.com/autoconf-archive/autoconf-archive/blob/master/m4/ax_lua.m4
> 
> This will define the `LUA_INCLUDE` precious variable that can be used
> in the same way you are using `GTK_CFLAGS`.
> 
> It is far from perfect (there are some hardcoded values in that script
> that try to circumvent the incompatibilities between distros) but IMO
> it is the best workaround we have right now.
> 
> Ciao.

Big thanks. I'll check this. It takes me some time to do so, but I hope
this could enhance my configure.ac part of plugin.

Regards,
Milan