]>
Commit | Line | Data |
---|---|---|
f67539c2 TL |
1 | # |
2 | # Licensed to the Apache Software Foundation (ASF) under one | |
3 | # or more contributor license agreements. See the NOTICE file | |
4 | # distributed with this work for additional information | |
5 | # regarding copyright ownership. The ASF licenses this file | |
6 | # to you under the Apache License, Version 2.0 (the | |
7 | # "License"); you may not use this file except in compliance | |
8 | # with the License. You may obtain a copy of the License at | |
9 | # | |
10 | # http://www.apache.org/licenses/LICENSE-2.0 | |
11 | # | |
12 | # Unless required by applicable law or agreed to in writing, | |
13 | # software distributed under the License is distributed on an | |
14 | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | |
15 | # KIND, either express or implied. See the License for the | |
16 | # specific language governing permissions and limitations | |
17 | # under the License. | |
18 | # | |
19 | ||
20 | # Contains the thrift specific LINK_AGAINST_THRIFT_LIBRARY | |
21 | include(ThriftMacros) | |
22 | ||
23 | find_package(GLIB REQUIRED COMPONENTS gobject) | |
24 | include_directories(SYSTEM "${GLIB_INCLUDE_DIR}") | |
25 | include_directories(SYSTEM "${GLIBCONFIG_INCLUDE_DIR}") | |
26 | ||
27 | #Make sure gen-c_glib files can be included | |
28 | include_directories("${CMAKE_CURRENT_BINARY_DIR}") | |
29 | include_directories("${CMAKE_CURRENT_BINARY_DIR}/gen-c_glib") | |
30 | include_directories("${PROJECT_SOURCE_DIR}/lib/c_glib/src") | |
31 | ||
32 | set(crosstestgencglib_SOURCES | |
33 | gen-c_glib/t_test_second_service.c | |
34 | gen-c_glib/t_test_second_service.h | |
35 | gen-c_glib/t_test_thrift_test.c | |
36 | gen-c_glib/t_test_thrift_test.h | |
37 | gen-c_glib/t_test_thrift_test_types.c | |
38 | gen-c_glib/t_test_thrift_test_types.h | |
39 | ) | |
40 | add_library(crosstestgencglib STATIC ${crosstestgencglib_SOURCES}) | |
41 | LINK_AGAINST_THRIFT_LIBRARY(crosstestgencglib thrift_c_glib) | |
42 | ||
43 | add_executable(test_server src/test_server.c src/thrift_test_handler.c src/thrift_second_service_handler.c) | |
44 | target_link_libraries(test_server crosstestgencglib) | |
45 | ||
46 | add_executable(test_client src/test_client.c) | |
47 | target_link_libraries(test_client crosstestgencglib) | |
48 | ||
49 | # | |
50 | # Common thrift code generation rules | |
51 | # | |
52 | ||
53 | add_custom_command(OUTPUT gen-c_glib/t_test_second_service.c gen-c_glib/t_test_second_service.h gen-c_glib/t_test_thrift_test.c gen-c_glib/t_test_thrift_test.h gen-c_glib/t_test_thrift_test_types.c gen-c_glib/t_test_thrift_test_types.h | |
54 | COMMAND ${THRIFT_COMPILER} --gen c_glib -r ${PROJECT_SOURCE_DIR}/test/ThriftTest.thrift | |
55 | ) |