Box engine now builds without dll linkage issues
This commit is contained in:
@@ -5,12 +5,31 @@
|
||||
|
||||
int Toy_hookRunner(Toy_Interpreter* interpreter, Toy_Literal identifier, Toy_Literal alias);
|
||||
|
||||
//file system API - these need to be set by the host
|
||||
TOY_API void Toy_initDriveDictionary();
|
||||
TOY_API void Toy_freeDriveDictionary();
|
||||
TOY_API Toy_LiteralDictionary* Toy_getDriveDictionary();
|
||||
|
||||
#define TOY_OPAQUE_TAG_RUNNER 100
|
||||
|
||||
//platform/compiler-specific instructions - because MSVC + Box Engine are dumber than a bag of rocks
|
||||
#if defined(__linux__) || defined(__MINGW32__) || defined(__GNUC__)
|
||||
|
||||
#define LIB_RUNNER_API extern
|
||||
|
||||
#elif defined(_MSC_VER)
|
||||
|
||||
#ifndef LIB_RUNNER_EXPORT
|
||||
#define LIB_RUNNER_API __declspec(dllimport)
|
||||
#else
|
||||
#define LIB_RUNNER_API __declspec(dllexport)
|
||||
#endif
|
||||
|
||||
#else
|
||||
|
||||
#define LIB_RUNNER_API extern
|
||||
|
||||
#endif
|
||||
|
||||
//file system API - these need to be set by the host
|
||||
LIB_RUNNER_API void Toy_initDriveDictionary();
|
||||
LIB_RUNNER_API void Toy_freeDriveDictionary();
|
||||
LIB_RUNNER_API Toy_LiteralDictionary* Toy_getDriveDictionary();
|
||||
|
||||
//file system API - for use with other libs
|
||||
Toy_Literal Toy_getFilePathLiteral(Toy_Interpreter* interpreter, Toy_Literal* drivePathLiteral);
|
||||
LIB_RUNNER_API Toy_Literal Toy_getFilePathLiteral(Toy_Interpreter* interpreter, Toy_Literal* drivePathLiteral);
|
||||
|
||||
Reference in New Issue
Block a user