summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAmlal <amlalelmahrouss@icloud.com>2026-04-02 12:22:49 +0200
committerAmlal <amlalelmahrouss@icloud.com>2026-04-02 12:22:49 +0200
commit81cfadb91ecb0570d62610317020bfde41f995e8 (patch)
tree9658515c8972f0665cee7e64e029feca230b0915
parentb95628ad1a1bcccfd283db23e2db915e87665068 (diff)
[FEAT] Add targets for Windows NT, patch PEF.h header with current NeSystem
version. [CHORE] CRK patches and exports ABI breaking changes. Signed-off-by: Amlal <amlalelmahrouss@icloud.com>
-rw-r--r--include/CompilerKit/PEF.h2
-rw-r--r--include/CoreRuntime/cplusplus/utility.hpp8
-rw-r--r--include/CoreRuntime/nec/exports.hpp6
-rw-r--r--src/CompilerKit/ck-win64.json27
-rw-r--r--src/DebuggerKit/dk-win64.json19
5 files changed, 55 insertions, 7 deletions
diff --git a/include/CompilerKit/PEF.h b/include/CompilerKit/PEF.h
index 875f925..8d062a4 100644
--- a/include/CompilerKit/PEF.h
+++ b/include/CompilerKit/PEF.h
@@ -39,7 +39,7 @@
/* @note counting the \0 at the end */
#define kPefMagicLen (5)
-#define kPefVersion (0x0510)
+#define kPefVersion (0x0500)
#define kPefNameLen (255)
#define kPefBaseOrigin (0x40000000)
diff --git a/include/CoreRuntime/cplusplus/utility.hpp b/include/CoreRuntime/cplusplus/utility.hpp
index a427c44..81da627 100644
--- a/include/CoreRuntime/cplusplus/utility.hpp
+++ b/include/CoreRuntime/cplusplus/utility.hpp
@@ -3,10 +3,11 @@
// Licensed under the Apache License, Version 2.0 (see LICENSE file)
// Official repository: https://github.com/ne-foss-org/nectar
-#ifndef LIBCXX_UTILITY_H
-#define LIBCXX_UTILITY_H
+#ifndef CRK_UTILITY_HPP
+#define CRK_UTILITY_HPP
namespace std {
+
/// @brief Forward object.
/// @tparam Args the object type.
/// @param arg the object.
@@ -24,6 +25,7 @@ template <typename Args>
inline auto move(Args&& arg) -> Args&& {
return static_cast<Args&&>(arg);
}
+
} // namespace std
-#endif // LIBCXX_UTILITY_H
+#endif // CRK_UTILITY_HPP
diff --git a/include/CoreRuntime/nec/exports.hpp b/include/CoreRuntime/nec/exports.hpp
index 3fea960..7e02641 100644
--- a/include/CoreRuntime/nec/exports.hpp
+++ b/include/CoreRuntime/nec/exports.hpp
@@ -6,10 +6,10 @@
#pragma once
-#include <CoreRuntime/C++/abi/abi.hpp>
-#include <CoreRuntime/C++/abi/new.hpp>
+#include <CoreRuntime/cplusplus/abi/abi.hpp>
+#include <CoreRuntime/cplusplus/abi/new.hpp>
/// @brief The Nectar FFI.
-namespace nectar_lang {
+namespace nec::abi {
}
diff --git a/src/CompilerKit/ck-win64.json b/src/CompilerKit/ck-win64.json
new file mode 100644
index 0000000..dca9350
--- /dev/null
+++ b/src/CompilerKit/ck-win64.json
@@ -0,0 +1,27 @@
+{
+ "compiler_path": "g++",
+ "compiler_std": "c++20",
+ "headers_path": [
+ "../../include/CompilerKit",
+ "../../include/",
+ "../../include/CompilerKit/src/",
+ "../../include/CompilerKit/src/impl"
+ ],
+ "sources_path": [
+ "src/*.cpp",
+ "src/*/*.cpp"
+ ],
+ "output_name": "Ne-app.CompilerKit.dll",
+ "compiler_flags": [
+ "-fPIC",
+ "-shared"
+ ],
+ "cpp_macros": [
+ "__NECTAR__=202602",
+ "CK_USE_STRUCTS=1",
+ "CK_WINDOWS=1",
+ "kDistReleaseBranch=$(git rev-parse --abbrev-ref HEAD)-$(uuidgen)"
+ ],
+ "description": "CompilerKit for Windows NT. The Compiler Kit is the framework behind Nectar."
+}
+
diff --git a/src/DebuggerKit/dk-win64.json b/src/DebuggerKit/dk-win64.json
new file mode 100644
index 0000000..d74fd29
--- /dev/null
+++ b/src/DebuggerKit/dk-win64.json
@@ -0,0 +1,19 @@
+{
+ "compiler_path": "clang++",
+ "compiler_std": "c++20",
+ "headers_path": [
+ "../../include/DebuggerKit",
+ "../../include"
+ ],
+ "sources_path": [ "src/*.cpp" ],
+ "output_name": "Ne-app.DebuggerKit.dll",
+ "compiler_flags": [ "-fPIC", "-shared" ],
+ "cpp_macros": [
+ "__NECTAR__=202505",
+ "CK_USE_STRUCTS=1",
+ "DEBUGGERKIT_WINDOWS=1",
+ "DK_NEKERNEL_DEBUGGER=1",
+ "kDistReleaseBranch=$(git rev-parse --abbrev-ref HEAD)-$(uuidgen)"
+ ]
+}
+