| # - MACRO_OPTIONAL_ADD_SUBDIRECTORY() combines ADD_SUBDIRECTORY() with an OPTION() | 
 | # MACRO_OPTIONAL_ADD_SUBDIRECTORY( <dir> ) | 
 | # If you use MACRO_OPTIONAL_ADD_SUBDIRECTORY() instead of ADD_SUBDIRECTORY(), | 
 | # this will have two effects | 
 | # 1 - CMake will not complain if the directory doesn't exist | 
 | #     This makes sense if you want to distribute just one of the subdirs | 
 | #     in a source package, e.g. just one of the subdirs in kdeextragear. | 
 | # 2 - If the directory exists, it will offer an option to skip the  | 
 | #     subdirectory. | 
 | #     This is useful if you want to compile only a subset of all | 
 | #     directories. | 
 |  | 
 | # Copyright (c) 2007, Alexander Neundorf, <neundorf@kde.org> | 
 | # | 
 | # Redistribution and use is allowed according to the terms of the BSD license. | 
 | # For details see the accompanying COPYING-CMAKE-SCRIPTS file. | 
 |  | 
 |  | 
 | MACRO (MACRO_OPTIONAL_ADD_SUBDIRECTORY _dir ) | 
 |    GET_FILENAME_COMPONENT(_fullPath ${_dir} ABSOLUTE) | 
 |    IF(EXISTS ${_fullPath}) | 
 |       IF(${ARGC} EQUAL 2) | 
 |         OPTION(BUILD_${_dir} "Build directory ${_dir}" ${ARGV1}) | 
 |       ELSE(${ARGC} EQUAL 2) | 
 |         OPTION(BUILD_${_dir} "Build directory ${_dir}" TRUE) | 
 |       ENDIF(${ARGC} EQUAL 2) | 
 |       IF(BUILD_${_dir}) | 
 |          ADD_SUBDIRECTORY(${_dir}) | 
 |       ENDIF(BUILD_${_dir}) | 
 |    ENDIF(EXISTS ${_fullPath}) | 
 | ENDMACRO (MACRO_OPTIONAL_ADD_SUBDIRECTORY) |