aboutsummaryrefslogtreecommitdiffhomepage
path: root/distrib/check-list
blob: 6f22987489c3be0ba4400a286979b0b619b1f853 (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
#!/bin/sh

. ./config.distrib

echo
echo The Coq Check List
echo ------------------
echo

COQPACKAGE=coq-$VERSION
CONFIGFILE=$COQPACKAGE/configure

version=`grep "^VERSION=" $CONFIGFILE | sed -e 's/^VERSION=\(.*\)/\1/'`
versionsi=`grep "^VERSIONSI=" $CONFIGFILE | sed -e 's/^VERSIONSI=\(.*\)/\1/'`
coqdate=`grep "^DATE=" $CONFIGFILE | sed -e 's/^DATE=\(.*\)/\1/'`

echo "According to the configure file of the archive to be released"
echo "  The release version is V$version"
echo "  The SearchIsos release version is V$versionsi"
echo "  The date is $coqdate"
echo
echo "Comparing datas with expected ones"

if [ ! "$version" = "$VERSION" ]; then
	 echo "Inconsistent version number";exit
fi
if [ ! "$versionsi" = "$VERSIONSI" ]; then
	echo "Inconsistent SearchIsos version number";exit
fi
if [ ! "$date" = "$DATE" ]; then
	echo "Inconsistent date release";exit
fi

echo "Please answer y or n to questions"

if grep $version $COQPACKAGE/src/meta/library.ml > /dev/null; then
  echo "Found a reference to $version in library.ml..."
  echo "   ... I guess the magic numbers have been changed"
else
  echo 'Found no trace that the magic numbers are changed in library.ml'
  echo -n 'Is it still OK? '
  read a
  if [ "$a" != 'y' -a "$a" != 'Y' ]; then echo Aborting; exit 1; fi
fi

readmeversion=`grep "THE COQ .* SYSTEM" $COQPACKAGE/README | sed -e 's/.*THE COQ \(.*\) SYSTEM.*/\1/'`
if [ "$readmeversion" = "" ]
then echo "Failed to find version number in README; please check by hand"
else
  echo -n The README file seems to mention version number $readmeversion ...
  if [ $readmeversion = V$version ]
  then echo " it seems OK"
  else echo -n " is that really OK? "
     read a
     if [ "$a" != 'y' -a "$a" != 'Y' ]; then echo Aborting; exit 1; fi
  fi
fi

readmewinversion=`grep "THE COQ .* SYSTEM" $COQPACKAGE/README.win | sed -e 's/.*THE COQ \(.*\) SYSTEM.*/\1/'`
if [ "$readmewinversion" = "" ]
then echo "Failed to find version number in README.win; please check by hand"
else
  echo -n The README.win file seems to mention version number $readmewinversion ...
  if [ $readmewinversion = V$version ]
  then echo " it seems OK"
  else echo -n " is that really OK? "
     read a
     if [ "$a" != 'y' -a "$a" != 'Y' ]; then echo Aborting; exit 1; fi
  fi
fi

ocamlversion=`grep "You need Objective-Caml .* or later" $CONFIGFILE | sed -e 's/.*Objective-Caml \(.*\) or later.*/\1/'`
echo -n The configure file seems to require O\'Caml version $ocamlversion ...
echo -n " is that OK? "
read a
if [ "$a" != 'y' -a "$a" != 'Y' ]; then echo Aborting; exit 1; fi

versionspec1=`grep "^Version: " ./coq.spec | sed -e 's!^Version: \(.*\)!\1!'`
versionspec2=`grep "^Source: " ./coq.spec | sed -e 's!.*coq-\(.*\)\.tar\.gz.*!\1!'`
if [ "$versionspec1" = "$version" -a "$versionspec2" = "$version" ];
then echo "Version number in coq.spec seems OK ($versionspec1)";
else
  echo "Wrong version numbers in coq.spec ($versionspec1 and $versionspec2)"
  echo Aborting; exit 1
fi
#  ocamlversionspec=`grep "^Requires: ocaml" ./coq.spec | sed -e 's/Requires: ocaml >= \(.*\)/\1/'`
#  if [ "$ocamlversionspec" = "$ocamlversion" ]
#  then echo "Required version of Objective Caml in coq.spec seems OK ($ocamlversionspec)"
#  else
#    echo "Wrong version of required Objective Caml in coq.spec ($ocamlversionspec)"
#    echo Aborting; exit 1
#  fi

camlp4version=`grep "You need Camlp4 .* or later" $CONFIGFILE | sed -e 's/.*Camlp4 \(.*\) or later.*/\1/'`
echo -n The configure file seems to require Camlp4 version $camlp4version ...
echo -n " is that OK? "
read a
if [ "$a" != 'y' -a "$a" != 'Y' ]; then echo Aborting; exit 1; fi
echo Check list completed