2024-06-12 03:58:57 +03:00
--
-- Copyright 2010-2024 Branimir Karadzic. All rights reserved.
-- License: https://github.com/bkaradzic/bgfx/blob/master/LICENSE
--
2019-06-19 22:37:35 +03:00
project ( " geometryv " )
uuid ( os.uuid ( " geometryv " ) )
kind " ConsoleApp "
configuration { }
includedirs {
path.join ( BIMG_DIR , " include " ) ,
path.join ( BGFX_DIR , " include " ) ,
path.join ( BGFX_DIR , " 3rdparty " ) ,
path.join ( BGFX_DIR , " examples/common " ) ,
path.join ( MODULE_DIR , " include " ) ,
path.join ( MODULE_DIR , " 3rdparty " ) ,
}
files {
path.join ( MODULE_DIR , " tools/geometryv/** " ) ,
}
links {
" example-common " ,
" bimg_decode " ,
" bimg " ,
" bgfx " ,
}
2021-10-26 04:59:32 +03:00
using_bx ( )
2019-06-19 22:37:35 +03:00
if _OPTIONS [ " with-sdl " ] then
defines { " ENTRY_CONFIG_USE_SDL=1 " }
links { " SDL2 " }
2021-02-28 21:15:09 +03:00
configuration { " linux or freebsd " }
if _OPTIONS [ " with-wayland " ] then
links {
" wayland-egl " ,
}
end
2019-06-19 22:37:35 +03:00
configuration { " x32 " , " windows " }
libdirs { " $(SDL2_DIR)/lib/x86 " }
configuration { " x64 " , " windows " }
libdirs { " $(SDL2_DIR)/lib/x64 " }
configuration { }
end
if _OPTIONS [ " with-glfw " ] then
defines { " ENTRY_CONFIG_USE_GLFW=1 " }
links { " glfw3 " }
configuration { " linux or freebsd " }
2023-07-31 17:14:04 +03:00
if _OPTIONS [ " with-wayland " ] then
links {
" wayland-egl " ,
}
else
links {
" Xrandr " ,
" Xinerama " ,
" Xi " ,
" Xxf86vm " ,
" Xcursor " ,
}
end
2019-06-19 22:37:35 +03:00
2021-01-01 05:17:39 +03:00
configuration { " osx* " }
2019-06-19 22:37:35 +03:00
linkoptions {
" -framework CoreVideo " ,
}
configuration { }
end
configuration { " vs* " }
linkoptions {
" /ignore:4199 " , -- LNK4199: /DELAYLOAD:*.dll ignored; no imports found from *.dll
}
links { -- this is needed only for testing with GLES2/3 on Windows with VS2008
" DelayImp " ,
}
configuration { " vs201* " }
linkoptions { -- this is needed only for testing with GLES2/3 on Windows with VS201x
" /DELAYLOAD: \" libEGL.dll \" " ,
" /DELAYLOAD: \" libGLESv2.dll \" " ,
}
configuration { " mingw-* " }
targetextension " .exe "
configuration { " vs20* or mingw* " }
links {
" comdlg32 " ,
" gdi32 " ,
" psapi " ,
}
configuration { " winstore* " }
removelinks {
" DelayImp " ,
" gdi32 " ,
" psapi "
}
links {
" d3d11 " ,
" d3d12 " ,
" dxgi "
}
linkoptions {
" /ignore:4264 " -- LNK4264: archiving object file compiled with /ZW into a static library; note that when authoring Windows Runtime types it is not recommended to link with a static library that contains Windows Runtime metadata
}
-- WinRT targets need their own output directories are build files stomp over each other
targetdir ( path.join ( BGFX_BUILD_DIR , " arm_ " .. _ACTION , " bin " , _name ) )
objdir ( path.join ( BGFX_BUILD_DIR , " arm_ " .. _ACTION , " obj " , _name ) )
configuration { " mingw-clang " }
kind " ConsoleApp "
configuration { " android* " }
kind " ConsoleApp "
targetextension " .so "
linkoptions {
" -shared " ,
}
links {
" EGL " ,
" GLESv2 " ,
}
2020-05-17 05:45:55 +03:00
configuration { " wasm* " }
2019-06-19 22:37:35 +03:00
kind " ConsoleApp "
configuration { " linux-* or freebsd " }
links {
" X11 " ,
" GL " ,
" pthread " ,
}
configuration { " rpi " }
links {
" X11 " ,
" GLESv2 " ,
" EGL " ,
" bcm_host " ,
" vcos " ,
" vchiq_arm " ,
" pthread " ,
}
2021-01-01 05:17:39 +03:00
configuration { " osx* " }
2019-06-19 22:37:35 +03:00
linkoptions {
" -framework Cocoa " ,
2021-12-20 10:11:33 +03:00
" -framework IOKit " ,
2019-06-19 22:37:35 +03:00
" -framework Metal " ,
" -framework OpenGL " ,
2021-12-20 10:11:33 +03:00
" -framework QuartzCore " ,
2019-06-19 22:37:35 +03:00
}
configuration { " ios* " }
kind " ConsoleApp "
linkoptions {
" -framework CoreFoundation " ,
" -framework Foundation " ,
2021-12-20 10:11:33 +03:00
" -framework IOKit " ,
2019-06-19 22:37:35 +03:00
" -framework OpenGLES " ,
" -framework QuartzCore " ,
2021-12-20 10:11:33 +03:00
" -framework UIKit " ,
2019-06-19 22:37:35 +03:00
}
configuration { " xcode4 " , " ios " }
kind " WindowedApp "
configuration { " qnx* " }
targetextension " "
links {
" EGL " ,
" GLESv2 " ,
}
configuration { }
strip ( )