LogIn E-mail
¼³°èÀ̾߱â
[sh].wrapper example
# 93 JMJS    11.6.15 14:15

#!/bin/sh
#==================================================#
# fileName : .wrapper
#==================================================#
# 1).get Abc <installed_dir>
#==================================================#

PATH="/bin:$PATH"

  __dir=`dirname $0`
  if [ "$__dir" = "." ]; then
    __dir=`cd $__dir/.. ; /bin/pwd`
  else
    __dir=`dirname $__dir`
  fi

  SYS_INST_DIR=$__dir;
  SPS_FONT_PATH="$SYS_INST_DIR/font";
  # XFont - SPS0117984
  SPS_XFONT_PATH="$SYS_INST_DIR/XFont";

#==================================================#
# 2).parsing user's command and special setting
#==================================================#
   __cmdname=`basename $0`;
   
  SYS_PROG_NAME=$__cmdname;
 
  # Auto Source user envirnoment from .bbc
  __auto_source=${ABC_BBC_AUTO_SOURCE:=None}
  if [ "$__auto_source" = "1" ]; then
    if [ -f $HOME/.bbc ]; then
       . $HOME/.bbc;
    fi
    if [ -f .bbc ]; then
       . .bbc;
    fi
  fi

  # For valgrind
  invoke_valgrind=0

  case " $* " in
     *\ -valgrind\ *)
        invoke_valgrind=1
     ;;
  esac

   ## SPS0149212
   LANG="C";
   export LANG;
   LC_ALL="C";
   export LC_ALL;

   ### SPS0115997
   #__lang=${LANG};
   #if [ "$__lang" = "ja_JP.UTF-8" ]; then
   #     LANG="ja";
   #     export LANG;
   #fi

   #__lc_all=${LC_ALL};
   #if [ "$__lc_all" = "ja_JP.UTF-8" ]; then
   #     LC_ALL="ja";
   #     export LC_ALL;
   #fi  

