]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
[v9_8] added todos.pl for win32 build
authorEvan Hunt <each@isc.org>
Wed, 3 Jul 2013 18:43:40 +0000 (11:43 -0700)
committerEvan Hunt <each@isc.org>
Wed, 3 Jul 2013 18:44:07 +0000 (11:44 -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]
(cherry picked from commit 1da46be57223340c07ea8505d485ec4397a4e484)

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

diff --git a/CHANGES b/CHANGES
index 9cd2629fff198d32429e3914c97d5d3c246ca528..6310c6e1d67530155b9585e848530abbd342c7fe 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 7ac6baa3a6dd0d6cb20d8d1d315622e23d370f2b..2cbf8a0c29eacb3a403062cc435aba8190435c8c 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 8f8c9f9a36136f19b6e58667240785b5a664ac92..0ea90c5074aa9117a30fa52432bfb36288fa0ade 100644 (file)
@@ -98,13 +98,18 @@ You must build openssl and libxml2 first.
 From the command prompt cd to the win32utils directory under
 the BIND9 root:
 
-  cd bind-9.7.0\win32utils
+  cd bind-9.8.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