Bj�rn Persson >Tapio Kelloniemi wrote: >> Pascal Obry wrote: >> >>>Ludovic Brenta a écrit : >>> >>> >>>>I am not aware of a GNAT default. What is the default? And why does >>>>it not follow the GNAE? >>> >>>The scheme is something like: >>> >>>/opt/GNAT/ >>> /bin <- binaries there >>> /lib/gnat/ <- project files there (GNAT looks there) >>> /lib/gnat/ <- if needed sub-project files >>> /lib/ <- .o .ali .a .so for >>> /lib <- sym links to .a and .so above >>> /include/ <- .ads/.adb for >> >> >> GNAT people seemingly haven't read FHS. This is what it says about the >> include directory: >> "This is where all of the system's general-use include files for the C >> programming language should be placed." > >It doesn't forbid putting non-C files there. FHS doesn't mention Ada, so >the most logical thing to do is to treat .ads files like .h files. Generic bodies also go there and at least Debian requires that all .adb files must be installed to this directory. Also putting Ada files to include/ may result in having both .h and .ad? files in the same directory, which may not be very comfortable. However, share/ is not better, since the project may use share for something else and because .ad? files may not be architecture independent data. >> Non-C languages generally use lib, like Python and Ruby. > >Python doesn't have a system with separate specifications and >pre-compiled libraries. A Python module is contained in a single file, >so the Python developers had to choose between include and lib. Python has precompiled modules, with .pyc extension and they are kept in the same directories as the original source code. >Apparently they chose lib. I would guess that the situation with Ruby is >similar. > >> I would like to raise the question publicly: where Ada-folks would like to put > >> their .adb and .ads files? > >The scheme that Pascal posted looks good, although I'm not sure lib/gnat >is the best choice for project files. It should of course be under /opt >only when installed as a third-party package. When it's included in an >OS distribution, /opt/GNAT/ should be replaced with /usr. GNAT should look for project files in /usr/local as well, but I'm afraid this will not be done. Perhaps the project file directory should be changed to share/gnat. -- Tapio