openpkg.sh 2.8 KB

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