annexi-strayline / AURA

The AURA Reference Implementation
BSD 3-Clause "New" or "Revised" License
22 stars 0 forks source link

Windows support #1

Open damaki opened 3 years ago

damaki commented 3 years ago

The documentation suggests that AURA CLI currently builds on UNIX platforms. And indeed, trying to build on Windows fails due to some headers being included, e.g. <sys/ioctl.h> which aren't available on my platform (Windows with GNAT CE 2021).

Are there plans to support Windows in the near future?

Richard-Wai commented 3 years ago

It is definitely something we'd like to see added. In theory it shouldn't be too difficult, though we don't often work with GNAT in Windows.

thindil commented 3 years ago

@damaki it could be a temporary solution, but, how do you think about using MSYS2 and GNAT from there? If I remember correctly, there is a working FSF version of GNAT. It should work for now until the real Windows appear.

Richard-Wai commented 3 years ago

@thindil @damaki Indeed, if you can satisfy two conditions: 1. Have a basic POSIX environment with fork() and execve() in the C library, and 2. Have GNAT in the path, then AURA should work as built. The only real OS-dependencies it has directly is fork() and execve(). Everything else uses the Ada standard library.

Of course I have not tested that myself, but in theory it seems possible to use something like cygwin or MSYS2.

Edit: The caveat will likely be the python script that executes as part of the build process. Not sure what kind of trouble this might cause, but it would be an easy fix.