lua.mk 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. #############################################################
  2. #
  3. # lua
  4. #
  5. #############################################################
  6. LUA_VERSION=5.1.2
  7. LUA_SOURCE=lua-$(LUA_VERSION).tar.gz
  8. LUA_CAT:=$(ZCAT)
  9. LUA_SITE=http://www.lua.org/ftp
  10. LUA_DIR=$(BUILD_DIR)/lua-$(LUA_VERSION)
  11. LUA_CFLAGS=-DLUA_USE_LINUX
  12. LUA_MYLIBS="-Wl,-E -ldl -lreadline -lhistory -lncurses"
  13. $(DL_DIR)/$(LUA_SOURCE):
  14. $(WGET) -P $(DL_DIR) $(LUA_SITE)/$(LUA_SOURCE)
  15. $(LUA_DIR)/.unpacked: $(DL_DIR)/$(LUA_SOURCE)
  16. $(LUA_CAT) $(DL_DIR)/$(LUA_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  17. touch $(LUA_DIR)/.unpacked
  18. $(LUA_DIR)/src/lua: $(LUA_DIR)/.unpacked
  19. rm -f $@
  20. $(MAKE) $(TARGET_CONFIGURE_OPTS) \
  21. MYCFLAGS=$(LUA_CFLAGS) \
  22. MYLIBS=$(LUA_MYLIBS) \
  23. AR="$(TARGET_CROSS)ar rcu" \
  24. -C $(LUA_DIR)/src all
  25. $(LUA_DIR)/src/luac: $(LUA_DIR)/src/lua
  26. $(LUA_DIR)/src/liblua.a: $(LUA_DIR)/src/lua
  27. $(STAGING_DIR)/usr/lib/liblua.a: $(LUA_DIR)/src/liblua.a
  28. cp -dpf $(LUA_DIR)/src/liblua.a $(STAGING_DIR)/usr/lib/liblua.a
  29. $(STAGING_DIR)/usr/bin/lua: $(LUA_DIR)/src/lua
  30. cp -dpf $(LUA_DIR)/src/lua $(STAGING_DIR)/usr/bin/lua
  31. $(STAGING_DIR)/usr/bin/luac: $(LUA_DIR)/src/luac
  32. cp -dpf $(LUA_DIR)/src/luac $(STAGING_DIR)/usr/bin/luac
  33. $(TARGET_DIR)/usr/lib/liblua.a: $(STAGING_DIR)/usr/lib/liblua.a
  34. cp -dpf $(STAGING_DIR)/usr/lib/liblua.a $(TARGET_DIR)/usr/lib/liblua.a
  35. $(TARGET_DIR)/usr/bin/lua: $(STAGING_DIR)/usr/bin/lua
  36. cp -dpf $(STAGING_DIR)/usr/bin/lua $(TARGET_DIR)/usr/bin/lua
  37. $(TARGET_DIR)/usr/bin/luac: $(STAGING_DIR)/usr/bin/luac
  38. cp -dpf $(STAGING_DIR)/usr/bin/luac $(TARGET_DIR)/usr/bin/luac
  39. lua-bins: $(TARGET_DIR)/usr/bin/lua $(TARGET_DIR)/usr/bin/luac
  40. lua-libs: $(TARGET_DIR)/usr/lib/liblua.a
  41. lua: uclibc readline ncurses lua-bins lua-libs
  42. lua-source: $(DL_DIR)/$(LUA_SOURCE)
  43. lua-clean:
  44. @if [ -d $(LUA_DIR)/Makefile ]; then \
  45. $(MAKE) -C $(LUA_DIR) clean; \
  46. fi
  47. lua-dirclean:
  48. rm -rf $(LUA_DIR)
  49. #############################################################
  50. #
  51. # Toplevel Makefile options
  52. #
  53. #############################################################
  54. ifeq ($(strip $(BR2_PACKAGE_LUA)),y)
  55. TARGETS+=lua
  56. endif