logic: compilationdatabase parsing

* compilationdatabase cleaned
* add SolutionparserCompliationDatabase
* added cmake_build_type_init as release for better autocomplition on linux
* external source handling for different linux versions
* clean script remove windows symbolic links only on windows
* linux external lib handling for different build easier
This commit is contained in:
Andreas Stallinger
2016-02-18 17:20:27 +01:00
parent 59232bda69
commit a8f5fd02f1
11 changed files with 265 additions and 72 deletions
-45
View File
@@ -1,45 +0,0 @@
SET(BOTAN_URL https://github.com/randombit/botan.git/)
SET(BOTAN_VERSION 1.11.23)
SET(BOTAN_MODULES "base,ecdsa,emsa1,passhash9,rng,rsa,egd,emsa_pssr,emsa_pkcs1,x509,aes,dev_random")
SET(BOTAN_DIR $ENV{COATI_DEPEND_DIR}/botan)
find_package(Git)
if(Git_FOUND)
else()
message(ERROR "git not found: git not in path")
endif()
if(EXISTS $ENV{COATI_DEPEND_DIR})
else()
message(ERROR "coati dependency directory does not exist")
endif()
if(EXISTS ${BOTAN_DIR})
else()
execute_process(
COMMAND ${GIT_EXECUTABLE} clone ${BOTAN_URL}
WORKING_DIRECTORY $ENV{COATI_DEPEND_DIR}
)
endif()
execute_process(
COMMAND ${GIT_EXECUTABLE} checkout ${BOTAN_VERSION}
WORKING_DIRECTORY ${BOTAN_DIR}
)
# system specific botan modules
if(UNIX)
elseif(MSVC)
endif()
execute_process(
COMMAND ./configure.py --gen-amalgamation --minimized-build --enable-modules=${BOTAN_MODULES}
WORKING_DIRECTORY ${BOTAN_DIR}
)
#linux
#./configure.py --gen-amalgamation --minimized-build --enable-modules=base,ecdsa,emsa1,passhash9,rng,rsa,egd,dev_random,emsa_pssr,emsa_pkcs1,x509,aes
+16 -5
View File
@@ -1,9 +1,13 @@
if (UNIX)
include(cmake/external.cmake)
if (UNIX AND APPLE)
if ("${CMAKE_BUILD_TYPE}" STREQUAL "Release")
set(CLANG_BUILD_PATH "$ENV{CLANG_DIR}/build_release")
else()
set(CLANG_BUILD_PATH "$ENV{CLANG_DIR}/build_debug")
endif()
elseif(UNIX)
set(CLANG_BUILD_PATH "${EXTERNAL_BUILD}/llvm")
else()
set(CLANG_BUILD_PATH "$ENV{CLANG_DIR}/build")
endif()
@@ -17,10 +21,17 @@ execute_process(
string(REPLACE "-fno-exceptions" "" CLANG_DEFINITIONS "${CLANG_DEFINITIONS}")
string(REPLACE "-fno-rtti" "" CLANG_DEFINITIONS "${CLANG_DEFINITIONS}")
set(CLANG_INCLUDE_DIRS
"$ENV{CLANG_DIR}/llvm/tools/clang/include"
"${CLANG_BUILD_PATH}/tools/clang/include"
)
if(UNIX AND NOT APPLE)
set(CLANG_INCLUDE_DIRS
"${EXTERNAL_SRC}/clang/include"
"${CLANG_BUILD_PATH}/tools/clang/include"
)
else()
set(CLANG_INCLUDE_DIRS
"$ENV{CLANG_DIR}/llvm/tools/clang/include"
"${CLANG_BUILD_PATH}/tools/clang/include"
)
endif()
set(CLANG_LIBRARY_DIRS "${CLANG_BUILD_PATH}/lib")
+13
View File
@@ -0,0 +1,13 @@
find_package(PythonInterp REQUIRED)
execute_process(
COMMAND ${PYTHON_EXECUTABLE} "${CMAKE_SOURCE_DIR}/script/getSystemString.py"
OUTPUT_VARIABLE SYSSTRING
OUTPUT_STRIP_TRAILING_WHITESPACE
)
set(EXTERNAL_ROOT "${CMAKE_CURRENT_SOURCE_DIR}/../Coati_External")
set(EXTERNAL_SRC "${EXTERNAL_ROOT}/src")
set(EXTERNAL_BUILD "${EXTERNAL_ROOT}/${SYSSTRING}/${CMAKE_BUILD_TYPE}")