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

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>