Pascal Bach | d5f87e1 | 2014-12-12 15:59:17 +0100 | [diff] [blame] | 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 | |
| 21 | include(CheckSymbolExists) |
| 22 | include(CheckIncludeFile) |
| 23 | include(CheckIncludeFiles) |
| 24 | include(CheckFunctionExists) |
| 25 | |
| 26 | # If AI_ADDRCONFIG is not defined we define it as 0 |
| 27 | check_symbol_exists(AI_ADDRCONFIG "sys/types.h;sys/socket.h;netdb.h" HAVE_AI_ADDRCONFIG) |
| 28 | if(NOT HAVE_AI_ADDRCONFIG) |
| 29 | set(AI_ADDRCONFIG 1) |
| 30 | endif(NOT HAVE_AI_ADDRCONFIG) |
| 31 | |
| 32 | check_include_file(arpa/inet.h HAVE_ARPA_INET_H) |
| 33 | check_include_file(fcntl.h HAVE_FCNTL_H) |
| 34 | check_include_file(inttypes.h HAVE_INTTYPES_H) |
| 35 | check_include_file(netdb.h HAVE_NETDB_H) |
| 36 | check_include_file(netinet/in.h HAVE_NETINET_IN_H) |
| 37 | check_include_file(stdint.h HAVE_STDINT_H) |
| 38 | check_include_file(unistd.h HAVE_UNISTD_H) |
| 39 | check_include_file(pthread.h HAVE_PTHREAD_H) |
| 40 | check_include_file(sys/time.h HAVE_SYS_TIME_H) |
| 41 | check_include_file(sys/param.h HAVE_SYS_PARAM_H) |
| 42 | check_include_file(sys/resource.h HAVE_SYS_RESOURCE_H) |
| 43 | check_include_file(sys/socket.h HAVE_SYS_SOCKET_H) |
| 44 | check_include_file(sys/stat.h HAVE_SYS_STAT_H) |
| 45 | check_include_file(sys/un.h HAVE_SYS_UN_H) |
| 46 | check_include_file(sys/poll.h HAVE_SYS_POLL_H) |
| 47 | check_include_file(sys/select.h HAVE_SYS_SELECT_H) |
| 48 | check_include_file(sched.h HAVE_SCHED_H) |
| 49 | check_include_file(strings.h HAVE_STRINGS_H) |
| 50 | |
| 51 | check_function_exists(gethostbyname HAVE_GETHOSTBYNAME) |
| 52 | check_function_exists(gethostbyname_r HAVE_GETHOSTBYNAME_R) |
| 53 | check_function_exists(strerror_r HAVE_STRERROR_R) |
| 54 | check_function_exists(sched_get_priority_max HAVE_SCHED_GET_PRIORITY_MAX) |
| 55 | check_function_exists(sched_get_priority_min HAVE_SCHED_GET_PRIORITY_MIN) |
| 56 | |
| 57 | include(CheckCSourceCompiles) |
| 58 | include(CheckCXXSourceCompiles) |
| 59 | |
| 60 | check_cxx_source_compiles( |
| 61 | " |
| 62 | #include <string.h> |
| 63 | int main(){char b;char *a = strerror_r(0, &b, 0); return(0);} |
| 64 | " |
| 65 | STRERROR_R_CHAR_P) |
| 66 | |
| 67 | |
| 68 | set(PACKAGE ${PACKAGE_NAME}) |
| 69 | set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}") |
| 70 | set(VERSION ${thrift_VERSION}) |
| 71 | |
| 72 | # generate a config.h file |
Roger Meier | 2e05316 | 2015-02-19 17:27:53 +0100 | [diff] [blame^] | 73 | configure_file("${CMAKE_CURRENT_SOURCE_DIR}/build/cmake/config.h.in" "${CMAKE_CURRENT_BINARY_DIR}/thrift/config.h") |
Pascal Bach | d5f87e1 | 2014-12-12 15:59:17 +0100 | [diff] [blame] | 74 | # HACK: Some files include thrift/config.h and some config.h so we include both. This should be cleaned up. |
| 75 | include_directories("${CMAKE_CURRENT_BINARY_DIR}/thrift" "${CMAKE_CURRENT_BINARY_DIR}") |