1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- /*****************************************************************************
- * HDeclSpec.h
- *****************************************************************************
- *
- * Project: HALCON/libhalcon
- * Description: Windows DLL specifications
- *
- * (c) 1996-2020 by MVTec Software GmbH
- * www.mvtec.com
- *
- *****************************************************************************/
- #ifndef HALCON_DECL_SPEC_H
- #define HALCON_DECL_SPEC_H
- /* HALCON library. If _HLibStatic is defined, HALCON is a static library. */
- #if defined(_HLibStatic)
- # define HLibExport
- #elif defined(_WIN32) && !defined(_NODLL)
- # if defined(_HLibDLL)
- # define HLibExport __declspec(dllexport)
- # else
- # define HLibExport __declspec(dllimport)
- # endif
- #elif defined(__GNUC__) && (__GNUC__ >= 4)
- # define HLibExport __attribute__((visibility("default")))
- #else
- # define HLibExport
- #endif
- /*
- * HALCON language interfaces. If _LIntExport is defined, the language
- * interfaces are static libraries.
- */
- #if defined(_LIntStatic)
- # define LIntExport
- #elif defined(_WIN32) && !defined(_NODLL)
- # if defined(_LIntDLL)
- # define LIntExport __declspec(dllexport)
- # else
- # define LIntExport __declspec(dllimport)
- # endif
- #elif defined(__GNUC__) && (__GNUC__ >= 4)
- # define LIntExport __attribute__((visibility("default")))
- #else
- # define LIntExport
- #endif
- /* Extension packages. These are always shared libraries / DLLs */
- #if defined(_WIN32)
- # define HUserExport __declspec(dllexport)
- # define HUserImport __declspec(dllimport)
- #elif defined(__GNUC__) && (__GNUC__ >= 4)
- # define HUserExport __attribute__((visibility("default")))
- # define HUserImport
- #else
- # define HUserExport
- # define HUserImport
- #endif
- #endif
|