<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Aug 18, 2022 at 12:09 PM Joel Sherrill <<a href="mailto:joel@rtems.org">joel@rtems.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi<div><br></div><div>I took a shot at compiling libbsd for x86_64. First issue is that freebsd calls this amd64 so the reebsd/sys/@ARCH@/include is looking for the wrong architecture name. Somehow the waf needs to map x86_64 to amd64.</div><div><br></div><div>I manually copied in_cksum.h into place and that left it failing to compile with this:</div><div><br></div><div>[ 257/2034] Compiling freebsd/crypto/openssl/crypto/aes/aes_core.c<br>../../freebsd/sbin/sysctl/sysctl.c:67:10: fatal error: sys/efi.h: No such file or directory<br>   67 | #include <sys/efi.h><br>      |          ^~~~~~~~~~~<br>compilation terminated.<br></div><div><br></div><div>Which points to this code:<br><br>#ifdef __amd64__<br>#include <sys/efi.h><br>#include <machine/metadata.h><br>#endif<br></div><div><br></div><div>There are other __amd64__ ifdefs in this file. Should I just disable these with ifdef rtems? Or should we pull the thread? I'm prone to try to disable the offending code fragments.</div></div></blockquote><div><br></div><div>I did this to proceed and the changes were relatively minor. </div><div><br></div><div>Another challenge is that some x86_64 machine header files include</div><div><x86/ABC.h> to share something with x86. Looks like a place where the</div><div>include path  logic somewhere in the waf needs adjusting. No idea </div><div>where. </div><div><br></div><div>Assuming the include path for x86_64/amd64 is fixed and my sysctl.h patch</div><div>is applied, that only leaves three compile errors which appear to be</div><div>from the use of x86_64 and x86 machine directories.  For now, I hand</div><div>copied these files into place:</div><div><br></div><div>reebsd/sys/x86_64/include/machine/in_cksum.h<br>freebsd/sys/x86_64/include/machine/md_var.h<br>freebsd/sys/x86_64/include/machine/intr_machdep.h<br>freebsd/sys/x86_64/include/machine/specialreg.h<br></div><div><br></div><div>Pretty close with some help. Please. :)</div><div><br></div><div>Thanks.</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>Comments and suggestions?</div><div><br></div><div>Thanks.</div><div><br></div><div>--joel</div></div>
</blockquote></div></div>