X-Git-Url: http://developer.intra2net.com/git/?p=libt2n;a=blobdiff_plain;f=examples%2FCMakeLists.txt;fp=examples%2FCMakeLists.txt;h=a5a33966e4f8d6d6295d04affe43c19499e4a3ca;hp=0000000000000000000000000000000000000000;hb=471f240f070a5e34892f90be2b0dfc55c09c6fc7;hpb=9fe43ede225bae3072564605f9fd74e663ed19aa diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt new file mode 100644 index 0000000..a5a3396 --- /dev/null +++ b/examples/CMakeLists.txt @@ -0,0 +1,44 @@ +# Sources +set(libminimalistic_client_SOURCES + minimalistic-stub.hxx + minimalistic-stub-once.hxx + minimalistic-client-stub.hxx + minimalistic-client-stub.cpp +) +set(minimalistic_client_SOURCES + minimalistic-client.cpp +) +set(minimalistic_server_SOURCES + minimalistic-server.cpp + minimalistic-server-stub.cpp +) +include_directories( + BEFORE + ${CMAKE_SOURCE_DIR}/src + ${CMAKE_CURRENT_SOURCE_DIR} +) + +# Libraries +add_library(libminimalistic_client STATIC ${libminimalistic_client_SOURCES}) +set_target_properties(libminimalistic_client PROPERTIES OUTPUT_NAME minimalistic_client) + +# Executables +add_executable(minimalistic_client ${minimalistic_client_SOURCES}) +add_executable(minimalistic_server ${minimalistic_server_SOURCES}) + +# Dependencies +target_link_libraries(minimalistic_client libt2n ${Boost_SERIALIZATION_LIBRARIES} libminimalistic_client) +target_link_libraries(minimalistic_server libt2n ${Boost_SERIALIZATION_LIBRARIES}) + +# Generation of minimalistic-server.xml +get_property(gcc_include_dirs + DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + PROPERTY INCLUDE_DIRECTORIES +) +foreach(gcc_include_dir ${gcc_include_dirs}) + set(gccxml_include_dirs "${gccxml_include_dirs} -I${gcc_include_dir}") +endforeach() +add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/minimalistic-server.xml + COMMAND ${CMAKE_SOURCE_DIR}/libt2n-gccxml.sh ${gccxml_include_dirs} ${CMAKE_CURRENT_SOURCE_DIR}/minimalistic-server.cpp -fxml=${CMAKE_CURRENT_SOURCE_DIR}/minimalistic-server.xml + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/minimalistic-server.cpp +)