#==================================================#
# 3).get platform
#==================================================#
   ##
   ## SPSqa53294 Abc run 32-bit executable binary
   ## If no 64-bits install path, will run 32-bits path as default.
   __exec_arch=${ABC_EXECUTABLE_ARCH};
   __machine=`uname -s -r`;
   case "$__machine" in
    "SunOS 5.10"*)
        __machine_set=`/bin/isainfo -kv|awk '{print $1}'`
        __machine_type=`uname -p`
        if [ "$__machine_type" = "i386" ]; then  
                __NAME="SOLAMD64";
        elif [ "$__machine_type" = "x86_64" ]; then
                __NAME="SOLAMD64";
        elif [ "$__exec_arch" = "32" ]; then
                __NAME="SOLARIS2";
        elif [ "$__exec_arch" = "64" ]; then
                __NAME="SOL7";
        elif [ "$__machine_set" = "64-bit" ] \
            && [ -r $SYS_INST_DIR/platform/SOL7/bin ]; then
                __NAME="SOL7";
        else
                __NAME="SOLARIS2";
        fi
            ;;
    "SunOS 5.9"*)
        __machine_set=`/bin/isainfo -kv|awk '{print $1}'`
        if [ "$__exec_arch" = "32" ]; then
                __NAME="SOLARIS2";
        elif [ "$__exec_arch" = "64" ]; then
                __NAME="SOL7";
        elif [ "$__machine_set" = "64-bit" ] \
            && [ -r $SYS_INST_DIR/platform/SOL7/bin ]; then
                __NAME="SOL7";
        else
                __NAME="SOLARIS2";
        fi
            ;;
    "SunOS 5.8"*)
        __machine_set=`/bin/isainfo -kv|awk '{print $1}'`
        if [ "$__exec_arch" = "32" ]; then
                __NAME="SOLARIS2";
        elif [ "$__exec_arch" = "64" ]; then
                __NAME="SOL7";
        elif [ "$__machine_set" = "64-bit" ] \
            && [ -r $SYS_INST_DIR/platform/SOL7/bin ]; then
                     __NAME="SOL7";
        else
                __NAME="SOLARIS2";
        fi
            ;;
    "SunOS 5.7"*)
        __machine_set=`/bin/isainfo -kv|awk '{print $1}'`
        if [ "$__exec_arch" = "32" ]; then
                __NAME="SOLARIS2";
        elif [ "$__exec_arch" = "64" ]; then
                __NAME="SOL7";
        elif [ "$__machine_set" = "64-bit" ] \
            && [ -r $SYS_INST_DIR/platform/SOL7/bin ]; then
                symbol=`/usr/ccs/bin/nm /usr/lib/sparcv9/libCrun.so.1 | grep _ex_register64`;
                sym=`echo $symbol|awk '{print $5}'`
                if [ "$sym" = "|GLOB" ]; then
                     __NAME="SOL7";
                else
                     echo "*ERROR* -- OS compatibility problem"
                     echo "     The version of Solaris 7 you are running contains a problem in ..."
                     exit 1
                fi
        else
               __NAME="SOLARIS2";
        fi
            ;;
    "SunOS 5"*)
        if [ "$__exec_arch" = "32" ]; then
                __NAME="SOLARIS2";
        elif [ "$__exec_arch" = "64" ]; then
                __NAME="SOL7";
        else
                     __NAME="SOLARIS2";
        fi
            ;;
    "Linux"*)
         __machine_set=`uname -m`  
         if [ "$__exec_arch" = "32" ]; then
                __NAME="LINUX";
         elif [ "$__exec_arch" = "64" -a "$__machine_set" = ia64 ] \
            && [ -r $SYS_INST_DIR/platform/LINUXIA64/bin ]; then
               __NAME="LINUXIA64";
         elif [ "$__exec_arch" = "64" -a "$__machine_set" = x86_64 ] \
            && [ -r $SYS_INST_DIR/platform/LINUX64/bin ]; then
               __NAME="LINUXAMD64";
         elif [ "$__machine_set" = ia64 ] \
            && [ -r $SYS_INST_DIR/platform/LINUXIA64/bin ]; then
               __NAME="LINUXIA64";
         elif [ "$__machine_set" = x86_64 ] \
            && [ -r $SYS_INST_DIR/platform/LINUX64/bin ]; then
               __NAME="LINUXAMD64";
         else
               __NAME="LINUX";
         fi
            ;;
    "FreeBSD"*)
     __NAME="LINUX";
            ;;
    "HP-UX B.10"*)
        if [ "$__exec_arch" = "32" ]; then
                __NAME="HPPA";
        elif [ "$__exec_arch" = "64" ]; then
                __NAME="HP11";
        else
                     __NAME="HPPA";
        fi
            ;;
    "HP-UX B.11"*)
        if [ "$__exec_arch" = "32" ]; then
                __NAME="HPPA";
        elif [ "$__exec_arch" = "64" ]; then
                __NAME="HP11";
        elif [ -r $SYS_INST_DIR/platform/HP11/bin ] \
             && [ -x /bin/getconf ] \
             && [ "`/bin/getconf KERNEL_BITS 2>&1`" = "64" ]; then
                __NAME="HP11";
        else
                     __NAME="HPPA";
        fi
            ;;
     "AIX 1"*)
        __system_version=`uname -v`
        if [ "$__system_version" = "5" ]; then
                if [ "$__exec_arch" = "32" ]; then
                        __NAME="IBM51";
                elif [ "$__exec_arch" = "64" ]; then
                        __NAME="IBM51";
      #                  LDR_CNTRL="MAXDATA=0x200000000";
      #                  export LDR_CNTRL;
                elif [ -r $SYS_INST_DIR/platform/IBM51/bin ] \
                     && [ -x /usr/sbin/prtconf ] \
                     && [ "`/usr/sbin/prtconf -c`" = "CPU Type: 64-bit" ]; then
                        __NAME="IBM51";
      #                  LDR_CNTRL="MAXDATA=0x200000000";
      #                  export LDR_CNTRL;
                else
                       # SPSqa78465 - Check if IBM43 is supported
                        __NAME="IBM51";
                fi
        else
                echo "IBM43 is not supported"
                exit 1
        fi
            ;;
     "AIX 2"*)
        __system_version=`uname -v`
        if [ "$__system_version" = "5" ]; then
                if [ "$__exec_arch" = "32" ]; then
                        __NAME="IBM51";
                elif [ "$__exec_arch" = "64" ]; then
                        __NAME="IBM51";
      #                  LDR_CNTRL="MAXDATA=0x200000000";
      #                  export LDR_CNTRL;
                elif [ -r $SYS_INST_DIR/platform/IBM51/bin ] \
                     && [ -x /usr/sbin/prtconf ] \
                     && [ "`/usr/sbin/prtconf -c`" = "CPU Type: 64-bit" ]; then
                        __NAME="IBM51";
      #                  LDR_CNTRL="MAXDATA=0x200000000";
      #                  export LDR_CNTRL;
                else
                       # SPSqa78465 - Check if IBM43 is supported
                        __NAME="IBM51";
                fi
        else
                echo "IBM43 is not supported"
                exit 1
        fi
            ;;
     "AIX 3"*)
        __system_version=`uname -v`
        if [ "$__system_version" = "5" ]; then
                if [ "$__exec_arch" = "32" ]; then
                        __NAME="IBM51";
                elif [ "$__exec_arch" = "64" ]; then
                        __NAME="IBM64";
      #                  LDR_CNTRL="MAXDATA=0x200000000";
      #                  export LDR_CNTRL;
                elif [ -r $SYS_INST_DIR/platform/IBM64/bin ] \
                     && [ -x /usr/sbin/prtconf ] \
                     && [ "`/usr/sbin/prtconf -c`" = "CPU Type: 64-bit" ]; then
                        __NAME="IBM64";
      #                  LDR_CNTRL="MAXDATA=0x200000000";
      #                  export LDR_CNTRL;
                else
                       # SPSqa78465 - Check if IBM43 is supported
                        __NAME="IBM51";
                fi
        else
                echo "IBM43 is not supported"
                exit 1
        fi
            ;;
    *)
     __NAME="UNKNOW";
   ;;
   esac

