openpkg.sh 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. #!@l_prefix@/lib/openpkg/bash
  2. ##
  3. ## openpkg.sh -- OpenPKG maintainance utility (frontend)
  4. ## Copyright (c) 2000-2003 The OpenPKG Project <http://www.openpkg.org/>
  5. ## Copyright (c) 2000-2003 Ralf S. Engelschall <rse@engelschall.com>
  6. ## Copyright (c) 2000-2003 Cable & Wireless <http://www.cw.com/>
  7. ##
  8. ## Permission to use, copy, modify, and distribute this software for
  9. ## any purpose with or without fee is hereby granted, provided that
  10. ## the above copyright notice and this permission notice appear in all
  11. ## copies.
  12. ##
  13. ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  14. ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
  15. ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  16. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
  17. ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  18. ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  19. ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  20. ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  21. ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  22. ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  23. ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  24. ## SUCH DAMAGE.
  25. ##
  26. # program information
  27. progname="openpkg"
  28. progvers="@version@"
  29. l_prefix="@l_prefix@"
  30. # try to determine Perl interpreter
  31. perl=""
  32. for dir in $l_prefix/bin `echo $PATH | sed -e 's;:; ;g'` /bin /usr/bin /usr/local/bin; do
  33. if [ -f "$dir/perl" ]; then
  34. perl="$dir/perl"
  35. break
  36. fi
  37. done
  38. # command line option parsing
  39. if [ $# -eq 0 ]; then
  40. echo "$progname:USAGE: $progname index|build [options]"
  41. exit 0
  42. fi
  43. while [ ".$1" != . ]; do
  44. case "$1" in
  45. -h )
  46. echo "$progname:USAGE: $progname index|build [options]"
  47. exit 0
  48. ;;
  49. -v )
  50. echo "$progname $progvers (OpenPKG instance: $l_prefix)"
  51. exit 0
  52. ;;
  53. -* )
  54. echo "$progname:ERROR: invalid option \"$1\"" 1>&2
  55. exit 1
  56. ;;
  57. * )
  58. break
  59. ;;
  60. esac
  61. done
  62. # command dispatching
  63. case "$1" in
  64. index )
  65. if [ ".$perl" = . ]; then
  66. echo "$progname:ERROR: \"index\" command requires a Perl interpreter" 1>&2
  67. exit 1
  68. fi
  69. shift
  70. exec $perl ${l_prefix}/lib/openpkg/openpkg-index.pl ${1+"$@"}
  71. ;;
  72. build )
  73. if [ ".$perl" = . ]; then
  74. echo "$progname:ERROR: \"build\" command requires a Perl interpreter" 1>&2
  75. exit 1
  76. fi
  77. shift
  78. exec $perl ${l_prefix}/lib/openpkg/openpkg-build.pl ${1+"$@"}
  79. ;;
  80. * )
  81. echo "$progname:ERROR: invalid command \"$1\"" 1>&2
  82. exit 1
  83. ;;
  84. esac