]>
git.madduck.net Git - code/mbuild.git/blobdiff - sbuild-wrapper.sh
madduck's git repository
Every one of the projects in this repository is available at the canonical
URL git://git.madduck.net/madduck/pub/<projectpath> — see
each project's metadata for the exact URL.
All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@ git. madduck. net .
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
SSH access, as well as push access can be individually
arranged .
If you use my repositories frequently, consider adding the following
snippet to ~/.gitconfig and using the third clone URL listed for each
project:
[url "git://git.madduck.net/madduck/"]
insteadOf = madduck:
echo
echo "Valid options are:"
cat <<-_eof | column -s\& -t
echo
echo "Valid options are:"
cat <<-_eof | column -s\& -t
- --dist & specify the target distribution (default: sid )
+ --dist & specify the target distribution (default: from changes file )
--arch & specify the target architecture (default: $DEB_BUILD_ARCH)
-sa & pass --force-orig-source to sbuild
-B & do a binary-only build
--arch & specify the target architecture (default: $DEB_BUILD_ARCH)
-sa & pass --force-orig-source to sbuild
-B & do a binary-only build
sbuild_args=
schangesfile=
arch=
sbuild_args=
schangesfile=
arch=
for opt in "$@"; do
case "$opt" in
-h|--help) usage; exit 0;;
-V|--version) about; exit 0;;
--arch=*) arch="${opt#--arch=}";;
for opt in "$@"; do
case "$opt" in
-h|--help) usage; exit 0;;
-V|--version) about; exit 0;;
--arch=*) arch="${opt#--arch=}";;
- --dist=*) dist="${opt#--dist=} ";;
+ -D) sbuild_args="${sbuild_args:+$sbuild_args }$opt ";;
-sa) sbuild_args="${sbuild_args:+$sbuild_args }--force-orig-source";;
-B) binonly=1;;
--*) sbuild_args="${sbuild_args:+$sbuild_args }$opt";;
-sa) sbuild_args="${sbuild_args:+$sbuild_args }--force-orig-source";;
-B) binonly=1;;
--*) sbuild_args="${sbuild_args:+$sbuild_args }$opt";;
- echo "E: unknown option: $opt" >&1
+ echo "E: unknown option: $opt" >&2
fi
[ -z "$arch" ] && arch="$DEB_BUILD_ARCH"
fi
[ -z "$arch" ] && arch="$DEB_BUILD_ARCH"
-[ -z "$dist" ] && dist="unstable"
+
+dist="$(sed -ne 's,Distribution: ,,p' "$schangesfile")"
schangesfile_basename="${schangesfile##*/}"
schangesfile_basename="${schangesfile##*/}"
+packagename="${schangesfile_basename%%_*}"
packagenameversion="${schangesfile_basename%_*}"
packagenameversion="${schangesfile_basename%_*}"
+debversion="${packagenameversion#*_}"
+upstream_version="${debversion%-*}"
+dscfile_basename="$packagenameversion".dsc
case "$schangesfile" in
*/*) cd "${schangesfile%/*}";;
case "$schangesfile" in
*/*) cd "${schangesfile%/*}";;
+dcmd "$dscfile_basename" | while read f; do
+ test -f "$f" && continue
+
+ case "$f" in
+ *.tar.gz)
+ last_version="$(apt-cache madison mdadm | sed -rne "s,.+(\<${upstream_version}[^[:space:]]+).*,\1,p")"
+ echo "I: fetching missing tarball for $upstream_version (from $last_version)…" >&2
+ apt-get --tar-only --only-source source "${packagename}=${last_version}"
+ ;;
+ *)
+ echo "E: I do not know how to obtain the file: $f" >&2
+ exit 1
+ ;;
+ esac
+done
+
[ "$binonly" = 0 ] && sbuild_args="${sbuild_args:+$sbuild_args }--source --arch-all"
sbuild $sbuild_args --arch="$arch" --dist="$dist" --keyid=$KEYID \
[ "$binonly" = 0 ] && sbuild_args="${sbuild_args:+$sbuild_args }--source --arch-all"
sbuild $sbuild_args --arch="$arch" --dist="$dist" --keyid=$KEYID \
- "$packagenameversion".dsc
changesfile="${packagenameversion}_${arch}.changes"
changesfile="${packagenameversion}_${arch}.changes"
-mv "$changesfile" "${changesfile}.binonly"
-mergechanges "$schangesfile" "${changesfile}.binonly" > "$changesfile"
-rm "${changesfile}.binonly" "$schangesfile"
+#mergechanges "$schangesfile" "$changesfile" > temp-combined.changes
+#mv temp-combined.changes "$changesfile"
+#changestool "$changesfile" updatechecksums
+#sign_changes_file "$changesfile"
dinstall "$dist" "$changesfile"
dinstall "$dist" "$changesfile"