mirror of
https://github.com/MiyooCFW/buildroot.git
synced 2025-09-27 22:24:19 +03:00
Merge from bittboy/buildroot@db180c0
This commit is contained in:
26
package/luajit/0001-no-bin-symlink.patch
Normal file
26
package/luajit/0001-no-bin-symlink.patch
Normal file
@@ -0,0 +1,26 @@
|
||||
Do not use a symlink for the binary, simply name it luajit
|
||||
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||
|
||||
Index: b/Makefile
|
||||
===================================================================
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -43,8 +43,7 @@
|
||||
INSTALL_MAN= $(INSTALL_SHARE)/man/man1
|
||||
INSTALL_PKGCONFIG= $(INSTALL_LIB)/pkgconfig
|
||||
|
||||
-INSTALL_TNAME= luajit-$(VERSION)
|
||||
-INSTALL_TSYMNAME= luajit
|
||||
+INSTALL_TNAME= luajit
|
||||
INSTALL_ANAME= libluajit-$(ABIVER).a
|
||||
INSTALL_SOSHORT1= libluajit-$(ABIVER).so
|
||||
INSTALL_SOSHORT2= libluajit-$(ABIVER).so.$(MAJVER)
|
||||
@@ -59,7 +58,6 @@
|
||||
INSTALL_SHORT1= $(INSTALL_LIB)/$(INSTALL_SOSHORT1)
|
||||
INSTALL_SHORT2= $(INSTALL_LIB)/$(INSTALL_SOSHORT2)
|
||||
INSTALL_T= $(INSTALL_BIN)/$(INSTALL_TNAME)
|
||||
-INSTALL_TSYM= $(INSTALL_BIN)/$(INSTALL_TSYMNAME)
|
||||
INSTALL_PC= $(INSTALL_PKGCONFIG)/$(INSTALL_PCNAME)
|
||||
|
||||
INSTALL_DIRS= $(INSTALL_BIN) $(INSTALL_LIB) $(INSTALL_INC) $(INSTALL_MAN) \
|
||||
17
package/luajit/0002-install-inc.patch
Normal file
17
package/luajit/0002-install-inc.patch
Normal file
@@ -0,0 +1,17 @@
|
||||
Install includes like lua's ones
|
||||
|
||||
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
|
||||
|
||||
Index: b/Makefile
|
||||
===================================================================
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -32,7 +32,7 @@
|
||||
INSTALL_BIN= $(DPREFIX)/bin
|
||||
INSTALL_LIB= $(DPREFIX)/$(MULTILIB)
|
||||
INSTALL_SHARE= $(DPREFIX)/share
|
||||
-INSTALL_INC= $(DPREFIX)/include/luajit-$(MAJVER).$(MINVER)
|
||||
+INSTALL_INC= $(DPREFIX)/include
|
||||
|
||||
INSTALL_LJLIBD= $(INSTALL_SHARE)/luajit-$(VERSION)
|
||||
INSTALL_JITLIB= $(INSTALL_LJLIBD)/jit
|
||||
47
package/luajit/Config.in
Normal file
47
package/luajit/Config.in
Normal file
@@ -0,0 +1,47 @@
|
||||
config BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS
|
||||
bool
|
||||
default y if BR2_i386 || \
|
||||
(BR2_x86_64 && BR2_HOSTARCH='x86_64') || \
|
||||
BR2_powerpc || BR2_arm || BR2_armeb || \
|
||||
((BR2_mips || BR2_mipsel) && !BR2_MIPS_SOFT_FLOAT && \
|
||||
!BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6)
|
||||
# -m32 flag is used for 32bit builds and host-luajit has
|
||||
# limited architecture support
|
||||
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
|
||||
|
||||
config BR2_PACKAGE_LUAJIT
|
||||
bool "luajit"
|
||||
depends on !BR2_STATIC_LIBS # dlopen
|
||||
# Luajit is only available for some target architectures, and
|
||||
# has some complexity wrt 32/64. See luajit.mk for details.
|
||||
depends on BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS
|
||||
# luajit.mk uses the "-m32" compiler option to build 32bit
|
||||
# binaries, so check if that option is supported. See
|
||||
# luajit.mk for details.
|
||||
select BR2_PACKAGE_HAS_LUAINTERPRETER
|
||||
select BR2_HOSTARCH_NEEDS_IA32_COMPILER if !BR2_ARCH_IS_64
|
||||
help
|
||||
LuaJIT implements the full set of language features defined
|
||||
by Lua 5.1. The virtual machine (VM) is API- and
|
||||
ABI-compatible to the standard Lua interpreter and can be
|
||||
deployed as a drop-in replacement.
|
||||
|
||||
http://luajit.org/
|
||||
|
||||
if BR2_PACKAGE_LUAJIT
|
||||
|
||||
config BR2_PACKAGE_PROVIDES_LUAINTERPRETER
|
||||
default "luajit"
|
||||
|
||||
config BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION
|
||||
default "5.1"
|
||||
|
||||
config BR2_PACKAGE_LUAJIT_COMPAT52
|
||||
bool "Lua 5.2 compatibility"
|
||||
help
|
||||
Compile with Lua 5.2 compatibility.
|
||||
|
||||
endif
|
||||
|
||||
comment "luajit needs a toolchain w/ dynamic library"
|
||||
depends on BR2_STATIC_LIBS
|
||||
5
package/luajit/luajit.hash
Normal file
5
package/luajit/luajit.hash
Normal file
@@ -0,0 +1,5 @@
|
||||
# Hashes from: http://luajit.org/download.html
|
||||
md5 48353202cbcacab84ee41a5a70ea0a2c LuaJIT-2.0.5.tar.gz
|
||||
|
||||
# Locally calculated
|
||||
sha256 accb335aa3102f80d31caa2c2508fbcb795314106493519a367f13a87d0e87de COPYRIGHT
|
||||
85
package/luajit/luajit.mk
Normal file
85
package/luajit/luajit.mk
Normal file
@@ -0,0 +1,85 @@
|
||||
################################################################################
|
||||
#
|
||||
# luajit
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LUAJIT_VERSION = 2.0.5
|
||||
LUAJIT_SOURCE = LuaJIT-$(LUAJIT_VERSION).tar.gz
|
||||
LUAJIT_SITE = http://luajit.org/download
|
||||
LUAJIT_LICENSE = MIT
|
||||
LUAJIT_LICENSE_FILES = COPYRIGHT
|
||||
|
||||
LUAJIT_INSTALL_STAGING = YES
|
||||
|
||||
LUAJIT_PROVIDES = luainterpreter
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LUAJIT_COMPAT52),y)
|
||||
LUAJIT_XCFLAGS += -DLUAJIT_ENABLE_LUA52COMPAT
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_STATIC_LIBS),y)
|
||||
LUAJIT_BUILDMODE = static
|
||||
else
|
||||
LUAJIT_BUILDMODE = dynamic
|
||||
endif
|
||||
|
||||
# The luajit build procedure requires the host compiler to have the
|
||||
# same bitness as the target compiler. Therefore, on a x86 build
|
||||
# machine, we can't build luajit for x86_64, which is checked in
|
||||
# Config.in. When the target is a 32 bits target, we pass -m32 to
|
||||
# ensure that even on 64 bits build machines, a compiler of the same
|
||||
# bitness is used. Of course, this assumes that the 32 bits multilib
|
||||
# libraries are installed.
|
||||
ifeq ($(BR2_ARCH_IS_64),y)
|
||||
LUAJIT_HOST_CC = $(HOSTCC)
|
||||
else
|
||||
LUAJIT_HOST_CC = $(HOSTCC) -m32
|
||||
endif
|
||||
|
||||
# We unfortunately can't use TARGET_CONFIGURE_OPTS, because the luajit
|
||||
# build system uses non conventional variable names.
|
||||
define LUAJIT_BUILD_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) PREFIX="/usr" \
|
||||
STATIC_CC="$(TARGET_CC)" \
|
||||
DYNAMIC_CC="$(TARGET_CC) -fPIC" \
|
||||
TARGET_LD="$(TARGET_CC)" \
|
||||
TARGET_AR="$(TARGET_AR) rcus" \
|
||||
TARGET_STRIP=true \
|
||||
TARGET_CFLAGS="$(TARGET_CFLAGS)" \
|
||||
TARGET_LDFLAGS="$(TARGET_LDFLAGS)" \
|
||||
HOST_CC="$(LUAJIT_HOST_CC)" \
|
||||
HOST_CFLAGS="$(HOST_CFLAGS)" \
|
||||
HOST_LDFLAGS="$(HOST_LDFLAGS)" \
|
||||
BUILDMODE=$(LUAJIT_BUILDMODE) \
|
||||
XCFLAGS=$(LUAJIT_XCFLAGS) \
|
||||
-C $(@D) amalg
|
||||
endef
|
||||
|
||||
define LUAJIT_INSTALL_STAGING_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) PREFIX="/usr" DESTDIR="$(STAGING_DIR)" LDCONFIG=true -C $(@D) install
|
||||
endef
|
||||
|
||||
define LUAJIT_INSTALL_TARGET_CMDS
|
||||
$(TARGET_MAKE_ENV) $(MAKE) PREFIX="/usr" DESTDIR="$(TARGET_DIR)" LDCONFIG=true -C $(@D) install
|
||||
endef
|
||||
|
||||
define LUAJIT_INSTALL_SYMLINK
|
||||
ln -fs luajit $(TARGET_DIR)/usr/bin/lua
|
||||
endef
|
||||
LUAJIT_POST_INSTALL_TARGET_HOOKS += LUAJIT_INSTALL_SYMLINK
|
||||
|
||||
# host-efl package needs host-luajit to be linked dynamically.
|
||||
define HOST_LUAJIT_BUILD_CMDS
|
||||
$(HOST_MAKE_ENV) $(MAKE) PREFIX="$(HOST_DIR)" BUILDMODE=dynamic \
|
||||
TARGET_LDFLAGS="$(HOST_LDFLAGS)" \
|
||||
XCFLAGS=$(LUAJIT_XCFLAGS) \
|
||||
-C $(@D) amalg
|
||||
endef
|
||||
|
||||
define HOST_LUAJIT_INSTALL_CMDS
|
||||
$(HOST_MAKE_ENV) $(MAKE) PREFIX="$(HOST_DIR)" LDCONFIG=true -C $(@D) install
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
||||
$(eval $(host-generic-package))
|
||||
Reference in New Issue
Block a user