]> git.saurik.com Git - bison.git/commitdiff
Fix some .gitignore and .cvsignore problems.
authorJoel E. Denny <jdenny@ces.clemson.edu>
Wed, 16 Jul 2008 06:05:14 +0000 (02:05 -0400)
committerJoel E. Denny <jdenny@ces.clemson.edu>
Wed, 16 Jul 2008 06:05:14 +0000 (02:05 -0400)
* bootstrap (insert_sorted_if_absent): Replace all uses with...
(insert_vc_ignore): ... this new function, which prepends `/' to all
.gitignore entries before passing them to insert_sorted_if_absent.
* bootstrap.conf (vc_ignore): Set to '.cvsignore .gitignore' so that
.cvsignore files are maintained even though Bison developers run
bootstrap while using Git.
* .cvsignore (*.patch *.log log patches applied): Remove, apparently
unneeded by Bison.
(gnulib): Add.
* .gitignore (/*.patch *.log log patches applied): Remove, broken and
unneeded.  Reported by Eric Blake.
* lib/.gitignore (/*~): Add.
* po/.cvsignore, runtime-po/.cvsignore: Sync with .gitignore.
* examples/calc++/.gitignore (/calc++.exe): Add.  Reported by Eric
Blake.
* src/.gitignore (/bison.exe): Add.  Reported by Eric Blake.

.cvsignore
.gitignore
ChangeLog
bootstrap
bootstrap.conf
examples/calc++/.gitignore
lib/.gitignore
po/.cvsignore
runtime-po/.cvsignore
src/.gitignore

index 006f8fe3a3fc991a641b1fdae66da3cc46cb8433..d89800ef39e638c2b437522d0dc72280cbee97ce 100644 (file)
@@ -1,6 +1,5 @@
 *.cache
 *.flc
-*.patch *.log log patches applied
 *.prj
 .version
 ABOUT-NLS
@@ -21,6 +20,7 @@ config.status
 configure
 configure.lineno
 conftest*
+gnulib
 javacomp.sh
 javaexec.sh
 patches
index dcc16144d19a632357884bba273912fde6f32d6a..440a9300628b78afef8483f36da3c0ccf84641c5 100644 (file)
@@ -1,6 +1,5 @@
 /*.cache
 /*.flc
-/*.patch *.log log patches applied
 /*.prj
 /.version
 /ABOUT-NLS
index 6a019e334ae2e9d80de43baca2418a47deb4c213..8ac70e0e735896232ff52a272ed79c508a902a2e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,23 @@
+2008-07-15  Joel E. Denny  <jdenny@ces.clemson.edu>
+
+       Fix some .gitignore and .cvsignore problems.
+       * bootstrap (insert_sorted_if_absent): Replace all uses with...
+       (insert_vc_ignore): ... this new function, which prepends `/' to all
+       .gitignore entries before passing them to insert_sorted_if_absent.
+       * bootstrap.conf (vc_ignore): Set to '.cvsignore .gitignore' so that
+       .cvsignore files are maintained even though Bison developers run
+       bootstrap while using Git.
+       * .cvsignore (*.patch *.log log patches applied): Remove, apparently
+       unneeded by Bison.
+       (gnulib): Add.
+       * .gitignore (/*.patch *.log log patches applied): Remove, broken and
+       unneeded.  Reported by Eric Blake.
+       * lib/.gitignore (/*~): Add.
+       * po/.cvsignore, runtime-po/.cvsignore: Sync with .gitignore.
+       * examples/calc++/.gitignore (/calc++.exe): Add.  Reported by Eric
+       Blake.
+       * src/.gitignore (/bison.exe): Add.  Reported by Eric Blake.
+
 2008-07-15  Joel E. Denny  <jdenny@ces.clemson.edu>
 
        Improve forward-compatibility with GNU M4.  Reported by Eric Blake at
index 9923ff04e93b22b5eb184f6dd83ab6f63c50659f..85d06a234251af3ac93e8a869fd60c36fc23e9ca 100755 (executable)
--- a/bootstrap
+++ b/bootstrap
@@ -211,7 +211,7 @@ if test -n "$checkout_only_file" && test ! -r "$checkout_only_file"; then
   exit 1
 fi
 
-# If $STR is not already on a line by itself in $FILE, insert it,
+# If each line in $STR is not already on a line by itself in $FILE, insert it,
 # sorting the new contents of the file and replacing $FILE with the result.
 insert_sorted_if_absent() {
   file=$1
@@ -222,6 +222,21 @@ insert_sorted_if_absent() {
     || exit 1
 }
 
+# Adjust $PATTERN for $VC_IGNORE_FILE and insert it with
+# insert_sorted_if_absent.
+insert_vc_ignore() {
+  vc_ignore_file="$1"
+  case $vc_ignore_file in
+  *.gitignore)
+    # A .gitignore entry that does not start with `/' applies recursively to
+    # subdirectories, so prepend `/' to every .gitignore entry.
+    pattern=`echo "$2" | sed s,^,/,`;;
+  *)
+    pattern="$2";;
+  esac
+  insert_sorted_if_absent "$vc_ignore_file" "$pattern"
+}
+
 # Die if there is no AC_CONFIG_AUX_DIR($build_aux) line in configure.ac.
 found_aux_dir=no
 grep '^[        ]*AC_CONFIG_AUX_DIR(\['"$build_aux"'\])' configure.ac \
@@ -240,7 +255,7 @@ if test ! -d $build_aux; then
   mkdir $build_aux
   for dot_ig in x $vc_ignore; do
     test $dot_ig = x && continue
-    insert_sorted_if_absent $dot_ig $build_aux
+    insert_vc_ignore $dot_ig $build_aux
   done
 fi
 
@@ -350,7 +365,7 @@ check_dst_dir()
     for dot_ig in x $vc_ignore; do
       test $dot_ig = x && continue
       ig=$parent/$dot_ig
-      insert_sorted_if_absent $ig `echo "$dst_dir"|sed 's,.*/,,'`
+      insert_vc_ignore $ig `echo "$dst_dir"|sed 's,.*/,,'`
     done
   fi
 }