#  echo "platform=$__NAME";
#==================================================#
# 4).make new command  
#==================================================#
   case "$__cmdname" in
    "nCompare")
    newname="$SYS_INST_DIR/platform/$__NAME/bin/Abc -nCompare";
    ;;
    "ncmp")
    newname="$SYS_INST_DIR/platform/$__NAME/bin/Abc -nCompare";
    ;;
    "nCompareg")
    newname="$SYS_INST_DIR/platform/$__NAME/bin/Abc -nCompare -gui";
    ;;
    "Siloti")
    newname="$SYS_INST_DIR/platform/$__NAME/bin/Abc";
    ;;
    "siloti")    
    newname="$SYS_INST_DIR/platform/$__NAME/bin/Abc";
    ;;
    "Verdi")
    newname="$SYS_INST_DIR/platform/$__NAME/bin/Abc";
    ;;
    "verdi")    
    newname="$SYS_INST_DIR/platform/$__NAME/bin/Abc";              
    ;;
    "VerdiJP")
    newname="$SYS_INST_DIR/platform/$__NAME/bin/Abc -encode eucjp";
    ;;
    "Verdi_dl")
    newname="$SYS_INST_DIR/platform/$__NAME/bin/Abc_dl -encode eucjp";
    ;;
    "nWave")
    newname="$SYS_INST_DIR/platform/$__NAME/bin/Abc -nWave";
    ;;
    "turboWave")
    newname="$SYS_INST_DIR/platform/$__NAME/bin/Abc -nWave";
    ;;
    "Debussy")
    newname="$SYS_INST_DIR/platform/$__NAME/bin/Abc -deb";
    ;;
    "debussy")
    newname="$SYS_INST_DIR/platform/$__NAME/bin/Abc -deb";
    ;;
    "fast")
    newname="$SYS_INST_DIR/platform/$__NAME/bin/vfast";
    ;;
    "vcd2fsdb")
    newname="$SYS_INST_DIR/platform/$__NAME/bin/vfast";
    ;;
    "novas_plat")
    echo $__NAME
    exit 0
    ;;
    *)
    newname="$SYS_INST_DIR/platform/$__NAME/bin/$__cmdname";
    ;;
   esac
   export SYS_INST_DIR; export SYS_PROG_NAME;
   export SPS_FONT_PATH;
   export SPS_XFONT_PATH;
   export BBC_HOME;
   export BBC_PATH;
#==================================================#
# 5).setup on-line-help path:
#==================================================#
   ABCHLPPATH="$SYS_INST_DIR/doc";
   export ABCHLPPATH;
   XNLSPATH="$SYS_INST_DIR/etc/access/nls";
   export XNLSPATH;
