|
|
|
@ -20,10 +20,16 @@ package("flann") |
|
|
|
|
if package:config("with_cuda") then |
|
|
|
|
package:add("deps", "cuda", {system = true}) |
|
|
|
|
end |
|
|
|
|
local suffix = package:config("shared") and "" or "_s" |
|
|
|
|
local libs = package:config("with_cuda") and {"flann"} or {"flann", "flann_cuda"} |
|
|
|
|
for _, lib in ipairs(libs) do |
|
|
|
|
package:add("links", lib .. suffix) |
|
|
|
|
end |
|
|
|
|
end) |
|
|
|
|
|
|
|
|
|
on_install("windows", "linux", "macosx", function (package) |
|
|
|
|
os.cd("src/cpp") |
|
|
|
|
io.replace("flann/util/serialization.h", "flann/ext/lz4", "lz4", {plain = true}) |
|
|
|
|
io.replace("flann/defines.h", "#ifdef WIN32", "#ifdef _WIN32", {plain = true}) |
|
|
|
|
io.writefile("xmake.lua", format([[ |
|
|
|
|
add_rules("mode.debug", "mode.release") |
|
|
|
@ -36,6 +42,9 @@ package("flann") |
|
|
|
|
end |
|
|
|
|
add_cxxflags("/bigobj") |
|
|
|
|
end |
|
|
|
|
if is_kind("static") then |
|
|
|
|
set_suffixname("_s") |
|
|
|
|
end |
|
|
|
|
target("flann") |
|
|
|
|
set_kind("$(kind)") |
|
|
|
|
add_files("flann/flann.cpp") |
|
|
|
@ -44,6 +53,12 @@ package("flann") |
|
|
|
|
add_packages("lz4") |
|
|
|
|
add_headerfiles("(flann/config.h)", "(flann/defines.h)", "(flann/flann.h)") |
|
|
|
|
add_headerfiles("(flann/flann.hpp)", "(flann/general.h)", "(flann/algorithms/*.h)", "(flann/io/*.h)", "(flann/nn/*.h)", "(flann/util/*.h)") |
|
|
|
|
target("flann_cpp") -- for cmake finding only |
|
|
|
|
set_kind("$(kind)") |
|
|
|
|
add_files("flann/flann_cpp.cpp") |
|
|
|
|
add_includedirs(".") |
|
|
|
|
add_includedirs("flann") |
|
|
|
|
add_packages("lz4") |
|
|
|
|
target("flann_cuda") |
|
|
|
|
set_enabled(%s) |
|
|
|
|
set_kind("$(kind)") |
|
|
|
|