Portage du SAN Kit pour compilation sous Linux avec un GCC récent
===================================================================

Le code source original (1994) compilait déjà avec un Makefile "gcc"
pour Unix, mais deux problèmes empêchaient sa compilation avec un GCC
moderne (testé ici avec GCC 13) :

1. Caractère Ctrl-Z (0x1A) en fin de fichier
   ------------------------------------------
   Les fichiers sandef.h, auto.c, sancmd.c, sandci.c, sanfen.c et
   sanrdr.c se terminaient par l'octet 0x1A (marqueur de fin de
   fichier utilisé sous MS-DOS). Un GCC récent le refuse ("stray
   '\32' in program"). Cet octet a été supprimé de tous les fichiers
   .c/.h.

   Au passage, toutes les fins de ligne CRLF (Windows/DOS) ont été
   converties en LF (Unix), par simple confort d'édition ; cela n'a
   aucun impact sur la compilation.

2. Mot-clé __cdecl non défini
   ----------------------------
   __cdecl est un mot-clé spécifique aux compilateurs Microsoft/DOS
   indiquant une convention d'appel ; il n'existe pas sous GCC natif
   Linux, ce qui provoquait des erreurs de syntaxe (dans main.c,
   sansrt.c, sansrt.h). Une macro neutralisant __cdecl sur toute
   plateforme non-Windows a été ajoutée dans sandef.h :

       #if !defined(_WIN32) && !defined(__cdecl)
       #define __cdecl
       #endif

3. Makefile
   ---------
   La règle finale du Makefile d'origine faisait :
       gcc ... -o san $(OBJ) -L/lib/ndp -L/usr/lib/ndp
       mv san $(HOME)/bin/san
   -L/lib/ndp et -L/usr/lib/ndp correspondaient à une bibliothèque
   d'émulation de coprocesseur mathématique propre aux tout premiers
   Linux (a.out, ~1993) ; ces répertoires n'existent plus. Le "mv"
   supposait en outre l'existence d'un répertoire ~/bin. Les deux ont
   été retirés : "make" produit maintenant simplement l'exécutable
   "san" dans le répertoire courant. Le compilateur et les options
   sont désormais paramétrables via les variables CC / CFLAGS.

Après ces corrections, la compilation se fait normalement :

    cd SAN_SRC
    make
    ./san

Elle ne produit plus que des avertissements bénins (blocs if/else
sans accolades, variables inutilisées, formats printf/scanf) qui
n'empêchent pas la compilation et n'ont pas été touchés pour rester
au plus près du code d'origine.

Remarque : le fichier SAN_SRC/sankit.exe (exécutable Windows d'origine)
ainsi que SAN_SRC/Release/sankit.exe ont été retirés de cette archive
car inutiles sous Linux.
