Annotation of rpl/scripts/mkrplso.in, revision 1.2

1.1       bertrand    1: #!/bin/bash
                      2: 
                      3: #===============================================================================
                      4: # RPL/2 version @VERSION@
                      5: #   Interpréteur du langage de programmation du calculateur HP-28S,
                      6: #
                      7: #   Date de création    : 02 Avril 1.998
                      8: #
                      9: #   Tous droits réservés à l'auteur, Joël BERTRAND
                     10: #===============================================================================
                     11: 
                     12: #===============================================================================
                     13: # Copyright (C) 2001 BERTRAND Joël
                     14: #
                     15: # This file is part of RPL/2.
                     16: #
                     17: # RPL/2 is free software; you can redistribute it and/or modify it
                     18: # under the terms of the GNU General Public License as published by the
                     19: # Free Software Foundation; either version 2, or (at your option) any
                     20: # later version.
                     21: #
                     22: # RPL/2 is distributed in the hope that it will be useful, but WITHOUT
                     23: # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
                     24: # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
                     25: # for more details.
                     26: #
                     27: # You should have received a copy of the GNU General Public License
                     28: # along with Octave; see the file COPYING.  If not, write to the Free
                     29: # Software Foundation, 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
                     30: #===============================================================================
                     31: 
                     32: #===============================================================================
                     33: # Script de compilation des bibliothèques partagées du langage RPL/2
                     34: #
                     35: #    Tous droits réservés, J. BERTRAND 29.03.2001
                     36: #===============================================================================
                     37: 
                     38: #===============================================================================
                     39: # Les paramètres du script sont identiques à ceux de g77. Seul
                     40: # ajout, l'option -strip retirant la table des symboles de la bibliothèque
                     41: # dynamique.
                     42: #
                     43: # Exemples :
                     44: #   mkrplso essai.c -o essai.rplso -strip
                     45: #   mkrplso essai.c -o essai.rplso -O6
                     46: #   mkrplso essai.c lib.a -o essai.rplso
                     47: #===============================================================================
                     48: 
                     49: echo +++RPL/2 @VERSION@ shared library build tool
                     50: 
                     51: PRESENCE_FICHIER_SORTIE=FAUX
                     52: PRESENCE_OPTION_STRIP=FAUX
                     53: COMPILATION_SEULE=FAUX
                     54: DRAPEAU=FAUX
                     55: P=1
                     56: 
                     57: for i in $@;
                     58: do
                     59:    P=$(($P+1))
                     60: 
                     61:    if [ $DRAPEAU = "VRAI" ]; then
                     62:        DRAPEAU=FAUX
                     63:        FICHIER_SORTIE=$i
                     64:    fi
                     65: 
                     66:    if [ $i = "-o" ]; then
                     67:        if [ $PRESENCE_FICHIER_SORTIE = VRAI ]; then
                     68:            echo +++Error: more than one output file
                     69:            exit 1
                     70:        fi
                     71: 
                     72:        PRESENCE_FICHIER_SORTIE=VRAI
                     73: 
                     74:        if [ $P -gt $# ]; then
                     75:            echo +++Error: no output file
                     76:            exit 1
                     77:        else
                     78:            DRAPEAU=VRAI
                     79:        fi
                     80:    fi
                     81: 
                     82:    if [ $i = "-c" ]; then
                     83:        COMPILATION_SEULE=VRAI
                     84:    fi
                     85: done
                     86: 
                     87: if [ $PRESENCE_FICHIER_SORTIE = FAUX ]; then
                     88:    echo +++Error: no output file
                     89:    exit 1
                     90: fi
                     91: 
                     92: PROCESSEUR=$(uname -m)
                     93: test $PROCESSEUR = i386 && OPTIONS=-mieee-fp
                     94: test $PROCESSEUR = i486 && OPTIONS=-mieee-fp
                     95: test $PROCESSEUR = i586 && OPTIONS=-mieee-fp
                     96: test $PROCESSEUR = i686 && OPTIONS=-mieee-fp
                     97: test $PROCESSEUR = alpha && OPTIONS=-mieee
                     98: test $PROCESSEUR = sparc && OPTIONS=
                     99: test $PROCESSEUR = i86pc && OPTIONS=
                    100: 
                    101: ARGUMENTS_G77=""
                    102: 
                    103: for i in $@;
                    104: do
                    105:    if [ $i = "-strip" ]; then
                    106:        PRESENCE_OPTION_STRIP=VRAI
                    107:    else
                    108:        ARGUMENTS_G77="$ARGUMENTS_G77 $i"
                    109:    fi
                    110: done
                    111: 
                    112: P=0
                    113: for i in $(which $0 | tr '/' ' ');
                    114: do
                    115:    P=$(($P+1))
                    116: done
                    117: 
                    118: if [ $COMPILATION_SEULE = "VRAI" ]; then
                    119:    echo +++Compiler for RPL/2 version @VERSION@
                    120:    gfortran -x c $ARGUMENTS_G77 -fPIC -Wall -DRPLCONFIG $OPTIONS $CFLAGS\
                    121:            -I$(which $0 | cut -d '/' -f -$(($P-1)))/include -funsigned-char
                    122: else
                    123:    echo +++Linker for RPL/2 version @VERSION@
                    124:    gfortran $ARGUMENTS_G77 -shared -fPIC -Wall -DRPLCONFIG $OPTIONS $CFLAGS\
                    125:            -I$(which $0 | cut -d '/' -f -$(($P-1)))/include -funsigned-char
                    126: fi
                    127: 
                    128: test $PRESENCE_OPTION_STRIP = VRAI && strip -s $FICHIER_SORTIE
                    129: chmod 644 $FICHIER_SORTIE
                    130: 
                    131: exit 0

CVSweb interface <joel.bertrand@systella.fr>