[PATCH 2 of 4] builddeb: add --distid option to specify Distributor ID
Anton Shestakov
av6 at dwimlabs.net
Thu Dec 3 06:09:51 CST 2015
# HG changeset patch
# User Anton Shestakov <av6 at dwimlabs.net>
# Date 1448435703 -28800
# Wed Nov 25 15:15:03 2015 +0800
# Node ID 0430482d6e4d5f474799f84bb1d91bf5811b4031
# Parent a038414cc0ccbf0874c506765c4ca7e09358bb17
builddeb: add --distid option to specify Distributor ID
This allows builddeb to handle distributions that are not Debian.
Distributor ID is reported by lsb_release --id, and in case of builddeb it's
usually Debian or Ubuntu.
diff --git a/Makefile b/Makefile
--- a/Makefile
+++ b/Makefile
@@ -162,11 +162,11 @@ osx:
deb:
mkdir -p packages/debian-unknown
- contrib/builddeb --codename unknown
+ contrib/builddeb --distid debian --codename unknown
docker-debian-jessie:
mkdir -p packages/debian-jessie
- contrib/dockerdeb jessie
+ contrib/dockerdeb debian jessie
fedora20:
mkdir -p packages/fedora20
diff --git a/contrib/builddeb b/contrib/builddeb
--- a/contrib/builddeb
+++ b/contrib/builddeb
@@ -8,9 +8,15 @@
BUILD=1
CLEANUP=1
+DISTID=debian
CODENAME=jessie
while [ "$1" ]; do
case "$1" in
+ --distid )
+ shift
+ DISTID="$1"
+ shift
+ ;;
--codename )
shift
CODENAME="$1"
@@ -82,7 +88,7 @@ if [ "$BUILD" ]; then
fi
if [ "$CLEANUP" ] ; then
echo
- OUTPUTDIR=${OUTPUTDIR:=packages/debian-$CODENAME}
+ OUTPUTDIR=${OUTPUTDIR:=packages/$DISTID-$CODENAME}
find ../mercurial*.deb ../mercurial_*.build ../mercurial_*.changes \
-type f -newer $control -print0 | \
xargs -Inarf -0 mv narf "$OUTPUTDIR"
diff --git a/contrib/dockerdeb b/contrib/dockerdeb
--- a/contrib/dockerdeb
+++ b/contrib/dockerdeb
@@ -8,8 +8,9 @@ export ROOTDIR=$(cd $BUILDDIR/..; pwd)
checkdocker
-CODENAME="$1"
-PLATFORM="debian-$1"
+DISTID="$1"
+CODENAME="$2"
+PLATFORM="$1-$2"
shift # extra params are passed to build process
OUTPUTDIR=${OUTPUTDIR:=$ROOTDIR/packages/$PLATFORM}
@@ -26,8 +27,8 @@ if [ $(uname) = "Darwin" ] ; then
sh -c "cd /mnt/$dn && make clean && make local"
fi
$DOCKER run -u $DBUILDUSER --rm -v $PWD/..:/mnt $CONTAINER \
- sh -c "cd /mnt/$dn && DEB_BUILD_OPTIONS='${DEB_BUILD_OPTIONS:=}' contrib/builddeb --build --codename $CODENAME"
-contrib/builddeb --cleanup --codename $CODENAME
+ sh -c "cd /mnt/$dn && DEB_BUILD_OPTIONS='${DEB_BUILD_OPTIONS:=}' contrib/builddeb --build --distid $DISTID --codename $CODENAME"
+contrib/builddeb --cleanup --distid $DISTID --codename $CODENAME
if [ $(uname) = "Darwin" ] ; then
$DOCKER run -u $DBUILDUSER --rm -v $PWD/..:/mnt $CONTAINER \
sh -c "cd /mnt/$dn && make clean"
More information about the Mercurial-devel
mailing list