Commit Graph

220 Commits

Author SHA1 Message Date
Yawning Angel
61c581baeb core/sys/unix: Add syscalls_linux.odin
Linux is in the unfortunate situation where the system call number is
architecture specific.  This consolidates the system call number
definitions in a single location, adds some wrappers, and hopefully
fixes the existing non-portable invocations of the syscall intrinsic.
2021-11-17 14:00:00 +00:00
Carwyn Nelson
c67c0789eb Add socket() function to windows ws32 bindings
It looks like this was missing from the winsock bindings. Odin contains
WSASocketW which I assume would also work for obtaining a socket, but
socket() is distinct and is what I was using, so I assume others will
want it too.
2021-11-10 15:55:50 +00:00
Carwyn Nelson
d8b1523161 Fix the windows binding for getaddrinfo
getaddrinfo should take a double pointer to ADDRINFOA instead of a single pointer. If you call the binding in its current state you will not get back a valid ADDRINFOA struct.

I have also changed the `node` and `service` params to be cstring to avoid having to do `transmute(u8) value`.
2021-11-10 15:15:40 +00:00
gingerBill
c13c30b466 Update wasi to use string and slice types 2021-10-31 15:21:39 +00:00
gingerBill
0c1675c8b0 Correct string usage 2021-10-31 15:01:13 +00:00
gingerBill
906c7ef0fc Correct wasi linking 2021-10-31 13:04:28 +00:00
gingerBill
c6e08b059b Move sys/wasi to sys/wasm/wasi 2021-10-31 12:30:10 +00:00
gingerBill
8a2078aa90 Add core:sys/wasi 2021-10-31 01:06:27 +00:00
gingerBill
79ad6f4564 Remove assert 2021-10-25 01:02:38 +01:00
Jonas Welle
7c26b0abdb add GetModuleHandleA 2021-10-16 10:43:33 -04:00
gingerBill
0d258e8b55 Make many package time procedures use "contextless" calling convention 2021-10-11 20:08:38 +01:00
Josh Engler
15594706c9 Additional win32 bindings. 2021-10-05 19:09:20 -04:00
gingerBill
ceebd7b23c Correct context.allocator usage 2021-09-19 11:59:31 +01:00
gingerBill
f38b7ebf42 Begin adding vendor:miniaudio 2021-09-17 12:57:52 +01:00
Jeroen van Rijn
a9f4c90c79 sys: Add Windows Bluetooth APIs. 2021-09-13 14:31:52 +02:00
gingerBill
344abf2cb2 Make core and vendor adhere to -vet, -strict-style, and -disallow-do 2021-09-11 16:40:19 +01:00
gingerBill
e5fbf45c42 Add vendor:raylib (core only) 2021-09-08 18:04:05 +01:00
gingerBill
ca33cb990b Strip semicolons in core which were missing 2021-09-08 13:12:38 +01:00
gingerBill
720884e0f1 Strip even more semicolons if followed by a } or ) on the same line 2021-08-31 23:47:57 +01:00
gingerBill
f57201bbd1 Remove unneeded semicolons from the core library 2021-08-31 22:32:53 +01:00
gingerBill
251da264ed Remove unneeded semicolons from the core library 2021-08-31 22:21:13 +01:00
gingerBill
445ed9be2b Use multi-pointers when appropriate 2021-08-22 12:54:04 +01:00
gingerBill
0d257c61cd Disallow using on an enum declaration. 2021-08-05 17:46:42 +01:00
gingerBill
9cd5ea59dd Big simplification and improvement of the entity collection system, reducing unneeded steps for packages 2021-07-27 20:45:50 +01:00
Jeroen van Rijn
5dfff51a40 Allow core:sys/windows to build on Windows only 2021-07-15 12:13:57 +02:00
Jeroen van Rijn
038337fd07 Port core:sys/win32 tests to test runner. 2021-05-02 00:10:00 +02:00
gingerBill
6d1eb473cf Correct \n ignore rules 2021-04-26 21:25:44 +01:00
gingerBill
cb2e6ea31d Remove use_llvm_api related checks and other related things 2021-04-25 20:03:05 +01:00
gingerBill
05a181d719 Fix style issues; Use new attribute @(cold) where appropriate in the new sync package 2021-04-14 20:19:02 +01:00
Jeroen van Rijn
aca5c7c1c6 Placate -vet. 2021-04-13 02:18:47 +02:00
Jeroen van Rijn
a1d871360c Add support to core:windows to add/delete users.
main :: proc() {

	using fmt;
	using windows;

	username := "testuser";
	password := "testpass";

	ok := add_user("", username, password);
	fmt.printf("add_user: %v\n", ok);
	pi := windows.PROCESS_INFORMATION{};

	ok2, path := windows.add_user_profile(username);
	fmt.printf("add_user_profile: %v, %v\n", ok2, path);

	ok3 := windows.delete_user_profile(username);
	fmt.printf("delete_user_profile: %v\n", ok3);

	ok4 := windows.delete_user("", username);
	fmt.printf("delete_user: %v\n", ok4);

	// Has optional bool to not wait on the process before returning.
	b := run_as_user(username, password, "C:\\Repro\\repro.exe", "Hellope!", &pi);
	fmt.printf("run_as_user: %v %v\n", b, pi);
}
2021-04-13 02:09:44 +02:00
gingerBill
359ae29d98 Minor fixes 2021-03-18 13:25:41 +00:00
gingerBill
a60d22fefd Make trailing comma usage consistent 2021-03-13 21:18:07 +00:00
gingerBill
b727b6438b Minimize unneeded casts 2021-03-03 14:31:17 +00:00
nakst
7b4ddd9b18 update essence API header 2021-02-26 14:46:38 +00:00
gingerBill
6988b12012 Replace inline with #force_inline in sys/es/api.odin 2021-02-23 16:15:37 +00:00
gingerBill
aa93305015 Replace usage of inline proc with #force_inline proc in the core library 2021-02-23 16:14:47 +00:00
gingerBill
fe33a64b2e Remove #opaque usage in core library 2021-02-23 15:21:05 +00:00
gingerBill
efdee0dafb Remove bit_field type from Odin (keyword and dead runtime code still exists) 2021-02-19 11:31:14 +00:00
gingerBill
5cced38a6e Add kernel32 memory api 2021-02-11 15:31:51 +00:00
gingerBill
f50ea36c70 Fix miscorrect type usage 2021-02-04 14:24:42 +00:00
gingerBill
de9b6e3f6e Correct sys/win32 to match sys/windows 2021-02-04 13:50:48 +00:00
gingerBill
f0683c9102 Merge branch 'master' into parser-experiments 2020-12-06 00:49:48 +00:00
gingerBill
fd453be831 Deprecate opaque in favour of #opaque in the core library 2020-12-04 18:49:39 +00:00
Dan Bechard
58f768cb4f Update kernel32.odin
Fix typo in CreateProcessA/W mappings (https://github.com/odin-lang/Odin/issues/785)
2020-11-20 15:39:08 -08:00
gingerBill
7c5247f5fb Add package sys/cpu - implements processor feature detection 2020-11-06 00:39:09 +00:00
gingerBill
54fbdabc38 Add experimental -insert-semicolon functionality to tokenizer and parser 2020-11-01 15:10:06 +00:00
zhibog
05b58bdbb1 Fixed package name 2020-10-24 00:17:36 +02:00
zhibog
4c4112fbc7 Fixed getting windows version. The former function is no longer working on Windows 10. Also fixed the struct to use correct win32 names 2020-10-24 00:14:01 +02:00
gingerBill
fa33476438 Improve default temp allocator; Fix filepath.abs behaviour on Windows 2020-10-13 14:40:13 +01:00