From 69d628dd02df81e64dfd9a2e730a44c5c5a0e5a8 Mon Sep 17 00:00:00 2001 From: Amlal Date: Fri, 13 Sep 2024 10:52:28 +0200 Subject: DDK: Export DDK symbols by default. ADD: Add ZWM (ZKA Window Manager). META: The rest are refactors. Signed-off-by: Amlal --- dev/DDK/KernelStd.h | 21 +++++++++++++++++---- dev/DDK/build.json | 23 ----------------------- dev/DDK/ddk.json | 24 ++++++++++++++++++++++++ 3 files changed, 41 insertions(+), 27 deletions(-) delete mode 100644 dev/DDK/build.json create mode 100644 dev/DDK/ddk.json (limited to 'dev/DDK') diff --git a/dev/DDK/KernelStd.h b/dev/DDK/KernelStd.h index da15f269..4270229b 100644 --- a/dev/DDK/KernelStd.h +++ b/dev/DDK/KernelStd.h @@ -13,15 +13,28 @@ #include #if defined(__cplusplus) -#define DK_EXTERN extern "C" +#define DK_EXTERN extern "C" __declspec(dllexport) #define nil nullptr +#undef NULL +#define NULL 0 #define DK_FINAL final #else -#define DK_EXTERN extern +#define DK_EXTERN extern __declspec(dllexport) #define nil ((void*)0) +#undef NULL +#define NULL ((void*)0) #define DK_FINAL #endif // defined(__cplusplus) +#ifndef __DDK__ +#undef DK_EXTERN +#if defined(__cplusplus) +#define DK_EXTERN extern "C" __declspec(dllimport) +#else +#define DK_EXTERN __declspec(dllimport) +#endif +#endif + #define ATTRIBUTE(X) __attribute__((X)) #ifndef __NEWOSKRNL__ @@ -33,9 +46,9 @@ struct DDK_OBJECT_MANIFEST; struct DDK_OBJECT_MANIFEST DK_FINAL { - char* p_name; + char* p_name; int32_t p_kind; - void* p_object; + void* p_object; }; /// \brief DDK status structure (__at_enable, __at_disable...) diff --git a/dev/DDK/build.json b/dev/DDK/build.json deleted file mode 100644 index a9a3b895..00000000 --- a/dev/DDK/build.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "compiler_path": "x86_64-w64-mingw32-gcc", - "compiler_std": "c++20", - "headers_path": ["../", "./"], - "sources_path": ["*.c", "*.cxx", "*.S"], - "output_name": "ddk.dll", - "compiler_flags": [ - "-ffreestanding", - "-shared", - "-std=c17", - "-std=c++20", - "-fno-rtti", - "-fno-exceptions", - " -Wl,--subsystem=17" - ], - "cpp_macros": [ - "__NEWOSKRNL__", - "__DDK_AMD64__", - "cDDKVersionHighest=0x0100", - "cDDKVersionLowest=0x0100", - "cDDKVersion=0x0100" - ] -} diff --git a/dev/DDK/ddk.json b/dev/DDK/ddk.json new file mode 100644 index 00000000..b930f99c --- /dev/null +++ b/dev/DDK/ddk.json @@ -0,0 +1,24 @@ +{ + "compiler_path": "x86_64-w64-mingw32-gcc", + "compiler_std": "c++20", + "headers_path": ["../", "./"], + "sources_path": ["*.c", "*.cxx", "*.S"], + "output_name": "ddk.dll", + "compiler_flags": [ + "-ffreestanding", + "-shared", + "-std=c17", + "-std=c++20", + "-fno-rtti", + "-fno-exceptions", + " -Wl,--subsystem=17" + ], + "cpp_macros": [ + "__NEWOSKRNL__", + "__DDK_AMD64__", + "__DDK__", + "cDDKVersionHighest=0x0100", + "cDDKVersionLowest=0x0100", + "cDDKVersion=0x0100" + ] +} -- cgit v1.2.3