removed Essence from supported targets

Signed-off-by: Ignacy Koper <ignacy423@gmail.com>
This commit is contained in:
Ignacy Koper
2026-04-27 10:57:37 +02:00
parent a40f275b0c
commit 3e64a72bad
15 changed files with 8 additions and 3040 deletions

View File

@@ -509,7 +509,6 @@ Raw_Quaternion256_Vector_Scalar :: struct {vector: [3]f64, scalar: f64}
Windows,
Darwin,
Linux,
Essence,
FreeBSD,
OpenBSD,
NetBSD,
@@ -578,7 +577,6 @@ ALL_ODIN_OS_TYPES :: Odin_OS_Types{
.Windows,
.Darwin,
.Linux,
.Essence,
.FreeBSD,
.OpenBSD,
.NetBSD,

View File

@@ -1,4 +1,4 @@
#+build js, wasi, freestanding, essence
#+build js, wasi, freestanding
#+private
package runtime

View File

@@ -1,14 +0,0 @@
#+build essence
#+private
package runtime
_HAS_RAND_BYTES :: false
// TODO(bill): reimplement `os.write`
_stderr_write :: proc "contextless" (data: []byte) -> (int, _OS_Errno) {
return 0, -1
}
_exit :: proc "contextless" (code: int) -> ! {
trap()
}

View File

@@ -49,8 +49,6 @@ if "%1" == "freestanding" (
)
if "%1" == "rare" (
echo Checking essence_amd64
odin check examples\all -vet -vet-tabs -strict-style -vet-style -warnings-as-errors -disallow-do -target:essence_amd64
echo Checking freebsd_i386
odin check examples\all -vet -vet-tabs -strict-style -vet-style -warnings-as-errors -disallow-do -target:freebsd_i386
echo Checking haiku_amd64
@@ -72,4 +70,4 @@ if "%1" == "wasm" (
odin check examples\all -vet -vet-tabs -strict-style -vet-style -warnings-as-errors -disallow-do -target:orca_wasm32
echo Checking js_wasm64p32
odin check examples\all -vet -vet-tabs -strict-style -vet-style -warnings-as-errors -disallow-do -target:js_wasm64p32
)
)

View File

@@ -19,8 +19,6 @@ freestanding)
;;
rare)
echo Checking essence_amd64
odin check examples/all -vet -vet-tabs -strict-style -vet-style -warnings-as-errors -disallow-do -target:essence_amd64
echo Checking freebsd_i386
odin check examples/all -vet -vet-tabs -strict-style -vet-style -warnings-as-errors -disallow-do -target:freebsd_i386
echo Checking haiku_amd64
@@ -75,4 +73,4 @@ wasm)
odin check examples/all -vet -vet-tabs -strict-style -vet-style -warnings-as-errors -disallow-do -target:openbsd_amd64
;;
esac
esac

View File

@@ -1,60 +0,0 @@
package os_old
import "core:sys/es"
Handle :: distinct int
_Platform_Error :: enum i32 {NONE}
// ERROR_NONE :: Error(es.SUCCESS)
O_RDONLY :: 0x1
O_WRONLY :: 0x2
O_CREATE :: 0x4
O_TRUNC :: 0x8
stderr : Handle = 0
current_thread_id :: proc "contextless" () -> int {
return (int) (es.ThreadGetID(es.CURRENT_THREAD))
}
heap_alloc :: proc(size: int, zero_memory := true) -> rawptr {
return es.HeapAllocate(size, zero_memory)
}
heap_free :: proc(ptr: rawptr) {
es.HeapFree(ptr)
}
heap_resize :: proc(ptr: rawptr, new_size: int) -> rawptr {
return es.HeapReallocate(ptr, new_size, false)
}
open :: proc(path: string, flags: int = O_RDONLY, mode: int = 0) -> (Handle, Error) {
return (Handle) (0), (Error) (1)
}
close :: proc(fd: Handle) -> Error {
return (Error) (1)
}
file_size :: proc(fd: Handle) -> (i64, Error) {
return (i64) (0), (Error) (1)
}
read :: proc(fd: Handle, data: []byte) -> (int, Error) {
return (int) (0), (Error) (1)
}
write :: proc(fd: Handle, data: []u8) -> (int, Error) {
return (int) (0), (Error) (1)
}
seek :: proc(fd: Handle, offset: i64, whence: int) -> (i64, Error) {
return (i64) (0), (Error) (1)
}
flush :: proc(fd: Handle) -> Error {
// do nothing
return nil
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
#+build openbsd, freebsd, netbsd, essence, haiku
#+build openbsd, freebsd, netbsd, haiku
package sysinfo
@(private)
@@ -11,4 +11,4 @@ when ODIN_ARCH == .arm32 || ODIN_ARCH == .arm64 {
_cpu_features :: proc "contextless" () -> (features: CPU_Features) {
return {}
}
}
}

View File

@@ -1,4 +1,4 @@
#+build essence, haiku
#+build haiku
package sysinfo
import "base:runtime"
@@ -11,4 +11,4 @@ _ram_stats :: proc "contextless" () -> (total_ram, free_ram, total_swap, free_sw
@(private)
_os_version :: proc(allocator: runtime.Allocator, loc := #caller_location) -> (res: OS_Version, ok: bool) {
return {}, false
}
}

View File

