Math Processor Unit Library

libmpu – library of arithmetic functions for integer, real, and complex numbers of increased digit capacity

16 Commits   0 Branches   2 Tags
868b2b66 (kx 2024-12-20 16:11:07 +0300   1) #!/bin/sh
868b2b66 (kx 2024-12-20 16:11:07 +0300   2) 
868b2b66 (kx 2024-12-20 16:11:07 +0300   3) CWD=`pwd`
868b2b66 (kx 2024-12-20 16:11:07 +0300   4) 
868b2b66 (kx 2024-12-20 16:11:07 +0300   5) program=`basename $0`
868b2b66 (kx 2024-12-20 16:11:07 +0300   6) 
868b2b66 (kx 2024-12-20 16:11:07 +0300   7) usage() {
868b2b66 (kx 2024-12-20 16:11:07 +0300   8)   cat << EOF
868b2b66 (kx 2024-12-20 16:11:07 +0300   9) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  10) Usage: $program [options]
868b2b66 (kx 2024-12-20 16:11:07 +0300  11) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  12) Options:
868b2b66 (kx 2024-12-20 16:11:07 +0300  13)   -h,--help                  Display this message.
868b2b66 (kx 2024-12-20 16:11:07 +0300  14)   -d,--target-dest-dir=DIR   The target ROOTFS directory
868b2b66 (kx 2024-12-20 16:11:07 +0300  15)                              [default: DIR=/].
868b2b66 (kx 2024-12-20 16:11:07 +0300  16) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  17) EOF
868b2b66 (kx 2024-12-20 16:11:07 +0300  18) }
868b2b66 (kx 2024-12-20 16:11:07 +0300  19) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  20) TARGET_DEST_DIR=/
868b2b66 (kx 2024-12-20 16:11:07 +0300  21) ACDIR=usr/share/aclocal
868b2b66 (kx 2024-12-20 16:11:07 +0300  22) INCDIR=usr/include
868b2b66 (kx 2024-12-20 16:11:07 +0300  23) SYSTEM_ACDIR=
868b2b66 (kx 2024-12-20 16:11:07 +0300  24) SYSTEM_INCDIR=
868b2b66 (kx 2024-12-20 16:11:07 +0300  25) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  26) while [ 0 ] ; do
868b2b66 (kx 2024-12-20 16:11:07 +0300  27)   if [ "$1" = "-h" -o "$1" = "--help" ] ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300  28)     usage
868b2b66 (kx 2024-12-20 16:11:07 +0300  29)     exit 0
868b2b66 (kx 2024-12-20 16:11:07 +0300  30)   elif [ "$1" = "-d" -o "$1" = "--target-dest-dir" ] ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300  31)     if [ "$2" = "" ] ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300  32)       echo -e "\n${program}: ERROR: --target-dest-dir is not specified.\n"
868b2b66 (kx 2024-12-20 16:11:07 +0300  33)       usage
868b2b66 (kx 2024-12-20 16:11:07 +0300  34)       exit 1
868b2b66 (kx 2024-12-20 16:11:07 +0300  35)     fi
868b2b66 (kx 2024-12-20 16:11:07 +0300  36)     TARGET_DEST_DIR="$2"
868b2b66 (kx 2024-12-20 16:11:07 +0300  37)     shift 2
868b2b66 (kx 2024-12-20 16:11:07 +0300  38)   elif [[ $1 == --target-dest-dir=* ]] ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300  39)     TARGET_DEST_DIR="`echo $1 | cut -f2 -d'='`"
868b2b66 (kx 2024-12-20 16:11:07 +0300  40)     shift 1
868b2b66 (kx 2024-12-20 16:11:07 +0300  41)   else
868b2b66 (kx 2024-12-20 16:11:07 +0300  42)     if [ "$1" != "" ] ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300  43)       echo -e "\n${program}: ERROR: Unknown argument: $1.\n"
868b2b66 (kx 2024-12-20 16:11:07 +0300  44)       usage
868b2b66 (kx 2024-12-20 16:11:07 +0300  45)       exit 1
868b2b66 (kx 2024-12-20 16:11:07 +0300  46)     fi
868b2b66 (kx 2024-12-20 16:11:07 +0300  47)     break
868b2b66 (kx 2024-12-20 16:11:07 +0300  48)   fi
868b2b66 (kx 2024-12-20 16:11:07 +0300  49) done
868b2b66 (kx 2024-12-20 16:11:07 +0300  50) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  51) if [ ! -d "${TARGET_DEST_DIR}" ] ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300  52)   echo -e "\n${program}: ERROR: --target-dest-dir is not a directory.\n"
868b2b66 (kx 2024-12-20 16:11:07 +0300  53)   usage
868b2b66 (kx 2024-12-20 16:11:07 +0300  54)   exit 1
868b2b66 (kx 2024-12-20 16:11:07 +0300  55) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300  56) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  57) #
868b2b66 (kx 2024-12-20 16:11:07 +0300  58) # Absolute path:
868b2b66 (kx 2024-12-20 16:11:07 +0300  59) #
868b2b66 (kx 2024-12-20 16:11:07 +0300  60) if [ "${TARGET_DEST_DIR:0:1}" != "/" ] ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300  61)   TARGET_DEST_DIR=${CWD}/${TARGET_DEST_DIR}
868b2b66 (kx 2024-12-20 16:11:07 +0300  62) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300  63) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  64) #
868b2b66 (kx 2024-12-20 16:11:07 +0300  65) # Remove last '/' char:
868b2b66 (kx 2024-12-20 16:11:07 +0300  66) #
868b2b66 (kx 2024-12-20 16:11:07 +0300  67) if [ "${TARGET_DEST_DIR: -1}" = "/" ] ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300  68)   len=${#TARGET_DEST_DIR}
868b2b66 (kx 2024-12-20 16:11:07 +0300  69)   let "len = len - 1"
868b2b66 (kx 2024-12-20 16:11:07 +0300  70)   tmp="${TARGET_DEST_DIR:0:$len}"
868b2b66 (kx 2024-12-20 16:11:07 +0300  71)   TARGET_DEST_DIR=${tmp}
868b2b66 (kx 2024-12-20 16:11:07 +0300  72) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300  73) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  74) SYSTEM_ACDIR="${TARGET_DEST_DIR}/${ACDIR}"
868b2b66 (kx 2024-12-20 16:11:07 +0300  75) SYSTEM_INCDIR="${TARGET_DEST_DIR}/${INCDIR}"
868b2b66 (kx 2024-12-20 16:11:07 +0300  76) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  77) ################################################################
868b2b66 (kx 2024-12-20 16:11:07 +0300  78) # Libtool:
868b2b66 (kx 2024-12-20 16:11:07 +0300  79) #
868b2b66 (kx 2024-12-20 16:11:07 +0300  80) libtoolize --force --copy
868b2b66 (kx 2024-12-20 16:11:07 +0300  81) #
868b2b66 (kx 2024-12-20 16:11:07 +0300  82) # Используется если в configure.ac вызывается LT_INIT.
868b2b66 (kx 2024-12-20 16:11:07 +0300  83) # Patch необходим по тому, что и lib-ld.m4 и libtool.m4
868b2b66 (kx 2024-12-20 16:11:07 +0300  84) # используют функцию AC_ARG_WITH([gnu-ld], ...
868b2b66 (kx 2024-12-20 16:11:07 +0300  85) # а это приводит к тому, что ./configure --help дважды
868b2b66 (kx 2024-12-20 16:11:07 +0300  86) # выдает подсказку --with-gnu-ld :
868b2b66 (kx 2024-12-20 16:11:07 +0300  87) #
868b2b66 (kx 2024-12-20 16:11:07 +0300  88) patch -p0 < $CWD/config/patches/libtool.m4.patch
868b2b66 (kx 2024-12-20 16:11:07 +0300  89) patch -p0 < $CWD/config/patches/libtool.m4-shared.patch
868b2b66 (kx 2024-12-20 16:11:07 +0300  90) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  91) #
868b2b66 (kx 2024-12-20 16:11:07 +0300  92) # End of Libtool.
868b2b66 (kx 2024-12-20 16:11:07 +0300  93) ################################################################
868b2b66 (kx 2024-12-20 16:11:07 +0300  94) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  95) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  96) aclocal --install -I m4 --force --system-acdir=${SYSTEM_ACDIR}
868b2b66 (kx 2024-12-20 16:11:07 +0300  97) autoheader --include=${SYSTEM_INCDIR}
868b2b66 (kx 2024-12-20 16:11:07 +0300  98) automake --gnu --add-missing --copy --force-missing
868b2b66 (kx 2024-12-20 16:11:07 +0300  99) autoconf --force
868b2b66 (kx 2024-12-20 16:11:07 +0300 100) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 101) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 102) ################################################################
868b2b66 (kx 2024-12-20 16:11:07 +0300 103) # Remove cache and back files:
868b2b66 (kx 2024-12-20 16:11:07 +0300 104) #
868b2b66 (kx 2024-12-20 16:11:07 +0300 105) rm -rf autom4te.cache *~
868b2b66 (kx 2024-12-20 16:11:07 +0300 106) #
868b2b66 (kx 2024-12-20 16:11:07 +0300 107) # End of Cleanup.
868b2b66 (kx 2024-12-20 16:11:07 +0300 108) ################################################################