[vlc-devel] [PATCH] Make sure we use the correct luac version when using contribs

Rémi Denis-Courmont remi at remlab.net
Fri Jan 25 15:15:32 CET 2013


Le vendredi 25 janvier 2013 14:49:35, Rafaël Carré a écrit :
> Le 25/01/2013 13:34, Rémi Denis-Courmont a écrit :
> > Le vendredi 25 janvier 2013 06:32:06, Rafaël Carré a écrit :
> >> ---
> >> 
> >>  configure.ac |    3 +++
> >>  1 file changed, 3 insertions(+)
> >> 
> >> diff --git a/configure.ac b/configure.ac
> >> index 02eb758..b1bd38e 100644
> >> --- a/configure.ac
> >> +++ b/configure.ac
> >> @@ -1524,6 +1524,9 @@ then
> >> 
> >>    AS_IF([test "${LUAC}" = "false"], [
> >>    
> >>      AC_MSG_ERROR([Could not find the LUA byte compiler.])
> >>    
> >>    ])
> >> 
> >> +  AS_IF([test -f ${CONTRIB_DIR}/lib/liblua.a -a `${LUAC} -o /dev/stdout
> >> /dev/stdin | od -h | head -1 |cut -d' ' -f6` != 0404], [ +
> >> AC_MSG_ERROR([You need 32-bits luac when using using lua from contrib.])
> >> +
> >> 
> >>  ])
> >>  fi
> >>  AM_CONDITIONAL(BUILD_LUA, [test "${have_lua}" = "yes"])
> > 
> > I very much doubt configure can rely on od, head and/or cut being
> > available and compatible with GNU ones.
> 
> We can use od in octal and head -n 1

That's fine with me because I only care about building from POSIX systems. But 
maybe some (build) platforms which I don't care about would still break.

Also what if there is a lua build in the contrib directory, but configure ends 
up linking with another one? (That's definitely happened to me on native Linux 
builds.)

> > Furthermore I guess the check breaks big endian builds (PPC).
> 
> Why? the fields extracted should be sizeof(int) and sizeof(size_t), does
> PPC have sizeof int == 8?

Hmm OK, the check works to ensure byte size.
It leaves unfixed the case of mismatched endianess though :-(

-- 
Rémi Denis-Courmont
http://www.remlab.net/



More information about the vlc-devel mailing list