Snippets

Víctor Goñi Sanz PRINTADVANCEDINFO macro with Name

Created by Víctor Goñi Sanz last modified Pipero man
MACRO(PRINTADVANCEDINFO PROJ_NAME)

  # INFO                          
  #---------------------------------------------------
  status("")
  status("* Project: "  			${PROJ_NAME} )
  status("*-----------------------------------------------------------------------------------*" )
  status("")
  status("  Platform: ")
  status("  -------------------------------------------------------------------------------")
  status("	Host: "             ${CMAKE_HOST_SYSTEM_NAME} ${CMAKE_HOST_SYSTEM_VERSION} ${CMAKE_HOST_SYSTEM_PROCESSOR})
  status("	CrossCompiling: "         ${CMAKE_CROSSCOMPILING})
  IF(CMAKE_CROSSCOMPILING)
    status("	Target: "         	${CMAKE_SYSTEM_NAME} ${CMAKE_SYSTEM_VERSION} ${CMAKE_SYSTEM_PROCESSOR})
  ENDIF()
  status("")
  status("  General Options:" )
  status("  -------------------------------------------------------------------------------")
  status("	CMake: "            ${CMAKE_VERSION})
  status("	CMake generator: "  ${CMAKE_GENERATOR})
  status("	CMake build tool: " ${CMAKE_BUILD_TOOL})
  IF(MSVC)
    status("	MSVC: "           ${MSVC_VERSION})
  ENDIF()
  IF(CMAKE_GENERATOR MATCHES Xcode)
    status("	Xcode: "          ${XCODE_VERSION})
  ENDIF()
  IF(NOT CMAKE_GENERATOR MATCHES "Xcode|Visual Studio")
    status("	Configuration:"  ${CMAKE_BUILD_TYPE})
  ENDIF()
  status("	Custom platform name: "		${TARGET_PLATFORM_NAME} )
  status("	Build Configurations: "		${CMAKE_CONFIGURATION_TYPES} )
  status("	Build type: "			${CMAKE_BUILD_TYPE} )
  status("	Verbose mode: "			${CMAKE_VERBOSE} )
  status("	Target Name: "			${TARGET_PLATFORM} )
  status("")
  status("  Paths " )
  status("  -------------------------------------------------------------------------------")
  status("	Root: "				${${PROJ_NAME}_PATH_MAIN} )
  status("	Data: "				${${PROJ_NAME}_PATH_DATA} )
  status("	Libs: "				${${PROJ_NAME}_PATH_LIBS} )
  status("	Installation: "			${${PROJ_NAME}_PATH_INSTALL} )
  status("	Executable: "			${EXECUTABLE_OUTPUT_PATH} )
  status("	Binary: "				${PROJECT_BINARY_DIR} )
  status("")
  
  status("  Project Bool Options " )
  status("  -------------------------------------------------------------------------------")
  status("	Samples: "			${${PROJECT_NAME}_BUILD_SAMPLES} )
  status("	Docs: "				${${PROJECT_NAME}_BUILD_DOCS} )
  status("")

  # ========================== C/C++ options ==========================
  status("  C/C++:")
  status("  -------------------------------------------------------------------------------")
  status("	Precompiled headers:"     PCHSupport_FOUND AND ENABLE_PRECOMPILED_HEADERS THEN YES ELSE NO)
  status("	Built as dynamic libs?:" BUILD_SHARED_LIBS THEN YES ELSE NO)
  status("	C++ Compiler:"           CMAKE_COMPILER_IS_GNUCXX THEN "${CMAKE_CXX_COMPILER} ${CMAKE_CXX_COMPILER_ARG1} (ver ${CMAKE_GCC_REGEX_VERSION})" ELSE "${CMAKE_CXX_COMPILER}" )
  status("	C++ flags (Release):"    ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_RELEASE})
  status("	C++ flags (Debug):"      ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_DEBUG})
  status("	C Compiler:"             ${CMAKE_C_COMPILER} ${CMAKE_C_COMPILER_ARG1})
  status("	C flags (Release):"      ${CMAKE_C_FLAGS} ${CMAKE_C_FLAGS_RELEASE})
  status("	C flags (Debug):"        ${CMAKE_C_FLAGS} ${CMAKE_C_FLAGS_DEBUG})
  status("	Linker flags exe (Release):" ${CMAKE_EXE_LINKER_FLAGS} ${CMAKE_EXE_LINKER_FLAGS_RELEASE})
  status("	Linker flags exe (Debug):"   ${CMAKE_EXE_LINKER_FLAGS} ${CMAKE_EXE_LINKER_FLAGS_DEBUG})
  status("	Linker flags shared (Release):" ${CMAKE_SHARED_LINKER_FLAGS} ${CMAKE_SHARED_LINKER_FLAGS_RELEASE})
  status("	Linker flags shared (Debug):"   ${CMAKE_SHARED_LINKER_FLAGS} ${CMAKE_SHARED_LINKER_FLAGS_DEBUG})
  status("")

  # ========================== Android details ==========================
IF(TARGET_PLATFORM STREQUAL TARGET_ANDROID)
    status("  Android: ")
    status("  -------------------------------------------------------------------------------")
    status("	Android ABI:" ${ANDROID_ABI})
    status("	Native API level:" android-${ANDROID_NATIVE_API_LEVEL})
    status("	SDK target:" "${ANDROID_SDK_TARGET}")
    status("	Android NDK:" "${ANDROID_NDK} (toolchain: ${ANDROID_TOOLCHAIN_NAME})")
    status("")
ENDIF(TARGET_PLATFORM STREQUAL TARGET_ANDROID)

  # ========================== iOS details ==========================
IF( TARGET_PLATFORM_NAME STREQUAL iOS )
  status("  iOS: ")
  status("  -------------------------------------------------------------------------------")
  status("	Platform:"    		${IOS_PLATFORM} )
  status("	SDK Root:"    		${CMAKE_IOS_SDK_ROOT} )
  status("	Architectures:"    		${CMAKE_OSX_ARCHITECTURES} )
  status("	Deployment Target:"    	${CMAKE_OSX_DEPLOYMENT_TARGET} )
  status("    	Framework Search Path:"	    	${CMAKE_FRAMEWORK_PATH} )
  status("	OSX SYSROOT:"	    	${CMAKE_OSX_SYSROOT} )
  status("")
ENDIF()
  
  status("")
  status("   ***********************************************************************************************")
  status("")
  status("     oooOOOOOOOOOOO    Piperoman 2013     ${PROJ_NAME}  ")
  status("     o   ____          :::::::::::::::::: :::::::::::::::::: __|-----|__")
  status("     Y_,_|[]| --++++++ |[][][][][][][][]| |[][][][][][][][]| |  [] []  |")
  status("    {|_|_|__|;|______|;|________________|;|________________|;|_________|;")
  status("     /oo--OO   oo  oo   oo oo      oo oo   oo oo      oo oo   oo     oo")
  status("  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+")
  status("")
  status("   ***********************************************************************************************")
  status("")
    
ENDMACRO()

Comments (0)

HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.