From fd54e438f44a1841e1bf7fb858bb77821c78324a Mon Sep 17 00:00:00 2001 From: "Rafael G. Martins" Date: Tue, 11 Oct 2016 02:35:35 +0200 Subject: git-receiver: detect if make/gmake is available --- src/blogc-git-receiver/pre-receive.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/blogc-git-receiver') diff --git a/src/blogc-git-receiver/pre-receive.c b/src/blogc-git-receiver/pre-receive.c index 056ebf2..faa0c62 100644 --- a/src/blogc-git-receiver/pre-receive.c +++ b/src/blogc-git-receiver/pre-receive.c @@ -150,6 +150,21 @@ bgr_pre_receive_hook(int argc, char *argv[]) goto cleanup; } + const char *make_impl = NULL; + + if (127 != system("gmake -f /dev/null &> /dev/null")) { + make_impl = "gmake"; + } + else if (127 != system("make -f /dev/null &> /dev/null")) { + make_impl = "make"; + } + + if (make_impl == NULL) { + fprintf(stderr, "error: no 'make' implementation found\n"); + rv = 1; + goto cleanup; + } + unsigned long epoch = time(NULL); output_dir = bc_strdup_printf("%s/builds/%s-%lu", home, master, epoch); char *gmake_cmd = bc_strdup_printf( -- cgit v1.2.3-18-g5258