include $(TOPDIR)/rules.mk PKG_NAME:=luajit2 PKG_SOURCE_DATE:=2025-10-30 PKG_VERSION:=2.1.$(subst -,.,$(PKG_SOURCE_DATE)) PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/openresty/luajit2 PKG_MIRROR_HASH:=7b986a40ef091df5168eaa8b2012d3a95110fafeb69a7c199e3fca9795bae631 PKG_SOURCE_VERSION:=71fae383f6c4637d64b03a6d0ec76ae8c19d6821 PKG_MAINTAINER:=Javier Marcet PKG_LICENSE:=MIT PKG_LICENSE_FILES:=COPYRIGHT PKG_BUILD_FLAGS:=no-mips16 include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/host-build.mk # HAS_LUAJIT_ARCH config is defined in luajit and is used to define # arch deoendency for luajit. Since luajit2 is an improved version of # luajit, they share the same arch dependency. Refer there to update # dependency for them. define Package/luajit2 SECTION:=lang CATEGORY:=Languages SUBMENU:=Lua TITLE:=LuaJIT from OpenResty URL:=https://www.luajit.org DEPENDS:=@HAS_LUAJIT_ARCH PROVIDES:=luajit endef define Package/luajit2/description OpenResty's maintained branch of LuaJIT, a Just-In-Time (JIT) compiler for the Lua programming language endef ifeq ($(HOST_ARCH),$(filter $(HOST_ARCH), x86_64 mips64)) ifeq ($(CONFIG_ARCH_64BIT),) HOST_BITS := -m32 endif endif define Build/Compile $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ HOST_CC="$(HOSTCC) $(HOST_CFLAGS) $(HOST_BITS)" \ CROSS="$(TARGET_CROSS)" \ DESTDIR=$(PKG_INSTALL_DIR) \ PREFIX=/usr \ TARGET_SYS=Linux \ TARGET_CFLAGS="$(TARGET_CFLAGS)" \ BUILDMODE=dynamic $(RM) -rf $(PKG_INSTALL_DIR) mkdir -p $(PKG_INSTALL_DIR) $(MAKE) -C $(PKG_BUILD_DIR) \ DESTDIR=$(PKG_INSTALL_DIR) \ PREFIX=/usr \ TARGET_SYS=Linux \ install endef define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include/luajit-2.1 $(CP) $(PKG_INSTALL_DIR)/usr/include/luajit-2.1/*.{h,hpp} $(1)/usr/include/luajit-2.1 $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/*so* $(1)/usr/lib/ $(INSTALL_DIR) $(1)/usr/lib/pkgconfig $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/luajit.pc $(1)/usr/lib/pkgconfig/ $(INSTALL_DIR) $(1)/usr/bin $(CP) $(PKG_INSTALL_DIR)/usr/bin/luajit-* $(1)/usr/bin/$(PKG_NAME) endef define Package/luajit2/install $(INSTALL_DIR) $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/ $(INSTALL_DIR) $(1)/usr/bin $(CP) $(PKG_INSTALL_DIR)/usr/bin/luajit-* $(1)/usr/bin/$(PKG_NAME) endef define Host/Compile $(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR) \ DPREFIX=$(STAGING_DIR_HOSTPKG) \ TARGET_CFLAGS="$(HOST_CFLAGS)" \ TARGET_LDFLAGS="$(HOST_LDFLAGS)" endef define Host/Install $(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR) \ DPREFIX=$(STAGING_DIR_HOSTPKG) \ install $(CP) $(STAGING_DIR_HOSTPKG)/bin/luajit-* $(STAGING_DIR_HOSTPKG)/bin/$(PKG_NAME) endef $(eval $(call HostBuild,luajit2)) $(eval $(call BuildPackage,luajit2))