summaryrefslogtreecommitdiffstats
path: root/package/lua/lua.mk
diff options
context:
space:
mode:
Diffstat (limited to 'package/lua/lua.mk')
-rw-r--r--package/lua/lua.mk60
1 files changed, 16 insertions, 44 deletions
diff --git a/package/lua/lua.mk b/package/lua/lua.mk
index 2c867f6e1e..bf68e654f2 100644
--- a/package/lua/lua.mk
+++ b/package/lua/lua.mk
@@ -14,8 +14,7 @@ LUA_INSTALL_STAGING = YES
LUA_LICENSE = MIT
LUA_LICENSE_FILES = COPYRIGHT
-LUA_CFLAGS = -Wall -fPIC
-LUA_MYLIBS += -ldl
+LUA_CFLAGS = -Wall -fPIC -DLUA_USE_POSIX
ifeq ($(BR2_PACKAGE_LUA_5_2),y)
LUA_CFLAGS += -DLUA_COMPAT_ALL
@@ -24,17 +23,23 @@ LUA_CFLAGS += -D_FILE_OFFSET_BITS=32
endif
endif
+ifeq ($(BR2_PREFER_STATIC_LIB),y)
+ LUA_BUILDMODE = static
+else
+ LUA_BUILDMODE = dynamic
+ LUA_CFLAGS += -DLUA_USE_DLOPEN
+ LUA_MYLIBS += -ldl
+endif
+
ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_READLINE),y)
LUA_DEPENDENCIES = readline ncurses
LUA_MYLIBS += -lreadline -lhistory -lncurses
- LUA_CFLAGS += -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DLUA_USE_READLINE
+ LUA_CFLAGS += -DLUA_USE_READLINE
else
ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_LINENOISE),y)
LUA_DEPENDENCIES = linenoise
LUA_MYLIBS += -llinenoise
- LUA_CFLAGS += -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DLUA_USE_LINENOISE
-else
- LUA_CFLAGS += -DLUA_USE_POSIX -DLUA_USE_DLOPEN
+ LUA_CFLAGS += -DLUA_USE_LINENOISE
endif
endif
@@ -53,6 +58,7 @@ define LUA_BUILD_CMDS
CC="$(TARGET_CC)" RANLIB="$(TARGET_RANLIB)" \
CFLAGS="$(TARGET_CFLAGS) $(LUA_CFLAGS)" \
MYLIBS="$(LUA_MYLIBS)" AR="$(TARGET_CROSS)ar rcu" \
+ BUILDMODE=$(LUA_BUILDMODE) \
PKG_VERSION=$(LUA_VERSION) -C $(@D)/src all
endef
@@ -61,59 +67,25 @@ define HOST_LUA_BUILD_CMDS
CFLAGS="$(HOST_LUA_CFLAGS)" \
MYLDFLAGS="$(HOST_LDFLAGS)" \
MYLIBS="$(HOST_LUA_MYLIBS)" \
+ BUILDMODE=static \
PKG_VERSION=$(LUA_VERSION) -C $(@D)/src all
endef
define LUA_INSTALL_STAGING_CMDS
+ $(MAKE) INSTALL_TOP="$(STAGING_DIR)/usr" -C $(@D) install
$(INSTALL) -m 0644 -D $(@D)/etc/lua.pc \
$(STAGING_DIR)/usr/lib/pkgconfig/lua.pc
- $(INSTALL) -m 0755 -D $(@D)/src/lua $(STAGING_DIR)/usr/bin/lua
- $(INSTALL) -m 0755 -D $(@D)/src/luac $(STAGING_DIR)/usr/bin/luac
- $(INSTALL) -m 0755 -D $(@D)/src/liblua.so.$(LUA_VERSION) \
- $(STAGING_DIR)/usr/lib/liblua.so.$(LUA_VERSION)
- ln -sf liblua.so.$(LUA_VERSION) $(STAGING_DIR)/usr/lib/liblua.so
- $(INSTALL) -m 0644 -D $(@D)/src/liblua.a $(STAGING_DIR)/usr/lib/liblua.a
- $(INSTALL) -m 0644 -D $(@D)/src/lua.h $(STAGING_DIR)/usr/include/lua.h
- $(INSTALL) -m 0644 -D $(@D)/src/luaconf.h $(STAGING_DIR)/usr/include/luaconf.h
- $(INSTALL) -m 0644 -D $(@D)/src/lualib.h $(STAGING_DIR)/usr/include/lualib.h
- $(INSTALL) -m 0644 -D $(@D)/src/lauxlib.h $(STAGING_DIR)/usr/include/lauxlib.h
endef
define LUA_INSTALL_TARGET_CMDS
- $(INSTALL) -m 0755 -D $(@D)/src/lua $(TARGET_DIR)/usr/bin/lua
- $(INSTALL) -m 0755 -D $(@D)/src/luac $(TARGET_DIR)/usr/bin/luac
- $(INSTALL) -m 0755 -D $(@D)/src/liblua.so.$(LUA_VERSION) \
- $(TARGET_DIR)/usr/lib/liblua.so.$(LUA_VERSION)
- ln -sf liblua.so.$(LUA_VERSION) $(TARGET_DIR)/usr/lib/liblua.so
- mkdir -p $(TARGET_DIR)/usr/lib/lua/$(LUAINTERPRETER_ABIVER)
- mkdir -p $(TARGET_DIR)/usr/share/lua/$(LUAINTERPRETER_ABIVER)
+ $(MAKE) INSTALL_TOP="$(TARGET_DIR)/usr" -C $(@D) install
endef
define HOST_LUA_INSTALL_CMDS
- $(INSTALL) -m 0755 -D $(@D)/src/lua $(HOST_DIR)/usr/bin/lua
- $(INSTALL) -m 0755 -D $(@D)/src/luac $(HOST_DIR)/usr/bin/luac
- $(INSTALL) -m 0755 -D $(@D)/src/liblua.so.$(LUA_VERSION) \
- $(HOST_DIR)/usr/lib/liblua.so.$(LUA_VERSION)
- ln -sf liblua.so.$(LUA_VERSION) $(HOST_DIR)/usr/lib/liblua.so
- $(INSTALL) -m 0644 -D $(@D)/src/liblua.a $(HOST_DIR)/usr/lib/liblua.a
+ $(MAKE) INSTALL_TOP="$(HOST_DIR)/usr" -C $(@D) install
$(INSTALL) -m 0644 -D $(@D)/etc/lua.pc \
$(HOST_DIR)/usr/lib/pkgconfig/lua.pc
- $(INSTALL) -m 0644 -D $(@D)/src/lua.h $(HOST_DIR)/usr/include/lua.h
- $(INSTALL) -m 0644 -D $(@D)/src/luaconf.h $(HOST_DIR)/usr/include/luaconf.h
- $(INSTALL) -m 0644 -D $(@D)/src/lualib.h $(HOST_DIR)/usr/include/lualib.h
- $(INSTALL) -m 0644 -D $(@D)/src/lauxlib.h $(HOST_DIR)/usr/include/lauxlib.h
endef
-LUA_INSTALLED_FILES = \
- /usr/include/lua.h \
- /usr/include/luaconf.h \
- /usr/include/lualib.h \
- /usr/include/lauxlib.h \
- /usr/lib/pkgconfig/lua.pc \
- /usr/bin/lua \
- /usr/bin/luac \
- /usr/lib/liblua.a \
- /usr/lib/liblua.so*
-
$(eval $(generic-package))
$(eval $(host-generic-package))
OpenPOWER on IntegriCloud