Skip to content

Commit

Permalink
Making the codebase compatible with macOS.
Browse files Browse the repository at this point in the history
  • Loading branch information
mcserep committed Oct 2, 2023
1 parent 7adf083 commit 802d7b9
Show file tree
Hide file tree
Showing 7 changed files with 104 additions and 13 deletions.
11 changes: 6 additions & 5 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,12 @@ include(Functions.cmake)
# Do some sanity check on the testing setup and enable testing if applicable.
include(Testing.cmake)

find_package(Boost REQUIRED COMPONENTS filesystem log program_options regex system thread)
find_package(Java REQUIRED)
find_package(Odb REQUIRED)
find_package(Threads REQUIRED)
find_package(Thrift REQUIRED)
find_package(Boost REQUIRED COMPONENTS filesystem log program_options regex system thread)
find_package(Java REQUIRED)
find_package(Odb REQUIRED)
find_package(Threads REQUIRED)
find_package(Thrift REQUIRED)
find_package(Graphviz REQUIRED)
find_package(GTest)

include(UseJava)
Expand Down
83 changes: 83 additions & 0 deletions FindGraphviz.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
# - Try to find Graphviz
# Once done this will define
#
# GRAPHVIZ_FOUND - system has Graphviz
# GRAPHVIZ_INCLUDE_DIRS - Graphviz include directories
# GRAPHVIZ_CDT_LIBRARY - Graphviz CDT library
# GRAPHVIZ_GVC_LIBRARY - Graphviz GVC library
# GRAPHVIZ_CGRAPH_LIBRARY - Graphviz CGRAPH library
# GRAPHVIZ_PATHPLAN_LIBRARY - Graphviz PATHPLAN library
# GRAPHVIZ_VERSION - Graphviz version
#
# This module reads hints about search locations from the following cmake variables:
# GRAPHVIZ_ROOT - Graphviz installation prefix
# (containing bin/, include/, etc.)

# Copyright (c) 2009, Adrien Bustany, <[email protected]>
# Copyright (c) 2013-2014 Kevin Funk <[email protected]>

# Version computation and some cleanups by Allen Winter <[email protected]>
# Copyright (c) 2012-2014 Klarälvdalens Datakonsult AB, a KDAB Group company <[email protected]>

# Simplified script by Dogan Can <[email protected]>
# Copyright (c) 2014 University of Southern California

# Redistribution and use is allowed according to the terms of the GPLv3+ license.
# Source: https://github.com/usc-sail/barista/blob/master/cmake/FindGraphviz.cmake

if(GRAPHVIZ_ROOT)
set(_GRAPHVIZ_INCLUDE_DIR ${GRAPHVIZ_ROOT}/include)
set(_GRAPHVIZ_LIBRARY_DIR ${GRAPHVIZ_ROOT}/lib)
endif()

find_path(GRAPHVIZ_INCLUDE_DIR NAMES graphviz/cgraph.h
HINTS ${_GRAPHVIZ_INCLUDE_DIR})
find_library(GRAPHVIZ_CDT_LIBRARY NAMES cdt
HINTS ${_GRAPHVIZ_LIBRARY_DIR})
find_library(GRAPHVIZ_GVC_LIBRARY NAMES gvc
HINTS ${_GRAPHVIZ_LIBRARY_DIR})
find_library(GRAPHVIZ_CGRAPH_LIBRARY NAMES cgraph
HINTS ${_GRAPHVIZ_LIBRARY_DIR})
find_library(GRAPHVIZ_PATHPLAN_LIBRARY NAMES pathplan
HINTS ${_GRAPHVIZ_LIBRARY_DIR})

if(GRAPHVIZ_INCLUDE_DIR AND GRAPHVIZ_CDT_LIBRARY AND GRAPHVIZ_GVC_LIBRARY
AND GRAPHVIZ_CGRAPH_LIBRARY AND GRAPHVIZ_PATHPLAN_LIBRARY)
set(GRAPHVIZ_FOUND TRUE)
else()
set(GRAPHVIZ_FOUND FALSE)
endif()

# Ok, now compute the version
if(GRAPHVIZ_FOUND)
set(FIND_GRAPHVIZ_VERSION_SOURCE
"#include <graphviz/graphviz_version.h>\n#include <stdio.h>\n int main()\n {\n printf(\"%s\",PACKAGE_VERSION);return 1;\n }\n")
set(FIND_GRAPHVIZ_VERSION_SOURCE_FILE ${CMAKE_BINARY_DIR}/CMakeTmp/FindGRAPHVIZ.cxx)
file(WRITE "${FIND_GRAPHVIZ_VERSION_SOURCE_FILE}" "${FIND_GRAPHVIZ_VERSION_SOURCE}")

