Nim/lib/system
Jaremy Creechley 141b76e365
Add Zephyr Support (#19003)
* Porting Nim to run on Zephyr.

Includes changes to `std/net`.

Squashed commit of the following:
    tweaking more memory / malloc things
    revert back bitmasks
    tweaking nim to use kernel heap as C malloc doesn't work
    fixing socket polling on zephyr
    cleanup getting maximum sockets for process or for rtos'es
    reorganizing and fixing net for async / system
    merge netlite changes back into nativesockets
    merge netlite changes back into nativesockets
    reverting native sockets back
    tweaking nim / zephyr network
    adding option to run 'net-lite' from linux
    bridging zephyr's max connections
    fixing net errors
    fixing compilation with getAddrString
    fixing compilation with getAddrString
    experimenting with a nativesockets_lite ... getAddrString
    experimenting with a nativesockets_lite ... getAddrString
    experimenting with a nativesockets_lite ... getLocalAddr
    experimenting with a nativesockets_lite ... getLocalAddr
    experimenting with a nativesockets_lite ...
    add note regarding incorrect FreeRTOS Sockadd_in fields
    changing to NIM_STATIC_ASSERT
    cleaning up the static_assert error messages
    cleaning up the static_assert error messages
    setting up static assert ftw!
    testing compile time asserts
    reworking Sockaddr objects to more closely match various platforms
    reworking Sockaddr objects to more closely match various platforms
    reworking Sockaddr objects to more closely match various platforms
    finding missing items (issue  #18684)
    fixup posix constants (issue  #18684)
    adding plumbing for zephyr os (issue  #18684)
    adding plumbing for zephyr os (issue  #18684)

* fixing constant capitalizations

* remove extra debug prints and fix TSa_Family/cint issue

* remove extra debug prints and fix TSa_Family/cint issue

* Porting Nim to run on Zephyr.

Includes changes to `std/net`.

Squashed commit of the following:
    tweaking more memory / malloc things
    revert back bitmasks
    tweaking nim to use kernel heap as C malloc doesn't work
    fixing socket polling on zephyr
    cleanup getting maximum sockets for process or for rtos'es
    reorganizing and fixing net for async / system
    merge netlite changes back into nativesockets
    merge netlite changes back into nativesockets
    reverting native sockets back
    tweaking nim / zephyr network
    adding option to run 'net-lite' from linux
    bridging zephyr's max connections
    fixing net errors
    fixing compilation with getAddrString
    fixing compilation with getAddrString
    experimenting with a nativesockets_lite ... getAddrString
    experimenting with a nativesockets_lite ... getAddrString
    experimenting with a nativesockets_lite ... getLocalAddr
    experimenting with a nativesockets_lite ... getLocalAddr
    experimenting with a nativesockets_lite ...
    add note regarding incorrect FreeRTOS Sockadd_in fields
    changing to NIM_STATIC_ASSERT
    cleaning up the static_assert error messages
    cleaning up the static_assert error messages
    setting up static assert ftw!
    testing compile time asserts
    reworking Sockaddr objects to more closely match various platforms
    reworking Sockaddr objects to more closely match various platforms
    reworking Sockaddr objects to more closely match various platforms
    finding missing items (issue  #18684)
    fixup posix constants (issue  #18684)
    adding plumbing for zephyr os (issue  #18684)
    adding plumbing for zephyr os (issue  #18684)

* fixing constant capitalizations

* remove extra debug prints and fix TSa_Family/cint issue

* remove extra debug prints and fix TSa_Family/cint issue

* fixing PR issues

* Porting Nim to run on Zephyr.

Includes changes to `std/net`.

Squashed commit of the following:
    tweaking more memory / malloc things
    revert back bitmasks
    tweaking nim to use kernel heap as C malloc doesn't work
    fixing socket polling on zephyr
    cleanup getting maximum sockets for process or for rtos'es
    reorganizing and fixing net for async / system
    merge netlite changes back into nativesockets
    merge netlite changes back into nativesockets
    reverting native sockets back
    tweaking nim / zephyr network
    adding option to run 'net-lite' from linux
    bridging zephyr's max connections
    fixing net errors
    fixing compilation with getAddrString
    fixing compilation with getAddrString
    experimenting with a nativesockets_lite ... getAddrString
    experimenting with a nativesockets_lite ... getAddrString
    experimenting with a nativesockets_lite ... getLocalAddr
    experimenting with a nativesockets_lite ... getLocalAddr
    experimenting with a nativesockets_lite ...
    add note regarding incorrect FreeRTOS Sockadd_in fields
    changing to NIM_STATIC_ASSERT
    cleaning up the static_assert error messages
    cleaning up the static_assert error messages
    setting up static assert ftw!
    testing compile time asserts
    reworking Sockaddr objects to more closely match various platforms
    reworking Sockaddr objects to more closely match various platforms
    reworking Sockaddr objects to more closely match various platforms
    finding missing items (issue  #18684)
    fixup posix constants (issue  #18684)
    adding plumbing for zephyr os (issue  #18684)
    adding plumbing for zephyr os (issue  #18684)

* fixing constant capitalizations

* remove extra debug prints and fix TSa_Family/cint issue

* remove extra debug prints and fix TSa_Family/cint issue

* Remerge

* fixing constant capitalizations

* remove extra debug prints and fix TSa_Family/cint issue

* remove extra debug prints and fix TSa_Family/cint issue

* fixing PR issues

* fix maxDescriptors on zephyr/freertos

* move maxDescriptors to selector.nim -- fixes compile issue

* change realloc impl on zephyr to match ansi c behavior

* change realloc impl on zephyr to match ansi c behavior

* force compileOnly mode for tlwip

Co-authored-by: Jaremy J. Creechley <jaremy.creechley@wavebaselabs.com>
Co-authored-by: Jaremy Creechley <jaremy.creechley@panthalassa.com>
2021-10-24 11:51:57 +02:00
..
mm Add Zephyr Support (#19003) 2021-10-24 11:51:57 +02:00
alloc.nim fixes #18494 (#18783) 2021-09-02 17:16:03 +02:00
ansi_c.nim Add Zephyr Support (#19003) 2021-10-24 11:51:57 +02:00
arc.nim fixes #18579 (#18600) 2021-07-27 14:32:56 +02:00
arithm.nim use lowercase --define switches (#17283) 2021-03-07 12:08:41 +01:00
arithmetics.nim Replace double backticks with single backticks - Part 1 out of ~6 (#17205) 2021-02-28 23:08:12 -08:00
assertions.nim improvements to addInt and $ for integer types (#18592) 2021-08-19 11:33:52 +02:00
assign.nim cString => cSourceString; tyCString => tyCstring so that error msgs show cstring, not cString (#17744) 2021-04-17 11:14:09 +02:00
atomics.nim [docs minor] remove unicode in docs comments (#16267) 2020-12-06 05:51:29 +01:00
avltree.nim make AVL tree node part of the memory regions; fixes hard to reproduce channel crashes 2017-01-31 13:08:47 +01:00
basic_types.nim Replace double backticks with single backticks - Part 1 out of ~6 (#17205) 2021-02-28 23:08:12 -08:00
bitmasks.nim Add Zephyr Support (#19003) 2021-10-24 11:51:57 +02:00
cellseqs_v1.nim more checking for --gc:arc, no need for valgrind (#14467) 2020-05-29 12:08:17 +02:00
cellseqs_v2.nim ORC: use =destroy instead of =dispose (#18440) 2021-07-07 09:39:01 +02:00
cellsets.nim cleaned up the internal documentation (#17524) 2021-03-26 16:27:55 +01:00
cgprocs.nim Initial version of the hot-code reloading support for native targets (#10729) 2019-02-26 15:48:55 +01:00
channels_builtin.nim fix code-block which causes missing docs 2021-09-11 09:25:48 +08:00
chcks.nim properly fix #10053 ; FieldDefect msg now shows discriminant value + lineinfo, in all backends (c,vm,js) (#11955) 2021-08-13 09:35:48 +02:00
comparisons.nim implement RFCs/294 ; disallow enum <=> enum conversion (#16351) 2021-04-03 07:15:21 +02:00
coro_detection.nim system.nim cleanup some exported constants which should never have be… (#17909) 2021-05-01 11:10:40 +02:00
countbits_impl.nim renamed: lib/std/private/vmutils.nim -> lib/std/private/bitops_utils.nim to avoid confusion with unrelated std/vmutils (#18660) 2021-08-08 19:24:45 -07:00
cyclebreaker.nim ORC: use =destroy instead of =dispose (#18440) 2021-07-07 09:39:01 +02:00
deepcopy.nim ARC now capable of custom extra alignment. Ref, closure and seq support. (#15697) 2020-10-28 14:00:49 +01:00
dollars.nim improvements to addInt and $ for integer types (#18592) 2021-08-19 11:33:52 +02:00
dragonbox.nim merge similar procs regarding digits (#18318) 2021-06-22 17:02:32 +02:00
dyncalls.nim Add Zephyr Support (#19003) 2021-10-24 11:51:57 +02:00
embedded.nim ensure the avr example keeps compiling (#17663) 2021-04-07 13:40:57 +02:00
exceptions.nim asyncdispatch+stackTraceOverride: fix premature collection (#18039) [backport:1.2] 2021-05-19 19:19:11 +02:00
excpt.nim use lent (#18638) 2021-08-08 20:44:14 +02:00
fatal.nim fix #16499 (#16514) 2021-01-04 18:27:58 +01:00
formatfloat.nim rename nimFpRoundtrips => nimPreviewFloatRoundtrip (#18566) 2021-07-23 14:57:47 -07:00
gc.nim Remove the use of usrToCell in gcMark [backport:1.2] (#17709) 2021-04-14 12:10:01 +02:00
gc2.nim followup #17225: simplify code after removing gc2, generational (#17242) 2021-03-03 13:37:42 +01:00
gc_common.nim fixes #17647 (#17667) 2021-04-07 23:26:53 +02:00
gc_hooks.nim gc:destructors progress 2019-09-16 23:54:31 +02:00
gc_interface.nim fixes #13881 2020-05-12 15:46:24 +02:00
gc_ms.nim Removes deprecated {.injectStmt.}. Fixes #18666 (#18984) 2021-10-13 11:09:45 +02:00
gc_regions.nim styleCheck: Fix some inconsistent identifiers (#16177) 2020-12-21 09:41:56 -08:00
hti.nim cString => cSourceString; tyCString => tyCstring so that error msgs show cstring, not cString (#17744) 2021-04-17 11:14:09 +02:00
inclrtl.nim don't use {.rtl.} for generics, otherwise -d:useNimRtl gives ambiguous identifier nimrtl error (#18406) 2021-07-01 11:14:01 +02:00
indexerrors.nim properly fix #10053 ; FieldDefect msg now shows discriminant value + lineinfo, in all backends (c,vm,js) (#11955) 2021-08-13 09:35:48 +02:00
integerops.nim fixes #14209 [backport:1.2] (#14213) 2020-05-05 00:48:13 +02:00
io.nim Add Zephyr Support (#19003) 2021-10-24 11:51:57 +02:00
iterators.nim use more meaningful name than "workaround14447" (#18237) 2021-06-11 10:07:23 +02:00
iterators_1.nim Change stdlib imports to use std prefix in most examples (#17202) 2021-02-28 13:17:19 -08:00
jssys.nim fix for js strict mode (#18799) 2021-09-04 12:53:02 +02:00
memalloc.nim [docs]close #12580 (#17549) 2021-03-28 20:21:27 -07:00
memory.nim remove all uses of condsyms symbols defined prior to bootstrap nim 0.20.0 (#16918) 2021-02-17 09:32:36 +01:00
memtracker.nim addQuitProc => addExitProc (#16765) 2021-01-22 19:51:11 +01:00
mmdisp.nim fix #15617(fix compilation failure on -d:useMalloc --gc:none) (#17555) 2021-03-30 20:15:14 +02:00
nimscript.nim strict effects (#18777) 2021-09-02 12:10:14 +02:00
orc.nim ORC: use =destroy instead of =dispose (#18440) 2021-07-07 09:39:01 +02:00
osalloc.nim Switch maintanance (#18668) 2021-08-11 08:54:49 +02:00
platforms.nim Add Elbrus 2000 architecture (#19024) 2021-10-21 17:01:48 +02:00
profiler.nim Give better error message when profiler and memProfiler used at same time (#9948) 2018-12-19 10:02:20 +01:00
repr.nim properly fix #10053 ; FieldDefect msg now shows discriminant value + lineinfo, in all backends (c,vm,js) (#11955) 2021-08-13 09:35:48 +02:00
repr_impl.nim properly fix #10053 ; FieldDefect msg now shows discriminant value + lineinfo, in all backends (c,vm,js) (#11955) 2021-08-13 09:35:48 +02:00
repr_v2.nim improvements to addInt and $ for integer types (#18592) 2021-08-19 11:33:52 +02:00
reprjs.nim properly fix #10053 ; FieldDefect msg now shows discriminant value + lineinfo, in all backends (c,vm,js) (#11955) 2021-08-13 09:35:48 +02:00
schubfach.nim fixes #18400 (#18402) 2021-06-30 12:36:24 +02:00
seqs_v2.nim ARC: fixes memory leaks with newSeq used in a loop [backport:1.4] (#18040) 2021-05-18 21:45:37 +02:00
seqs_v2_reimpl.nim arc allocation method aligned (#15588) 2020-10-19 14:50:06 +02:00
setops.nim better setops docs (#16236) 2020-12-03 14:47:44 +01:00
sets.nim close #11330 sets uses optimized countSetBits (#17334) 2021-03-22 00:36:48 +01:00
stacktraces.nim Replace double backticks with single backticks - Part 2 out of ~6 (#17206) 2021-02-28 23:15:26 -08:00
strmantle.nim improvements to addInt and $ for integer types (#18592) 2021-08-19 11:33:52 +02:00
strs_v2.nim rename prepareStrMutation to prepareMutation (#17235) 2021-03-03 08:08:52 +08:00
syslocks.nim Revert "fix #14873 properly by skipping abi field in importc type (#17944)" (#17992) 2021-05-15 06:50:39 +02:00
sysspawn.nim [std/locks]close #7998(complete condition variables) (#17711) 2021-04-19 10:51:13 +02:00
sysstr.nim followup #17225: simplify code after removing gc2, generational (#17242) 2021-03-03 13:37:42 +01:00
threadlocalstorage.nim [std/locks]close #7998(complete condition variables) (#17711) 2021-04-19 10:51:13 +02:00
threads.nim various small documentation improvements (#18602) 2021-07-28 14:31:13 +02:00
timers.nim miscellaneous bug fixes (#13291) 2020-01-30 10:54:50 +01:00
widestrs.nim fixes #18550 (#18553) 2021-07-21 16:55:50 +02:00