GNAT was bootstrapped by the design team (prof Dewar and his group at NYU) using a existing commercial Ada compiler and the existing gcc tool chain. This was done using a subset of Ada, a subset for which gcc 2.95 had the necessary semantics already inplace.
As soon as they had a selfcompiling compiler they could partly leave the commercial version. With that version the team continued adding semantics to the GCC backend which was missing for a real Ada compiler (nested functions for example, the tasking system another and Ada 95 object oriented extensions.) So the Ada part went through multiple evolutions while support was added inside gcc. When i compiled the gcc tool chain in 1994 with gnat in SunOS 5 (ie Solaris 2), i used a by the group provided compiled gnat to start the build. The source was in form of the normal gcc 2.95 tree and separate tar for the Ada part, which was then extracted inside the gcc 2.95 tree. Post that the normalĀ -- ../gcc-2.95/configure --prefix=/test-1 make stage1 make stage2 make stage3 -- It is 30 years since I did this, so have forebearance with my faulty memory.
