summaryrefslogtreecommitdiffstats
path: root/test/local.at
blob: 7bfb73495e04b1b6d5cceb0bc6e14705c01e1d2e (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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
AT_COPYRIGHT([Copyright (C) 2007,2008 Hans Ulrich Niedermann])
AT_TESTED([autom4te autoconf autoheader autoupdate autoreconf])
# Local initialization of the test environment would happen here


dnl Run proper python interpreter
dnl AT_PYTHON_TO_PATH()dnl
m4_define([AT_PYTHON_TO_PATH], [dnl
AS_IF([test -x "$PYTHON"], [pybindir=`dirname "$PYTHON"`
AS_IF([test -d "$pybindir"], [dnl
ifs=$IFS
found=false
IFS=:
for p in $PATH
do
	IFS=$ifs
	if test "x$pybindir" = "x$p"
	then
		found=:
		break
	fi
done
IFS=$ifs
if $found; then
	PATH="$pybindir:$PATH"
	export PATH
fi
])dnl
])dnl
])dnl


dnl AT_NBB
m4_define([AT_NBB], [dnl
$(if test "${NBB_SCRIPT-nbb}" = "nbb"; then echo "nbb"; else echo $PYTHON $NBB_SCRIPT; fi)dnl
])dnl


dnl AT_WRAP_GIT([stuff-to-do-with-git-repo])dnl
m4_define([AT_WRAP_GIT], [dnl
AT_CHECK([mkdir test.dir && cd test.dir])
AT_CHECK([cd test.dir && git init], [0],
[Initialized empty Git repository in .git/
])dnl
$1
AT_CHECK([rm -rf test.dir])dnl
])dnl


dnl AT_WRAP_GIT_SCONS([stuff-to-do-with-tree])dnl
m4_define([AT_WRAP_GIT_SCONS], [dnl
AT_WRAP_GIT([dnl
AT_DATA([test.dir/SConstruct], [dnl
# Test
env = Environment()
env.Configure()
prog = env.Program('foobar',
                   source=@<:@'foobar.c'@:>@)
env.Install('/usr/bin', prog)
env.Alias('install', '/usr/bin')
])
AT_DATA([test.dir/foobar.c], [dnl
#include <stdio.h>
int main(int argc, char *argv@<:@@:>@) {
    printf("FOOBAR!\n");
    return 0;
}
])dnl
$1
])dnl
])dnl


dnl AT_CREATE_GIT_AM()dnl
m4_define([AT_CREATE_GIT_AM], [dnl
AT_CHECK([mkdir test.git && cd test.git])
AT_CHECK([cd test.git && git init], [0],
[Initialized empty Git repository in .git/
])
AT_DATA([test.git/configure.ac], [dnl
AC[_]INIT(nbb git/automake test, 1.2.3, invalid@invalid.invalid, nbb-git-am-test)
AC_CONFIG_SRCDIR([foobar.c])
AM[_]INIT_AUTOMAKE([-Wall foreign])
AC_PROG_CC
AC_PROG_INSTALL
AC[_]CONFIG_FILES(@<:@Makefile@:>@)
AC[_]OUTPUT
])dnl
AT_DATA([test.git/Makefile.am], [dnl
TESTS = foobar
bin_PROGRAMS = foobar
foobar_SOURCES = foobar.c
])dnl
AT_DATA([test.git/foobar.c], [dnl
#include <stdio.h>
int main(int argc, char *argv@<:@@:>@) {
    printf("FOOBAR!\n");
    return 0;
}
])dnl
])dnl

m4_define([AT_REMOVE_GIT_AM], [dnl
AT_CHECK([rm -rf test.git])
])dnl