cmake_minimum_required(VERSION 2.8.11) project(Xreate) find_package(LLVM REQUIRED CONFIG) find_package(Qt5Core) message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}") message(STATUS "Using LLVMConfig.cmake in: ${LLVM_DIR}") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") set(SOURCE_FILES ./src/ast.cpp ./src/ast-compilation.cpp ./src/llvmlayer.cpp ./src/clasplayer.cpp #./src/main.cpp ./tests/tests.cpp ./src/pass/cfgpass.cpp ./src/pass/functiontagspass.cpp ./src/pass/rulespass.cpp /opt/potassco/gringo-4.4.0-source/app/shared/src/clingocontrol.cc /opt/potassco/gringo-4.4.0-source/app/pyclingo/src/clingo_lib.cc ) set(COCO_PATH "./../coco/") set(COCO_SOURCE_FILES ${COCO_PATH}/Parser.h ${COCO_PATH}/Scanner.h ${COCO_PATH}/Parser.cpp ${COCO_PATH}/Scanner.cpp ) set(POTASSCO_PATH "/opt/potassco/gringo-4.4.0-source") INCLUDE_DIRECTORIES(${COCO_PATH} ./src) INCLUDE_DIRECTORIES(${POTASSCO_PATH}/libgringo ${POTASSCO_PATH}/libclasp ${POTASSCO_PATH}/app/shared/include ${POTASSCO_PATH}/app/pyclingo/src ${POTASSCO_PATH}/libprogram_opts ) execute_process(COMMAND ${COCO_PATH}/gen-xreate WORKING_DIRECTORY ${COCO_PATH} OUTPUT_VARIABLE COCO_OUTPUT) message(STATUS "COCO GRAMMAR BUILD STATUS:" ${COCO_OUTPUT}) include_directories(${LLVM_INCLUDE_DIRS}) add_definitions(${LLVM_DEFINITIONS}) add_executable(xreate ${SOURCE_FILES} ${COCO_SOURCE_FILES}) llvm_map_components_to_libnames(llvm_libs support core irreader) message(STATUS "LLVM LIBS: " ${llvm_libs}) set (LIBCLASP_PATH ${POTASSCO_PATH}/build/debug) #find_library(LIBCLASP_LIBRARY_GRINGO NAMES gringo # HINTS ${LIBCLASP_PATH}) #find_library(LIBCLASP_LIBRARY_CLASP NAMES clasp # HINTS ${LIBCLASP_PATH}) set(LIBCLASP_LIBS ${LIBCLASP_PATH}/libclasp.a ${LIBCLASP_PATH}/libgringo.a ${LIBCLASP_PATH}/libprogram_opts.a ) message(STATUS ${LIBCLASP_LIBS}) target_link_libraries(xreate ${llvm_libs} pthread Qt5::Core ${LIBCLASP_LIBS}) add_definitions(-DWITH_THREADS=0)