53 lines · plain
1if (NOT LIBIPT_INCLUDE_PATH)2 message (FATAL_ERROR "libipt include path not provided")3endif()4 5if (NOT EXISTS "${LIBIPT_INCLUDE_PATH}")6 message (FATAL_ERROR "invalid libipt include path provided")7endif()8include_directories(${LIBIPT_INCLUDE_PATH})9 10find_library(LIBIPT_LIBRARY ipt PATHS ${LIBIPT_LIBRARY_PATH} REQUIRED)11 12lldb_tablegen(TraceIntelPTCommandOptions.inc -gen-lldb-option-defs13 SOURCE TraceIntelPTOptions.td14 TARGET TraceIntelPTOptionsGen)15 16lldb_tablegen(TraceIntelPTProperties.inc -gen-lldb-property-defs17 SOURCE TraceIntelPTProperties.td18 TARGET TraceIntelPTPropertiesGen)19 20lldb_tablegen(TraceIntelPTPropertiesEnum.inc -gen-lldb-property-enum-defs21 SOURCE TraceIntelPTProperties.td22 TARGET TraceIntelPTPropertiesEnumGen)23 24add_lldb_library(lldbPluginTraceIntelPT PLUGIN25 CommandObjectTraceStartIntelPT.cpp26 DecodedThread.cpp27 TaskTimer.cpp28 LibiptDecoder.cpp29 PerfContextSwitchDecoder.cpp30 ThreadDecoder.cpp31 TraceCursorIntelPT.cpp32 TraceIntelPT.cpp33 TraceIntelPTJSONStructs.cpp34 TraceIntelPTMultiCpuDecoder.cpp35 TraceIntelPTBundleLoader.cpp36 TraceIntelPTBundleSaver.cpp37 38 LINK_COMPONENTS39 Support40 LINK_LIBS41 lldbCore42 lldbSymbol43 lldbTarget44 lldbPluginTraceCommon45 ${LIBIPT_LIBRARY}46 )47 48 49add_dependencies(lldbPluginTraceIntelPT50 TraceIntelPTOptionsGen51 TraceIntelPTPropertiesGen52 TraceIntelPTPropertiesEnumGen)53