xref: /netbsd-src/external/gpl3/gcc/dist/libobjc/objc/objc-decls.h (revision b1e838363e3c6fc78a55519254d99869742dd33c)
14fee23f9Smrg /* GNU Objective-C Extern helpers for Win32.
2*b1e83836Smrg    Copyright (C) 2004-2022 Free Software Foundation, Inc.
34fee23f9Smrg 
44fee23f9Smrg This file is part of GCC.
54fee23f9Smrg 
64fee23f9Smrg GCC is free software; you can redistribute it and/or modify it
74fee23f9Smrg under the terms of the GNU General Public License as published by the
84fee23f9Smrg Free Software Foundation; either version 3, or (at your option) any
94fee23f9Smrg later version.
104fee23f9Smrg 
114fee23f9Smrg GCC is distributed in the hope that it will be useful, but WITHOUT
124fee23f9Smrg ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
134fee23f9Smrg FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
144fee23f9Smrg License for more details.
154fee23f9Smrg 
164fee23f9Smrg Under Section 7 of GPL version 3, you are granted additional
174fee23f9Smrg permissions described in the GCC Runtime Library Exception, version
184fee23f9Smrg 3.1, as published by the Free Software Foundation.
194fee23f9Smrg 
204fee23f9Smrg You should have received a copy of the GNU General Public License and
214fee23f9Smrg a copy of the GCC Runtime Library Exception along with this program;
224fee23f9Smrg see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
234fee23f9Smrg <http://www.gnu.org/licenses/>.  */
244fee23f9Smrg 
254fee23f9Smrg 
264fee23f9Smrg #ifndef __objc_decls_INCLUDE_GNU
274fee23f9Smrg #define __objc_decls_INCLUDE_GNU
284fee23f9Smrg 
294fee23f9Smrg #if defined (_WIN32) || defined (__WIN32__) || defined (WIN32)
304fee23f9Smrg 
314fee23f9Smrg #  ifdef DLL_EXPORT /* defined by libtool (if required) */
32ad640425Smrg #    define objc_EXPORT extern
3348fb7bfaSmrg #    define objc_DECLARE
344fee23f9Smrg #  else
354fee23f9Smrg #    define objc_EXPORT  extern __declspec(dllimport)
364fee23f9Smrg #    define objc_DECLARE extern __declspec(dllimport)
374fee23f9Smrg #  endif
384fee23f9Smrg 
394fee23f9Smrg #else
404fee23f9Smrg 
414fee23f9Smrg #  define objc_EXPORT  extern
424fee23f9Smrg #  define objc_DECLARE
434fee23f9Smrg 
444fee23f9Smrg #endif
454fee23f9Smrg 
464fee23f9Smrg #endif /* __objc_decls_INCLUDE_GNU */
47