summaryrefslogtreecommitdiffstats
path: root/plugins/luarocks/luarocks.mk
diff options
context:
space:
mode:
authorBoris Nagaev <bnagaev@gmail.com>2016-10-22 23:39:16 (GMT)
committerBoris Nagaev <bnagaev@gmail.com>2016-12-05 08:43:04 (GMT)
commitea35a6cd96aaabe899ad7e140f5ad2af33bbca86 (patch)
tree3616a6d680fd668355ed37b8852d2b4f9f8d344f /plugins/luarocks/luarocks.mk
parent286f8f25a7a6a48ea96ac241d84ac80966c3f343 (diff)
downloadmxe-ea35a6cd96aaabe899ad7e140f5ad2af33bbca86.zip
mxe-ea35a6cd96aaabe899ad7e140f5ad2af33bbca86.tar.gz
mxe-ea35a6cd96aaabe899ad7e140f5ad2af33bbca86.tar.bz2
luarocks: move most of the patch to config.lua
See https://github.com/keplerproject/luarocks/pull/491#issuecomment-246206471
Diffstat (limited to 'plugins/luarocks/luarocks.mk')
-rw-r--r--plugins/luarocks/luarocks.mk49
1 files changed, 49 insertions, 0 deletions
diff --git a/plugins/luarocks/luarocks.mk b/plugins/luarocks/luarocks.mk
index 75bfc02..2056549 100644
--- a/plugins/luarocks/luarocks.mk
+++ b/plugins/luarocks/luarocks.mk
@@ -20,6 +20,9 @@ endef
# shared-only because Lua loads modules in runtime
define $(PKG)_BUILD_SHARED
+ # Remove LuaRocks config because we change it after installation
+ rm -f '$(PREFIX)/$(TARGET)/etc/luarocks/config-$(lua_SHORTVER).lua'
+
cd '$(1)' && ./configure \
--prefix='$(PREFIX)/$(TARGET)' \
--rocks-tree='$(PREFIX)/$(TARGET)' \
@@ -33,6 +36,52 @@ define $(PKG)_BUILD_SHARED
LUAROCKS_UNAME_M="$(TARGET)"
$(MAKE) -C '$(1)' install
+ # Generate LuaRocks config.
+ ( \
+ echo '-- WARNING! This file is autogenerated by luarocks.mk.'; \
+ echo '-- It will be overwritten by `make luarocks`'; \
+ cat '$(PREFIX)/$(TARGET)/etc/luarocks/config-$(lua_SHORTVER).lua'; \
+ echo 'lib_extension = "dll"'; \
+ echo 'external_lib_extension = "dll"'; \
+ echo 'obj_extension = "obj"'; \
+ echo 'external_deps_dirs = { "$(PREFIX)" }'; \
+ echo 'arch = "mxe-$(TARGET)"'; \
+ echo 'platforms = {'; \
+ echo ' unix = true,'; \
+ echo ' mxe = true,'; \
+ echo '}'; \
+ echo 'cmake_generator = "Unix Makefiles"'; \
+ echo 'variables = {'; \
+ echo ' LUA_BINDIR = "$(PREFIX)/bin",'; \
+ echo ' MAKE = "$(MAKE)",'; \
+ echo ' CMAKE = "$(PREFIX)/bin/$(TARGET)-cmake",'; \
+ echo ' CC = "$(PREFIX)/bin/$(TARGET)-gcc",'; \
+ echo ' CXX = "$(PREFIX)/bin/$(TARGET)-g++",'; \
+ echo ' LD = "$(PREFIX)/bin/$(TARGET)-gcc",'; \
+ echo ' CFLAGS = "-O2",'; \
+ echo ' LIBFLAG = "-shared",'; \
+ echo ' LUALIB = "liblua.dll.a",'; \
+ echo '}'; \
+ echo 'export_path = "SET PATH=%s"'; \
+ echo 'export_path_separator = ";"'; \
+ echo 'export_lua_path = "SET LUA_PATH=%s"'; \
+ echo 'export_lua_cpath = "SET LUA_CPATH=%s"'; \
+ echo 'wrapper_suffix = ".bat"'; \
+ echo 'external_deps_patterns = {'; \
+ echo ' bin = { "?.exe", "?.bat" },'; \
+ echo ' lib = { "?.dll.a", "lib?.dll.a" },'; \
+ echo ' include = { "?.h" }'; \
+ echo '}'; \
+ echo 'runtime_external_deps_patterns = {'; \
+ echo ' bin = { "?.exe", "?.bat" },'; \
+ echo ' lib = { "?.dll" },'; \
+ echo ' include = { "?.h" }'; \
+ echo '}'; \
+ ) \
+ > '$(BUILD_DIR)/config.lua'
+ mv '$(BUILD_DIR)/config.lua' \
+ '$(PREFIX)/$(TARGET)/etc/luarocks/config-$(lua_SHORTVER).lua'
+
# move installed lua file luarocks to luarocks.lua
mv '$(PREFIX)/$(TARGET)/bin/luarocks' '$(PREFIX)/$(TARGET)/bin/luarocks.lua'