summaryrefslogtreecommitdiff
path: root/cpp/examples/CMakeLists.txt
diff options
context:
space:
mode:
authorStephen D. Huston <shuston@apache.org>2009-05-08 20:37:07 +0000
committerStephen D. Huston <shuston@apache.org>2009-05-08 20:37:07 +0000
commit1a826fd803a9ce99f6809cd868fcba72c6a50187 (patch)
tree499484d18adfd733659034472afb1cdd6789fa02 /cpp/examples/CMakeLists.txt
parent5283aeedc1036a2d729f3d8075764c441d2e761d (diff)
downloadqpid-python-1a826fd803a9ce99f6809cd868fcba72c6a50187.tar.gz
Add examples building to cmake build
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@773091 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/examples/CMakeLists.txt')
-rw-r--r--cpp/examples/CMakeLists.txt51
1 files changed, 51 insertions, 0 deletions
diff --git a/cpp/examples/CMakeLists.txt b/cpp/examples/CMakeLists.txt
new file mode 100644
index 0000000000..c8c9910466
--- /dev/null
+++ b/cpp/examples/CMakeLists.txt
@@ -0,0 +1,51 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+project(qpidc_examples)
+cmake_minimum_required(VERSION 2.4.0 FATAL_ERROR)
+if(COMMAND cmake_policy)
+ cmake_policy(SET CMP0003 NEW)
+endif(COMMAND cmake_policy)
+
+# This will probably need some fiddling to get right for installed kits.
+get_directory_property(QPIDC_TOP PARENT_DIRECTORY)
+include_directories(${QPIDC_TOP}/src ${QPIDC_TOP}/src/gen)
+
+# There are numerous duplicate names within the examples. Since all target
+# names must be unique, define a macro to prepend a prefix and manage the
+# actual names.
+# There can be an optional arguments at the end: libs to include
+macro(add_example subdir example)
+ add_executable(${subdir}_${example} ${example}.cpp)
+ set_target_properties(${subdir}_${example} PROPERTIES OUTPUT_NAME ${example})
+ if (${ARGC} GREATER 2)
+ target_link_libraries(${subdir}_${example} ${ARGN} qpidclient)
+ else (${ARGC} GREATER 2)
+ target_link_libraries(${subdir}_${example} qpidclient)
+ endif (${ARGC} GREATER 2)
+endmacro(add_example)
+
+add_subdirectory(direct)
+add_subdirectory(failover)
+add_subdirectory(fanout)
+add_subdirectory(pub-sub)
+#add_subdirectory(qmf-agent)
+add_subdirectory(qmf-console)
+add_subdirectory(request-response)
+add_subdirectory(tradedemo)
+add_subdirectory(xml-exchange)