Transform native Genode port of lua library into an application for Genode's Noux runtime
Rolf Sommerhalder
rolf.sommerhalder at ...278...
Sun Jul 26 14:27:59 CEST 2015
Hello list,
Before attempting to do a port of LuaJIT as an additional application
for Genode's Noux runtime, in a first step, I try to transform the
existing port of Lua from a native Genode library to a "Noux package"
(noux-pkg).
The native Genode application moon(-tool) uses the existing port of
the Lua library as a Lua extension of "C", whereas I would like to use
the Lua and LuaJIT interpreters interactively from a bash shell with
terminal.
Thus, I have created lua0.port, lua0.hash (see below) and got its
source tree into contrib/
./prepare_port lua0 CHECK_HASH=no
Note that I chose to name the noux-pkg "lua0" in order to clearly
differentiate it from the existing library "lua".
Currently, I struggle with the Noux build tool which insists on
calling configure, whereas the library port tool seems not to call
configure, but simply makes repos/libports/lib/mk/lua.mk .
What would be the recommended way forward, e.g. is there a way to
disable the Autotools/configure step in my lua0/target.mk, or to
create an "empty" configure script using a patch for example?
Thanks,
Rolf
---
cat repos/ports/src/noux-pkg/lua0/target.mk
# ported from repos/portslibs/lib/mk/lua.inc | lua.mk
TARGET = lua0
LUA_DIR := $(call select_from_ports,lua0)/src/noux-pkg/lua0/src
LIBS += libc libm
#LIBS += libc libm libreadline libdl
INC_DIR += $(LUA_DIR)
CC_DEF = -DLUA_ANSI -DLUA_USE_MKSTEMP
#NOUX_CFLAGS += -DLUA_ANSI -DLUA_USE_MKSTEMP
# core objects
LUA_CORE_C = lapi.c lcode.c ldebug.c ldo.c ldump.c lfunc.c lgc.c
llex.c lmem.c \
lobject.c lopcodes.c lparser.c lstate.c lstring.c
ltable.c ltm.c \
lundump.c lvm.c lzio.c
# library objects, e.g. string handling
LUA_LIB_C = lauxlib.c lbaselib.c ldblib.c liolib.c lmathlib.c loslib.c
ltablib.c \
lstrlib.c loadlib.c linit.c
vpath %.c $(LUA_DIR)
SRC_C = $(LUA_CORE_C) $(LUA_LIB_C)
noux_built.tag: Makefile
---
build/linux_x86$ make VERBOSE= noux-pkg/lua0
checking library dependencies...
Library platform
Library libc-locale
Library libc-stdlib
Library libc-string
Library libc-stdio
Library libc-inet
Library libc-gdtoa
Library libc-stdtime
Library libc-regex
Library libc-compat
Library cxx
Library syscall
Library config
Library libc-setjmp
Library alarm
Library ldso-startup
Library startup
Library timed_semaphore
Library libc-gen
Library base-common
Library base
Library ld
Library vfs
Library libc
Library libc_noux
Library libm
/home/rs/nizwa2/genode/master/repos/base/mk/prg.mk:208: warning:
overriding commands for target `lua0'
/home/rs/nizwa2/genode/master/repos/ports/mk/noux.mk:171: warning:
ignoring old commands for target `lua0'
Program noux-pkg/lua0/lua0
CONFIG lua0
source noux_env.sh &&
/home/rs/nizwa2/genode/master/contrib/lua0-dummy/src/noux-pkg/lua0/configure
--host x86_64-pc-elf
--srcdir=/home/rs/nizwa2/genode/master/contrib/lua0-dummy/src/noux-pkg/lua0
--prefix / --build x86-linux
BUILD lua0
source noux_env.sh && make V=1 MAN=
make[3]: *** No targets specified and no makefile found. Stop.
make[2]: *** [noux_built.tag] Error 2
make[1]: *** [lua0.prg] Error 2
make: *** [gen_deps_and_build_targets] Error 2
---
cat repos/ports/ports/lua0.port
LICENSE := MIT
#VERSION := 5.1.5
VERSION := 5.3.1
DOWNLOADS := lua0.archive
URL(lua0) := http://www.lua.org/ftp/lua-$(VERSION).tar.gz
#SHA(lua0) := b3882111ad02ecc6b972f8c1241647905cb2e3fc
SHA(lua0) := 1676c6a041d90b6982db8cef1e5fb26000ab6dee
SIG(lua0) := ${URL(lua0)}.sig
KEY(lua0) := GNU
DIR(lua0) := src/noux-pkg/lua0
---
cat repos/ports/ports$ cat lua0.hash
dummy
More information about the users
mailing list