mirror of
https://github.com/odin-lang/Odin.git
synced 2026-05-26 13:48:23 +00:00
Merge pull request #6623 from heavyrain266/deprecate-essence
removed Essence from supported targets
This commit is contained in:
@@ -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,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#+build js, wasi, freestanding, essence
|
||||
#+build js, wasi, freestanding
|
||||
#+private
|
||||
package runtime
|
||||
|
||||
|
||||
@@ -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()
|
||||
}
|
||||
@@ -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
|
||||
)
|
||||
)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
}
|
||||
2900
core/sys/es/api.odin
2900
core/sys/es/api.odin
File diff suppressed because it is too large
Load Diff
@@ -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 {}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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)}
|
||||
}
|
||||
@@ -1,5 +1,4 @@
|
||||
#+private
|
||||
#+build !essence
|
||||
#+build !js
|
||||
#+build !linux
|
||||
#+build !openbsd
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -6467,7 +6467,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:
|
||||
|
||||
@@ -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},
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user