activemq-cpp-3.3.0
|
00001 /* 00002 * Licensed to the Apache Software Foundation (ASF) under one or more 00003 * contributor license agreements. See the NOTICE file distributed with 00004 * this work for additional information regarding copyright ownership. 00005 * The ASF licenses this file to You under the Apache License, Version 2.0 00006 * (the "License"); you may not use this file except in compliance with 00007 * the License. You may obtain a copy of the License at 00008 * 00009 * http://www.apache.org/licenses/LICENSE-2.0 00010 * 00011 * Unless required by applicable law or agreed to in writing, software 00012 * distributed under the License is distributed on an "AS IS" BASIS, 00013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00014 * See the License for the specific language governing permissions and 00015 * limitations under the License. 00016 */ 00017 #ifndef ACTIVEMQ_UTIL_CONFIG_H_ 00018 #define ACTIVEMQ_UTIL_CONFIG_H_ 00019 00020 #ifdef AMQCPP_DLL 00021 #ifdef AMQCPP_EXPORTS 00022 #define AMQCPP_API __declspec(dllexport) 00023 #else 00024 #define AMQCPP_API __declspec(dllimport) 00025 #endif 00026 #else 00027 #if defined(__GNUC__) && __GNUC__ >= 4 00028 #define AMQCPP_API __attribute__ ((visibility("default"))) 00029 #else 00030 #define AMQCPP_API 00031 #endif 00032 #endif 00033 00034 // 00035 // The purpose of this header is to try to detect the supported headers 00036 // of the platform when the ./configure script is not being used to generate 00037 // the config.h file. 00038 // 00039 #if defined(HAVE_CONFIG_H) 00040 00041 // config.h is generated by the ./configure script and it only 00042 // used by unix like systems (including cygwin) 00043 #include <config.h> 00044 00045 #else /* !defined(HAVE_CONFIG_H) */ 00046 00047 // Not using ./configure script and make system.. chances are your using the native build tools 00048 // of Windows or OS X to do this build 00049 00050 #if defined(_WIN32) 00051 #ifndef HAVE_OBJBASE_H 00052 #define HAVE_OBJBASE_H 00053 #endif 00054 #ifndef HAVE_RPCDCE_H 00055 #define HAVE_RPCDCE_H 00056 #endif 00057 #ifndef HAVE_WINSOCK2_H 00058 #define HAVE_WINSOCK2_H 00059 #endif 00060 #ifndef HAVE_STRUCT_ADDRINFO 00061 #define HAVE_STRUCT_ADDRINFO 00062 #endif 00063 #ifndef HAVE_SYS_TIMEB_H 00064 #define HAVE_SYS_TIMEB_H 00065 #endif 00066 #ifndef HAVE_FTIME 00067 #define HAVE_FTIME 00068 #endif 00069 #ifndef HAVE_WINDOWS_H 00070 #define HAVE_WINDOWS_H 00071 #endif 00072 #ifndef _SECURE_SCL 00073 #define _SECURE_SCL 1 00074 #endif 00075 #ifndef _SCL_SECURE_NO_WARNINGS 00076 #define _SCL_SECURE_NO_WARNINGS 1 00077 #endif 00078 #else 00079 #ifndef HAVE_UUID_UUID_H 00080 #define HAVE_UUID_UUID_H 00081 #endif 00082 #ifndef HAVE_UUID_T 00083 #define HAVE_UUID_T 00084 #endif 00085 #ifndef HAVE_PTHREAD_H 00086 #define HAVE_PTHREAD_H 00087 #endif 00088 #endif 00089 00090 #endif /* !defined(HAVE_CONFIG_H) */ 00091 00092 // Macro to mark attributes as unused 00093 #ifdef __GNUC__ 00094 #define AMQCPP_UNUSED __attribute__ ((__unused__)) 00095 #else 00096 #define AMQCPP_UNUSED 00097 #endif 00098 00099 00100 #endif /*ACTIVEMQ_UTIL_CONFIG_H_*/