Skip to content

Commit

Permalink
Ensure that protobuf compiler runs before soruce is built. Fixes #114
Browse files Browse the repository at this point in the history
  • Loading branch information
Jason Gauci committed May 26, 2018
1 parent b8124da commit f046894
Show file tree
Hide file tree
Showing 3 changed files with 45 additions and 41 deletions.
70 changes: 37 additions & 33 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,26 @@ PROTOBUF_GENERATE_CPP(

proto/ET.proto
)
PROTOBUF_GENERATE_CPP(
ETERMINAL_SRCS
ETERMINAL_HDRS

proto/ETerminal.proto
)
PROTOBUF_GENERATE_CPP(
HTM_SRCS
HTM_HDRS

proto/HTM.proto
)
add_custom_target(
generated-code
DEPENDS

${ET_SRCS} ${ET_HDRS}
${ETERMINAL_SRCS} ${ETERMINAL_HDRS}
${HTM_SRCS} ${HTM_HDRS}
)

IF(FREEBSD)
set(CORE_LIBRARIES util)
Expand All @@ -75,14 +95,17 @@ include_directories(
terminal
${PROTOBUF_INCLUDE_DIRS}
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
${CURSES_INCLUDE_DIR}
${sodium_INCLUDE_DIR}
${GFLAGS_INCLUDE_DIRS}
${SELINUX_INCLUDE_DIR}
${UTEMPTER_INCLUDE_DIR}
)

set(${PROJECT_NAME}_SRC
add_library(
et-lib
STATIC

src/BackedReader.cpp
src/BackedWriter.cpp
Expand All @@ -97,27 +120,11 @@ set(${PROJECT_NAME}_SRC
src/UnixSocketHandler.cpp
src/easylogging++.cc

${ET_SRCS} ${ET_HDRS}
)

# Build the static library.
add_library(${PROJECT_NAME}-static STATIC ${${PROJECT_NAME}_SRC})
# Build the shared library.
#add_library(${PROJECT_NAME} SHARED ${${PROJECT_NAME}_SRC})

target_link_libraries(
${PROJECT_NAME}-static
${ET_SRCS}
)

# Make sure the compiler can find include files for our Hello library
# when other libraries or executables link to Hello
target_include_directories (${PROJECT_NAME}-static PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})

PROTOBUF_GENERATE_CPP(
ETERMINAL_SRCS
ETERMINAL_HDRS

proto/ETerminal.proto
add_dependencies(
et-lib
generated-code
)

add_library(
Expand All @@ -134,7 +141,11 @@ add_library(

${ETERMINAL_SRCS} ${ETERMINAL_HDRS}
)
add_dependencies(TerminalCommon EternalTCP-static)
add_dependencies(
TerminalCommon
et-lib
generated-code
)

add_executable (
etserver
Expand All @@ -147,7 +158,7 @@ target_link_libraries (
etserver
LINK_PUBLIC
TerminalCommon
EternalTCP-static
et-lib
${CMAKE_THREAD_LIBS_INIT}
${PROTOBUF_LIBRARIES}
${GFLAGS_LIBRARIES}
Expand All @@ -167,7 +178,7 @@ target_link_libraries (
et
LINK_PUBLIC
TerminalCommon
EternalTCP-static
et-lib
${CMAKE_THREAD_LIBS_INIT}
${PROTOBUF_LIBRARIES}
${GFLAGS_LIBRARIES}
Expand All @@ -176,13 +187,6 @@ target_link_libraries (
${CORE_LIBRARIES}
)

PROTOBUF_GENERATE_CPP(
HTM_SRCS
HTM_HDRS

proto/HTM.proto
)

add_library (
HtmCommon
STATIC
Expand All @@ -209,7 +213,7 @@ target_link_libraries (

HtmCommon
TerminalCommon
EternalTCP-static
et-lib
${CMAKE_THREAD_LIBS_INIT}
${PROTOBUF_LIBRARIES}
${GLOG_LIBRARIES}
Expand All @@ -232,7 +236,7 @@ target_link_libraries (

HtmCommon
TerminalCommon
EternalTCP-static
et-lib
${CMAKE_THREAD_LIBS_INIT}
${PROTOBUF_LIBRARIES}
${GLOG_LIBRARIES}
Expand Down
2 changes: 1 addition & 1 deletion sandbox/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ foreach(SRC_LINE ${SANDBOX_SRC})
${FILE_LINE}
LINK_PUBLIC
TerminalCommon
${PROJECT_NAME}-static
et-lib
${CMAKE_THREAD_LIBS_INIT}
${PROTOBUF_LIBRARIES}
${GFLAGS_LIBRARIES}
Expand Down
14 changes: 7 additions & 7 deletions test/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,24 @@ set(GTEST_PATH ${PROJECT_SOURCE_DIR}/test)

file(GLOB TEST_SRCS Test*.cpp )
add_executable(
${PROJECT_NAME}-test
et-test

${TEST_SRCS}
)

add_dependencies(
${PROJECT_NAME}-test
et-test
TerminalCommon
${PROJECT_NAME}-static
et-lib
gtest
gtest_main
gmock
gmock_main)

target_link_libraries(
${PROJECT_NAME}-test
et-test
TerminalCommon
${PROJECT_NAME}-static
et-lib
${CMAKE_THREAD_LIBS_INIT}
gtest
gtest_main
Expand All @@ -31,6 +31,6 @@ target_link_libraries(
util
)
add_test(
${PROJECT_NAME}-test
${PROJECT_NAME}-test
et-test
et-test
)

0 comments on commit f046894

Please sign in to comment.