@@ -507,18 +522,18 @@ slurp() {
       test $dot_ig = x && continue
       ig=$dir/$dot_ig
       if test -n "$copied"; then
-       insert_sorted_if_absent $ig "$copied"
+       insert_vc_ignore $ig "$copied"
        # If an ignored file name ends with _.h, then also add
        # the name with just ".h".  Many gnulib headers are generated,
        # e.g., stdint_.h -> stdint.h, dirent_.h ->..., etc.
        # Likewise for .gperf -> .h, .y -> .c, and .sin -> .sed
        f=`echo "$copied"|sed 's/_\.h$/.h/;s/\.sin$/.sed/;s/\.y$/.c/;s/\.gperf$/.h/'`
-       insert_sorted_if_absent $ig "$f"
+       insert_vc_ignore $ig "$f"
 
        # For files like sys_stat_.h and sys_time_.h, record as
        # ignorable the directory we might eventually create: sys/.
        f=`echo "$copied"|sed 's/sys_.*_\.h$/sys/'`
-       insert_sorted_if_absent $ig "$f"
+       insert_vc_ignore $ig "$f"
       fi
     done
   done
index f443ccc21e062abbd0d61073cb860f22e60079c0..7cb7a12e8fb8cefe0bf722bb06c7b6f2cd1c076a 100644 (file)
@@ -65,3 +65,7 @@ excluded_files='
     m4/visibility.m4
     m4/xsize.m4
 '
+
+# In directories like lib/, m4/, and po/, generate both these files because we
+# still try to support CVS emulation.
+vc_ignore='.cvsignore .gitignore'
index c0764cef120f0348f7f5ffd3e5a20a8583626479..2050491fe4532fdd2888d03251bc8043b72115a2 100644 (file)
@@ -10,3 +10,4 @@
 /Makefile
 /Makefile.in
 /calc++
+/calc++.exe
index 9d2d22d42b94847d6ecc6eb1e0f459be7ea19e26..fc74edbb621390d776ad7b6dc86d439b5170987a 100644 (file)
@@ -1,5 +1,6 @@
 /*.a
 /*.o
+/*~
 /.deps
 /Makefile
 /Makefile.in
index 648116eb350314c7a8d8c4b31f7b8fbc51c60d91..db44d74ec508b9fffc3792f7e7a45fef7f593162 100644 (file)
@@ -1,5 +1,7 @@
 *.gmo
 *.po
+*.po~
+.reference
 LINGUAS
 Makefile
 Makefile.in
index 0317254708a9a83f6f342d3e9473ce46aa0b650d..aad7a480bfab26a91454d8717689613ddc27837a 100644 (file)
@@ -1,5 +1,7 @@
 *.gmo
 *.po
+*.po~
+.reference
 LINGUAS
 Makefile
 Makefile.in
index 086efc92e8102bf93050fa09a9cc463e54a81c8c..1c1015b4087a92444002cd7f85cf8de11ebc5d8b 100644 (file)
@@ -6,6 +6,7 @@
 /Makefile
 /Makefile.in
 /bison
+/bison.exe
 /revision.c
 /scan-code.c
 /scan-gram.c