You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

121 lines
3.8 KiB

cmake_minimum_required (VERSION 2.8.4)
11 years ago
set(project_name juci)
set(module juci_to_python_api)
11 years ago
project (${project_name})
11 years ago
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_LIST_DIR}/cmake/Modules/")
INCLUDE(FindPkgConfig)
message("Searcing for libclang")
#LIBCLANG_FOUND System has libclang.
#LIBCLANG_INCLUDE_DIRS The libclang include directories.
#LIBCLANG_LIBRARIES The libraries needed to use libclang.
#LIBCLANG_LIBRARY_DIR The path to the directory containing libclang.
#LIBCLANG_KNOWN_LLVM_VERSIONS Known LLVM release numbers.
find_package(Testlcl)
11 years ago
#### Finding boost, the variables below is set #####
#PYTHONLIBS_FOUND - True if headers and requested libraries were found
#PYTHON_INCLUDE_DIRS - Boost include directories
#PYTHON_LIBRARIES - Boost component libraries to be linked
find_package(PythonLibs 2.7)
#If python is found
if(${PYTHONLIBS_FOUND})
message("Python libraries found. Continuing")
else()
message("Please install python libraries. The libraries where not found.")
message("Python include dirs: ${PYTHON_INCLUDE_DIRS}")
message("Python link dirs ${PYTHON_LIBRARIES}")
message(FATAL_ERROR "The python libraries are required. Quitting.")
11 years ago
endif()
#### Finding boost, the variables below is set #####
#Boost_FOUND - True if headers and requested libraries were found
#Boost_INCLUDE_DIRS - Boost include directories
#Boost_LIBRARY_DIRS - Link directories for Boost libraries
#Boost_LIBRARIES - Boost component libraries to be linked
find_package(Boost 1.5 REQUIRED COMPONENTS python)
11 years ago
#If boost is not found
if(${Boost_FOUND})
message("Boost libraries found. Continuing")
else()
message("Please install boost libraries. The libraries where not found.")
message("Boost library dirs: ${Boost_LIBRARY_DIRS}")
message("Boost include dirs: ${Boost_INCLUDE_DIRS}")
message("Boost link dirs ${Boost_LIBRARIES}")
message(FATAL_ERROR "The boost libraries are required. Quitting.")
11 years ago
endif()
#### Finding gtkmm, the variables below is set #####
#GTKMM_FOUND - True if headers and requested libraries were found
#GTKMM_INCLUDE_DIRS - GTKMM include directories
#GTKMM_LIBRARY_DIRS - Link directories for GTKMM libraries
#GTKMM_LIBRARIES - GTKMM libraries to be linked
pkg_check_modules(GTKMM gtkmm-3.0) # The name GTKMM is set here for the variables abouve
#If gtkmm is not found
if(${GTKMM_FOUND})
message("Gtkmm libraries found. Continuing")
else()
message("Please install gtkmm libraries. The libraries where not found.")
message("Gtkmm library dirs ${GTKMM_LIBRARY_DIRS}")
message("Gtkmm include dirs ${GTKMM_INCLUDE_DIRS}")
message("Gtkmm link dirs ${GTKMM_LIBRARIES}")
message(FATAL_ERROR "The gtkmm libraries are required. Quitting.")
11 years ago
endif()
# name of the executable on Windows will be example.exe
11 years ago
add_executable(${project_name}
#list of every needed file to create the executable
juci.cc
keybindings
menu
source
sourcefile.h
sourcefile.cc
window
api
notebook
entry
#there is no need for extentions
)
add_library(${module} SHARED
11 years ago
api
api_ext
)
# dependencies
11 years ago
if(${lcl_NOTFOUND})
message("FATAL_ERROR ohh lord!")
else()
message("Found libs!")
endif()
include_directories(
${Boost_INCLUDE_DIRS}
${PYTHON_INCLUDE_DIRS}
${GTKMM_INCLUDE_DIRS}
11 years ago
${LCL_INCLUDE_DIRS}
)
link_directories(
${GTKMM_LIBRARY_DIRS}
${Boost_LIBRARY_DIRS}
${PYTHON_INCLUDE_DIRS}
${LCL_LIBRARY_DIRS}
)
#module:
set_target_properties(${module} PROPERTIES PREFIX ""
LIBRARY_OUTPUT_DIRECTORY "/usr/lib/python2.7/dist-packages/")
target_link_libraries(${module} ${PYTHON_LIBRARIES} ${Boost_LIBRARIES})
#executable:
target_link_libraries(${project_name} ${LCL_LIBRARIES} ${GTKMM_LIBRARIES} ${Boost_LIBRARIES} ${PYTHON_LIBRARIES})
11 years ago