2 * ================================================================
3 * SourcePawn, Copyright (C) 2004-2007 AlliedModders LLC.
5 * ================================================================
7 * This file is part of the SourceMod/SourcePawn SDK. This file may only be
8 * used or modified under the Terms and Conditions of its License Agreement,
9 * which is found in public/licenses/LICENSE.txt. As of this notice, derivative
10 * works must be licensed under the GNU General Public License (version 2 or
11 * greater). A copy of the GPL is included under public/licenses/GPL.txt.
13 * To view the latest information, see: http://www.sourcemod.net/license.php
18 #ifndef _INCLUDE_SOURCEPAWN_VM_BASE_H_
19 #define _INCLUDE_SOURCEPAWN_VM_BASE_H_
23 * @brief Contains JIT export/linkage macros.
26 #include <sp_vm_api.h>
28 /* :TODO: rename this to sp_vm_linkage.h */
31 #define EXPORT_LINK extern "C" __declspec(dllexport)
32 #elif defined __GNUC__
33 #define EXPORT_LINK extern "C" __attribute__((visibility("default")))
37 typedef SourcePawn::IVirtualMachine *(*SP_GETVM_FUNC)(SourcePawn::ISourcePawnEngine *);
39 #endif //_INCLUDE_SOURCEPAWN_VM_BASE_H_