| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 | macro(ctkMacroInitProject test)  # Extract current directory name to use as project name  #file(GLOB CUR_FILE "CMakeLists.txt")  #get_filename_component(CUR_ABSOLUTE_DIR ${CUR_FILE} PATH)  #get_filename_component(DIR_NAME ${CUR_ABSOLUTE_DIR} NAME)  #project(${DIR_NAME})  file(GLOB include_file_list "${CMAKE_CURRENT_SOURCE_DIR}/*.h")  file(GLOB implementation_file_list "${CMAKE_CURRENT_SOURCE_DIR}/*.cpp")  file(GLOB templete_file_list1 "${CMAKE_CURRENT_SOURCE_DIR}/*.txx")  file(GLOB templete_file_list2 "${CMAKE_CURRENT_SOURCE_DIR}/*.tpp")  file(GLOB resource_file_list "${CMAKE_CURRENT_SOURCE_DIR}/*.qrc")  file(GLOB ui_file_list "${CMAKE_CURRENT_SOURCE_DIR}/*.ui")  # Set your list of sources here.  set(PROJECT_SRCS        ${implementation_file_list}        ${include_file_list}        ${templete_file_list1}        ${templete_file_list2}        ${ui_file_list}        ${resource_file_list}  )  ## Add the project binary dir as include dir for the .moc files.  include_directories("${CMAKE_CURRENT_BINARY_DIR}")  set(MY_MOC_CXX )  if(${test})    ## Moc the tests:    foreach(FILE_NAME_ABS ${implementation_file_list})      ## extract the base file name.      get_filename_component(FILE_NAME ${FILE_NAME_ABS} NAME_WE)      ## Exclude the main.cpp file (it doesn't ned to be 'mocced')      if(NOT ${FILE_NAME} STREQUAL "main")        ## Assign the moc custom filename        set(MOC_FILE "${FILE_NAME}.moc")        if (CTK_QT_VERSION VERSION_GREATER "4")          QT5_GENERATE_MOC(${FILE_NAME_ABS} ${MOC_FILE})        else()          QT4_GENERATE_MOC(${FILE_NAME_ABS} ${MOC_FILE})        endif()        list(APPEND MY_MOC_CXX "${CMAKE_CURRENT_BINARY_DIR}/${MOC_FILE}")      endif()    endforeach()  else()    ## Moc the library's .h files    if (CTK_QT_VERSION VERSION_GREATER "4")      QT5_WRAP_CPP(MY_MOC_CXX ${include_file_list})      QT5_WRAP_UI(MY_UI_CXX ${ui_file_list})      #QT5_ADD_RESOURCES(MY_RESOURCE_CXX ${resource_file_list})    else()      QT4_WRAP_CPP(MY_MOC_CXX ${include_file_list})      QT4_WRAP_UI(MY_UI_CXX ${ui_file_list})      #QT4_ADD_RESOURCES(MY_RESOURCE_CXX ${resource_file_list})    endif()  endif()  set(PROJECT_SRCS    ${PROJECT_SRCS}    ${MY_MOC_CXX}    ${MY_UI_CXX}    ${resource_file_list}    )  # List libraries that are needed by this project.  ctkFunctionGetTargetLibraries(dependency_libraries)  set(PROJECT_LIBS ${dependency_libraries})endmacro()set(test_executable ${PROJECT_NAME}CppTests)ctkMacroInitproject(1)add_executable(${test_executable} ${PROJECT_SRCS})target_link_libraries(${test_executable} ${PROJECT_LIBS})add_test(${PROJECT_NAME}Tests ${CPP_TEST_PATH}/${test_executable})#link_libraries(${PROJECT_LIBS})
 |