Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use xbt_cfg_setdefault everywhere.
[simgrid.git] / tools / check_dist_archive
index 38fe76d..d282149 100755 (executable)
@@ -13,7 +13,7 @@ fi
 
 if [ $# -lt 1 -o $# -gt 3 ]; then
     cat <<EOF
-Usage: $0 [-batch] archive.tar.gz [git_url [git_branch]]
+Usage: $0 [-batch] archive.tar.gz [git_url [git_reference]]
 EOF
     exit 1
 fi
@@ -26,10 +26,10 @@ fi
 
 if [ $# -ge 2 ]; then
     giturl=$2
-    gitbranch=${3:-master}
+    gitref=${3:-master}
 else
     giturl=$(git rev-parse --show-toplevel)
-    gitbranch=$(git branch | sed -n '/^\*/{s/^..//;p;}')
+    gitref=HEAD
 fi
 
 tmpdir=$(mktemp -d)
@@ -60,8 +60,8 @@ tar --directory "$tmpdir" \
     --transform 's!^[^/]*!a!' \
     --extract --gunzip --file "$archive"
 
-echo "Copying git repository: $giturl/$gitbranch -> $git_dir"
-git archive --format=tar --prefix="b/" --remote="$giturl" "$gitbranch" \
+echo "Copying git repository: $giturl/$gitref -> $git_dir"
+git archive --format=tar --prefix="b/" --remote="$giturl" "$gitref" \
     | tar --directory "$tmpdir" --extract --file -
 
 fa=from_tgz
@@ -86,7 +86,13 @@ diffcmd() {
         echo "The archive looks good."
     else
         status=1
-        echo "Some files are missing and/or unexpected in the archive."
+        cat <<EOF
+ERROR: Some files are missing and/or unexpected in the archive.
+* lines beginning with '-' give files that are unexpected in the archive
+* lines beginning with '+' give files that are missing from the archive
+Please fix CMake files (e.g. "buildtools/Cmake/DefinePackages.cmake"),
+and/or "tools/check_dist_archive.exclude".
+EOF
         diff -u "$fa" "$fb"
     fi
 }
@@ -94,9 +100,9 @@ diffcmd() {
 colordiff=$(type -p colordiff)
 colorless() {
     if [ -x "$colordiff" ]; then
-        "$colordiff" | less -R -F
+        "$colordiff" | less -R -F -X
     else
-        less -F
+        less -F -X
     fi
 }