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