lua.mk 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. #############################################################
  2. #
  3. # lua
  4. #
  5. #############################################################
  6. LUA_VERSION=5.1.4
  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. $(call DOWNLOAD,$(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. rm -f $(STAGING_DIR)/usr/bin/lua $(TARGET_DIR)/usr/bin/luac
  45. rm -f $(STAGING_DIR)/usr/lib/liblua.a
  46. rm -f $(TARGET_DIR)/usr/bin/lua $(TARGET_DIR)/usr/bin/luac
  47. rm -f $(TARGET_DIR)/usr/lib/liblua.a
  48. -$(MAKE) -C $(LUA_DIR) clean
  49. lua-dirclean:
  50. rm -rf $(LUA_DIR)
  51. #############################################################
  52. #
  53. # Toplevel Makefile options
  54. #
  55. #############################################################
  56. ifeq ($(BR2_PACKAGE_LUA),y)
  57. TARGETS+=lua
  58. endif