]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
[master] added todos.pl for win32 build
authorEvan Hunt <each@isc.org>
Wed, 3 Jul 2013 18:43:05 +0000 (11:43 -0700)
committerEvan Hunt <each@isc.org>
Wed, 3 Jul 2013 18:43:05 +0000 (11:43 -0700)
3608. [port] win32: added todos.pl script to ensure all text files
the win32 build depends on are converted to DOS
newline format. [RT #22067]

CHANGES
win32utils/BuildSetup.bat
win32utils/todos.pl [new file with mode: 0644]
win32utils/win32-build.txt

diff --git a/CHANGES b/CHANGES
index 97c55be41c3bbf077463f112a5f123b2753a5214..9fcb86bb582a1fc327b4ee3ed909866b722af0ff 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,7 @@
+3608.  [port]          win32: added todos.pl script to ensure all text files
+                       the win32 build depends on are converted to DOS
+                       newline format. [RT #22067]
+
 3607.  [bug]           dnssec-keygen had broken 'Invalid keyfile' error
                        message. [RT #34045]
 
index 21f198caca2397790ebbf0b83e8fc882905e76ac..f0b907d8078b4671c0661d7bbddc94824d8c71fe 100644 (file)
@@ -24,6 +24,9 @@ cd ..
 copy config.h.win32 config.h
 cd win32utils
 
+rem Make sure all the files that need to be in DOS format really are
+perl todos.pl
+
 rem Get and update for the latest build of the openssl and libxml libraries
 perl updateopenssl.pl
 perl updatelibxml2.pl
diff --git a/win32utils/todos.pl b/win32utils/todos.pl
new file mode 100644 (file)
index 0000000..a149465
--- /dev/null
@@ -0,0 +1,39 @@
+#!/usr/bin/perl
+#
+# Copyright (C) 2013  Internet Systems Consortium, Inc. ("ISC")
+#
+# Permission to use, copy, modify, and/or distribute this software for any
+# purpose with or without fee is hereby granted, provided that the above
+# copyright notice and this permission notice appear in all copies.
+#
+# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
+# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+# AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
+# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
+# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
+# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
+
+# todos.pl
+# This script performs the equivalent of unix2dos on all the files in
+# the BIND 9 source tree that require DOS-style newlines when building
+# for win32.
+#
+# Path and directory
+use strict;
+use File::Find;
+
+sub todos {
+        local ($^I, @ARGV) = (defined, @_);
+        while (<>) {
+                s/[\r\n]+$/\r\n/;
+                print;
+        }
+}
+
+sub wanted {
+        return unless -f && $_ =~ qr/\.(mak|dsp|dsw|txt|bat)$/;
+        todos $File::Find::dir . "/" . $_;
+}
+
+finddepth(\&wanted, "..");
index fa4939ad2acb22d47bc2907aef67c88043dad5b0..c03ab3f4a13aceb16d2c4014bdc1ef55da425548 100644 (file)
@@ -104,11 +104,16 @@ the BIND9 root:
 
   cd bind-9.10.0\win32utils
 
+Text files used by the Windows build should be in DOS format.
+If for some reason they aren't, this can be corrected by running:
+
+  perl todos.pl
+
 If you wish to use PKCS #11 to control a cryptographic hardware service
 module, set the path to the PKCS #11 provider library:
 
   perl setpk11provider.pl <DLL path>
-  
+
 If using VC++ 6.0, run the BuildAll.bat file:
 
   BuildAll