@@ -1,19 +0,0 @@
#+private
package time
import "core:sys/es"
_IS_SUPPORTED :: true
_now :: proc "contextless" () -> Time {
// TODO Replace once there's a proper time API.
return Time{_nsec = i64(es.TimeStampMs() * 1e6)}
}
_sleep :: proc "contextless" (d: Duration) {
es.Sleep(u64(d/Millisecond))
}
_tick_now :: proc "contextless" () -> Tick {
return Tick{_nsec = i64(es.TimeStampMs() * 1e6)}
}

View File

@@ -1,5 +1,4 @@
#+private
#+build !essence
#+build !js
#+build !linux
#+build !openbsd

View File

@@ -17,7 +17,6 @@ enum TargetOsKind : u16 {
TargetOs_windows,
TargetOs_darwin,
TargetOs_linux,
TargetOs_essence,
TargetOs_freebsd,
TargetOs_openbsd,
TargetOs_netbsd,
@@ -37,7 +36,6 @@ gb_global String target_os_names[TargetOs_COUNT] = {
str_lit("windows"),
str_lit("darwin"),
str_lit("linux"),
str_lit("essence"),
str_lit("freebsd"),
str_lit("openbsd"),
str_lit("netbsd"),
@@ -783,14 +781,6 @@ gb_global TargetMetrics target_haiku_amd64 = {
str_lit("x86_64-unknown-haiku"),
};
gb_global TargetMetrics target_essence_amd64 = {
TargetOs_essence,
TargetArch_amd64,
8, 8, AMD64_MAX_ALIGNMENT, 32,
str_lit("x86_64-pc-none-elf"),
};
gb_global TargetMetrics target_freestanding_wasm32 = {
TargetOs_freestanding,
TargetArch_wasm32,
@@ -899,8 +889,6 @@ gb_global NamedTargetMetrics named_targets[] = {
{ str_lit("darwin_amd64"), &target_darwin_amd64 },
{ str_lit("darwin_arm64"), &target_darwin_arm64 },
{ str_lit("essence_amd64"), &target_essence_amd64 },
{ str_lit("linux_i386"), &target_linux_i386 },
{ str_lit("linux_amd64"), &target_linux_amd64 },
{ str_lit("linux_arm64"), &target_linux_arm64 },
@@ -2260,9 +2248,6 @@ gb_internal String infer_object_extension_from_build_context() {
default:
case TargetOs_darwin:
case TargetOs_linux:
case TargetOs_essence:
output_extension = STR_LIT("o");
break;
case TargetOs_freestanding:
switch (build_context.metrics.abi) {
@@ -2387,9 +2372,6 @@ gb_internal bool init_build_paths(String init_filename) {
output_extension = STR_LIT("so");
} else if (build_context.metrics.os == TargetOs_windows) {
output_extension = STR_LIT("exe");
} else if (build_context.cross_compiling && selected_target_metrics->metrics == &target_essence_amd64) {
// Do nothing: we don't want the .bin extension
// when cross compiling
} else if (path_is_directory(last_path_element(bc->build_paths[BuildPath_Main_Package].basename))) {
// Add .bin extension to avoid collision
// with package directory name
@@ -2608,7 +2590,6 @@ gb_internal bool init_build_paths(String init_filename) {
switch (build_context.metrics.os) {
case TargetOs_linux:
case TargetOs_darwin:
case TargetOs_essence:
case TargetOs_freebsd:
case TargetOs_openbsd:
case TargetOs_netbsd:
@@ -2622,7 +2603,6 @@ gb_internal bool init_build_paths(String init_filename) {
switch (build_context.metrics.os) {
case TargetOs_linux:
case TargetOs_darwin:
case TargetOs_essence:
case TargetOs_freebsd:
case TargetOs_openbsd:
case TargetOs_netbsd:

View File

@@ -6459,7 +6459,6 @@ gb_internal bool check_builtin_procedure(CheckerContext *c, Operand *operand, As
switch (build_context.metrics.os) {
case TargetOs_darwin:
case TargetOs_linux:
case TargetOs_essence:
case TargetOs_haiku:
switch (build_context.metrics.arch) {
case TargetArch_i386:

View File

@@ -1170,7 +1170,6 @@ gb_internal void init_universal(void) {
{"Windows", TargetOs_windows},
{"Darwin", TargetOs_darwin},
{"Linux", TargetOs_linux},
{"Essence", TargetOs_essence},
{"FreeBSD", TargetOs_freebsd},
{"Haiku", TargetOs_haiku},
{"OpenBSD", TargetOs_openbsd},

View File

@@ -133,17 +133,7 @@ gb_internal i32 linker_stage(LinkerData *gen) {
bool is_cross_linking = false;
bool is_android = false;
if (build_context.cross_compiling && selected_target_metrics->metrics == &target_essence_amd64) {
#if defined(GB_SYSTEM_UNIX)
result = system_exec_command_line_app("linker", "x86_64-essence-gcc \"%.*s.o\" -o \"%.*s\" %.*s %.*s",
LIT(output_filename), LIT(output_filename), LIT(build_context.link_flags), LIT(build_context.extra_linker_flags));
#else
gb_printf_err("Linking for cross compilation for this platform is not yet supported (%.*s %.*s)\n",
LIT(target_os_names[build_context.metrics.os]),
LIT(target_arch_names[build_context.metrics.arch])
);
#endif
} else if (build_context.cross_compiling && (build_context.different_os || selected_subtarget != Subtarget_Default)) {
if (build_context.cross_compiling && (build_context.different_os || selected_subtarget != Subtarget_Default)) {
switch (selected_subtarget) {
case Subtarget_Android:
is_cross_linking = true;