From 73620251fb9af400fecc4af2de32b6b6ccc770ac Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Sun, 22 May 2016 10:26:31 +0200 Subject: cmake: simplify, avoid macros Avoid macros when able to allow for scope control. Macros shove everything inside the parent scope. The lone remaining macro needs to be there since functions allow for a fixed amount of parameters. Link against dinput automatically since LTO will remove it if it's not needed anyway. Rift trackers don't presently need access to ${project}-all etc. so don't expose them through opentrack_rift_boilerplate yet. --- cmake/opentrack-rift.cmake | 33 ++++++++++++++++----------------- 1 file changed, 16 insertions(+), 17 deletions(-) (limited to 'cmake/opentrack-rift.cmake') diff --git a/cmake/opentrack-rift.cmake b/cmake/opentrack-rift.cmake index 86396637..d5b557ea 100644 --- a/cmake/opentrack-rift.cmake +++ b/cmake/opentrack-rift.cmake @@ -1,5 +1,5 @@ -macro(opentrack_rift_boilerplate proj opt) - if(${opt}) +function(opentrack_rift_boilerplate proj opt) + if(opt) set(link-flags) set(c-flags) if(APPLE) @@ -7,31 +7,30 @@ macro(opentrack_rift_boilerplate proj opt) set(c-flags "-fno-strict-aliasing") else() if(NOT MSVC) - set(c-flags "-fno-strict-aliasing") + set(c-flags "-fno-strict-aliasing") endif() endif() - opentrack_boilerplate("${proj}" LINK ${link-flags} COMPILE ${c-flags}) - set(proj ${opentrack-project-name}) + opentrack_boilerplate(${proj} LINK ${link-flags} COMPILE ${c-flags}) + set(proj ${proj}) target_include_directories(${proj} SYSTEM PUBLIC ${${opt}}/Include ${${opt}}/Src) set(c-flags) set(link-flags) + if(MSVC) + set(ext lib) + set(p) + else() + set(ext a) + set(p lib) + endif() + target_link_libraries(${proj} ${${opt}}/libLibOVR.${ext}) if(WIN32) - if(MSVC) - set(ext lib) - set(p) - else() - set(ext a) - set(p lib) - endif() - target_link_libraries(${proj} ${${opt}}/${p}LibOVR.${ext} winmm setupapi ws2_32 imagehlp wbemuuid) + target_link_libraries(${proj} winmm setupapi ws2_32 imagehlp wbemuuid) set(ext) set(p) else() if(NOT APPLE) - target_link_libraries(${proj} ${${opt}}/libLibOVR.a udev Xinerama) - else() - target_link_libraries(${proj} ${${opt}}/libLibOVR.a) + target_link_libraries(${proj} udev Xinerama) endif() endif() endif() -endmacro() +endfunction() -- cgit v1.2.3