From 9d958ce582fa760456b52d65a2deb36d8bd3794a Mon Sep 17 00:00:00 2001 From: Matthieu Patou Date: Sun, 10 Oct 2010 10:12:46 +1100 Subject: build: make make tests SCREEN=1 work on freebsd --- selftest/in_screen | 17 +++++++++++++++-- selftest/target/Samba4.pm | 7 +++++-- 2 files changed, 20 insertions(+), 4 deletions(-) (limited to 'selftest') diff --git a/selftest/in_screen b/selftest/in_screen index 8a3cc5c601..927d83109b 100755 --- a/selftest/in_screen +++ b/selftest/in_screen @@ -1,10 +1,24 @@ -#!/bin/bash +#!/usr/bin/env bash export TMPDIR="$SELFTEST_TMPDIR" SERVERNAME="$ENVNAME" [ -z "$SERVERNAME" ] && SERVERNAME="base" basedir=$TMPDIR +osname=$(uname) +if [ "$osname" = "Linux" ]; then + vars=$(mktemp) +else + vars=$(mktemp -t tmpsmb) + function seq() { + dpt=$1 + end=$2 + while [ $dpt -le $end ]; do + echo "$dpt" + dpt=$(( $dpt + 1)) + done + } +fi [ -r $basedir/$SERVERNAME.pid ] && { for i in $(seq 2 100); do @@ -19,7 +33,6 @@ rm -f $basedir/$SERVERNAME.* # set most of the environment vars we have in the screen session too _ENV="" -vars=$(mktemp) printenv | egrep -v '^TERMCAP|^WINDOW|^SHELL|^STY|^SHLVL|^SAMBA_VALGRIND|\$' | egrep '^[A-Z]' | diff --git a/selftest/target/Samba4.pm b/selftest/target/Samba4.pm index 36023f21c7..574c015a11 100644 --- a/selftest/target/Samba4.pm +++ b/selftest/target/Samba4.pm @@ -88,6 +88,7 @@ sub check_or_start($$$) POSIX::mkfifo($env_vars->{SAMBA_TEST_FIFO}, 0700); unlink($env_vars->{SAMBA_TEST_LOG}); + my $pwd = `pwd`; print "STARTING SAMBA for $ENV{ENVNAME}\n"; my $pid = fork(); if ($pid == 0) { @@ -138,9 +139,11 @@ sub check_or_start($$$) if (defined($ENV{SAMBA_PROCESS_MODEL})) { $model = $ENV{SAMBA_PROCESS_MODEL}; } - my $ret = system("$valgrind $samba $optarg $env_vars->{CONFIGURATION} -M $model -i"); + chomp($pwd); + my $cmdline = "$valgrind ${pwd}/$samba $optarg $env_vars->{CONFIGURATION} -M $model -i"; + my $ret = system("$cmdline"); if ($ret == -1) { - print "Unable to start $samba: $ret: $!\n"; + print "Unable to start $cmdline: $ret: $!\n"; exit 1; } my $exit = ($ret >> 8); -- cgit