Loading...
Searching...
No Matches
Go to the documentation of this file.
24#ifndef PXR_BASE_ARCH_EXPORT_H
25#define PXR_BASE_ARCH_EXPORT_H
157#include "pxr/base/arch/defines.h"
159#if defined(ARCH_OS_WINDOWS)
160# if defined(ARCH_COMPILER_GCC) && ARCH_COMPILER_GCC_MAJOR >= 4 || defined(ARCH_COMPILER_CLANG)
161# define ARCH_EXPORT __attribute__((dllexport))
162# define ARCH_IMPORT __attribute__((dllimport))
164# define ARCH_EXPORT_TYPE
166# define ARCH_EXPORT __declspec(dllexport)
167# define ARCH_IMPORT __declspec(dllimport)
169# define ARCH_EXPORT_TYPE
171#elif defined(ARCH_COMPILER_GCC) && ARCH_COMPILER_GCC_MAJOR >= 4 || defined(ARCH_COMPILER_CLANG)
172# define ARCH_EXPORT __attribute__((visibility("default")))
174# define ARCH_HIDDEN __attribute__((visibility("hidden")))
175# if defined(ARCH_COMPILER_CLANG)
176# define ARCH_EXPORT_TYPE __attribute__((type_visibility("default")))
178# define ARCH_EXPORT_TYPE __attribute__((visibility("default")))
184# define ARCH_EXPORT_TYPE
186#define ARCH_EXPORT_TEMPLATE(type, ...)
187#define ARCH_IMPORT_TEMPLATE(type, ...) extern template type ARCH_IMPORT __VA_ARGS__