X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libmemcached%2Fvisibility.h;h=d4e4eea05f15051029e4ca77051fd84c1070b18e;hb=5dc23d0b459080d0a0081f9d94450fcfa2a1d5e3;hp=6bb6382bd2000c94311b3b4f8230f1a261f0d9fa;hpb=d6524995788ff698a0275284f3df4adfec8b6c67;p=m6w6%2Flibmemcached diff --git a/libmemcached/visibility.h b/libmemcached/visibility.h index 6bb6382b..d4e4eea0 100644 --- a/libmemcached/visibility.h +++ b/libmemcached/visibility.h @@ -1,11 +1,14 @@ -/* - * Summary: interface for memcached server - * Description: visibitliy macros for libmemcached +/* LibMemcached + * Copyright (C) 2006-2009 Brian Aker + * All rights reserved. * * Use and distribution licensed under the BSD license. See - * the COPYING file in this directory for full text. - * - * Author: Monty Taylor + * the COPYING file in the parent directory for full text. + * + * Summary: Interface for memcached server. + * + * Author: Trond Norbye + * */ /** @@ -13,8 +16,7 @@ * @brief Visibility control macros */ -#ifndef __LIBMEMCACHED_VISIBILITY_H -#define __LIBMEMCACHED_VISIBILITY_H +#pragma once /** * @@ -24,25 +26,42 @@ * LIBMEMCACHED_LOCAL is used for non-api symbols. */ -#if defined(BUILDING_LIBMEMCACHED) +#if defined(BUILDING_LIBMEMCACHEDINTERNAL) # if defined(HAVE_VISIBILITY) && HAVE_VISIBILITY # define LIBMEMCACHED_API __attribute__ ((visibility("default"))) -# define LIBMEMCACHED_LOCAL __attribute__ ((visibility("hidden"))) +# define LIBMEMCACHED_LOCAL __attribute__ ((visibility("default"))) # elif defined (__SUNPRO_C) && (__SUNPRO_C >= 0x550) # define LIBMEMCACHED_API __global -# define LIBMEMCACHED_LOCAL __hidden +# define LIBMEMCACHED_LOCAL __global # elif defined(_MSC_VER) # define LIBMEMCACHED_API extern __declspec(dllexport) -# define LIBMEMCACHED_LOCAL -# endif /* defined(HAVE_VISIBILITY) */ -#else /* defined(BUILDING_LIBMEMCACHED) */ -# if defined(_MSC_VER) -# define LIBMEMCACHED_API extern __declspec(dllimport) -# define LIBMEMCACHED_LOCAL +# define LIBMEMCACHED_LOCAL extern __declspec(dllexport) # else # define LIBMEMCACHED_API # define LIBMEMCACHED_LOCAL -# endif /* defined(_MSC_VER) */ -#endif /* defined(BUILDING_LIBMEMCACHED) */ - -#endif /* __LIBMEMCACHED_VISIBILITY_H */ +# endif +#else +# if defined(BUILDING_LIBMEMCACHED) +# if defined(HAVE_VISIBILITY) && HAVE_VISIBILITY +# define LIBMEMCACHED_API __attribute__ ((visibility("default"))) +# define LIBMEMCACHED_LOCAL __attribute__ ((visibility("hidden"))) +# elif defined (__SUNPRO_C) && (__SUNPRO_C >= 0x550) +# define LIBMEMCACHED_API __global +# define LIBMEMCACHED_LOCAL __hidden +# elif defined(_MSC_VER) +# define LIBMEMCACHED_API extern __declspec(dllexport) +# define LIBMEMCACHED_LOCAL +# else +# define LIBMEMCACHED_API +# define LIBMEMCACHED_LOCAL +# endif /* defined(HAVE_VISIBILITY) */ +# else /* defined(BUILDING_LIBMEMCACHED) */ +# if defined(_MSC_VER) +# define LIBMEMCACHED_API extern __declspec(dllimport) +# define LIBMEMCACHED_LOCAL +# else +# define LIBMEMCACHED_API +# define LIBMEMCACHED_LOCAL +# endif /* defined(_MSC_VER) */ +# endif /* defined(BUILDING_LIBMEMCACHED) */ +#endif /* defined(BUILDING_LIBMEMCACHEDINTERNAL) */