summaryrefslogtreecommitdiff
path: root/localpdebuild
blob: 5ad993af7d3e262929f5f12814f9c5d2a2a3ea1f (plain)
  1. #!/bin/sh
  2. #
  3. # Copyright © 2005-2008 Jonas Smedegaard <dr@jones.dk>
  4. # Description: Compile Debian package inside pbuilder environment
  5. #
  6. # This program is free software; you can redistribute it and/or modify
  7. # it under the terms of the GNU General Public License as published by
  8. # the Free Software Foundation; either version 2, or (at your option)
  9. # any later version.
  10. #
  11. # This program is distributed in the hope that it will be useful, but
  12. # WITHOUT ANY WARRANTY; without even the implied warranty of
  13. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  14. # General Public License for more details.
  15. #
  16. # You should have received a copy of the GNU General Public License
  17. # along with this program; if not, write to the Free Software
  18. # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
  19. # 02111-1307 USA.
  20. #
  21. # Depends: pbuilder, devscripts
  22. set -e
  23. PRG=$(basename "$0")
  24. showhelp() {
  25. cat <<EOF
  26. Usage: $PRG POOL [debbuildopts] [-- pbuilderopts]
  27. Example: $PRG sarge_with_hacks -B
  28. EOF
  29. }
  30. if [ $# -eq 0 ]; then
  31. showhelp
  32. exit 1
  33. fi
  34. pools=''
  35. pdebuildopts=''
  36. debbuildopts=''
  37. while [ $# -gt 0 ]; do
  38. case $1 in
  39. -h|--help)
  40. showhelp
  41. exit 0
  42. ;;
  43. --)
  44. shift
  45. break
  46. ;;
  47. --*)
  48. echo "ERROR: Unknown argument \"$1\"!" >&2
  49. showhelp
  50. exit 1
  51. ;;
  52. -*)
  53. debbuildopts="$debbuildopts $1"
  54. shift
  55. ;;
  56. *)
  57. pools="$pools $1"
  58. shift
  59. ;;
  60. esac
  61. done
  62. for pool in $pools; do
  63. pdebuild \
  64. --buildresult $HOME/src/pbuild-$pool/ \
  65. ${debbuildopts:+--debbuildopts "$debbuildopts"} \
  66. $pdebuildopts \
  67. -- \
  68. --basetgz /var/cache/pbuilder/base-$pool.tgz \
  69. --buildplace /var/cache/pbuilder/build-$pool/ \
  70. --aptcache /var/cache/pbuilder/aptcache-$pool/ \
  71. --pkgname-logfile \
  72. $@
  73. done