code wiki / _hdl_build / nx_descriptor_driver_t188.nx
nx_descriptor_driver_t188.nx source
↩ module page · 32 lines · 1880 B
1import "nx_ccbuild_lib.nx"
2import "nx_gate_verdict.nx"
3func d188_show(path:*u8)->i64{
4 let fd:i64=sys_openat_rd(path);if fd<0{return fd}
5 let b:*u8=sys_mmap(4096);var n:i64=sys_read(fd,b,4096)
6 while n>0 {sys_write(1,b,n);n=sys_read(fd,b,4096)}
7 sys_close(fd);return 0
8}
9func main()->i64{
10 sys_chdir("/volume1/homes/elderwesto/nishihost/buildroot")
11 let c:*i64=gv_ctr();let env:*i64=sys_mmap(8) as *i64;env[0]=0
12 let err:i64=sys_openat_wr("knowledge/gates/descriptor-compiler-t188.log",MODE_0644)
13 let cc:*u8="_build/nx_compile_x86.sov.elf"
14 let a:i64=cb_build(cc,"runtime/_hdl_build/nx_descriptor_gate_t188.nx","_build/descriptor-t188.s","_build/descriptor-t188.elf",env,err,"_build/descriptor-t188.tmp","knowledge/gates/descriptor-asm-t188.log")
15 gv_check("selected compiler builds descriptor gate",a==0,c)
16 if a==0 {
17 let run:i64=cb_run_capture("_build/descriptor-t188.elf","knowledge/gates/descriptor-run-t188.log",env,err)
18 d188_show("knowledge/gates/descriptor-run-t188.log")
19 gv_check("descriptor native gate passes",run==0,c)
20 }
21 let b:i64=cb_build(cc,"runtime/nx_descriptor_socket_gate_t209.nx","_build/socket-t188.s","_build/socket-t188.elf",env,err,"_build/socket-t188.tmp","knowledge/gates/socket-asm-t188.log")
22 gv_check("selected compiler builds socket gate",b==0,c)
23 if b==0 {
24 let out:i64=sys_openat_wr("knowledge/gates/socket-run-t188.log",MODE_0644)
25 let av:*i64=sys_mmap(24) as *i64;av[0]="_build/socket-t188.elf" as i64;av[1]="/tmp/nishi-descriptor-1789281880.sock" as i64;av[2]=0
26 let run:i64=cb_run("_build/socket-t188.elf",av,env,out,err)
27 sys_close(out);d188_show("knowledge/gates/socket-run-t188.log")
28 gv_check("socket native gate passes",run==0,c)
29 }
30 sys_close(err);d188_show("knowledge/gates/descriptor-compiler-t188.log")
31 return gv_verdict("chosen-compiler-descriptor",c,"Private selected compiler only; no compiler or daemon activation")
32}