1# - Given a list of libraries with OPTIMIZED, DEBUG, etc. 2# 3# split_library_list(_generalvar _releasevar _debugvar) 4# 5# Requires CMake 2.6 or newer (uses the 'function' command) 6# 7# Original Author: 8# 2009-2010 Ryan Pavlik <rpavlik@iastate.edu> <abiryan@ryand.net> 9# http://academic.cleardefinition.com 10# Iowa State University HCI Graduate Program/VRAC 11# 12# Copyright Iowa State University 2009-2010. 13# Distributed under the Boost Software License, Version 1.0. 14# (See accompanying file LICENSE_1_0.txt or copy at 15# http://www.boost.org/LICENSE_1_0.txt) 16 17 18function(split_library_list _generalvar _releasevar _debugvar) 19 set(_general) 20 set(_debug) 21 set(_release) 22 set(_dest _general) 23 24 foreach(item ${ARGN}) 25 if(${item} MATCHES "[dD][eE][bB][uU][gG]") 26 set(_dest _debug) 27 elseif(${item} MATCHES "[oO][pP][tT][iI][mM][iI][zZ][eE][dD]") 28 set(_dest _release) 29 elseif(${item} MATCHES "[gG][eE][nN][eE][rR][aA][lL]") 30 set(_dest _general) 31 else() 32 list(APPEND ${_dest} "${item}") 33 set(_dest _general) 34 endif() 35 endforeach() 36 37 set(${_releasevar} ${_release} PARENT_SCOPE) 38 set(${_debugvar} ${_debug} PARENT_SCOPE) 39 set(${_generalvar} ${_general} PARENT_SCOPE) 40endfunction() 41