Makefile 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. #
  2. # Copyright (C) 2006-2009 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. PKG_NAME:=lua
  9. PKG_VERSION:=5.1.4
  10. PKG_RELEASE:=3
  11. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
  12. PKG_SOURCE_URL:=http://www.lua.org/ftp/ \
  13. http://ftp.gwdg.de/pub/languages/lua/ \
  14. http://mirrors.dotsrc.org/lua/ \
  15. http://www.tecgraf.puc-rio.br/lua/ftp/
  16. PKG_MD5SUM:=d0870f2de55d59c1c8419f36e8fac150
  17. include $(INCLUDE_DIR)/package.mk
  18. define Package/lua/Default
  19. SUBMENU:=Lua
  20. SECTION:=lang
  21. CATEGORY:=Languages
  22. TITLE:=Lua programming language
  23. URL:=http://www.lua.org/
  24. endef
  25. define Package/lua/Default/description
  26. Lua is a powerful light-weight programming language designed for extending
  27. applications. Lua is also frequently used as a general-purpose, stand-alone
  28. language. Lua is free software.
  29. endef
  30. define Package/liblua
  31. $(call Package/lua/Default)
  32. SUBMENU:=
  33. SECTION:=libs
  34. CATEGORY:=Libraries
  35. TITLE+= (libraries)
  36. endef
  37. define Package/liblua/description
  38. $(call Package/lua/Default/description)
  39. This package contains the Lua shared libraries, needed by other programs.
  40. endef
  41. define Package/lua
  42. $(call Package/lua/Default)
  43. DEPENDS:=+liblua
  44. TITLE+= (interpreter)
  45. endef
  46. define Package/lua/description
  47. $(call Package/lua/Default/description)
  48. This package contains the Lua language interpreter.
  49. endef
  50. define Package/luac
  51. $(call Package/lua/Default)
  52. DEPENDS:=+liblua
  53. TITLE+= (compiler)
  54. endef
  55. define Package/luac/description
  56. $(call Package/lua/Default/description)
  57. This package contains the Lua language compiler.
  58. endef
  59. define Package/lua-examples
  60. $(call Package/lua/Default)
  61. DEPENDS:=lua
  62. TITLE+= (examples)
  63. endef
  64. define Package/lua-examples/description
  65. $(call Package/lua/Default/description)
  66. This package contains Lua language examples.
  67. endef
  68. define Build/Configure
  69. endef
  70. TARGET_CFLAGS += -DLUA_USE_LINUX $(FPIC)
  71. ifneq ($(CONFIG_USE_EGLIBC),)
  72. ifeq ($(CONFIG_EGLIBC_OPTION_EGLIBC_UTMP),)
  73. TARGET_CFLAGS += -DNO_GETLOGIN
  74. endif
  75. endif
  76. define Build/Compile
  77. $(MAKE) -C $(PKG_BUILD_DIR) \
  78. CC="$(TARGET_CROSS)gcc" \
  79. AR="$(TARGET_CROSS)ar rcu" \
  80. RANLIB="$(TARGET_CROSS)ranlib" \
  81. INSTALL_ROOT=/usr \
  82. CFLAGS="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" \
  83. MYLDFLAGS="$(TARGET_LDFLAGS)" \
  84. PKG_VERSION=$(PKG_VERSION) \
  85. linux
  86. rm -rf $(PKG_INSTALL_DIR)
  87. mkdir -p $(PKG_INSTALL_DIR)
  88. $(MAKE) -C $(PKG_BUILD_DIR) \
  89. INSTALL_TOP="$(PKG_INSTALL_DIR)/usr" \
  90. install
  91. endef
  92. define Build/InstallDev
  93. $(INSTALL_DIR) $(1)/usr/include
  94. $(CP) $(PKG_INSTALL_DIR)/usr/include/lua{,lib,conf}.h $(1)/usr/include/
  95. $(CP) $(PKG_INSTALL_DIR)/usr/include/lauxlib.h $(1)/usr/include/
  96. $(CP) $(PKG_INSTALL_DIR)/usr/include/lnum_config.h $(1)/usr/include/
  97. $(INSTALL_DIR) $(1)/usr/lib
  98. $(CP) $(PKG_INSTALL_DIR)/usr/lib/liblua.{a,so*} $(1)/usr/lib/
  99. ln -sf liblua.so.$(PKG_VERSION) $(1)/usr/lib/liblualib.so
  100. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
  101. $(CP) $(PKG_BUILD_DIR)/etc/lua.pc $(1)/usr/lib/pkgconfig/
  102. endef
  103. define Package/liblua/install
  104. $(INSTALL_DIR) $(1)/usr/lib
  105. $(CP) $(PKG_INSTALL_DIR)/usr/lib/liblua.so.* $(1)/usr/lib/
  106. endef
  107. define Package/lua/install
  108. $(INSTALL_DIR) $(1)/usr/bin
  109. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/lua $(1)/usr/bin/
  110. endef
  111. define Package/luac/install
  112. $(INSTALL_DIR) $(1)/usr/bin
  113. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/luac $(1)/usr/bin/
  114. endef
  115. define Package/lua-examples/install
  116. $(INSTALL_DIR) $(1)/usr/share/lua/examples
  117. $(INSTALL_DATA) $(PKG_BUILD_DIR)/test/*.lua \
  118. $(1)/usr/share/lua/examples/
  119. endef
  120. $(eval $(call BuildPackage,liblua))
  121. $(eval $(call BuildPackage,lua))
  122. $(eval $(call BuildPackage,luac))
  123. $(eval $(call BuildPackage,lua-examples))