diff options
| author | Amlal EL Mahrouss <amlalelmahrouss@icloud.com> | 2024-08-12 15:07:17 +0200 |
|---|---|---|
| committer | Amlal EL Mahrouss <amlalelmahrouss@icloud.com> | 2024-08-12 15:07:17 +0200 |
| commit | 226fc23bc6f653deae3a1958135b74e2b6e2a332 (patch) | |
| tree | 2e3eb522c6af48db44cf173105295790faebbf4b | |
| parent | 016b117159eafa0d90b43e5757617ac4147b45db (diff) | |
[refactor] refactor source code and working on dll wrapper (cl, link,
masm...).
Signed-off-by: Amlal EL Mahrouss <amlalelmahrouss@icloud.com>
| -rw-r--r-- | .vscode/c_cpp_properties.json | 4 | ||||
| -rw-r--r-- | NDKKit/Output/.gitkeep | 0 | ||||
| -rw-r--r-- | ReadMe.md | 4 | ||||
| -rw-r--r-- | Tools/Linker.cxx | 6 | ||||
| -rw-r--r-- | Tools/link.json | 10 | ||||
| -rw-r--r-- | build.json | 6 | ||||
| -rw-r--r-- | doc/ASM specs.txt (renamed from Notes/ASM specs.txt) | 0 | ||||
| -rw-r--r-- | doc/HAVP DSP.txt (renamed from Notes/HAVP DSP.txt) | 0 | ||||
| -rw-r--r-- | doc/Inside 64x0.pdf (renamed from Notes/Inside 64x0.pdf) | bin | 64675 -> 64675 bytes | |||
| -rw-r--r-- | doc/Notice.txt (renamed from Notes/Notice.txt) | 0 | ||||
| -rw-r--r-- | doc/RISC CPU.txt (renamed from Notes/RISC CPU.txt) | 0 | ||||
| -rw-r--r-- | ndkdll/AsmKit/AsmKit.hxx (renamed from NDKKit/AsmKit/AsmKit.hxx) | 6 | ||||
| -rw-r--r-- | ndkdll/AsmKit/CPU/32x0.hxx (renamed from NDKKit/AsmKit/CPU/32x0.hxx) | 2 | ||||
| -rw-r--r-- | ndkdll/AsmKit/CPU/64x0.hxx (renamed from NDKKit/AsmKit/CPU/64x0.hxx) | 2 | ||||
| -rw-r--r-- | ndkdll/AsmKit/CPU/amd64.hxx (renamed from NDKKit/AsmKit/CPU/amd64.hxx) | 2 | ||||
| -rw-r--r-- | ndkdll/AsmKit/CPU/arm64.hxx (renamed from NDKKit/AsmKit/CPU/arm64.hxx) | 2 | ||||
| -rw-r--r-- | ndkdll/AsmKit/CPU/ppc.hxx (renamed from NDKKit/AsmKit/CPU/ppc.hxx) | 0 | ||||
| -rw-r--r-- | ndkdll/Defines.hxx (renamed from NDKKit/Defines.hxx) | 0 | ||||
| -rw-r--r-- | ndkdll/Macros.hxx (renamed from NDKKit/Macros.hxx) | 0 | ||||
| -rw-r--r-- | ndkdll/NFC/AE.hxx (renamed from NDKKit/NFC/AE.hxx) | 2 | ||||
| -rw-r--r-- | ndkdll/NFC/ELF.hxx (renamed from NDKKit/NFC/ELF.hxx) | 0 | ||||
| -rw-r--r-- | ndkdll/NFC/ErrorID.hxx (renamed from NDKKit/NFC/ErrorID.hxx) | 4 | ||||
| -rw-r--r-- | ndkdll/NFC/ErrorOr.hxx (renamed from NDKKit/NFC/ErrorOr.hxx) | 4 | ||||
| -rw-r--r-- | ndkdll/NFC/PEF.hxx (renamed from NDKKit/NFC/PEF.hxx) | 2 | ||||
| -rw-r--r-- | ndkdll/NFC/Ref.hxx (renamed from NDKKit/NFC/Ref.hxx) | 0 | ||||
| -rw-r--r-- | ndkdll/NFC/String.hxx (renamed from NDKKit/NFC/String.hxx) | 4 | ||||
| -rw-r--r-- | ndkdll/NFC/XCOFF.hxx (renamed from NDKKit/NFC/XCOFF.hxx) | 2 | ||||
| -rw-r--r-- | ndkdll/Parser.hxx (renamed from NDKKit/Parser.hxx) | 2 | ||||
| -rw-r--r-- | ndkdll/Private/Imaging/TPM.hxx (renamed from NDKKit/Private/Imaging/TPM.hxx) | 0 | ||||
| -rw-r--r-- | ndkdll/Public/SDK/CRT/__mpcc_alloca.hxx (renamed from NDKKit/Public/SDK/CRT/__mpcc_alloca.hxx) | 0 | ||||
| -rw-r--r-- | ndkdll/Public/SDK/CRT/__mpcc_defines.hxx (renamed from NDKKit/Public/SDK/CRT/__mpcc_defines.hxx) | 0 | ||||
| -rw-r--r-- | ndkdll/Public/SDK/CRT/__mpcc_exception.hxx (renamed from NDKKit/Public/SDK/CRT/__mpcc_exception.hxx) | 0 | ||||
| -rw-r--r-- | ndkdll/Public/SDK/CRT/__mpcc_hint.hxx (renamed from NDKKit/Public/SDK/CRT/__mpcc_hint.hxx) | 0 | ||||
| -rw-r--r-- | ndkdll/Public/SDK/CRT/__mpcc_malloc.hxx (renamed from NDKKit/Public/SDK/CRT/__mpcc_malloc.hxx) | 0 | ||||
| -rw-r--r-- | ndkdll/Public/SDK/CRT/__mpcc_power.inc (renamed from NDKKit/Public/SDK/CRT/__mpcc_power.inc) | 0 | ||||
| -rw-r--r-- | ndkdll/Sources/Assembler32x0.cxx (renamed from NDKKit/Sources/Assembler32x0.cxx) | 8 | ||||
| -rw-r--r-- | ndkdll/Sources/Assembler64x0.cxx (renamed from NDKKit/Sources/Assembler64x0.cxx) | 8 | ||||
| -rw-r--r-- | ndkdll/Sources/AssemblerAMD64.cxx (renamed from NDKKit/Sources/AssemblerAMD64.cxx) | 8 | ||||
| -rw-r--r-- | ndkdll/Sources/AssemblerPower.cxx (renamed from NDKKit/Sources/AssemblerPower.cxx) | 12 | ||||
| -rw-r--r-- | ndkdll/Sources/AssemblyFactory.cxx (renamed from NDKKit/Sources/AssemblyFactory.cxx) | 4 | ||||
| -rw-r--r-- | ndkdll/Sources/BasicPreProcessor.cxx (renamed from NDKKit/Sources/BasicPreProcessor.cxx) | 4 | ||||
| -rw-r--r-- | ndkdll/Sources/CCompiler64x0.cxx (renamed from NDKKit/Sources/CCompiler64x0.cxx) | 6 | ||||
| -rw-r--r-- | ndkdll/Sources/CCompilerPower64.cxx (renamed from NDKKit/Sources/CCompilerPower64.cxx) | 6 | ||||
| -rw-r--r-- | ndkdll/Sources/CPlusPlusCompilerAMD64.cxx (renamed from NDKKit/Sources/CPlusPlusCompilerAMD64.cxx) | 4 | ||||
| -rw-r--r-- | ndkdll/Sources/Detail/ReadMe.md (renamed from NDKKit/Sources/Detail/ReadMe.md) | 0 | ||||
| -rw-r--r-- | ndkdll/Sources/Detail/asmutils.hxx (renamed from NDKKit/Sources/Detail/asmutils.hxx) | 4 | ||||
| -rw-r--r-- | ndkdll/Sources/Detail/compilerutils.hxx (renamed from NDKKit/Sources/Detail/compilerutils.hxx) | 4 | ||||
| -rw-r--r-- | ndkdll/Sources/Linker.cxx (renamed from NDKKit/Sources/Linker.cxx) | 12 | ||||
| -rw-r--r-- | ndkdll/Sources/String.cxx (renamed from NDKKit/Sources/String.cxx) | 2 | ||||
| -rw-r--r-- | ndkdll/Sources/compile_flags.txt (renamed from NDKKit/Sources/compile_flags.txt) | 0 | ||||
| -rw-r--r-- | ndkdll/UUID.hxx (renamed from NDKKit/UUID.hxx) | 0 | ||||
| -rw-r--r-- | ndkdll/Version.hxx (renamed from NDKKit/Version.hxx) | 0 | ||||
| -rw-r--r-- | tests/example.cxx | 5 | ||||
| -rw-r--r-- | tools/cl.cxx | 55 | ||||
| -rw-r--r-- | tools/cl.json | 10 | ||||
| -rw-r--r-- | tools/link.cxx | 20 | ||||
| -rw-r--r-- | tools/link.json | 10 |
57 files changed, 165 insertions, 81 deletions
diff --git a/.vscode/c_cpp_properties.json b/.vscode/c_cpp_properties.json index cd1cb3d..a708ead 100644 --- a/.vscode/c_cpp_properties.json +++ b/.vscode/c_cpp_properties.json @@ -3,7 +3,7 @@ { "name": "Macintosh (CLang)", "includePath": [ - "${workspaceFolder}/NDKKit/**", + "${workspaceFolder}/ndkdll/**", "${workspaceFolder}/Sources/Detail/**", "${workspaceFolder}/**" ], @@ -16,7 +16,7 @@ { "name": "Windows (Cygwin)", "includePath": [ - "${workspaceFolder}/NDKKit/**", + "${workspaceFolder}/ndkdll/**", "${workspaceFolder}/Sources/Detail/**", "${workspaceFolder}/**" ], diff --git a/NDKKit/Output/.gitkeep b/NDKKit/Output/.gitkeep deleted file mode 100644 index e69de29..0000000 --- a/NDKKit/Output/.gitkeep +++ /dev/null @@ -1,8 +1,8 @@ -# NDKKit, C++ SDK for ZKA. +# NDK, C++ SDK for New OS. ## Installing: -Start by cloning the repo. +Start by cloning the repository. ``` git clone git@bitbucket.org:mahrouss/sdk-dll.git diff --git a/Tools/Linker.cxx b/Tools/Linker.cxx deleted file mode 100644 index d7eb90c..0000000 --- a/Tools/Linker.cxx +++ /dev/null @@ -1,6 +0,0 @@ -extern "C" int NewOSLinker(int argc, char const* argv[]); - -int main(int argc, char const *argv[]) -{ - return NewOSLinker(argc, argv); -} diff --git a/Tools/link.json b/Tools/link.json deleted file mode 100644 index 98e55a7..0000000 --- a/Tools/link.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "compiler_path": "x86_64-w64-mingw32-g++.exe", - "compiler_std": "c++20", - "headers_path": ["../NDKKit", "../", "../NDKKit/Sources/Detail"], - "sources_path": ["Linker.cxx"], - "output_name": "link.exe", - "compiler_flags": ["-L../", "-lndk", "-Wl,--subsystem=17"], - "cpp_macros": ["__LINK__=202401"] - } -
\ No newline at end of file @@ -1,10 +1,10 @@ { "compiler_path": "x86_64-w64-mingw32-g++.exe", "compiler_std": "c++20", - "headers_path": ["./NDKKit", "./", "./NDKKit/Sources/Detail"], - "sources_path": ["NDKKit/Sources/*.cxx"], + "headers_path": ["./ndkdll", "./", "./ndkdll/Sources/Detail"], + "sources_path": ["ndkdll/Sources/*.cxx"], "output_name": "ndk.dll", - "compiler_flags": ["-fPIC", "-shared", "-fPIC", "-Wl,--subsystem=17"], + "compiler_flags": ["-fPIC", "-shared", "-fPIC"], "cpp_macros": ["__NDK_DLL__=202401"] }
\ No newline at end of file diff --git a/Notes/ASM specs.txt b/doc/ASM specs.txt index a0c42bf..a0c42bf 100644 --- a/Notes/ASM specs.txt +++ b/doc/ASM specs.txt diff --git a/Notes/HAVP DSP.txt b/doc/HAVP DSP.txt index 12fcec5..12fcec5 100644 --- a/Notes/HAVP DSP.txt +++ b/doc/HAVP DSP.txt diff --git a/Notes/Inside 64x0.pdf b/doc/Inside 64x0.pdf Binary files differindex bcd6782..bcd6782 100644 --- a/Notes/Inside 64x0.pdf +++ b/doc/Inside 64x0.pdf diff --git a/Notes/Notice.txt b/doc/Notice.txt index 23691da..23691da 100644 --- a/Notes/Notice.txt +++ b/doc/Notice.txt diff --git a/Notes/RISC CPU.txt b/doc/RISC CPU.txt index e17b494..e17b494 100644 --- a/Notes/RISC CPU.txt +++ b/doc/RISC CPU.txt diff --git a/NDKKit/AsmKit/AsmKit.hxx b/ndkdll/AsmKit/AsmKit.hxx index c31a52d..4c2cd78 100644 --- a/NDKKit/AsmKit/AsmKit.hxx +++ b/ndkdll/AsmKit/AsmKit.hxx @@ -6,9 +6,9 @@ #pragma once -#include <NDKKit/Macros.hxx> -#include <NDKKit/Defines.hxx> -#include <NDKKit/NFC/String.hxx> +#include <ndkdll/Macros.hxx> +#include <ndkdll/Defines.hxx> +#include <ndkdll/NFC/String.hxx> namespace NDK { diff --git a/NDKKit/AsmKit/CPU/32x0.hxx b/ndkdll/AsmKit/CPU/32x0.hxx index a24d17e..018dea9 100644 --- a/NDKKit/AsmKit/CPU/32x0.hxx +++ b/ndkdll/AsmKit/CPU/32x0.hxx @@ -6,7 +6,7 @@ #pragma once -#include <NDKKit/Defines.hxx> +#include <ndkdll/Defines.hxx> // @brief 32x0 support. // @file CPU/32x0.hpp diff --git a/NDKKit/AsmKit/CPU/64x0.hxx b/ndkdll/AsmKit/CPU/64x0.hxx index d632fcc..99a88b1 100644 --- a/NDKKit/AsmKit/CPU/64x0.hxx +++ b/ndkdll/AsmKit/CPU/64x0.hxx @@ -6,7 +6,7 @@ #pragma once -#include <NDKKit/Defines.hxx> +#include <ndkdll/Defines.hxx> #include <vector> // @brief 64x0 support. diff --git a/NDKKit/AsmKit/CPU/amd64.hxx b/ndkdll/AsmKit/CPU/amd64.hxx index f932c72..4067ec7 100644 --- a/NDKKit/AsmKit/CPU/amd64.hxx +++ b/ndkdll/AsmKit/CPU/amd64.hxx @@ -6,7 +6,7 @@ #pragma once -#include <NDKKit/Defines.hxx> +#include <ndkdll/Defines.hxx> // @brief AMD64 support. // @file CPU/amd64.hpp diff --git a/NDKKit/AsmKit/CPU/arm64.hxx b/ndkdll/AsmKit/CPU/arm64.hxx index 09de3ee..85e2f75 100644 --- a/NDKKit/AsmKit/CPU/arm64.hxx +++ b/ndkdll/AsmKit/CPU/arm64.hxx @@ -6,7 +6,7 @@ Copyright ZKA Technologies #pragma once -#include <NDKKit/Defines.hxx> +#include <ndkdll/Defines.hxx> /// @brief ARM64 encoding support. /// @file CPU/arm64.hpp diff --git a/NDKKit/AsmKit/CPU/ppc.hxx b/ndkdll/AsmKit/CPU/ppc.hxx index e3ea6c5..e3ea6c5 100644 --- a/NDKKit/AsmKit/CPU/ppc.hxx +++ b/ndkdll/AsmKit/CPU/ppc.hxx diff --git a/NDKKit/Defines.hxx b/ndkdll/Defines.hxx index 10f61c7..10f61c7 100644 --- a/NDKKit/Defines.hxx +++ b/ndkdll/Defines.hxx diff --git a/NDKKit/Macros.hxx b/ndkdll/Macros.hxx index c190cda..c190cda 100644 --- a/NDKKit/Macros.hxx +++ b/ndkdll/Macros.hxx diff --git a/NDKKit/NFC/AE.hxx b/ndkdll/NFC/AE.hxx index ad9b0a2..11b4600 100644 --- a/NDKKit/NFC/AE.hxx +++ b/ndkdll/NFC/AE.hxx @@ -9,7 +9,7 @@ #pragma once -#include <NDKKit/Defines.hxx> +#include <ndkdll/Defines.hxx> #define kAEMag0 'A' #define kAEMag1 'E' diff --git a/NDKKit/NFC/ELF.hxx b/ndkdll/NFC/ELF.hxx index 4f0d0ae..4f0d0ae 100644 --- a/NDKKit/NFC/ELF.hxx +++ b/ndkdll/NFC/ELF.hxx diff --git a/NDKKit/NFC/ErrorID.hxx b/ndkdll/NFC/ErrorID.hxx index 17183b8..631b67f 100644 --- a/NDKKit/NFC/ErrorID.hxx +++ b/ndkdll/NFC/ErrorID.hxx @@ -9,8 +9,8 @@ #pragma once -#include <NDKKit/Defines.hxx> -#include <NDKKit/NFC/ErrorOr.hxx> +#include <ndkdll/Defines.hxx> +#include <ndkdll/NFC/ErrorOr.hxx> #define MPCC_EXEC_ERROR -30 #define MPCC_FILE_NOT_FOUND -31 diff --git a/NDKKit/NFC/ErrorOr.hxx b/ndkdll/NFC/ErrorOr.hxx index 0e734b6..f7e2803 100644 --- a/NDKKit/NFC/ErrorOr.hxx +++ b/ndkdll/NFC/ErrorOr.hxx @@ -9,8 +9,8 @@ #pragma once -#include <NDKKit/Defines.hxx> -#include <NDKKit/NFC/Ref.hxx> +#include <ndkdll/Defines.hxx> +#include <ndkdll/NFC/Ref.hxx> namespace NDK { diff --git a/NDKKit/NFC/PEF.hxx b/ndkdll/NFC/PEF.hxx index 455a641..bbcd5a3 100644 --- a/NDKKit/NFC/PEF.hxx +++ b/ndkdll/NFC/PEF.hxx @@ -6,7 +6,7 @@ #pragma once -#include <NDKKit/Defines.hxx> +#include <ndkdll/Defines.hxx> // @file PEF.hpp // @brief Preferred Executable Format diff --git a/NDKKit/NFC/Ref.hxx b/ndkdll/NFC/Ref.hxx index bd1d72f..bd1d72f 100644 --- a/NDKKit/NFC/Ref.hxx +++ b/ndkdll/NFC/Ref.hxx diff --git a/NDKKit/NFC/String.hxx b/ndkdll/NFC/String.hxx index 2d5497a..3a9b6ff 100644 --- a/NDKKit/NFC/String.hxx +++ b/ndkdll/NFC/String.hxx @@ -9,8 +9,8 @@ #pragma once -#include <NDKKit/Defines.hxx> -#include <NDKKit/NFC/ErrorOr.hxx> +#include <ndkdll/Defines.hxx> +#include <ndkdll/NFC/ErrorOr.hxx> namespace NDK { diff --git a/NDKKit/NFC/XCOFF.hxx b/ndkdll/NFC/XCOFF.hxx index f2da79d..1f8797e 100644 --- a/NDKKit/NFC/XCOFF.hxx +++ b/ndkdll/NFC/XCOFF.hxx @@ -14,7 +14,7 @@ #ifndef __XCOFF__ #define __XCOFF__ -#include <NDKKit/Defines.hxx> +#include <ndkdll/Defines.hxx> #define kXCOFF64Magic 0x01F7 diff --git a/NDKKit/Parser.hxx b/ndkdll/Parser.hxx index 51b0154..8abeae7 100644 --- a/NDKKit/Parser.hxx +++ b/ndkdll/Parser.hxx @@ -6,7 +6,7 @@ #pragma once -#include <NDKKit/AsmKit/AsmKit.hxx> +#include <ndkdll/AsmKit/AsmKit.hxx> #include <vector> namespace NDK diff --git a/NDKKit/Private/Imaging/TPM.hxx b/ndkdll/Private/Imaging/TPM.hxx index dbd90fe..dbd90fe 100644 --- a/NDKKit/Private/Imaging/TPM.hxx +++ b/ndkdll/Private/Imaging/TPM.hxx diff --git a/NDKKit/Public/SDK/CRT/__mpcc_alloca.hxx b/ndkdll/Public/SDK/CRT/__mpcc_alloca.hxx index 02b3123..02b3123 100644 --- a/NDKKit/Public/SDK/CRT/__mpcc_alloca.hxx +++ b/ndkdll/Public/SDK/CRT/__mpcc_alloca.hxx diff --git a/NDKKit/Public/SDK/CRT/__mpcc_defines.hxx b/ndkdll/Public/SDK/CRT/__mpcc_defines.hxx index 19ed8a4..19ed8a4 100644 --- a/NDKKit/Public/SDK/CRT/__mpcc_defines.hxx +++ b/ndkdll/Public/SDK/CRT/__mpcc_defines.hxx diff --git a/NDKKit/Public/SDK/CRT/__mpcc_exception.hxx b/ndkdll/Public/SDK/CRT/__mpcc_exception.hxx index dac42ad..dac42ad 100644 --- a/NDKKit/Public/SDK/CRT/__mpcc_exception.hxx +++ b/ndkdll/Public/SDK/CRT/__mpcc_exception.hxx diff --git a/NDKKit/Public/SDK/CRT/__mpcc_hint.hxx b/ndkdll/Public/SDK/CRT/__mpcc_hint.hxx index 02dbc94..02dbc94 100644 --- a/NDKKit/Public/SDK/CRT/__mpcc_hint.hxx +++ b/ndkdll/Public/SDK/CRT/__mpcc_hint.hxx diff --git a/NDKKit/Public/SDK/CRT/__mpcc_malloc.hxx b/ndkdll/Public/SDK/CRT/__mpcc_malloc.hxx index eeaa67b..eeaa67b 100644 --- a/NDKKit/Public/SDK/CRT/__mpcc_malloc.hxx +++ b/ndkdll/Public/SDK/CRT/__mpcc_malloc.hxx diff --git a/NDKKit/Public/SDK/CRT/__mpcc_power.inc b/ndkdll/Public/SDK/CRT/__mpcc_power.inc index 90b1364..90b1364 100644 --- a/NDKKit/Public/SDK/CRT/__mpcc_power.inc +++ b/ndkdll/Public/SDK/CRT/__mpcc_power.inc diff --git a/NDKKit/Sources/Assembler32x0.cxx b/ndkdll/Sources/Assembler32x0.cxx index 4425e08..213e335 100644 --- a/NDKKit/Sources/Assembler32x0.cxx +++ b/ndkdll/Sources/Assembler32x0.cxx @@ -19,10 +19,10 @@ #define __ASM_NEED_32x0__ 1 -#include <NDKKit/AsmKit/CPU/32x0.hxx> -#include <NDKKit/Parser.hxx> -#include <NDKKit/NFC/AE.hxx> -#include <NDKKit/NFC/PEF.hxx> +#include <ndkdll/AsmKit/CPU/32x0.hxx> +#include <ndkdll/Parser.hxx> +#include <ndkdll/NFC/AE.hxx> +#include <ndkdll/NFC/PEF.hxx> #include <filesystem> #include <fstream> #include <iostream> diff --git a/NDKKit/Sources/Assembler64x0.cxx b/ndkdll/Sources/Assembler64x0.cxx index 2df6339..552b547 100644 --- a/NDKKit/Sources/Assembler64x0.cxx +++ b/ndkdll/Sources/Assembler64x0.cxx @@ -19,10 +19,10 @@ #define __ASM_NEED_64x0__ 1 -#include <NDKKit/AsmKit/CPU/64x0.hxx> -#include <NDKKit/Parser.hxx> -#include <NDKKit/NFC/AE.hxx> -#include <NDKKit/NFC/PEF.hxx> +#include <ndkdll/AsmKit/CPU/64x0.hxx> +#include <ndkdll/Parser.hxx> +#include <ndkdll/NFC/AE.hxx> +#include <ndkdll/NFC/PEF.hxx> #include <algorithm> #include <filesystem> #include <fstream> diff --git a/NDKKit/Sources/AssemblerAMD64.cxx b/ndkdll/Sources/AssemblerAMD64.cxx index b20eaaf..24686b4 100644 --- a/NDKKit/Sources/AssemblerAMD64.cxx +++ b/ndkdll/Sources/AssemblerAMD64.cxx @@ -27,10 +27,10 @@ #define kAssemblerPragmaSymStr "#" #define kAssemblerPragmaSym '#' -#include <NDKKit/AsmKit/CPU/amd64.hxx> -#include <NDKKit/Parser.hxx> -#include <NDKKit/NFC/AE.hxx> -#include <NDKKit/NFC/PEF.hxx> +#include <ndkdll/AsmKit/CPU/amd64.hxx> +#include <ndkdll/Parser.hxx> +#include <ndkdll/NFC/AE.hxx> +#include <ndkdll/NFC/PEF.hxx> #include <algorithm> #include <cstdlib> #include <filesystem> diff --git a/NDKKit/Sources/AssemblerPower.cxx b/ndkdll/Sources/AssemblerPower.cxx index f118fc3..1d4f3d3 100644 --- a/NDKKit/Sources/AssemblerPower.cxx +++ b/ndkdll/Sources/AssemblerPower.cxx @@ -17,12 +17,12 @@ #define __ASM_NEED_PPC__ 1 -#include <NDKKit/NFC/ErrorID.hxx> -#include <NDKKit/AsmKit/CPU/ppc.hxx> -#include <NDKKit/NFC/PEF.hxx> -#include <NDKKit/Parser.hxx> -#include <NDKKit/NFC/AE.hxx> -#include <NDKKit/Version.hxx> +#include <ndkdll/NFC/ErrorID.hxx> +#include <ndkdll/AsmKit/CPU/ppc.hxx> +#include <ndkdll/NFC/PEF.hxx> +#include <ndkdll/Parser.hxx> +#include <ndkdll/NFC/AE.hxx> +#include <ndkdll/Version.hxx> #include <filesystem> #include <algorithm> #include <iostream> diff --git a/NDKKit/Sources/AssemblyFactory.cxx b/ndkdll/Sources/AssemblyFactory.cxx index 961ca01..506652c 100644 --- a/NDKKit/Sources/AssemblyFactory.cxx +++ b/ndkdll/Sources/AssemblyFactory.cxx @@ -4,8 +4,8 @@ ------------------------------------------- */ -#include <NDKKit/AsmKit/AsmKit.hxx> -#include <NDKKit/NFC/ErrorID.hxx> +#include <ndkdll/AsmKit/AsmKit.hxx> +#include <ndkdll/NFC/ErrorID.hxx> /** * @file AssemblyFactory.cxx diff --git a/NDKKit/Sources/BasicPreProcessor.cxx b/ndkdll/Sources/BasicPreProcessor.cxx index e707387..3056f13 100644 --- a/NDKKit/Sources/BasicPreProcessor.cxx +++ b/ndkdll/Sources/BasicPreProcessor.cxx @@ -9,8 +9,8 @@ /// BUGS: 0 -#include <NDKKit/Parser.hxx> -#include <NDKKit/NFC/ErrorID.hxx> +#include <ndkdll/Parser.hxx> +#include <ndkdll/NFC/ErrorID.hxx> #include <algorithm> #include <filesystem> #include <fstream> diff --git a/NDKKit/Sources/CCompiler64x0.cxx b/ndkdll/Sources/CCompiler64x0.cxx index 40fae77..3a6ffd2 100644 --- a/NDKKit/Sources/CCompiler64x0.cxx +++ b/ndkdll/Sources/CCompiler64x0.cxx @@ -10,9 +10,9 @@ /// BUGS: 0 /// TODO: none -#include <NDKKit/AsmKit/CPU/64x0.hxx> -#include <NDKKit/Parser.hxx> -#include <NDKKit/UUID.hxx> +#include <ndkdll/AsmKit/CPU/64x0.hxx> +#include <ndkdll/Parser.hxx> +#include <ndkdll/UUID.hxx> #include <filesystem> #include <cstdio> #include <fstream> diff --git a/NDKKit/Sources/CCompilerPower64.cxx b/ndkdll/Sources/CCompilerPower64.cxx index 45bdeaa..528ed8f 100644 --- a/NDKKit/Sources/CCompilerPower64.cxx +++ b/ndkdll/Sources/CCompilerPower64.cxx @@ -7,9 +7,9 @@ * ======================================================== */ -#include <NDKKit/AsmKit/CPU/ppc.hxx> -#include <NDKKit/Parser.hxx> -#include <NDKKit/UUID.hxx> +#include <ndkdll/AsmKit/CPU/ppc.hxx> +#include <ndkdll/Parser.hxx> +#include <ndkdll/UUID.hxx> #include <filesystem> #include <fstream> #include <iostream> diff --git a/NDKKit/Sources/CPlusPlusCompilerAMD64.cxx b/ndkdll/Sources/CPlusPlusCompilerAMD64.cxx index 5036297..535a3fb 100644 --- a/NDKKit/Sources/CPlusPlusCompilerAMD64.cxx +++ b/ndkdll/Sources/CPlusPlusCompilerAMD64.cxx @@ -20,8 +20,8 @@ // import, @MLAutoRelease { ... }, fn foo() -> auto { ... } -#include <NDKKit/AsmKit/CPU/amd64.hxx> -#include <NDKKit/Parser.hxx> +#include <ndkdll/AsmKit/CPU/amd64.hxx> +#include <ndkdll/Parser.hxx> #include <UUID.hxx> #include <cctype> diff --git a/NDKKit/Sources/Detail/ReadMe.md b/ndkdll/Sources/Detail/ReadMe.md index e9d0a2c..e9d0a2c 100644 --- a/NDKKit/Sources/Detail/ReadMe.md +++ b/ndkdll/Sources/Detail/ReadMe.md diff --git a/NDKKit/Sources/Detail/asmutils.hxx b/ndkdll/Sources/Detail/asmutils.hxx index d0a5221..2451a28 100644 --- a/NDKKit/Sources/Detail/asmutils.hxx +++ b/ndkdll/Sources/Detail/asmutils.hxx @@ -6,8 +6,8 @@ #pragma once -#include <NDKKit/AsmKit/AsmKit.hxx> -#include <NDKKit/Parser.hxx> +#include <ndkdll/AsmKit/AsmKit.hxx> +#include <ndkdll/Parser.hxx> using namespace NDK; diff --git a/NDKKit/Sources/Detail/compilerutils.hxx b/ndkdll/Sources/Detail/compilerutils.hxx index c4674e8..ba3fb79 100644 --- a/NDKKit/Sources/Detail/compilerutils.hxx +++ b/ndkdll/Sources/Detail/compilerutils.hxx @@ -6,8 +6,8 @@ #pragma once -#include <NDKKit/AsmKit/AsmKit.hxx> -#include <NDKKit/Parser.hxx> +#include <ndkdll/AsmKit/AsmKit.hxx> +#include <ndkdll/Parser.hxx> #define kZero64Section ".zero64" #define kCode64Section ".code64" diff --git a/NDKKit/Sources/Linker.cxx b/ndkdll/Sources/Linker.cxx index 579672c..9243531 100644 --- a/NDKKit/Sources/Linker.cxx +++ b/ndkdll/Sources/Linker.cxx @@ -13,23 +13,23 @@ /// @note Do not look up for anything with .code64/.data64/.zero64! /// It will be loaded when program will start up! -#include <NDKKit/NFC/ErrorID.hxx> +#include <ndkdll/NFC/ErrorID.hxx> //! Assembler Kit -#include <NDKKit/AsmKit/AsmKit.hxx> +#include <ndkdll/AsmKit/AsmKit.hxx> //! Preferred Executable Format -#include <NDKKit/NFC/PEF.hxx> -#include <NDKKit/UUID.hxx> +#include <ndkdll/NFC/PEF.hxx> +#include <ndkdll/UUID.hxx> #include <filesystem> #include <random> #include <vector> //! Dist version -#include <NDKKit/Version.hxx> +#include <ndkdll/Version.hxx> //! Advanced Executable Object Format -#include <NDKKit/NFC/AE.hxx> +#include <ndkdll/NFC/AE.hxx> //! C++ I/O headers. #include <fstream> diff --git a/NDKKit/Sources/String.cxx b/ndkdll/Sources/String.cxx index 5153487..ccbd821 100644 --- a/NDKKit/Sources/String.cxx +++ b/ndkdll/Sources/String.cxx @@ -18,7 +18,7 @@ * */ -#include <NDKKit/NFC/String.hxx> +#include <ndkdll/NFC/String.hxx> namespace NDK { CharType *StringView::Data() { return m_Data; } diff --git a/NDKKit/Sources/compile_flags.txt b/ndkdll/Sources/compile_flags.txt index 6ec6b8a..6ec6b8a 100644 --- a/NDKKit/Sources/compile_flags.txt +++ b/ndkdll/Sources/compile_flags.txt diff --git a/NDKKit/UUID.hxx b/ndkdll/UUID.hxx index 00b153b..00b153b 100644 --- a/NDKKit/UUID.hxx +++ b/ndkdll/UUID.hxx diff --git a/NDKKit/Version.hxx b/ndkdll/Version.hxx index 38fd537..38fd537 100644 --- a/NDKKit/Version.hxx +++ b/ndkdll/Version.hxx diff --git a/tests/example.cxx b/tests/example.cxx new file mode 100644 index 0000000..9d3bb97 --- /dev/null +++ b/tests/example.cxx @@ -0,0 +1,5 @@ +int main() +{ + int x = 5; + return 0; +} diff --git a/tools/cl.cxx b/tools/cl.cxx new file mode 100644 index 0000000..3933d96 --- /dev/null +++ b/tools/cl.cxx @@ -0,0 +1,55 @@ +/* ------------------------------------------- + + Copyright ZKA Technologies + +------------------------------------------- */ + +/// @file Linker.cxx +/// @brief ZKA Linker frontend for AE objects. + +#include <iostream> +#include <cstring> +#include <vector> + +extern "C" int CompilerCPlusPlusX8664(int argc, char const* argv[]); +extern "C" int NewOSAssemblerAMD64(int argc, char const* argv[]); + +int main(int argc, char const* argv[]) +{ + if (auto code = CompilerCPlusPlusX8664(argc, argv); code) + { + std::printf("cl.exe: frontend exited with code %i.\n", code); + return 1; + } + else + { + std::vector<std::string> args_list; + + for (size_t index_arg = 0; index_arg < argc; ++index_arg) + { + if (strstr(argv[index_arg], ".cxx") || + strstr(argv[index_arg], ".cpp") || + strstr(argv[index_arg], ".cc") || + strstr(argv[index_arg], ".c++") || + strstr(argv[index_arg], ".C")) + { + std::string arg = argv[index_arg]; + arg += ".S"; + args_list.push_back(arg); + } + } + + for (auto &cli : args_list) + { + const char* arr_cli[] = { argv[0], cli.data() }; + + if (auto code = NewOSAssemblerAMD64(2, arr_cli); code) + { + std::printf("cl.exe: assembler exited with code %i.", code); + } + } + + } + + return 0; +} diff --git a/tools/cl.json b/tools/cl.json new file mode 100644 index 0000000..705ff47 --- /dev/null +++ b/tools/cl.json @@ -0,0 +1,10 @@ +{ + "compiler_path": "x86_64-w64-mingw32-g++.exe", + "compiler_std": "c++20", + "headers_path": ["../ndkdll", "../", "../ndkdll/Sources/Detail"], + "sources_path": ["cl.cxx"], + "output_name": "cl.exe", + "compiler_flags": ["-L../", "-lndk"], + "cpp_macros": ["__CL__=202401"] + } +
\ No newline at end of file diff --git a/tools/link.cxx b/tools/link.cxx new file mode 100644 index 0000000..ae37b8d --- /dev/null +++ b/tools/link.cxx @@ -0,0 +1,20 @@ +/* ------------------------------------------- + + Copyright ZKA Technologies + +------------------------------------------- */ + +/// @file Linker.cxx +/// @brief ZKA Linker frontend for AE objects. + +extern "C" int NewOSLinker(int argc, char const* argv[]); + +int main(int argc, char const *argv[]) +{ + if (argc < 1) + { + return 1; + } + + return NewOSLinker(argc, argv); +} diff --git a/tools/link.json b/tools/link.json new file mode 100644 index 0000000..4a224af --- /dev/null +++ b/tools/link.json @@ -0,0 +1,10 @@ +{ + "compiler_path": "x86_64-w64-mingw32-g++.exe", + "compiler_std": "c++20", + "headers_path": ["../ndkdll", "../", "../ndkdll/Sources/Detail"], + "sources_path": ["link.cxx"], + "output_name": "link.exe", + "compiler_flags": ["-L../", "-lndk"], + "cpp_macros": ["__LINK__=202401"] + } +
\ No newline at end of file |
