1bcb51517c
Since version 2.1, LuaJIT follows a rolling-release scheme, which means
that any commit is as good as any other; LuaJIT uses the comitter's UNIX
timestamp as its semver patch level. It uses the git-attribute
export-subst for the .relver file that contains the %ct placeholder for
git-archive to expand it.
In c9dcd9e459
(package/luajit: bump to version 41fb94defa8f...), we
switched to such an upstream version. There was some confusion around
the handling of the git-attribute and where/when it is generated, and
the first revision of the patch used the git download method, so had to
use post-extract hooks to do the replacement, but the second iteration
kept retrieving the archive generated by github, which has the
replacement already done, but the post-extract hooks were not dropped
although now useless...
With the current code, it is easy to bump the LuaJit version and forget
to update the timestamp stored in the .relver file, which would override
the value that was generated on the github side.
Since the post-extract hook is useless, drop it.
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Francois Perrad <fperrad@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
82 lines
2.5 KiB
Makefile
82 lines
2.5 KiB
Makefile
################################################################################
|
|
#
|
|
# luajit
|
|
#
|
|
################################################################################
|
|
|
|
LUAJIT_VERSION = 41fb94defa8f830ce69a8122b03f6ac3216d392a
|
|
LUAJIT_SITE = $(call github,LuaJIT,LuaJIT,$(LUAJIT_VERSION))
|
|
LUAJIT_LICENSE = MIT
|
|
LUAJIT_LICENSE_FILES = COPYRIGHT
|
|
LUAJIT_CPE_ID_VENDOR = luajit
|
|
|
|
LUAJIT_INSTALL_STAGING = YES
|
|
|
|
LUAJIT_PROVIDES = luainterpreter
|
|
|
|
ifeq ($(BR2_PACKAGE_LUAJIT_COMPAT52),y)
|
|
LUAJIT_XCFLAGS += -DLUAJIT_ENABLE_LUA52COMPAT
|
|
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)
|
|
# There is no LUAJIT_ENABLE_GC64 option.
|
|
else
|
|
LUAJIT_HOST_CC = $(HOSTCC) -m32
|
|
LUAJIT_XCFLAGS += -DLUAJIT_DISABLE_GC64
|
|
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=dynamic \
|
|
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))
|