lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [5109] Check execute permission


From: Greg Chicares
Subject: [lmi-commits] [5109] Check execute permission
Date: Thu, 23 Sep 2010 23:32:13 +0000

Revision: 5109
          http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=5109
Author:   chicares
Date:     2010-09-23 23:32:13 +0000 (Thu, 23 Sep 2010)
Log Message:
-----------
Check execute permission

Modified Paths:
--------------
    lmi/trunk/ChangeLog
    lmi/trunk/GNUmakefile

Modified: lmi/trunk/ChangeLog
===================================================================
--- lmi/trunk/ChangeLog 2010-09-23 00:52:36 UTC (rev 5108)
+++ lmi/trunk/ChangeLog 2010-09-23 23:32:13 UTC (rev 5109)
@@ -26815,3 +26815,9 @@
   workhorse.make
 Refactor for simplicity.
 
+20100923T2332Z <address@hidden> [656]
+
+  GNUmakefile
+Check execute permission. This would detect the defects removed
+20100225T1616Z, 20100316T0205Z, and 20100719T1357Z.
+

Modified: lmi/trunk/GNUmakefile
===================================================================
--- lmi/trunk/GNUmakefile       2010-09-23 00:52:36 UTC (rev 5108)
+++ lmi/trunk/GNUmakefile       2010-09-23 23:32:13 UTC (rev 5109)
@@ -304,6 +304,17 @@
 
################################################################################
 
 # Check conformity to certain formatting rules; count lines and defects.
+#
+# The tests in $(build_directory) identify object ('.o') files with no
+# corresponding autodependency ('.d') file, and zero-byte '.d' files.
+# Either of these suggests a build failure that may render dependency
+# files invalid; 'make clean' should provide symptomatic relief.
+#
+# The '$(LS) --classify' test somewhat loosely identifies source files
+# whose executable bit is improperly set. It is properly set iff the
+# file starts with a hash-bang; to avoid the cost of opening every
+# file, a simple heuristic is used, '*.sh *.sed' being the only files
+# permitted (though not required) to be executable.
 
 xml_files := $(wildcard *.cns *.ill *.xml *.xrc *.xsd *.xsl)
 
@@ -323,6 +334,9 @@
        @$(RM) --force BOY
        @for z in $(build_directory)/*.d; do [ -s $$z ]         || echo $$z; 
done;
        @for z in $(build_directory)/*.o; do [ -f $${z%%.o}.d ] || echo $$z; 
done;
+       @$(LS) --classify ./* \
+         | $(SED) -e'/\*$$/!d' -e'/^\.\//!d' -e'/.sh\*$$/d' -e'/.sed\*$$/d' \
+         | $(SED) -e's/^/Improperly executable: /'
        @$(ECHO) "  Problems detected by xmllint:"
        @for z in $(xml_files); \
          do \




reply via email to

[Prev in Thread] Current Thread [Next in Thread]