mirror of
https://github.com/openwrt/openwrt.git
synced 2025-01-22 20:38:29 +00:00
ea308e2f38
Mark uci, ubus, libubox, lua, libnl-tiny and libjson-c
as nonshared packages. This helps to keep coherent dependencies
if these ABI versioned packages are later updated.
Before this commit it is possible to get missing dependencies
in target-specific nonshared packages (like iwinfo) that depend
on these shared ABI versioned packages. If these are later updated
and rebuilt, only the new ABI version will be available for download,
while the target-specific packages in releases continue to depend on
the old ABI version.
After this commit the packages are built along the other nonshared
packages by the phase1 images buildbot and will be available at the
target/ download directories instead of packages/base dir. That will
help to keep a coherent set available.
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
(cherry picked from commit 72cc44958e
)
184 lines
4.5 KiB
Makefile
184 lines
4.5 KiB
Makefile
#
|
|
# Copyright (C) 2006-2014 OpenWrt.org
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=lua
|
|
PKG_VERSION:=5.1.5
|
|
PKG_RELEASE:=9
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
|
PKG_SOURCE_URL:=http://www.lua.org/ftp/ \
|
|
http://www.tecgraf.puc-rio.br/lua/ftp/
|
|
PKG_HASH:=2640fc56a795f29d28ef15e13c34a47e223960b0240e8cb0a82d9b0738695333
|
|
PKG_BUILD_PARALLEL:=1
|
|
PKG_FLAGS := nonshared
|
|
|
|
PKG_LICENSE:=MIT
|
|
PKG_LICENSE_FILES:=COPYRIGHT
|
|
|
|
HOST_PATCH_DIR := ./patches-host
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
include $(INCLUDE_DIR)/host-build.mk
|
|
|
|
define Package/lua/Default
|
|
SUBMENU:=Lua
|
|
SECTION:=lang
|
|
CATEGORY:=Languages
|
|
TITLE:=Lua programming language
|
|
URL:=http://www.lua.org/
|
|
MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
|
|
endef
|
|
|
|
define Package/lua/Default/description
|
|
Lua is a powerful light-weight programming language designed for extending
|
|
applications. Lua is also frequently used as a general-purpose, stand-alone
|
|
language. Lua is free software.
|
|
endef
|
|
|
|
define Package/liblua
|
|
$(call Package/lua/Default)
|
|
SUBMENU:=
|
|
SECTION:=libs
|
|
CATEGORY:=Libraries
|
|
TITLE+= (libraries)
|
|
ABI_VERSION:=5.1.5
|
|
endef
|
|
|
|
define Package/liblua/description
|
|
$(call Package/lua/Default/description)
|
|
This package contains the Lua shared libraries, needed by other programs.
|
|
endef
|
|
|
|
define Package/lua
|
|
$(call Package/lua/Default)
|
|
DEPENDS:=+liblua
|
|
TITLE+= (interpreter)
|
|
endef
|
|
|
|
define Package/lua/description
|
|
$(call Package/lua/Default/description)
|
|
This package contains the Lua language interpreter.
|
|
endef
|
|
|
|
define Package/luac
|
|
$(call Package/lua/Default)
|
|
DEPENDS:=+liblua
|
|
TITLE+= (compiler)
|
|
endef
|
|
|
|
define Package/luac/description
|
|
$(call Package/lua/Default/description)
|
|
This package contains the Lua language compiler.
|
|
endef
|
|
|
|
define Package/lua-examples
|
|
$(call Package/lua/Default)
|
|
DEPENDS:=lua
|
|
TITLE+= (examples)
|
|
endef
|
|
|
|
define Package/lua-examples/description
|
|
$(call Package/lua/Default/description)
|
|
This package contains Lua language examples.
|
|
endef
|
|
|
|
define Build/Configure
|
|
endef
|
|
|
|
TARGET_CFLAGS += -DLUA_USE_LINUX $(FPIC) -std=gnu99
|
|
|
|
define Build/Compile
|
|
$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
|
|
CC="$(TARGET_CROSS)gcc" \
|
|
AR="$(TARGET_CROSS)ar rcu" \
|
|
RANLIB="$(TARGET_CROSS)ranlib" \
|
|
INSTALL_ROOT=/usr \
|
|
CFLAGS="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" \
|
|
MYLDFLAGS="$(TARGET_LDFLAGS) $(if $(CONFIG_USE_GLIBC),-lm -ldl)" \
|
|
PKG_VERSION=$(PKG_VERSION) \
|
|
linux
|
|
rm -rf $(PKG_INSTALL_DIR)
|
|
mkdir -p $(PKG_INSTALL_DIR)
|
|
$(MAKE) -C $(PKG_BUILD_DIR) \
|
|
INSTALL_TOP="$(PKG_INSTALL_DIR)/usr" \
|
|
install
|
|
endef
|
|
|
|
define Host/Configure
|
|
$(SED) 's,"/usr/local/","$(STAGING_DIR_HOSTPKG)/",' $(HOST_BUILD_DIR)/src/luaconf.h
|
|
endef
|
|
|
|
ifeq ($(HOST_OS),Darwin)
|
|
LUA_OS:=macosx
|
|
else
|
|
ifeq ($(HOST_OS),FreeBSD)
|
|
LUA_OS:=freebsd
|
|
else
|
|
LUA_OS:=linux
|
|
endif
|
|
endif
|
|
|
|
define Host/Compile
|
|
$(MAKE) -C $(HOST_BUILD_DIR) \
|
|
CC="$(HOSTCC) -std=gnu99" \
|
|
$(LUA_OS)
|
|
endef
|
|
|
|
define Host/Install
|
|
$(MAKE) -C $(HOST_BUILD_DIR) \
|
|
INSTALL_TOP="$(STAGING_DIR_HOSTPKG)" \
|
|
install
|
|
|
|
$(LN) $(STAGING_DIR_HOSTPKG)/bin/lua5.1 $(STAGING_DIR_HOSTPKG)/bin/lua
|
|
$(LN) $(STAGING_DIR_HOSTPKG)/bin/luac5.1 $(STAGING_DIR_HOSTPKG)/bin/luac
|
|
endef
|
|
|
|
define Build/InstallDev
|
|
$(INSTALL_DIR) $(1)/usr/include
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/include/lua{,lib,conf}.h $(1)/usr/include/
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/include/lua.hpp $(1)/usr/include/
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/include/lauxlib.h $(1)/usr/include/
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/include/lnum_config.h $(1)/usr/include/
|
|
$(INSTALL_DIR) $(1)/usr/lib
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/liblua.{a,so*} $(1)/usr/lib/
|
|
$(LN) liblua.so.$(PKG_VERSION) $(1)/usr/lib/liblualib.so
|
|
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
|
|
$(CP) $(PKG_BUILD_DIR)/etc/lua.pc $(1)/usr/lib/pkgconfig/
|
|
endef
|
|
|
|
define Package/liblua/install
|
|
$(INSTALL_DIR) $(1)/usr/lib
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/liblua.so.* $(1)/usr/lib/
|
|
endef
|
|
|
|
define Package/lua/install
|
|
$(INSTALL_DIR) $(1)/usr/bin
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/lua5.1 $(1)/usr/bin/
|
|
$(LN) lua5.1 $(1)/usr/bin/lua
|
|
endef
|
|
|
|
define Package/luac/install
|
|
$(INSTALL_DIR) $(1)/usr/bin
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/luac5.1 $(1)/usr/bin/
|
|
$(LN) luac5.1 $(1)/usr/bin/luac
|
|
endef
|
|
|
|
define Package/lua-examples/install
|
|
$(INSTALL_DIR) $(1)/usr/share/lua/examples
|
|
$(INSTALL_DATA) $(PKG_BUILD_DIR)/test/*.lua \
|
|
$(1)/usr/share/lua/examples/
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,liblua))
|
|
$(eval $(call BuildPackage,lua))
|
|
$(eval $(call BuildPackage,luac))
|
|
$(eval $(call BuildPackage,lua-examples))
|
|
$(eval $(call HostBuild))
|
|
|