mxe/src/lua.mk

93 lines
3.0 KiB
Makefile
Raw Normal View History

# This file is part of MXE. See LICENSE.md for licensing information.
2008-11-10 09:15:55 +00:00
PKG := lua
2017-03-05 03:41:39 +00:00
$(PKG)_WEBSITE := https://www.lua.org/
$(PKG)_DESCR := Lua
$(PKG)_IGNORE :=
2016-06-06 23:40:07 +01:00
$(PKG)_VERSION := 5.3.3
# Shared version and luarocks subdir
$(PKG)_SHORTVER := $(call SHORT_PKG_VERSION,$(PKG))
2016-07-27 12:11:06 +01:00
$(PKG)_DLLVER := $(subst .,,$($(PKG)_SHORTVER))
2016-06-06 23:40:07 +01:00
$(PKG)_CHECKSUM := 5113c06884f7de453ce57702abaac1d618307f33f6789fa870e87a59d772aca2
$(PKG)_SUBDIR := lua-$($(PKG)_VERSION)
$(PKG)_FILE := lua-$($(PKG)_VERSION).tar.gz
2017-03-05 03:41:39 +00:00
$(PKG)_URL := https://www.lua.org/ftp/$($(PKG)_FILE)
$(PKG)_DEPS := cc
2015-11-29 13:33:15 +00:00
$(PKG)_DEPS_$(BUILD) :=
2008-11-10 09:15:55 +00:00
define $(PKG)_UPDATE
2017-03-05 03:41:39 +00:00
$(WGET) -q -O- 'https://www.lua.org/download.html' | \
2008-11-10 09:15:55 +00:00
$(SED) -n 's,.*lua-\([0-9][^>]*\)\.tar.*,\1,p' | \
head -1
endef
define $(PKG)_BUILD_COMMON
touch '$(PREFIX)/$(TARGET)/lib/lua/$($(PKG)_SHORTVER)/.gitkeep'
touch '$(PREFIX)/$(TARGET)/share/lua/$($(PKG)_SHORTVER)/.gitkeep'
#pkg-config file
(echo 'Name: $(PKG)'; \
echo 'Version: $($(PKG)_VERSION)'; \
echo 'Description: $(PKG)'; \
echo 'Libs: -l$(PKG)';) \
> '$(PREFIX)/$(TARGET)/lib/pkgconfig/$(PKG).pc'
cp '$(1)/src/lua.exe' '$(PREFIX)/$(TARGET)/bin/lua.exe' || cp '$(1)/src/lua' '$(PREFIX)/$(TARGET)/bin/lua.exe'
'$(TARGET)-gcc' \
-W -Wall -Werror -ansi -pedantic \
'$(TEST_FILE)' -o '$(PREFIX)/$(TARGET)/bin/test-lua.exe' \
`$(TARGET)-pkg-config --libs lua`
endef
2008-11-10 09:15:55 +00:00
define $(PKG)_BUILD
$(MAKE) -C '$(1)/src' -j '$(JOBS)' \
INSTALL_TOP='$(PREFIX)/$(TARGET)' \
CC='$(TARGET)-gcc' \
AR='$(TARGET)-ar rcu' \
2011-05-27 13:57:01 +01:00
RANLIB='$(TARGET)-ranlib' \
a lua
2014-08-16 22:30:13 +01:00
# lua.h is installed to noinstall/ to avoid error when executing an empty
# 'install' command.
2008-11-10 09:15:55 +00:00
$(MAKE) -C '$(1)' -j 1 \
INSTALL_TOP='$(PREFIX)/$(TARGET)' \
INSTALL_BIN='$(1)/noinstall' \
INSTALL_MAN='$(1)/noinstall' \
2014-08-16 22:30:13 +01:00
TO_BIN='lua.h' \
INSTALL='$(INSTALL)' \
2011-05-27 13:57:01 +01:00
install
$($(PKG)_BUILD_COMMON)
2008-11-10 09:15:55 +00:00
endef
define $(PKG)_BUILD_SHARED
$(MAKE) -C '$(1)/src' -j '$(JOBS)' \
INSTALL_TOP='$(PREFIX)/$(TARGET)' \
CC='$(TARGET)-gcc' \
AR='$(TARGET)-gcc -Wl,--out-implib,liblua.dll.a -shared -o' \
RANLIB='echo skipped ranlib' \
SYSCFLAGS='-DLUA_BUILD_AS_DLL' \
2016-07-27 12:11:06 +01:00
LUA_A=lua$($(PKG)_DLLVER).dll \
a lua
$(MAKE) -C '$(1)' -j 1 \
INSTALL_TOP='$(PREFIX)/$(TARGET)' \
INSTALL_MAN='$(1)/noinstall' \
2016-07-27 12:11:06 +01:00
TO_BIN='lua$($(PKG)_DLLVER).dll' \
INSTALL='$(INSTALL)' \
TO_LIB='liblua.dll.a' \
install
$($(PKG)_BUILD_COMMON)
endef
2015-09-12 12:27:09 +01:00
2015-11-29 13:33:15 +00:00
define $(PKG)_BUILD_$(BUILD)
2015-09-12 12:27:09 +01:00
$(MAKE) -C '$(1)/src' -j '$(JOBS)' \
2016-01-06 02:10:40 +00:00
CC='$(BUILD_CC)' \
2015-09-12 12:27:09 +01:00
PLAT=$(shell ([ `uname -s` == Darwin ] && echo "macosx") || echo `uname -s` | tr '[:upper:]' '[:lower:]')
2015-11-29 13:33:15 +00:00
$(INSTALL) '$(1)/src/lua' '$(PREFIX)/bin/$(BUILD)-lua'
ln -sf '$(PREFIX)/bin/$(BUILD)-lua' '$(PREFIX)/$(BUILD)/bin/lua'
2015-11-29 13:33:15 +00:00
$(INSTALL) '$(1)/src/luac' '$(PREFIX)/bin/$(BUILD)-luac'
ln -sf '$(PREFIX)/bin/$(BUILD)-luac' '$(PREFIX)/$(BUILD)/bin/luac'
2015-09-12 12:27:09 +01:00
endef