/
Cygwin Runtime

Cygwin Runtime

Project

  • Cygwin may refer both to:

  • This project’s scope is limited to Cygwin runtime (cygwin1.dll) only. Porting of individual Cygwin packages hasn’t started yet as the aarch64-pc-cygwin GNU toolchain and the runtime are not available upstream and it would deserve separate project pages for individual packages or some reasonable groups of packages.

  • The Cygwin runtime source code consists for two main sub-projects, newlib and winsup:

    • The newlib sub-project contains implementation of standard C library (libc), and implementation of standard C mathematical library implementation (libm).

    • The winsup project is where the most of the magic of POSIX APIs and Cygwin environment implementations happen.

    • Fun fact: The newlib is a least 26 years old fork of GCC codebase (that far the git history goes) being occasionally synchronized to the upstream.

Risks

Status

Next Steps

  • The Hello World! experiment did lot of hacks, like commenting out the code that is not needed to run the binary, that needs to be implemented in a way that would be acceptable for upstreaming.

  • Then, the next target should be compilation of bash.exe executable. It might show up that this goal si too stretched and some less ambitious target should be chosen instead.

 

Related content

MSYS2 GNU Toolchains
MSYS2 GNU Toolchains
More like this
Git For Windows
Git For Windows
Read with this
Windows on Arm GNU tools status page
Windows on Arm GNU tools status page
More like this
Windows on Arm (WOA)
Windows on Arm (WOA)
More like this
Tips and tricks for porting to win-arm64
Tips and tricks for porting to win-arm64
More like this
A tale of a dependency chain: Pillow and the crew
A tale of a dependency chain: Pillow and the crew
More like this