summaryrefslogtreecommitdiff
path: root/Porting
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2002-03-25 16:57:10 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2002-03-25 16:57:10 +0000
commit9a715e865e72ae0889250688904757201b677045 (patch)
tree50d32aa0b8884528c8db890b96f6066a98815b53 /Porting
parentc0ce4e02dc8b34e35f898a97a2a25eb5f8e26eef (diff)
downloadperl-9a715e865e72ae0889250688904757201b677045.tar.gz
Clarify the 8.3 rule.
p4raw-id: //depot/perl@15491
Diffstat (limited to 'Porting')
-rw-r--r--Porting/check83.pl11
1 files changed, 11 insertions, 0 deletions
diff --git a/Porting/check83.pl b/Porting/check83.pl
index 0522bc0d33..7ec1d43e41 100644
--- a/Porting/check83.pl
+++ b/Porting/check83.pl
@@ -3,6 +3,17 @@
# Check whether there are naming conflicts when names are truncated to
# the DOSish case-ignoring 8.3 format, plus other portability no-nos.
+# The "8.3 rule" is "if reducing the directory entry names within one
+# directory to lowercase and 8.3-truncated causes conflicts, that's
+# a bad thing". So the rule is NOT "no filename shall be longer
+# than eight and a suffix if present not longer than three".
+
+# TODO: this doesn't actually check for *directory entries*, what
+# this does is to check for *MANIFES entries*, which are only files,
+# not directories. In other words, a conflict between a directory
+# "abcdefghx" and a file "abcdefghy" wouldn't be noticed-- or even
+# for a directory "abcdefgh" and a file "abcdefghy".
+
sub eight_dot_three {
my ($dir, $base, $ext) = ($_[0] =~ m!^(?:(.+)/)?([^/.]+)(?:\.([^/.]+))?$!);
my $file = $base . defined $ext ? ".$ext" : "";