diff options
author | midipix <writeonce@midipix.org> | 2016-12-12 00:35:21 -0500 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2016-12-12 16:57:25 -0500 |
commit | b003e95b91d47e35efdf634111769d1c185f7cd2 (patch) | |
tree | 2d613d5dd8fc0ea9445a3108ef7f5c0442f67f6e | |
parent | f2b6c18c945ce5f4185224fbc4762f32e697d28d (diff) | |
download | ntcon-b003e95b91d47e35efdf634111769d1c185f7cd2.tar.bz2 ntcon-b003e95b91d47e35efdf634111769d1c185f7cd2.tar.xz |
api headers: added ntcon_{abi|compiler}.h for smooth foreign toolchain support.
-rw-r--r-- | include/ntcon/ntcon_abi.h | 54 | ||||
-rw-r--r-- | include/ntcon/ntcon_api.h | 4 | ||||
-rw-r--r-- | include/ntcon/ntcon_compiler.h | 30 | ||||
-rw-r--r-- | include/ntcon/ntcon_env.h | 22 | ||||
-rw-r--r-- | project/headers.mk | 3 |
5 files changed, 88 insertions, 25 deletions
diff --git a/include/ntcon/ntcon_abi.h b/include/ntcon/ntcon_abi.h new file mode 100644 index 0000000..63af119 --- /dev/null +++ b/include/ntcon/ntcon_abi.h @@ -0,0 +1,54 @@ +#ifndef _NTCON_ABI_H_ +#define _NTCON_ABI_H_ + +#ifdef _MIDIPIX_FREESTANDING + +#include <psxtypes/psxtypes.h> + +#else + +#include <stdint.h> +#include <stddef.h> + +#ifndef __in +#define __in +#endif + +#ifndef __out +#define __out +#endif + +#ifndef __in_opt +#define __in_opt +#endif + +#ifndef __out_opt +#define __out_opt +#endif + +#ifndef __in_out +#define __in_out +#endif + +#ifndef __in_out_opt +#define __in_out_opt +#endif + +#ifndef __optional +#define __optional +#endif + +#ifndef __reserved +#define __reserved +#endif + +#ifndef __inline__ +#define __inline__ __inline +#endif + +typedef unsigned short wchar16_t; +typedef unsigned int wchar32_t; + +#endif + +#endif diff --git a/include/ntcon/ntcon_api.h b/include/ntcon/ntcon_api.h index dd5d71b..beb5a68 100644 --- a/include/ntcon/ntcon_api.h +++ b/include/ntcon/ntcon_api.h @@ -1,8 +1,8 @@ #ifndef NTCON_API_H #define NTCON_API_H -/* host type (posix-libc/free-standing) */ -#include "ntcon_env.h" +#include "ntcon_abi.h" +#include "ntcon_compiler.h" /* ntcon_export */ #if defined(__attr_export__) diff --git a/include/ntcon/ntcon_compiler.h b/include/ntcon/ntcon_compiler.h new file mode 100644 index 0000000..e8a4de6 --- /dev/null +++ b/include/ntcon/ntcon_compiler.h @@ -0,0 +1,30 @@ +#ifndef _NTCON_COMPILER_H_ +#define _NTCON_COMPILER_H_ + +#include "ntcon_abi.h" + +#ifndef _MIDIPIX_FREESTANDING + +#ifdef _MSC_VER + +/* visual studio: begin */ +#ifndef __attr_export__ +#define __attr_export__ __declspec(dllexport) +#define __attr_import__ __declspec(dllimport) +#endif +/* visual studio: end */ + +#else + +/* all other compilers: begin */ +#ifndef __attr_export__ +#define __attr_export__ __attribute__((__dllexport__)) +#define __attr_import__ __attribute__((__dllimport__)) +#endif +/* all other compilers: end */ + +#endif + +#endif + +#endif diff --git a/include/ntcon/ntcon_env.h b/include/ntcon/ntcon_env.h deleted file mode 100644 index c2e3564..0000000 --- a/include/ntcon/ntcon_env.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef NTCON_ENV_H -#define NTCON_ENV_H - -#if defined (_MIDIPIX_FREESTANDING) - -#include <psxtypes/psxtypes.h> - -#else - -#include <stdint.h> - -#ifndef __cdecl -#define __cdecl -#endif - -#ifndef __stdcall -#define __stdcall -#endif - -#endif - -#endif diff --git a/project/headers.mk b/project/headers.mk index eeb1c5c..cd0f8b9 100644 --- a/project/headers.mk +++ b/project/headers.mk @@ -1,7 +1,8 @@ API_HEADERS = \ $(PROJECT_DIR)/include/$(PACKAGE)/ntcon.h \ + $(PROJECT_DIR)/include/$(PACKAGE)/ntcon_abi.h \ $(PROJECT_DIR)/include/$(PACKAGE)/ntcon_api.h \ - $(PROJECT_DIR)/include/$(PACKAGE)/ntcon_env.h \ + $(PROJECT_DIR)/include/$(PACKAGE)/ntcon_compiler.h \ $(PROJECT_DIR)/include/$(PACKAGE)/ntcon_vkcode.h \ INTERNAL_HEADERS = |