42 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
| #!/usr/bin/env bash
 | |
| 
 | |
| # The script to build the Debian package, as ran inside the Docker image.
 | |
| 
 | |
| set -ex
 | |
| 
 | |
| # Get the codename from distro env
 | |
| DIST=$(cut -d ':' -f2 <<< "${distro:?}")
 | |
| 
 | |
| # we get a read-only copy of the source: make a writeable copy
 | |
| cp -aT /synapse/source /synapse/build
 | |
| cd /synapse/build
 | |
| 
 | |
| # if this is a prerelease, set the Section accordingly.
 | |
| #
 | |
| # When the package is later added to the package repo, reprepro will use the
 | |
| # Section to determine which "component" it should go into (see
 | |
| # https://manpages.debian.org/stretch/reprepro/reprepro.1.en.html#GUESSING)
 | |
| 
 | |
| DEB_VERSION=$(dpkg-parsechangelog -SVersion)
 | |
| case $DEB_VERSION in
 | |
|     *~rc*|*~a*|*~b*|*~c*)
 | |
|         sed -ie '/^Section:/c\Section: prerelease' debian/control
 | |
|         ;;
 | |
| esac
 | |
| 
 | |
| # add an entry to the changelog for this distribution
 | |
| dch -M -l "+$DIST" "build for $DIST"
 | |
| dch -M -r "" --force-distribution --distribution "$DIST"
 | |
| 
 | |
| dpkg-buildpackage -us -uc
 | |
| 
 | |
| ls -l ..
 | |
| 
 | |
| # copy the build results out, setting perms if necessary
 | |
| shopt -s nullglob
 | |
| for i in ../*.deb ../*.dsc ../*.tar.xz ../*.changes ../*.buildinfo; do
 | |
|     [ -z "$TARGET_USERID" ] || chown "$TARGET_USERID" "$i"
 | |
|     [ -z "$TARGET_GROUPID" ] || chgrp "$TARGET_GROUPID" "$i"
 | |
|     mv "$i" /debs
 | |
| done
 |