blob: c64bde747a74f50da128e1fd51298acdbe3f1784 [file] [log] [blame]
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
AUTO_SOURCES(secure_SOURCES "*.cpp" "RECURSE" "${CMAKE_CURRENT_SOURCE_DIR}")
INCLUDE_DIRECTORIES(${gmock_INCLUDE_DIR} ${gtest_INCLUDE_DIR} ${libyarn_ROOT_SOURCES_DIR})
IF(NEED_BOOST)
INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
ENDIF(NEED_BOOST)
INCLUDE_DIRECTORIES(${libyarn_ROOT_SOURCES_DIR})
INCLUDE_DIRECTORIES(${libyarn_COMMON_SOURCES_DIR})
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR})
INCLUDE_DIRECTORIES(${PROTOBUF_INCLUDE_DIRS})
INCLUDE_DIRECTORIES(${libyarn_PLATFORM_HEADER_DIR})
INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR})
INCLUDE_DIRECTORIES(${KERBEROS_INCLUDE_DIRS})
INCLUDE_DIRECTORIES(${GSASL_INCLUDE_DIR})
INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/mock)
PROTOBUF_GENERATE_CPP(libyarn_PROTO_SOURCES libyarn_PROTO_HEADERS ${libyarn_PROTO_FILES})
IF(ENABLE_DEBUG STREQUAL ON)
SET(libyarn_SOURCES ${libyarn_SOURCES} ${libyarn_MOCK_SOURCES})
ENDIF(ENABLE_DEBUG STREQUAL ON)
IF(NOT HDFS_SUPERUSER)
SET(HDFS_SUPERUSER $ENV{USER})
ENDIF(NOT HDFS_SUPERUSER)
ADD_DEFINITIONS(-DHDFS_SUPERUSER="${HDFS_SUPERUSER}")
ADD_DEFINITIONS(-DUSER="$ENV{USER}")
ADD_EXECUTABLE(secure EXCLUDE_FROM_ALL
${gtest_SOURCES}
${gmock_SOURCES}
${libyarn_SOURCES}
${libyarn_PROTO_SOURCES}
${libyarn_PROTO_HEADERS}
${secure_SOURCES}
)
TARGET_LINK_LIBRARIES(secure pthread)
IF(NEED_BOOST)
INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -L${Boost_LIBRARY_DIRS}")
TARGET_LINK_LIBRARIES(secure boost_thread)
TARGET_LINK_LIBRARIES(secure boost_chrono)
TARGET_LINK_LIBRARIES(secure boost_system)
ENDIF(NEED_BOOST)
IF(NEED_GCCEH)
TARGET_LINK_LIBRARIES(secure gcc_eh)
ENDIF(NEED_GCCEH)
IF(OS_LINUX)
TARGET_LINK_LIBRARIES(secure uuid)
ENDIF(OS_LINUX)
TARGET_LINK_LIBRARIES(secure ${PROTOBUF_LIBRARIES})
TARGET_LINK_LIBRARIES(secure ${LIBXML2_LIBRARIES})
TARGET_LINK_LIBRARIES(secure ${KERBEROS_LIBRARIES})
TARGET_LINK_LIBRARIES(secure ${GSASL_LIBRARIES})
TARGET_LINK_LIBRARIES(secure ${GoogleTest_LIBRARIES})
SET(secure_SOURCES ${secure_SOURCES} PARENT_SCOPE)