lua.mk 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. ################################################################################
  2. #
  3. # lua
  4. #
  5. ################################################################################
  6. ifeq ($(BR2_PACKAGE_LUA_5_3),y)
  7. LUA_VERSION = 5.3.5
  8. else
  9. LUA_VERSION = 5.1.5
  10. endif
  11. LUA_SITE = http://www.lua.org/ftp
  12. LUA_INSTALL_STAGING = YES
  13. LUA_LICENSE = MIT
  14. ifeq ($(BR2_PACKAGE_LUA_5_3),y)
  15. LUA_LICENSE_FILES = doc/readme.html
  16. else
  17. LUA_LICENSE_FILES = COPYRIGHT
  18. endif
  19. LUA_PROVIDES = luainterpreter
  20. LUA_CFLAGS = -Wall -fPIC -DLUA_USE_POSIX
  21. ifeq ($(BR2_PACKAGE_LUA_5_3),y)
  22. LUA_CFLAGS += -DLUA_COMPAT_5_2
  23. endif
  24. ifeq ($(BR2_STATIC_LIBS),y)
  25. LUA_BUILDMODE = static
  26. else
  27. LUA_BUILDMODE = dynamic
  28. LUA_CFLAGS += -DLUA_USE_DLOPEN
  29. LUA_MYLIBS += -ldl
  30. endif
  31. ifeq ($(BR2_PACKAGE_LUA_READLINE),y)
  32. LUA_DEPENDENCIES = readline ncurses
  33. LUA_MYLIBS += -lreadline -lhistory -lncurses
  34. LUA_CFLAGS += -DLUA_USE_READLINE
  35. else
  36. ifeq ($(BR2_PACKAGE_LUA_LINENOISE),y)
  37. LUA_DEPENDENCIES = linenoise
  38. LUA_MYLIBS += -llinenoise
  39. LUA_CFLAGS += -DLUA_USE_LINENOISE
  40. endif
  41. endif
  42. ifeq ($(BR2_PACKAGE_LUA_32BITS),y)
  43. define LUA_32BITS_LUACONF
  44. $(SED) 's/\/\* #define LUA_32BITS \*\//#define LUA_32BITS/' $(@D)/src/luaconf.h
  45. endef
  46. LUA_POST_PATCH_HOOKS += LUA_32BITS_LUACONF
  47. endif
  48. HOST_LUA_CFLAGS = -Wall -fPIC -DLUA_USE_DLOPEN -DLUA_USE_POSIX
  49. HOST_LUA_MYLIBS = -ldl
  50. define LUA_BUILD_CMDS
  51. $(TARGET_MAKE_ENV) $(MAKE) \
  52. CC="$(TARGET_CC)" RANLIB="$(TARGET_RANLIB)" \
  53. CFLAGS="$(TARGET_CFLAGS) $(LUA_CFLAGS)" \
  54. MYLIBS="$(LUA_MYLIBS)" AR="$(TARGET_CROSS)ar rcu" \
  55. MYLDFLAGS="$(TARGET_LDFLAGS)" \
  56. BUILDMODE=$(LUA_BUILDMODE) \
  57. PKG_VERSION=$(LUA_VERSION) -C $(@D)/src all
  58. sed -e "s/@VERSION@/$(LUA_VERSION)/;s/@ABI@/$(LUAINTERPRETER_ABIVER)/;s/@MYLIBS@/$(LUA_MYLIBS)/" \
  59. package/lua/lua.pc.in > $(@D)/lua.pc
  60. endef
  61. define HOST_LUA_BUILD_CMDS
  62. $(HOST_MAKE_ENV) $(MAKE) \
  63. CFLAGS="$(HOST_LUA_CFLAGS)" \
  64. MYLDFLAGS="$(HOST_LDFLAGS)" \
  65. MYLIBS="$(HOST_LUA_MYLIBS)" \
  66. BUILDMODE=static \
  67. PKG_VERSION=$(LUA_VERSION) -C $(@D)/src all
  68. sed -e "s/@VERSION@/$(LUA_VERSION)/;s/@ABI@/$(LUAINTERPRETER_ABIVER)/;s/@MYLIBS@/$(HOST_LUA_MYLIBS)/" \
  69. package/lua/lua.pc.in > $(@D)/lua.pc
  70. endef
  71. define LUA_INSTALL_STAGING_CMDS
  72. $(TARGET_MAKE_ENV) $(MAKE) INSTALL_TOP="$(STAGING_DIR)/usr" -C $(@D) install
  73. $(INSTALL) -m 0644 -D $(@D)/lua.pc \
  74. $(STAGING_DIR)/usr/lib/pkgconfig/lua.pc
  75. endef
  76. define LUA_INSTALL_TARGET_CMDS
  77. $(TARGET_MAKE_ENV) $(MAKE) INSTALL_TOP="$(TARGET_DIR)/usr" -C $(@D) install
  78. endef
  79. define HOST_LUA_INSTALL_CMDS
  80. $(HOST_MAKE_ENV) $(MAKE) INSTALL_TOP="$(HOST_DIR)" -C $(@D) install
  81. $(INSTALL) -m 0644 -D $(@D)/lua.pc \
  82. $(HOST_DIR)/lib/pkgconfig/lua.pc
  83. endef
  84. $(eval $(generic-package))
  85. $(eval $(host-generic-package))