debug와 optimized 키워드. 다만, 이것은 Library에만 작동하는
듯 한다. ADD_DEFINITION과 같은 곳에는 작동하지 않는 것 같다. 더욱 더
자세한 사항은 FindQT4.cmake를 참고.FIND_LIBRARY(QGL_RELEASE
NAME ...
PATHS ...
)
FIND_LIBRARY(QGL_DEBUG
NAME ...
PATHS ...
)
IF(QGL_RELEASE AND QGL_DEBUG)
SET(QGL_LIBRARY
debug $(QGL_DEBUG)
optimized ${QGL_RELEASE})
ENDIF(QGL_RELEASE AND QGL_DEBUG)
단,
debug와 optimized 키워드는 뒤에 나오는 단 하나의 라이브러리에만 작동한다.
즉,
debug Ad Bd optimized A B
라고 하면 Debug모드에서는
-lAd -lBd -lB
Release모드에서는
-lBd -lA -lB
가 된다!
따라서 debug/optimized를 모든 라이브러리 앞에서 붙여 넣어야 한다.
SET(LIB_NAMES A B C)
FOREACH(NAME ${LIB_NAMES})
SET(LIB ${LIB} debug ${NAME}D optimized ${NAME})
ENDFOREACH()
Summary
Add
debug/optimized keywords before every each library, because these keywords only works with the following single library!