summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-03-28 14:56:11 +0100
committerAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-03-28 15:01:38 +0100
commit215518ae55a54973a1ae18f572ca5bf0ac2a499e (patch)
tree672cf9d94d0d5c3b5276d58edf3b7179100e493e
parent84cc6ff6f43b48383248282743efc514946db641 (diff)
Kernel: Move CA_FAR CA_NEAR into x86 code only.
Kernel: Breaking changes, removed kObjectTypeProcess and KObjectTypeUserDefined with kObjectTypeGeneric. Makefile: Move ' -I../ -I../../../Private/ ' to CCINC variable. Signed-off-by: Amlal El Mahrouss <amlal@el-mahrouss-logic.com>
-rw-r--r--Private/ObjectKit/ObjectKit.hxx3
-rw-r--r--Public/Developer/System.Core/Headers/Defines.h21
-rw-r--r--Public/Developer/System.Core/Makefile13
3 files changed, 23 insertions, 14 deletions
diff --git a/Private/ObjectKit/ObjectKit.hxx b/Private/ObjectKit/ObjectKit.hxx
index 5569ac51..384bf145 100644
--- a/Private/ObjectKit/ObjectKit.hxx
+++ b/Private/ObjectKit/ObjectKit.hxx
@@ -12,12 +12,11 @@
#define kObjectGlobalNamespace ":\\"
enum {
- kObjectTypeProcess,
+ kObjectTypeGeneric,
kObjectTypeFile,
kObjectTypeDevice,
kObjectTypeNetwork,
kObjectTypeInvalid,
- KObjectTypeUserDefined = 0xCF,
kObjectTypeCount = 5,
};
diff --git a/Public/Developer/System.Core/Headers/Defines.h b/Public/Developer/System.Core/Headers/Defines.h
index a5513bd5..cf8cbde6 100644
--- a/Public/Developer/System.Core/Headers/Defines.h
+++ b/Public/Developer/System.Core/Headers/Defines.h
@@ -82,13 +82,19 @@ typedef CharacterTypeUTF8 BooleanType;
#define CA_PTR *
-#define CA_FAR __far
-#define CA_NEAR __near
-
#define CA_UNREFERENCED_PARAMETER(e) ((VoidType)e)
#ifdef __x86_64__
+
+# define CA_FAR __far
+# define CA_NEAR __near
+
# define _M_AMD64 2
+#else
+
+# define CA_FAR
+# define CA_NEAR
+
#endif
#ifdef __aarch64__
@@ -133,13 +139,14 @@ enum RtProcessCall {
#include <System.Core/Headers/Hint.h>
#include <System.Core/Headers/Dialog.h>
+#define kObjectGlobalNamespace ":\\"
+
enum {
- kObjectTypeProcess,
+ kObjectTypeGeneric,
kObjectTypeFile,
kObjectTypeDevice,
kObjectTypeNetwork,
kObjectTypeInvalid,
- KObjectTypeUserDefined = 0xCF,
kObjectTypeCount = 5,
};
@@ -179,7 +186,9 @@ using StrType = CharacterTypeUTF8[N];
#endif // ifdef C++
-CA_EXTERN_C ObjectRef RtGetAppObject(VoidType);
+CA_EXTERN_C ObjectRef RtGetAppObject(VoidType);
+CA_EXTERN_C SizeType RtGetAppArgumentsCount(VoidType);
+CA_EXTERN_C CharacterTypeUTF8* RtGetAppArgumentsPtr(VoidType);
CA_INLINE ObjectRef kApplicationObject;
diff --git a/Public/Developer/System.Core/Makefile b/Public/Developer/System.Core/Makefile
index 0f20cc72..32b473f3 100644
--- a/Public/Developer/System.Core/Makefile
+++ b/Public/Developer/System.Core/Makefile
@@ -1,19 +1,20 @@
##################################################
-# (C) Mahrouss Logic, all rights reserved.
-# This is the System.Graphics Makefile.
+# (C) Mahrouss Logic, all rights reserved.
+# This is the SystemLib Makefile.
##################################################
CC=x86_64-w64-mingw32-g++
+CCINC=-I../ -I../../../Private/
CCFLAGS=-shared -ffreestanding -D__SINGLE_PRECISION__ -nostdlib -fno-rtti -fno-exceptions -std=c++20 -Xlinker --subsystem=17
-OUTPUT=System.Core.lib
+OUTPUT=SystemLib.lib
.PHONY: build-core-amd64
build-core-amd64:
- $(CC) -I../ -I$(HOME) -I../../../Private/ $(CCFLAGS) $(wildcard Sources/*.c) $(wildcard Sources/*.cxx) $(wildcard AMD64/*.s) -o $(OUTPUT)
+ $(CC) $(INC) $(CCFLAGS) $(wildcard Sources/*.c) $(wildcard Sources/*.cxx) $(wildcard AMD64/*.s) -o $(OUTPUT)
.PHONY: all
-all: build-core
- @echo "[System.Core.dll] Build done."
+all: build-core-amd64
+ @echo "[SystemLib.lib] Build done."
.PHONY: clean
clean: