add irrlicht (#694)

* add irrlicht

* update abseil

* improve openssl

* update libcurl

* improve irrlicht

* add tools for irrlicht
pull/695/head
Hoildkv 3 years ago committed by GitHub
parent 10be5546d8
commit 05c2860a06
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      packages/a/abseil/xmake.lua
  2. 68
      packages/i/irrlicht/port/xmake.lua
  3. 40
      packages/i/irrlicht/xmake.lua
  4. 1
      packages/l/libcurl/versions.lua
  5. 1
      packages/l/libcurl/xmake.lua
  6. 11
      packages/o/openssl/xmake.lua

@ -2,12 +2,14 @@ package("abseil")
set_homepage("https://abseil.io")
set_description("C++ Common Libraries")
set_license("Apache-2.0")
add_urls("https://github.com/abseil/abseil-cpp/archive/$(version).tar.gz",
"https://github.com/abseil/abseil-cpp.git")
add_versions("20200225.1", "0db0d26f43ba6806a8a3338da3e646bb581f0ca5359b3a201d8fb8e4752fd5f8")
add_versions("20210324.1", "441db7c09a0565376ecacf0085b2d4c2bbedde6115d7773551bc116212c2a8d6")
add_versions("20210324.2", "59b862f50e710277f8ede96f083a5bb8d7c9595376146838b9580be90374ee1f")
add_versions("20211102.0", "dcf71b9cba8dc0ca9940c4b316a0c796be8fab42b070bb6b7cab62b48f0e66c4")
add_deps("cmake")

@ -0,0 +1,68 @@
set_project("irrlicht")
add_rules("mode.debug", "mode.release")
add_requires("bzip2", "libjpeg-turbo", "libpng", "zlib")
if is_plat("macosx") then
add_requires("libx11", "libxft")
elseif is_plat("linux") then
add_requires("libx11", "libxxf86vm", "libxcursor", "libxext", "libxft")
end
target("Irrlicht")
set_kind("$(kind)")
add_files("source/Irrlicht/*.cpp")
add_files("source/Irrlicht/lzma/*.c")
add_files("source/Irrlicht/aesGladman/*.cpp")
add_includedirs("source/Irrlicht")
add_includedirs("include", {public = true})
add_headerfiles("include/(**.h)")
add_packages("bzip2", "libjpeg-turbo", "libpng", "zlib")
add_defines(is_kind("shared") and "IRRLICHT_EXPORTS" or "_IRR_STATIC_LIB_", {public = is_kind("static")})
add_defines("NO_IRR_USE_NON_SYSTEM_ZLIB_",
"NO_IRR_USE_NON_SYSTEM_BZLIB_",
"NO_IRR_USE_NON_SYSTEM_JPEG_LIB_",
"NO_IRR_USE_NON_SYSTEM_LIB_PNG_")
add_defines("NO_IRR_COMPILE_WITH_DIRECT3D_9_",
"NO_IRR_COMPILE_WITH_BURNINGSVIDEO_")
if is_plat("windows") then
add_syslinks("user32", "gdi32", "advapi32")
elseif is_plat("macosx") then
add_frameworks("Cocoa", "OpenGL", "IOKit")
add_files("source/Irrlicht/MacOSX/*.mm")
add_cxxflags("-ObjC++")
set_values("objc++.build.arc", false)
elseif is_plat("linux") then
add_syslinks("GL")
add_packages("libx11", "libxxf86vm", "libxcursor", "libxext")
end
target_end()
target("MeshConverter")
set_kind("binary")
add_deps("Irrlicht")
add_files("tools/MeshConverter/*.cpp")
target_end()
target("IrrFontTool")
set_kind("binary")
add_deps("Irrlicht")
add_files("tools/IrrFontTool/newFontTool/*.cpp")
if is_plat("windows") then
add_syslinks("gdi32")
elseif is_plat("macosx", "linux") then
add_packages("libx11", "libxft")
end
target_end()
target("GUIEditor")
set_kind("binary")
add_deps("Irrlicht")
add_files("tools/GUIEditor/*.cpp")
target_end()
target("FileToHeader")
set_kind("binary")
add_deps("Irrlicht")
add_files("tools/FileToHeader/*.cpp")
target_end()

@ -0,0 +1,40 @@
package("irrlicht")
set_homepage("https://irrlicht.sourceforge.io/")
set_description("The Irrlicht Engine is an open source realtime 3D engine written in C++.")
set_license("zlib")
add_urls("https://downloads.sourceforge.net/irrlicht/irrlicht-$(version).zip")
add_versions("1.8.5", "effb7beed3985099ce2315a959c639b4973aac8210f61e354475a84105944f3d")
add_deps("bzip2", "libjpeg-turbo", "libpng", "zlib")
if is_plat("windows") then
add_syslinks("user32", "gdi32", "advapi32")
elseif is_plat("macosx") then
add_deps("libx11", "libxft")
add_frameworks("Cocoa", "OpenGL", "IOKit")
elseif is_plat("linux") then
add_syslinks("GL")
add_deps("libx11", "libxxf86vm", "libxcursor", "libxext", "libxft")
end
on_load("windows", "macosx", "linux", function (package)
if not package:config("shared") then
package:add("defines", "_IRR_STATIC_LIB_")
end
end)
on_install("windows", "macosx", "linux", function (package)
os.cp(path.join(os.scriptdir(), "port", "xmake.lua"), "xmake.lua")
import("package.tools.xmake").install(package)
end)
on_test(function (package)
assert(package:check_cxxsnippets({test = [[
void test() {
using namespace irr;
IrrlichtDevice *device =
createDevice(video::EDT_SOFTWARE, core::dimension2d<u32>(640, 480), 16,
false, false, false, 0);
}
]]}, {configs = {languages = "c++11"}, includes = "irrlicht.h"}))
end)

@ -1,4 +1,5 @@
function add_versions_list()
add_versions("7.80.0", "dd0d150e49cd950aff35e16b628edf04927f0289df42883750cf952bb858189c")
add_versions("7.78.0", "98530b317dc95ccb324bbe4f834f07bb642fbc393b794ddf3434f246a71ea44a")
add_versions("7.77.0", "6c0c28868cb82593859fc43b9c8fdb769314c855c05cf1b56b023acf855df8ea")
add_versions("7.76.1", "7a8e184d7d31312c4ebf6a8cb59cd757e61b2b2833a9ed4f9bf708066e7695e9")

@ -4,6 +4,7 @@ package("libcurl")
set_homepage("https://curl.haxx.se/")
set_description("The multiprotocol file transfer library.")
set_license("MIT")
set_urls("https://curl.haxx.se/download/curl-$(version).tar.bz2",
"http://curl.mirror.anstey.ca/curl-$(version).tar.bz2")

@ -15,7 +15,7 @@ package("openssl")
if is_plat("windows") then
add_links("libssl", "libcrypto")
add_syslinks("Ws2_32", "User32", "Crypt32", "Advapi32")
add_syslinks("ws2_32", "user32", "crypt32", "advapi32")
else
add_links("ssl", "crypto")
end
@ -50,14 +50,7 @@ package("openssl")
table.insert(args, "--openssldir=" .. package:installdir())
os.vrunv("perl", args)
-- temporary workaround, will be removed in future
if xmake.version():ge("2.5.3") then
import("package.tools.nmake").install(package)
else
local envs = import("core.tool.toolchain").load("msvc"):runenvs()
envs.PATH = package:dep("nasm"):installdir("bin") .. path.envsep() .. envs.PATH
import("package.tools.nmake").install(package, {}, {envs = envs})
end
import("package.tools.nmake").install(package)
end)
on_install("linux", "macosx", function (package)

Loading…
Cancel
Save