set(FIND_GRAPHVIZ_VERSION_ADD_INCLUDES
"-DINCLUDE_DIRECTORIES:STRING=${GRAPHVIZ_INCLUDE_DIR}")

try_run(RUN_RESULT COMPILE_RESULT
${CMAKE_BINARY_DIR}
${FIND_GRAPHVIZ_VERSION_SOURCE_FILE}
CMAKE_FLAGS "${FIND_GRAPHVIZ_VERSION_ADD_INCLUDES}"
RUN_OUTPUT_VARIABLE GRAPHVIZ_VERSION)

if(COMPILE_RESULT AND RUN_RESULT EQUAL 1)
message(STATUS "Graphviz version: ${GRAPHVIZ_VERSION}")
else()
message(FATAL_ERROR "Unable to compile or run the graphviz version detection program.")
endif()

set(GRAPHVIZ_INCLUDE_DIRS ${GRAPHVIZ_INCLUDE_DIR} ${GRAPHVIZ_INCLUDE_DIR}/graphviz)

if(NOT Graphviz_FIND_QUIETLY)
message(STATUS "Graphviz include: ${GRAPHVIZ_INCLUDE_DIRS}")
message(STATUS "Graphviz libraries: ${GRAPHVIZ_CDT_LIBRARY} ${GRAPHVIZ_GVC_LIBRARY} ${GRAPHVIZ_CGRAPH_LIBRARY} ${GRAPHVIZ_PATHPLAN_LIBRARY}")
endif()
endif()

if(Graphviz_FIND_REQUIRED AND NOT GRAPHVIZ_FOUND)
message(FATAL_ERROR "Could not find GraphViz.")
endif()
2 changes: 1 addition & 1 deletion doc/deps.md
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ cd thrift-0.13.0
--without-php --without-php_extension --without-dart \
--without-haskell --without-go --without-rs --without-haxe \
--without-dotnetcore --without-d --without-qt4 --without-qt5 \
--without-java
--without-java --without-swift

make install -j $(nproc)
```
Expand Down
2 changes: 2 additions & 0 deletions logger/src/ldlogger-util.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
#define CC_LOGGER_UTIL_H

#include <limits.h>
#ifdef __linux__
#include <linux/limits.h>
#endif
#include <string.h>

/**
Expand Down
1 change: 1 addition & 0 deletions model/include/model/buildaction.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#ifndef CC_MODEL_BUILDACTION_H
#define CC_MODEL_BUILDACTION_H

#include <cstdint>
#include <string>
#include <memory>
#include <vector>
Expand Down
2 changes: 1 addition & 1 deletion plugins/cpp/service/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ target_link_libraries(cppservice
mongoose
projectservice
languagethrift
gvc
${GRAPHVIZ_GVC_LIBRARY}
${THRIFT_LIBTHRIFT_LIBRARIES})

install(TARGETS cppservice DESTINATION ${INSTALL_SERVICE_DIR})
16 changes: 10 additions & 6 deletions util/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
include_directories(
${PROJECT_SOURCE_DIR}/util/include
${PROJECT_SOURCE_DIR}/model/include
${BOOST_INCLUDE_DIRS})
${PROJECT_SOURCE_DIR}/model/include)

include_directories(SYSTEM
${ODB_INCLUDE_DIRS})
${Boost_INCLUDE_DIRS}
${ODB_INCLUDE_DIRS}
${GRAPHVIZ_INCLUDE_DIRS})

add_library(util SHARED
src/dbutil.cpp
Expand All @@ -18,13 +19,16 @@ add_library(util SHARED
src/util.cpp)

target_link_libraries(util
gvc
${Boost_LIBRARIES})
${Boost_LIBRARIES}
${ODB_LIBRARIES}
${GRAPHVIZ_GVC_LIBRARY}
${GRAPHVIZ_CGRAPH_LIBRARY})

string(TOLOWER "${DATABASE}" _database)
if (${_database} STREQUAL "sqlite")
find_package(SQLite3)
target_link_libraries(util
sqlite3)
${SQLite3_LIBRARIES})
endif()

install(TARGETS util DESTINATION ${INSTALL_LIB_DIR})

0 comments on commit 802d7b9

Please sign in to comment.