summaryrefslogtreecommitdiff
path: root/t/instdir2.sh
blob: 834078bd7af4a3eac2821e3c6be9fe0567021f08 (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
#! /bin/sh
# Copyright (C) 2009-2013 Free Software Foundation, Inc.
#
# 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.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

# If $(foodir) is the empty string, then nothing should be installed there.
# This test ensures this also if $(foo_PRIMARY) is nonempty, see
# 'instdir.sh'.

. test-init.sh

cat >>configure.ac <<'END'
AC_SUBST([foodir], ['${datadir}'/foo])
AC_OUTPUT
END

mkdir sub

cat >Makefile.am <<'END'
bin_SCRIPTS = s
nobase_bin_SCRIPTS = ns sub/ns
data_DATA = d
nobase_data_DATA = nd sub/nd
include_HEADERS = h
nobase_include_HEADERS = nh sub/nh
foo_DATA = f
nobase_foo_DATA = nf sub/nf
bardir = $(datadir)/bar
bar_DATA = b
nobase_bar_DATA = nb sub/nb
man1_MANS = m1.1
man_MANS = m.2
notrans_man1_MANS = nm1.1
notrans_man_MANS = nm.2
END

: >s
: >ns
: >sub/ns
: >d
: >nd
: >sub/nd
: >h
: >nh
: >sub/nh
: >f
: >nf
: >sub/nf
: >b
: >nb
: >sub/nb
: >m1.1
: >m.2
: >nm1.1
: >nm.2

$ACLOCAL
$AUTOCONF
$AUTOMAKE --add-missing

cwd=$(pwd) || fatal_ "getting current working directory"
instdir=$cwd/inst
destdir=$cwd/dest
mkdir build
cd build
../configure --prefix="$instdir"
$MAKE

bindir= datadir= includedir= foodir= bardir= man1dir= man2dir=
export bindir datadir includedir foodir bardir man1dir man2dir

$MAKE -e install
test ! -e "$instdir"
$MAKE -e install DESTDIR="$destdir"
test ! -e "$instdir"
test ! -e "$destdir"
$MAKE -e uninstall > stdout || { cat stdout; exit 1; }
cat stdout
grep 'rm -f' stdout && exit 1
$MAKE -e uninstall DESTDIR="$destdir"

: