package An official xmake package repository
https://xrepo.xmake.io/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
2.0 KiB
63 lines
2.0 KiB
add_rules("mode.debug", "mode.release") |
|
|
|
target("newton") |
|
set_kind("$(kind)") |
|
set_languages("c89", "cxx11") |
|
if is_plat("windows") or is_plat("mingw") then |
|
add_defines("_WINDOWS", "_CRT_SECURE_NO_WARNINGS") |
|
if is_arch("x86") then |
|
add_defines("_WIN_32_VER") |
|
else |
|
add_defines("_WIN_64_VER") |
|
end |
|
if is_plat("mingw") then |
|
if is_arch("x86") then |
|
add_defines("_MINGW_32_VER") |
|
else |
|
add_defines("_MINGW_64_VER") |
|
end |
|
end |
|
elseif is_plat("linux", "android") then |
|
add_syslinks("dl") |
|
if is_arch("x86") then |
|
add_defines("_POSIX_VER") |
|
else |
|
add_defines("_POSIX_VER_64") |
|
end |
|
if is_plat("android") then |
|
add_defines("_ARM_VER") |
|
add_cxflags("-mfpu=neon", {force = true}) |
|
add_cxflags("-mfloat-abi=soft", {force = true}) |
|
add_cxflags("-include arm_neon.h", {force = true}) |
|
else |
|
add_syslinks("pthread") |
|
end |
|
elseif is_plat("macosx", "iphoneos") then |
|
add_defines("_MACOSX_VER") |
|
if is_plat("iphoneos") then |
|
add_cxflags("-include emmintrin.h", {force = true}) |
|
end |
|
end |
|
|
|
if is_plat("windows") then |
|
if is_kind("static") then |
|
add_defines("_NEWTON_STATIC_LIB", {public = true}) |
|
else |
|
add_defines("_NEWTON_BUILD_DLL") |
|
end |
|
end |
|
|
|
if is_mode("release") and not is_plat("android") then |
|
add_vectorexts("sse", "sse2", "sse3") |
|
end |
|
|
|
add_includedirs("sdk", "sdk/dgCore", "sdk/dgMeshUtil", "sdk/dgPhysics", "sdk/dgNewton") |
|
add_files("sdk/dgCore/**.cpp") |
|
add_files("sdk/dgPhysics/**.cpp") |
|
add_files("sdk/dgMeshUtil/**.cpp") |
|
add_files("sdk/dgNewton/**.cpp") |
|
|
|
before_install(function (package) |
|
local targetHeader = path.join(package:installdir(), "include", "newton", "Newton.h") |
|
os.vcp("sdk/dgNewton/Newton.h", path.join(package:installdir(), "include", "newton", "Newton.h")) |
|
end)
|
|
|