maint: run "make update-copyright"
[platform/upstream/automake.git] / tests / autodist-no-duplicate.test
1 #! /bin/sh
2 # Copyright (C) 2011-2012 Free Software Foundation, Inc.
3 #
4 # This program is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2, or (at your option)
7 # any later version.
8 #
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
16
17 # Check that there are no duplicates in the list of files automatically
18 # distributed by automake.
19
20 . ./defs || Exit 1
21
22 re='Files .*automatically distributed.*if found'
23
24 # The automake manual states that the list of automatically-distributed
25 # files should be given by `automake --help'.
26
27 list1=`$AUTOMAKE --help \
28         | sed -n "/^$re.*always/,/^ *$/p" \
29         | sed 1d`
30 list1=`echo $list1`
31
32 list2=`$AUTOMAKE --help \
33         | sed -n "/^$re.*under certain conditions/,/^ *$/p" \
34         | sed 1d`
35 list2=`echo $list2`
36
37 test -n "$list1"
38 test -n "$list2"
39
40 st=0
41 for i in 1 2; do
42   eval list=\${list$i}
43   for f in $list; do echo $f; done | sort > files$i.lst
44   uniq files$i.lst > files$i.uniq
45   cat files$i.lst
46   cat files$i.uniq
47   diff files$i.lst files$i.uniq || st=1
48 done
49
50 Exit $st