aboutsummaryrefslogtreecommitdiff
path: root/src/CMakeLists.txt
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cynapses.org>2010-12-29 13:51:21 +0100
committerAndreas Schneider <asn@cryptomilk.org>2011-05-31 19:45:28 +0200
commitdafc2dd4bd95e991ec69a22a729f9e0c79c6ca2e (patch)
tree23ae0aa3029bd0006b879cb51f453728d25bf74f /src/CMakeLists.txt
parent386504bff3f84b9b106c25f296685ba572fbab20 (diff)
downloadcmocka-dafc2dd4bd95e991ec69a22a729f9e0c79c6ca2e.tar.gz
cmocka-dafc2dd4bd95e991ec69a22a729f9e0c79c6ca2e.tar.xz
cmocka-dafc2dd4bd95e991ec69a22a729f9e0c79c6ca2e.zip
build: Added CMake build of cmockery.
Diffstat (limited to 'src/CMakeLists.txt')
-rw-r--r--src/CMakeLists.txt84
1 files changed, 84 insertions, 0 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
new file mode 100644
index 0000000..7822c64
--- /dev/null
+++ b/src/CMakeLists.txt
@@ -0,0 +1,84 @@
+project(cmockery-library C)
+
+set(CMOCKERY_PUBLIC_INCLUDE_DIRS
+ ${CMAKE_SOURCE_DIR}/src/google
+ CACHE INTERNAL "cmockery public include directories"
+)
+
+set(CMOCKERY_PRIVATE_INCLUDE_DIRS
+ ${CMAKE_BINARY_DIR}
+)
+
+set(CMOCKERY_SHARED_LIBRARY
+ cmockery_shared
+ CACHE INTERNAL "cmockery shared library"
+)
+
+if (WITH_STATIC_LIB)
+ set(CMOCKERY_STATIC_LIBRARY
+ cmockery_static
+ CACHE INTERNAL "cmockery static library"
+ )
+endif (WITH_STATIC_LIB)
+
+set(CMOCKERY_LINK_LIBRARIES
+ ${CMOCKERY_REQUIRED_LIBRARIES}
+ CACHE INTERNAL "cmockery link libraries"
+)
+
+set(cmockery_SRCS
+ cmockery.c
+)
+
+include_directories(
+ ${CMOCKERY_PUBLIC_INCLUDE_DIRS}
+ ${CMOCKERY_PRIVATE_INCLUDE_DIRS}
+)
+
+add_library(${CMOCKERY_SHARED_LIBRARY} SHARED ${cmockery_SRCS})
+
+target_link_libraries(${CMOCKERY_SHARED_LIBRARY} ${CMOCKERY_LINK_LIBRARIES})
+
+set_target_properties(
+ ${CMOCKERY_SHARED_LIBRARY}
+ PROPERTIES
+ VERSION
+ ${LIBRARY_VERSION}
+ SOVERSION
+ ${LIBRARY_SOVERSION}
+ OUTPUT_NAME
+ cmockery
+ DEFINE_SYMBOL
+ CMOCKERY_EXPORTS
+)
+
+install(
+ TARGETS ${CMOCKERY_SHARED_LIBRARY}
+ RUNTIME DESTINATION ${BIN_INSTALL_DIR}
+ LIBRARY DESTINATION ${LIB_INSTALL_DIR}
+ ARCHIVE DESTINATION ${LIB_INSTALL_DIR}
+ COMPONENT libraries
+)
+
+if (WITH_STATIC_LIB)
+ add_library(${CMOCKERY_STATIC_LIBRARY} STATIC ${cmockery_SRCS})
+
+ set_target_properties(
+ ${CMOCKERY_STATIC_LIBRARY}
+ PROPERTIES
+ VERSION
+ ${LIBRARY_VERSION}
+ SOVERSION
+ ${LIBRARY_SOVERSION}
+ OUTPUT_NAME
+ cmockery
+ )
+
+ install(
+ TARGETS ${CMOCKERY_STATIC_LIBRARY}
+ DESTINATION ${LIB_INSTALL_DIR}
+ COMPONENT libraries
+ )
+endif (WITH_STATIC_LIB)
+
+add_subdirectory(google)