summaryrefslogtreecommitdiff
path: root/build-recipe-collax
blob: 723034cafc46eca841266e8ae8ad7b81393590c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#
# Copyright 2015  Zarafa B.V. and its licensors
#
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free Software
# Foundation; either version 2 or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
# details.
#

recipe_setup_collax() {
	TOPDIR="/usr/src/packages"
	test "$DO_INIT_TOPDIR" != false && rm -Rf "$BUILD_ROOT/$TOPDIR"
	mkdir -p "$BUILD_ROOT/$TOPDIR"/{SOURCES,SOURCES.DEB,DEBS,OTHER}
	cp -p "$MYSRCDIR"/* "$BUILD_ROOT/$TOPDIR/SOURCES/"
	chown -R "$ABUILD_UID:$ABUILD_GID" "$BUILD_ROOT/$TOPDIR"
}

recipe_prepare_collax() {
	DEB_SOURCEDIR="$TOPDIR/SOURCES"
	DEB_DSCFILE="$RECIPEFILE"
	chmod -v +x "$BUILD_ROOT/$DEB_SOURCEDIR/build.collax"
	ln -fsv build.collax "$BUILD_ROOT/$DEB_SOURCEDIR/build"
}

collax_build() {
	local buildroot="$1"

	if test -n "$RUN_SHELL"; then
		chroot "$buildroot" su -
		ret=$?
	else
		chroot "$buildroot" su - $BUILD_USER -c \
			"cd $TOPDIR/SOURCES && ./build"
		ret=$?
	fi
	if test "$ret" = 0; then
		BUILD_SUCCEEDED=true
	fi
}

collax_move_build_result() {
	for f in "$BUILD_ROOT/$DEB_SOURCEDIR"/*.{deb,changes}; do
		test -f "$f" && mv -v "$f" "$BUILD_ROOT/$TOPDIR/DEBS/"
	done
}

recipe_build_collax() {
	collax_build "$BUILD_ROOT"
	collax_move_build_result
}

recipe_resultdirs_collax() {
	echo DEBS
}

recipe_cleanup_collax() {
	:
}