make sure the version installed is updated on a testup with changed files
authorTony Cook <tony@develop-help.com>
Sat, 26 Feb 2011 02:16:01 +0000 (13:16 +1100)
committerTony Cook <tony@develop-help.com>
Sat, 26 Feb 2011 02:57:00 +0000 (13:57 +1100)
.gitignore
MANIFEST
MANIFEST.SKIP
Makefile
site/util/bse_versiondeps.pl [new file with mode: 0644]
site/util/check_versions.pl

index 259ff89..1f108e9 100644 (file)
@@ -1,3 +1,4 @@
+MANIFEST.bak
 test.cfg
 INSTALL.html
 INSTALL.txt
index e7d1e76..0563934 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
@@ -718,6 +718,7 @@ site/util/bse_s3.pl
 site/util/bse_session_clean.pl
 site/util/bse_storage.pl
 site/util/bse_thumb.pl
+site/util/bse_versiondeps.pl
 site/util/bseaddimages.pl
 site/util/bsexlsprod.pl
 site/util/check_versions.pl
index 908de2b..605ee3d 100644 (file)
@@ -5,6 +5,7 @@
 \.gitignore$
 ^\.svn/
 /\.svn/
+^\.git/
 ^test\.cfg$
 ^test-.*cfg$
 ^nswfitc\.cfg$
index 27e0ec2..2d8f39c 100755 (executable)
--- a/Makefile
+++ b/Makefile
@@ -5,7 +5,8 @@ DISTTAR=../$(DISTNAME).tar
 DISTTGZ=$(DISTTAR).gz
 WEBBASE=/home/httpd/html/bse
 
-MODULES=$(shell grep cgi-bin/.*\.pm MANIFEST | sed -e '/^\#/d' -e 's/[ \t].*// -e /^site\/cgi-bin\/modules\/BSE\/Modules\.pm$/d' )
+MODULES=$(shell grep cgi-bin/.*\.pm MANIFEST | sed -e '/^\#/d' -e 's/[ \t].*//' -e '/^site\/cgi-bin\/modules\/BSE\/\(Modules\|Version\)\.pm/d' )
+VERSIONDEPS=$(shell perl site/util/bse_versiondeps.pl MANIFEST)
 
 help:
        @echo make dist - build the tar.gz file and copy to distribution directory
@@ -83,7 +84,7 @@ site/util/mysql.str: schema/bse.sql
 
 version: site/cgi-bin/modules/BSE/Version.pm
 
-site/cgi-bin/modules/BSE/Version.pm: Makefile
+site/cgi-bin/modules/BSE/Version.pm: $(VERSIONDEPS)
        perl site/util/bse_mkgitversion.pl $(VERSION) site/cgi-bin/modules/BSE/Version.pm
 
 modversion: site/cgi-bin/modules/BSE/Modules.pm
diff --git a/site/util/bse_versiondeps.pl b/site/util/bse_versiondeps.pl
new file mode 100644 (file)
index 0000000..b0d199b
--- /dev/null
@@ -0,0 +1,15 @@
+#!perl -l
+use strict;
+use ExtUtils::Manifest qw(maniread);
+
+my $mani_name = shift || "MANIFEST";
+
+my $mani = maniread($mani_name);
+
+for (sort { lc $a cmp lc $b } keys %$mani) {
+  /(Version|Modules)\.pm$/ and next;
+  /::/ and next;
+  print;
+}
+
+-d ".git" and print ".git";
index fd532f1..4831025 100644 (file)
@@ -6,7 +6,7 @@ my %vers;
 my @check = `git status -s`;
 chomp @check;
 @check = sort grep /cgi-bin\/.*\.pm$/, @check;
-@check = grep !m(BSE/Modules\.pm), @check;
+@check = grep !m(BSE/(Modules|Version)\.pm), @check;
 my @errors;
 for my $check (@check) {
   $check =~ /^D/ and next;