diff --git a/CMakeLists.txt b/CMakeLists.txt index 3d52c9311..ea36de957 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,6 +2,8 @@ cmake_minimum_required(VERSION 2.8) find_package(LLVM REQUIRED CONFIG) +find_library(REVNG_SUPPORT_LIBRARY revngSupport) + add_definitions(${LLVM_DEFINITIONS}) include_directories(${LLVM_INCLUDE_DIRS}) diff --git a/lib/ExamplePass/CMakeLists.txt b/lib/ExamplePass/CMakeLists.txt index 3b590cf8d..52e506dc6 100644 --- a/lib/ExamplePass/CMakeLists.txt +++ b/lib/ExamplePass/CMakeLists.txt @@ -1 +1,7 @@ -add_library(ExamplePass MODULE Pass.cpp) +add_library(revngcExamplePass MODULE Pass.cpp) + +target_link_libraries(revngcExamplePass ${REVNG_SUPPORT_LIBRARY}) + +install(TARGETS revngcExamplePass + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib) diff --git a/lib/ExamplePass/Pass.cpp b/lib/ExamplePass/Pass.cpp index c9b9bfdbd..7a4dc0d6f 100644 --- a/lib/ExamplePass/Pass.cpp +++ b/lib/ExamplePass/Pass.cpp @@ -1,7 +1,11 @@ +// LLVM includes #include "llvm/Pass.h" #include "llvm/IR/Function.h" #include "llvm/Support/raw_ostream.h" +// revng includes +#include "revng/Support/IRHelpers.h" + using namespace llvm; struct ExamplePass : public FunctionPass {