Merge pull request #12342 from PolynomialDivision/feature/add_dawn_node_exporter
[feed/packages.git] / lang / luajit / Makefile
1 include $(TOPDIR)/rules.mk
2
3 PKG_NAME:=luajit
4 PKG_VERSION:=2.1.0-beta3
5 PKG_RELEASE:=4
6
7 PKG_SOURCE:=LuaJIT-$(PKG_VERSION).tar.gz
8 PKG_SOURCE_URL:=https://luajit.org/download
9 PKG_HASH:=1ad2e34b111c802f9d0cdf019e986909123237a28c746b21295b63c9e785d9c3
10 PKG_BUILD_DIR:=$(BUILD_DIR)/LuaJIT-$(PKG_VERSION)
11
12 PKG_MAINTAINER:=Morteza Milani <milani@pichak.co>
13 PKG_LICENSE:=MIT
14 PKG_LICENSE_FILES:=COPYRIGHT
15
16 PKG_USE_MIPS16:=0
17
18 include $(INCLUDE_DIR)/package.mk
19 include $(INCLUDE_DIR)/host-build.mk
20
21 define Package/luajit
22 SUBMENU:=Lua
23 SECTION:=lang
24 CATEGORY:=Languages
25 TITLE:=LuaJIT
26 URL:=https://www.luajit.org
27 DEPENDS:=@(i386||x86_64||arm||armeb||aarch64||powerpc||mips||mipsel||mips64)
28 endef
29
30 define Package/luajit/description
31 LuaJIT is a Just-In-Time (JIT) compiler for the Lua programming language. *** Requires GCC Multilib on host system to build! ***
32 endef
33 ifeq ($(HOST_ARCH),$(filter $(HOST_ARCH), x86_64 mips64))
34 ifeq ($(CONFIG_ARCH_64BIT),)
35 HOST_BITS := -m32
36 endif
37 endif
38
39 define Build/Compile
40 $(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
41 HOST_CC="$(HOSTCC) $(HOST_CFLAGS) $(HOST_BITS)" \
42 CROSS="$(TARGET_CROSS)" \
43 DPREFIX=$(PKG_INSTALL_DIR)/usr \
44 PREFIX=/usr \
45 TARGET_SYS=Linux \
46 TARGET_CFLAGS="$(TARGET_CFLAGS)" \
47 BUILDMODE=dynamic
48 rm -rf $(PKG_INSTALL_DIR)
49 mkdir -p $(PKG_INSTALL_DIR)
50 $(MAKE) -C $(PKG_BUILD_DIR) \
51 DPREFIX=$(PKG_INSTALL_DIR)/usr \
52 PREFIX=/usr \
53 TARGET_SYS=Linux \
54 install
55 endef
56
57 define Build/InstallDev
58 $(INSTALL_DIR) $(1)/usr/include/luajit-2.1
59 $(CP) $(PKG_INSTALL_DIR)/usr/include/luajit-2.1/*.{h,hpp} $(1)/usr/include/luajit-2.1
60 $(INSTALL_DIR) $(1)/usr/lib
61 $(CP) $(PKG_INSTALL_DIR)/usr/lib/*so* $(1)/usr/lib/
62 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
63 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/luajit.pc $(1)/usr/lib/pkgconfig/
64 $(CP) $(PKG_INSTALL_DIR)/usr/bin/luajit-$(PKG_VERSION) $(PKG_INSTALL_DIR)/usr/bin/$(PKG_NAME)
65 endef
66
67 define Package/luajit/install
68 $(INSTALL_DIR) $(1)/usr/lib/
69 $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
70 $(INSTALL_DIR) $(1)/usr/bin
71 $(CP) $(PKG_INSTALL_DIR)/usr/bin/luajit-$(PKG_VERSION) $(1)/usr/bin/$(PKG_NAME)
72 endef
73
74 define Host/Compile
75 $(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR) \
76 DPREFIX=$(STAGING_DIR_HOSTPKG) \
77 TARGET_CFLAGS="$(HOST_CFLAGS)" \
78 TARGET_LDFLAGS="$(HOST_LDFLAGS)"
79 endef
80
81 define Host/Install
82 $(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR) \
83 DPREFIX=$(STAGING_DIR_HOSTPKG) \
84 install
85 $(CP) $(STAGING_DIR_HOSTPKG)/bin/luajit-$(PKG_VERSION) $(STAGING_DIR_HOSTPKG)/bin/$(PKG_NAME)
86 endef
87
88 $(eval $(call HostBuild,luajit))
89 $(eval $(call BuildPackage,luajit))