mirror of https://git.wownero.com/dsc/mxe.git
luarocks: move most of the patch to config.lua
See https://github.com/keplerproject/luarocks/pull/491#issuecomment-246206471
This commit is contained in:
parent
286f8f25a7
commit
ea35a6cd96
|
@ -25,16 +25,6 @@ diff --git a/src/luarocks/cfg.lua b/src/luarocks/cfg.lua
|
|||
index 1111111..2222222 100644
|
||||
--- a/src/luarocks/cfg.lua
|
||||
+++ b/src/luarocks/cfg.lua
|
||||
@@ -120,6 +120,9 @@ elseif system and system:match("^MINGW") then
|
||||
cfg.platforms.windows = true
|
||||
cfg.platforms.mingw32 = true
|
||||
cfg.platforms.win32 = true
|
||||
+elseif system and system:match("^MXE") then
|
||||
+ cfg.platforms.unix = true
|
||||
+ cfg.platforms.mxe = true
|
||||
else
|
||||
cfg.platforms.unix = true
|
||||
-- Fall back to Unix in unknown systems.
|
||||
@@ -137,6 +140,7 @@ local platform_order = {
|
||||
linux = 7,
|
||||
macosx = 8,
|
||||
|
@ -43,48 +33,3 @@ index 1111111..2222222 100644
|
|||
-- Windows
|
||||
win32 = 10,
|
||||
mingw32 = 11,
|
||||
@@ -509,6 +513,44 @@ if cfg.platforms.unix then
|
||||
defaults.web_browser = "xdg-open"
|
||||
end
|
||||
|
||||
+if cfg.platforms.mxe then
|
||||
+ local MXE_ROOT, MXE_TARGET =
|
||||
+ assert(site_config.LUAROCKS_PREFIX:match('^(.*)/usr/([^/]+)$'))
|
||||
+ defaults.lib_extension = "dll"
|
||||
+ defaults.external_lib_extension = "dll"
|
||||
+ defaults.obj_extension = "obj"
|
||||
+ defaults.external_deps_dirs = { site_config.LUAROCKS_PREFIX }
|
||||
+ defaults.arch = "mxe-" .. MXE_TARGET
|
||||
+ defaults.platforms = {"unix", "mxe"}
|
||||
+ -- LUA_INCDIR and LUA_LIBDIR are defined in site_config.lua
|
||||
+ defaults.variables.LUA_BINDIR = site_config.LUAROCKS_PREFIX .. "/bin"
|
||||
+ defaults.cmake_generator = "Unix Makefiles"
|
||||
+ defaults.variables.MAKE = os.getenv("MAKE")
|
||||
+ defaults.variables.CMAKE = MXE_ROOT .. "/usr/bin/" .. MXE_TARGET .. "-cmake"
|
||||
+ defaults.variables.CC = MXE_ROOT .. "/usr/bin/" .. MXE_TARGET .. "-gcc"
|
||||
+ defaults.variables.LD = defaults.variables.CC
|
||||
+ defaults.variables.CFLAGS = "-O2"
|
||||
+ defaults.variables.LIBFLAG = "-shared"
|
||||
+ defaults.variables.LUALIB = "liblua.dll.a"
|
||||
+
|
||||
+ defaults.export_path = "SET PATH=%s"
|
||||
+ defaults.export_path_separator = ";"
|
||||
+ defaults.export_lua_path = "SET LUA_PATH=%s"
|
||||
+ defaults.export_lua_cpath = "SET LUA_CPATH=%s"
|
||||
+ defaults.wrapper_suffix = ".bat"
|
||||
+
|
||||
+ defaults.external_deps_patterns = {
|
||||
+ bin = { "?.exe", "?.bat" },
|
||||
+ lib = { "?.dll.a", "lib?.dll.a" },
|
||||
+ include = { "?.h" }
|
||||
+ }
|
||||
+ defaults.runtime_external_deps_patterns = {
|
||||
+ bin = { "?.exe", "?.bat" },
|
||||
+ lib = { "?.dll" },
|
||||
+ include = { "?.h" }
|
||||
+ }
|
||||
+end
|
||||
+
|
||||
if cfg.platforms.cygwin then
|
||||
defaults.lib_extension = "so" -- can be overridden in the config file for mingw builds
|
||||
defaults.arch = "cygwin-"..cfg.target_cpu
|
||||
|
|
|
@ -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'
|
||||
|
||||
|
|
Loading…
Reference in New Issue