#==================================================#
# 6).exec Abc product
#==================================================#
   if [ ${invoke_valgrind} = 1 ] ; then
      VALGRIND_LIB="$SYS_INST_DIR/platform/$__NAME/bin/valgrind_lib";
      export VALGRIND_LIB;
      # SPSqa81719
      PURIFY_POOL_CCC=1;
      PURIFY_POOL_CCC_SILENCE=1;
      export PURIFY_POOL_CCC;
      export PURIFY_POOL_CCC_SILENCE;
      for tmp_var in $@;
      do
         if [ "$tmp_var" != "-valgrind" ]; then
            argv="$argv $tmp_var"
         fi
      done
      exec $SYS_INST_DIR/platform/$__NAME/bin/valgrind \
           --suppressions=$SYS_INST_DIR/platform/$__NAME/bin/valgrind_lib/sps.supp \
           --workaround-gcc296-bugs=yes --leak-check=no $newname $argv
   else
      exec $newname "$@"
   fi
#==================================================#
# 7).exit ABC
#==================================================#
   exit 0

°Ô½Ã¹°: 112 °Ç, ÇöÀç: 1 / 2 ÂÊ
¹øÈ£ Á¦       ¸ñ ÀÛ¼ºÀÚ µî·ÏÀÏ ¹æ¹®
115  [make] .PHONY JMJS 24.3.28 6
114  [make] -n -d -r --debug=b JMJS 24.3.28 10
113  magick convert -rotate -append JMJS 23.10.12 43
112  dirname JMJS 23.3.20 97
111  zip a.zip -r ./a JMJS 23.2.1 125
110  ffmpeg AlwaysMovie JMJS 22.12.6 130
109  7za a abc.zip abc -> tar -c -z -f abc.zip abc JMJS 22.11.30 133
108  convert mogrify JMJS 23.2.1 215
107  [sh]array JMJS 19.8.14 270
106  arithmetic in a makefile, shell pwd export JMJS 17.9.8 4320
105  Split and merge large files JMJS 16.3.21 919
104  [Makefile]random JMJS 14.12.5 1307
100  À©µµ¿ì7 ¿ë·®ºÎÁ· winsxs Æú´õ ÃÖÀûÈ­ JMJS 14.10.14 2237
99  [sh,csh]while loop JMJS 13.2.6 2282
98  hostname, hostid, /sbin/ifconfig eth0 JMJS 13.1.4 4293
97  [linux]fedora 16 gome-shell extension JMJS 12.3.12 1969
96  [linux]fedora 16 grub boot order change JMJS 12.3.10 2213
95  [linux]fedora Input Method,ibus,hangul JMJS 12.3.8 1900
94  [linux]audio,mp3,mplayer,gstreamer,vlc JMJS 12.3.7 2620
93  [sh].wrapper example JMJS 11.6.15 2219
92  [make]for loop JMJS 11.9.8 1899
91  [make]conditional expression JMJS 11.5.12 1787
90  [make]shell ½ÇÇà JMJS 11.3.9 1923
89  [wish]jplot JMJS 10.5.12 1569
88  yum JMJS 09.8.12 1599
87  [CYGWIN]X setupÇϱâ JMJS 10.8.6 2934
86  [Make]Makefile Brief JMJS 10.8.6 1624
85  ldd /user/bin/xterm JMJS 09.4.24 1310
84  [HTML]¾îµµºñ SVG ºä¾î¿Í HTML JMJS 09.4.24 1890
83  [DOS]DOS command JMJS 09.7.20 1570
82  [DOS]DOS command brief JMJS 07.2.21 2053
81  À¥ÆäÀÌÁö ¼Ò½ºº¸±â JMJS 09.4.24 1563
80  [html]ÀÚµ¿À¸·Î ±ÛÀÚ»ö ¹Ù²ñ JMJS 07.1.10 1510
79  [html]º¹»ç, µå·¡±× ±ÝÁö JMJS 07.1.10 2003
78  [csh]cshell¿¡¼­ function ¸ø¾´´Ù³×¿ä JMJS 11.3.17 1563
77  ¸®´ª½º¿¡¼­ i386,i586,i686, x86ÀÇ Â÷ÀÌÁ¡ JMJS 06.10.16 1819
76  [CSH]$status JMJS 06.8.21 1277
75  [sh]substr, read, until,IFS,for,dirname JMJS 14.12.19 1485
74  [sh]rgbview.sh . hello.sh JMJS 10.11.30 1396
73  automount - /etc/fstab JMJS 06.2.23 1420
72  lmutil.csh JMJS 05.11.8 1744
71  È­ÀÏÀ̸§¿¡ ¸ø¿À´Â ¹®ÀÚ JMJS 05.9.8 1529
70  /usr/ucb /usr/ccs JMJS 05.9.5 1401
69  Solaris Version JMJS 05.9.5 1621
68  /usr/ccs/bin/nm -x debpli.so JMJS 05.8.31 1890
67  tar, gzip, zcat, uncompress, mn(.a ÆÄÀϺ¸±â) JMJS 13.1.6 1742
66  find . -name -print -exec perl JMJS 09.4.17 1704
65  pkgadd -d packagefile JMJS 05.5.9 1447
64  prstat JMJS 08.10.2 1695
63  vi ¸í·É¾î, vim¸í·É¾î gvim JMJS 22.11.1 4832
62  multiple directory ¿¡¼­ grep ? JMJS 04.5.31 1860
61  [csh].cshrc_axis JMJS 04.5.14 1723
60  [csh].cshrc_modelsim JMJS 04.5.14 1843
59  [csh].cshrc_cadence JMJS 04.5.14 1885
58  [csh].cshrc_novas JMJS 04.5.14 1766
57  [csh].cshrc_verisity JMJS 04.5.14 2138
56  lmgrd JMJS 09.6.22 2469
55  [csh]which case JMJS 04.5.14 1732
54  [bash]example 2 JMJS 04.5.12 1970
53  [bash]example 1 JMJS 04.5.12 1835
52  fedora 12¿¡¼­ touchpad disable JMJS 11.1.17 1913
51  [Perl]Çѱ¹¾î ÀÎÄÚµù JMJS 04.1.16 2724
50  [Perl]HTML¿¡¼­ ±âÈ£ Ç¥½Ã¸¦ À§ÇÑ ¹®ÀÚġȯ JMJS 04.1.5 10895
49  [csh]make awk JMJS 03.6.6 2115
48  [csh]wordsplit JMJS 03.6.6 1756
47  [csh]vi2 JMJS 03.6.6 1595
46  [csh]cat.csh JMJS 03.6.6 1656
45  [csh]chgword.csh JMJS 03.6.6 1600
44  [bash]password JMJS 11.3.9 1506
43  [Tcl]bi2int JMJS 02.11.29 1506
42  [PC]ask °Ë»öâÀÌ ÀÚ²Ù ¶á´Ù¸é JMJS 09.4.24 2025
41  [csh]backup_copyc.csh; foreach; continue JMJS 09.4.24 1683
40  uname, uname -s -r, uname -p, uname -a JMJS 09.4.24 1883
39  [tk]»õ â ¿­°í ´Ý±â ¿¹Á¦ JMJS 09.4.24 11485
38  [sh]if [[ "$abc" == "abc" && "$bbc" == "bbc" ]]; ... JMJS 11.3.17 1623
37  [expect]expect_scp.exp JMJS 11.3.9 1674
36  ssh -x -l soc lion scp -r ... JMJS 11.3.9 1471
35  TclTk ¹è¿­ JMJS 09.7.20 1564
34  ./configure make make install JMJS 11.1.13 1487
33  [csh]diff JMJS 10.7.14 1548
32  tr abc 123 < file1 > file2 JMJS 11.4.11 1487
31  Installing RPMforge JMJS 10.2.8 1582
30  [ű×]±ÛÀÚ»öÀÌ »ç¶óÁü JMJS 09.4.24 1631
29  [ű×]ÀÚµ¿À¸·Î ±ÛÀÚ»öÀÌ º¯ÇÔ JMJS 09.4.24 1618
28  ±ÛÀÚÅÂ±× ¸ðÀ½ JMJS 09.4.24 1778
27  »ö»ó¸í°ú RGB°ª Ç¥ JMJS 09.4.24 1786
26  RGB »ö»óÇ¥ JMJS 09.4.24 1939
25  ÇѱÛƯ¼ö¹®ÀÚÇ¥ JMJS 09.4.24 1854
24  bc -l JMJS 01.5.22 1537
23  file *,  od -xc *, cat * JMJS 01.3.28 1857
22  Linux Memo JMJS 09.7.20 1687
21  xterm -fn 10x20 & JMJS 12.3.7 1530
20  W/S Tip JMJS 09.4.29 1612
19  [awk]example JMJS 10.10.30 1849
18  [csh].cshrc JMJS 11.6.21 2296
17  stop & background job JMJS 00.11.14 1497
16  W/S shout down JMJS 00.11.14 1482
15  [sed]example JMJS 16.9.5 1863
14  [DOS]Memo JMJS 00.10.29 1603
13  [csh]¸®½ºÆ®¸¦ ¸¸µé¾î foreach·Î ó¸®ÇÒ¶§ JMJS 00.10.7 5327
[1] [2]