You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by hw...@apache.org on 2010/08/10 19:03:37 UTC

svn commit: r984122 [3/40] - in /subversion/branches/ignore-mergeinfo: ./ build/ build/ac-macros/ build/generator/ build/generator/swig/ build/generator/templates/ build/generator/util/ build/hudson/ build/hudson/jobs/ build/hudson/jobs/subversion-1.6....

Modified: subversion/branches/ignore-mergeinfo/build/generator/gen_win.py
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/generator/gen_win.py?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/generator/gen_win.py (original)
+++ subversion/branches/ignore-mergeinfo/build/generator/gen_win.py Tue Aug 10 17:03:06 2010
@@ -1,8 +1,34 @@
 #
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
+#
 # gen_win.py -- base class for generating windows projects
 #
 
 import os
+try:
+  # Python >=2.5
+  from hashlib import md5 as hashlib_md5
+except ImportError:
+  # Python <2.5
+  from md5 import md5 as hashlib_md5
 import sys
 import fnmatch
 import re
@@ -55,8 +81,10 @@ class GeneratorBase(gen_base.GeneratorBa
     self.openssl_path = None
     self.junit_path = None
     self.swig_path = None
-    self.vsnet_version = '7.00'
-    self.vsnet_proj_ver = '7.00'
+    self.vs_version = '2002'
+    self.sln_version = '7.00'
+    self.vcproj_version = '7.00'
+    self.vcproj_extension = '.vcproj'
     self.sqlite_path = 'sqlite-amalgamation'
     self.skip_sections = { 'mod_dav_svn': None,
                            'mod_authz_svn': None,
@@ -127,19 +155,34 @@ class GeneratorBase(gen_base.GeneratorBa
         self.disable_shared = 1
       elif opt == '--vsnet-version':
         if val == '2002' or re.match('7(\.\d+)?', val):
-          self.vsnet_version = '7.00'
-          self.vsnet_proj_ver = '7.00'
+          self.vs_version = '2002'
+          self.sln_version = '7.00'
+          self.vcproj_version = '7.00'
+          self.vcproj_extension = '.vcproj'
         elif val == '2003' or re.match('8(\.\d+)?', val):
-          self.vsnet_version = '8.00'
-          self.vsnet_proj_ver = '7.10'
+          self.vs_version = '2003'
+          self.sln_version = '8.00'
+          self.vcproj_version = '7.10'
+          self.vcproj_extension = '.vcproj'
         elif val == '2005' or re.match('9(\.\d+)?', val):
-          self.vsnet_version = '9.00'
-          self.vsnet_proj_ver = '8.00'
+          self.vs_version = '2005'
+          self.sln_version = '9.00'
+          self.vcproj_version = '8.00'
+          self.vcproj_extension = '.vcproj'
         elif val == '2008' or re.match('10(\.\d+)?', val):
-          self.vsnet_version = '10.00'
-          self.vsnet_proj_ver = '9.00'
+          self.vs_version = '2008'
+          self.sln_version = '10.00'
+          self.vcproj_version = '9.00'
+          self.vcproj_extension = '.vcproj'
+        elif val == '2010':
+          self.vs_version = '2010'
+          self.sln_version = '11.00'
+          self.vcproj_version = '10.0'
+          self.vcproj_extension = '.vcxproj'
         else:
-          self.vsnet_version = val
+          print('WARNING: Unknown VS.NET version "%s",'
+                 ' assuming "%s"\n' % (val, '7.00'))
+
 
   def __init__(self, fname, verfname, options):
 
@@ -178,24 +221,12 @@ class WinGeneratorBase(GeneratorBase):
     GeneratorBase.__init__(self, fname, verfname, options)
 
     if self.bdb_lib is not None:
-      sys.stderr.write("Found %s.lib in %s\n" % (self.bdb_lib, self.bdb_path))
+      print("Found %s.lib in %s\n" % (self.bdb_lib, self.bdb_path))
     else:
-      sys.stderr.write("BDB not found, BDB fs will not be built\n")
+      print("BDB not found, BDB fs will not be built\n")
 
     if subdir == 'vcnet-vcproj':
-      if self.vsnet_version == '7.00':
-        sys.stderr.write('Generating for VS.NET 2002\n')
-      elif self.vsnet_version == '8.00':
-        sys.stderr.write('Generating for VS.NET 2003\n')
-      elif self.vsnet_version == '9.00':
-        sys.stderr.write('Generating for VS.NET 2005\n')
-      elif self.vsnet_version == '10.00':
-        sys.stderr.write('Generating for VS.NET 2008\n')
-      else:
-        sys.stderr.write('WARNING: Unknown VS.NET version "%s",'
-                         ' assuming "%s"\n' % (self.vsnet_version, '7.00'))
-        self.vsnet_version = '7.00'
-        self.vsnet_proj_ver = '7.00'
+      print('Generating for Visual Studio %s\n' % self.vs_version)
 
     # Find the right Ruby include and libraries dirs and
     # library name to link SWIG bindings with
@@ -277,9 +308,9 @@ class WinGeneratorBase(GeneratorBase):
     #Here we can add additional platforms to compile for
     self.platforms = ['Win32']
 
-    # VS2002 and VS2003 only allow a single platform per project file
+    # VC 2002 and VC 2003 only allow a single platform per project file
     if subdir == 'vcnet-vcproj':
-      if self.vsnet_version != '7.00' and self.vsnet_version != '8.00':
+      if self.vcproj_version != '7.00' and self.vcproj_version != '7.10':
         self.platforms = ['Win32','x64']
 
     #Here we can add additional modes to compile for
@@ -294,6 +325,20 @@ class WinGeneratorBase(GeneratorBase):
     else:
       print("%s not found; skipping SWIG file generation..." % self.swig_exe)
 
+  def makeguid(self, data):
+    "Generate a windows style GUID"
+    ### blah. this function can generate invalid GUIDs. leave it for now,
+    ### but we need to fix it. we can wrap the apr UUID functions, or
+    ### implement this from scratch using the algorithms described in
+    ### http://www.webdav.org/specs/draft-leach-uuids-guids-01.txt
+
+    myhash = hashlib_md5(data).hexdigest()
+
+    guid = ("{%s-%s-%s-%s-%s}" % (myhash[0:8], myhash[8:12],
+                                  myhash[12:16], myhash[16:20],
+                                  myhash[20:32])).upper()
+    return guid
+
   def path(self, *paths):
     """Convert build path to msvc path and prepend root"""
     return msvc_path_join(self.rootpath, *list(map(msvc_path, paths)))
@@ -350,6 +395,9 @@ class WinGeneratorBase(GeneratorBase):
           else:
             dll_targets.append(self.create_dll_target(target))
     install_targets.extend(dll_targets)
+    
+    for target in install_targets:
+      target.project_guid = self.makeguid(target.name)
 
     # sort these for output stability, to watch out for regressions.
     install_targets.sort(key = lambda t: t.name)
@@ -896,7 +944,7 @@ class WinGeneratorBase(GeneratorBase):
 
     if not self.sqlite_inline:
       fakelibdirs.append(self.apath(self.sqlite_path, "lib"))
-      
+
     if self.sasl_path:
       fakelibdirs.append(self.apath(self.sasl_path, "lib"))
     if self.serf_lib:
@@ -1059,6 +1107,7 @@ class WinGeneratorBase(GeneratorBase):
                                                    'contrib/masmx86/*.asm'))),
                          ('zlib_headers',
                           glob.glob(os.path.join(zlib_path, '*.h'))),
+                         ('project_guid', self.makeguid('zlib')),
                         ))
 
   def write_neon_project_file(self, name):
@@ -1079,6 +1128,7 @@ class WinGeneratorBase(GeneratorBase):
                          ('openssl_path',
                           self.openssl_path
                             and os.path.abspath(self.openssl_path)),
+                         ('project_guid', self.makeguid('neon')),
                         ))
 
   def write_serf_project_file(self, name):
@@ -1102,16 +1152,17 @@ class WinGeneratorBase(GeneratorBase):
                             and os.path.abspath(self.openssl_path)),
                          ('apr_path', os.path.abspath(self.apr_path)),
                          ('apr_util_path', os.path.abspath(self.apr_util_path)),
+                         ('project_guid', self.makeguid('serf')),
                         ))
 
   def move_proj_file(self, path, name, params=()):
     ### Move our slightly templatized pre-built project files into place --
-    ### these projects include apr, zlib, neon, locale, config, etc.
+    ### these projects include zlib, neon, serf, locale, config, etc.
 
     dest_file = os.path.join(path, name)
     source_template = name + '.ezt'
     data = {
-      'version' : self.vsnet_proj_ver,
+      'version' : self.vcproj_version,
       'configs' : self.configs,
       'platforms' : self.platforms
       }
@@ -1136,8 +1187,8 @@ class WinGeneratorBase(GeneratorBase):
       else:
         msg = 'Could not detect perl version.'
         self.perl_lib = 'perl56.lib'
-      sys.stderr.write('%s\n  Perl bindings will be linked with %s\n'
-                       % (msg, self.perl_lib))
+      print('%s\n  Perl bindings will be linked with %s\n'
+             % (msg, self.perl_lib))
     finally:
       fp.close()
 
@@ -1159,8 +1210,8 @@ class WinGeneratorBase(GeneratorBase):
       else:
         msg = 'Could not detect Ruby version.'
         self.ruby_lib = 'msvcrt-ruby18.lib'
-      sys.stderr.write('%s\n  Ruby bindings will be linked with %s\n'
-                       % (msg, self.ruby_lib))
+      print('%s\n  Ruby bindings will be linked with %s\n'
+             % (msg, self.ruby_lib))
     finally:
       proc.close()
 
@@ -1212,8 +1263,7 @@ class WinGeneratorBase(GeneratorBase):
     except (ImportError, EnvironmentError):
       pass
     if self.jdk_path:
-      sys.stderr.write("Found JDK version %s in %s\n"
-                       % (jdk_ver, self.jdk_path))
+      print("Found JDK version %s in %s\n" % (jdk_ver, self.jdk_path))
 
   def _find_swig(self):
     # Require 1.3.24. If not found, assume 1.3.25.
@@ -1241,20 +1291,20 @@ class WinGeneratorBase(GeneratorBase):
         version = tuple(map(int, vermatch.groups()))
         # build/ac-macros/swig.m4 explains the next incantation
         vernum = int('%d%02d%03d' % version)
-        sys.stderr.write('Found installed SWIG version %d.%d.%d\n' % version)
+        print('Found installed SWIG version %d.%d.%d\n' % version)
         if vernum < minimum_vernum:
-          sys.stderr.write('WARNING: Subversion requires version %s\n'
-                           % minimum_version)
+          print('WARNING: Subversion requires version %s\n'
+                 % minimum_version)
 
         libdir = self._find_swig_libdir()
       else:
-        sys.stderr.write('Could not find installed SWIG,'
-                         ' assuming version %s\n' % default_version)
+        print('Could not find installed SWIG,'
+               ' assuming version %s\n' % default_version)
         self.swig_libdir = ''
       outfp.close()
     except OSError:
-      sys.stderr.write('Could not find installed SWIG,'
-                       ' assuming version %s\n' % default_version)
+      print('Could not find installed SWIG,'
+             ' assuming version %s\n' % default_version)
       self.swig_libdir = ''
 
     self.swig_vernum = vernum
@@ -1265,10 +1315,10 @@ class WinGeneratorBase(GeneratorBase):
     try:
       libdir = fp.readline().rstrip()
       if libdir:
-        sys.stderr.write('Using SWIG library directory %s\n' % libdir)
+        print('Using SWIG library directory %s\n' % libdir)
         return libdir
       else:
-        sys.stderr.write('WARNING: could not find SWIG library directory\n')
+        print('WARNING: could not find SWIG library directory\n')
     finally:
       fp.close()
     return ''
@@ -1287,7 +1337,7 @@ class WinGeneratorBase(GeneratorBase):
       else:
         msg = 'Could not find ML, ZLib build will not use ASM sources'
         self.have_ml = 0
-      sys.stderr.write('%s\n' % (msg,))
+      print('%s\n' % (msg,))
     finally:
       fp.close()
 
@@ -1316,7 +1366,7 @@ class WinGeneratorBase(GeneratorBase):
         msg = 'WARNING: Error while determining neon version\n'
         self.neon_lib = None
 
-    sys.stderr.write(msg)
+    print(msg)
 
   def _get_serf_version(self):
     "Retrieves the serf version from serf.h"
@@ -1366,11 +1416,11 @@ class WinGeneratorBase(GeneratorBase):
                   (self.serf_ver, '.'.join(str(v) for v in minimal_serf_version))
           else:
             msg = 'Found serf version %s\n' % self.serf_ver
-        sys.stderr.write(msg)
+        print(msg)
       else:
-        sys.stderr.write('openssl not found, ra_serf will not be built\n')
+        print('openssl not found, ra_serf will not be built\n')
     else:
-      sys.stderr.write('serf not found, ra_serf will not be built\n')
+      print('serf not found, ra_serf will not be built\n')
 
   def _find_apr(self):
     "Find the APR library and version"
@@ -1446,7 +1496,7 @@ class WinGeneratorBase(GeneratorBase):
     vermatch = re.search(r'^\s*#define\s+SQLITE_VERSION\s+"(\d+)\.(\d+)\.(\d+)"', txt, re.M)
 
     version = tuple(map(int, vermatch.groups()))
-    
+
 
     self.sqlite_version = '%d.%d.%d' % version
 
@@ -1458,7 +1508,7 @@ class WinGeneratorBase(GeneratorBase):
                        "(%s found)\n" % self.sqlite_version);
       sys.exit(1)
     else:
-      sys.stderr.write(msg % self.sqlite_version)
+      print(msg % self.sqlite_version)
 
   def _create_sqlite_headers(self):
     "Transform sql files into header files"
@@ -1466,6 +1516,7 @@ class WinGeneratorBase(GeneratorBase):
     import transform_sql
     sql_sources = [
       os.path.join('subversion', 'libsvn_fs_fs', 'rep-cache-db'),
+      os.path.join('subversion', 'libsvn_fs_fs', 'revprops-db'),
       os.path.join('subversion', 'libsvn_wc', 'wc-metadata'),
       os.path.join('subversion', 'libsvn_wc', 'wc-checks'),
       ]

Modified: subversion/branches/ignore-mergeinfo/build/generator/neon.vcproj.ezt
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/generator/neon.vcproj.ezt?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/generator/neon.vcproj.ezt (original)
+++ subversion/branches/ignore-mergeinfo/build/generator/neon.vcproj.ezt Tue Aug 10 17:03:06 2010
@@ -1,9 +1,28 @@
-<?xml version="1.0" encoding = "Windows-1252"?>
+[define COPYRIGHT]
+<!--
+     Licensed to the Apache Software Foundation (ASF) under one
+     or more contributor license agreements.  See the NOTICE file
+     distributed with this work for additional information
+     regarding copyright ownership.  The ASF licenses this file
+     to you under the Apache License, Version 2.0 (the
+     "License"); you may not use this file except in compliance
+     with the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing,
+     software distributed under the License is distributed on an
+     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+     KIND, either express or implied.  See the License for the
+     specific language governing permissions and limitations
+     under the License.
+-->
+[end]<?xml version="1.0" encoding = "Windows-1252"?>
 <VisualStudioProject
 	ProjectType="Visual C++"
 	Version="[version]"
 	Name="neon"
-	ProjectGUID="{5BA0C76C-0CE4-4858-A206-22C5C45E4648}"
+	ProjectGUID="[project_guid]"
 	Keyword="MakeFileProj">
 	<Platforms>
 [for platforms]		<Platform
@@ -13,6 +32,7 @@
 [for platforms]		<Configuration
 			Name="Debug|[platforms]"
 			OutputDirectory="Debug"
+			BuildLogFile="$(IntDir)\BuildLog_$(ProjectName).htm"
 			IntermediateDirectory="Debug"
 			ConfigurationType="0"
 			ManagedExtensions="1"
@@ -28,6 +48,7 @@
 		<Configuration
 			Name="Release|[platforms]"
 			OutputDirectory="Release"
+			BuildLogFile="$(IntDir)\BuildLog_$(ProjectName).htm"
 			IntermediateDirectory="Release"
 			ConfigurationType="0"
 			ManagedExtensions="1"

Modified: subversion/branches/ignore-mergeinfo/build/generator/serf.vcproj.ezt
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/generator/serf.vcproj.ezt?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/generator/serf.vcproj.ezt (original)
+++ subversion/branches/ignore-mergeinfo/build/generator/serf.vcproj.ezt Tue Aug 10 17:03:06 2010
@@ -1,9 +1,28 @@
-<?xml version="1.0" encoding = "Windows-1252"?>
+[define COPYRIGHT]
+<!--
+     Licensed to the Apache Software Foundation (ASF) under one
+     or more contributor license agreements.  See the NOTICE file
+     distributed with this work for additional information
+     regarding copyright ownership.  The ASF licenses this file
+     to you under the Apache License, Version 2.0 (the
+     "License"); you may not use this file except in compliance
+     with the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing,
+     software distributed under the License is distributed on an
+     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+     KIND, either express or implied.  See the License for the
+     specific language governing permissions and limitations
+     under the License.
+-->
+[end]<?xml version="1.0" encoding = "Windows-1252"?>
 <VisualStudioProject
     ProjectType="Visual C++"
     Version="[version]"
     Name="serf"
-    ProjectGUID="{F1EC01C7-C056-410B-A564-777D73A9AEE8}"
+    ProjectGUID="[project_guid]"
     Keyword="MakeFileProj">
     <Platforms>
 [for platforms]		<Platform
@@ -13,6 +32,7 @@
 [for platforms]        <Configuration
             Name="Debug|[platforms]"
             OutputDirectory="Debug"
+            BuildLogFile="$(IntDir)\BuildLog_$(ProjectName).htm"
             IntermediateDirectory="Debug"
             ConfigurationType="0"
             ManagedExtensions="1"
@@ -28,6 +48,7 @@
         <Configuration
             Name="Release|[platforms]"
             OutputDirectory="Release"
+            BuildLogFile="$(IntDir)\BuildLog_$(ProjectName).htm"
             IntermediateDirectory="Release"
             ConfigurationType="0"
             ManagedExtensions="1"

Modified: subversion/branches/ignore-mergeinfo/build/generator/svn_config.vcproj.ezt
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/generator/svn_config.vcproj.ezt?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/generator/svn_config.vcproj.ezt (original)
+++ subversion/branches/ignore-mergeinfo/build/generator/svn_config.vcproj.ezt Tue Aug 10 17:03:06 2010
@@ -1,9 +1,28 @@
-<?xml version="1.0" encoding = "Windows-1252"?>
+[define COPYRIGHT]
+<!--
+     Licensed to the Apache Software Foundation (ASF) under one
+     or more contributor license agreements.  See the NOTICE file
+     distributed with this work for additional information
+     regarding copyright ownership.  The ASF licenses this file
+     to you under the Apache License, Version 2.0 (the
+     "License"); you may not use this file except in compliance
+     with the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing,
+     software distributed under the License is distributed on an
+     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+     KIND, either express or implied.  See the License for the
+     specific language governing permissions and limitations
+     under the License.
+-->
+[end]<?xml version="1.0" encoding = "Windows-1252"?>
 <VisualStudioProject
 	ProjectType="Visual C++"
 	Version="[version]"
 	Name="__CONFIG__"
-	ProjectGUID="{638FEA9B-E592-4B88-93B7-08B8A32CAD1F}"
+	ProjectGUID="[project_guid]"
 	Keyword="MakeFileProj">
 	<Platforms>
 [for platforms]		<Platform
@@ -13,6 +32,7 @@
 [for platforms][for configs]		<Configuration
 			Name="[configs]|[platforms]"
 			OutputDirectory="."
+			BuildLogFile="$(IntDir)\BuildLog_$(ProjectName).htm"
 			IntermediateDirectory="."
 			ConfigurationType="10"
 			UseOfMFC="0"

Modified: subversion/branches/ignore-mergeinfo/build/generator/svn_locale.vcproj.ezt
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/generator/svn_locale.vcproj.ezt?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/generator/svn_locale.vcproj.ezt (original)
+++ subversion/branches/ignore-mergeinfo/build/generator/svn_locale.vcproj.ezt Tue Aug 10 17:03:06 2010
@@ -1,4 +1,23 @@
-<?xml version="1.0" encoding = "Windows-1252"?>
+[define COPYRIGHT]
+<!--
+     Licensed to the Apache Software Foundation (ASF) under one
+     or more contributor license agreements.  See the NOTICE file
+     distributed with this work for additional information
+     regarding copyright ownership.  The ASF licenses this file
+     to you under the Apache License, Version 2.0 (the
+     "License"); you may not use this file except in compliance
+     with the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing,
+     software distributed under the License is distributed on an
+     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+     KIND, either express or implied.  See the License for the
+     specific language governing permissions and limitations
+     under the License.
+-->
+[end]<?xml version="1.0" encoding = "Windows-1252"?>
 <VisualStudioProject
 	ProjectType="Visual C++"
 	Version="[version]"
@@ -13,6 +32,7 @@
 [for platforms][for configs]		<Configuration
 			Name="[configs]|[platforms]"
 			OutputDirectory="..\..\[configs]\mo"
+			BuildLogFile="$(IntDir)\BuildLog_$(ProjectName).htm"
 			IntermediateDirectory="..\..\[configs]\mo"
 			ConfigurationType="0"
 			UseOfMFC="0"

Modified: subversion/branches/ignore-mergeinfo/build/generator/swig/__init__.py
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/generator/swig/__init__.py?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/generator/swig/__init__.py (original)
+++ subversion/branches/ignore-mergeinfo/build/generator/swig/__init__.py Tue Aug 10 17:03:06 2010
@@ -1,4 +1,24 @@
 #
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
+#
 # generator.swig: Base class for SWIG-related generators
 #
 

Modified: subversion/branches/ignore-mergeinfo/build/generator/swig/checkout_swig_header.py
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/generator/swig/checkout_swig_header.py?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/generator/swig/checkout_swig_header.py (original)
+++ subversion/branches/ignore-mergeinfo/build/generator/swig/checkout_swig_header.py Tue Aug 10 17:03:06 2010
@@ -1,5 +1,25 @@
 #!/usr/bin/env python
 #
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
+#
 # Checkout files from the SWIG library into Subversion's proxy directory
 #
 

Modified: subversion/branches/ignore-mergeinfo/build/generator/swig/external_runtime.py
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/generator/swig/external_runtime.py?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/generator/swig/external_runtime.py (original)
+++ subversion/branches/ignore-mergeinfo/build/generator/swig/external_runtime.py Tue Aug 10 17:03:06 2010
@@ -1,4 +1,24 @@
 #!/usr/bin/env python
+#
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
 
 #
 # external_runtime.py: Generate external runtime files for SWIG

Modified: subversion/branches/ignore-mergeinfo/build/generator/swig/header_wrappers.py
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/generator/swig/header_wrappers.py?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/generator/swig/header_wrappers.py (original)
+++ subversion/branches/ignore-mergeinfo/build/generator/swig/header_wrappers.py Tue Aug 10 17:03:06 2010
@@ -1,4 +1,24 @@
 #!/usr/bin/env python
+#
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
 
 #
 # header_wrappers.py: Generates SWIG proxy wrappers around Subversion

Modified: subversion/branches/ignore-mergeinfo/build/generator/util/executable.py
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/generator/util/executable.py?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/generator/util/executable.py (original)
+++ subversion/branches/ignore-mergeinfo/build/generator/util/executable.py Tue Aug 10 17:03:06 2010
@@ -1,4 +1,24 @@
 #
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
+#
 # executable.py -- Utilities for dealing with external executables
 #
 

Modified: subversion/branches/ignore-mergeinfo/build/generator/zlib.vcproj.ezt
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/generator/zlib.vcproj.ezt?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/generator/zlib.vcproj.ezt (original)
+++ subversion/branches/ignore-mergeinfo/build/generator/zlib.vcproj.ezt Tue Aug 10 17:03:06 2010
@@ -1,9 +1,28 @@
-<?xml version="1.0" encoding = "Windows-1252"?>
+[define COPYRIGHT]
+<!--
+     Licensed to the Apache Software Foundation (ASF) under one
+     or more contributor license agreements.  See the NOTICE file
+     distributed with this work for additional information
+     regarding copyright ownership.  The ASF licenses this file
+     to you under the Apache License, Version 2.0 (the
+     "License"); you may not use this file except in compliance
+     with the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing,
+     software distributed under the License is distributed on an
+     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+     KIND, either express or implied.  See the License for the
+     specific language governing permissions and limitations
+     under the License.
+-->
+[end]<?xml version="1.0" encoding = "Windows-1252"?>
 <VisualStudioProject
 	ProjectType="Visual C++"
 	Version="[version]"
 	Name="zlib"
-	ProjectGUID="{41FE336A-F191-4F4E-A17C-602C627EA1E1}"
+	ProjectGUID="[project_guid]"
 	Keyword="MakeFileProj">
 	<Platforms>
 [for platforms]		<Platform
@@ -13,6 +32,7 @@
 [for platforms]		<Configuration
 			Name="Debug|[platforms]"
 			OutputDirectory="[zlib_path]\Debug"
+			BuildLogFile="$(IntDir)\BuildLog_$(ProjectName).htm"
 			IntermediateDirectory="[zlib_path]\Debug"
 			ConfigurationType="0"
 			ManagedExtensions="1"
@@ -28,6 +48,7 @@
 		<Configuration
 			Name="Release|[platforms]"
 			OutputDirectory="[zlib_path]\Release"
+			BuildLogFile="$(IntDir)\BuildLog_$(ProjectName).htm"
 			IntermediateDirectory="[zlib_path]\Release"
 			ConfigurationType="0"
 			ManagedExtensions="1"

Modified: subversion/branches/ignore-mergeinfo/build/get-py-info.py
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/get-py-info.py?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/get-py-info.py (original)
+++ subversion/branches/ignore-mergeinfo/build/get-py-info.py Tue Aug 10 17:03:06 2010
@@ -2,10 +2,10 @@
 # get-py-info.py: get various Python info (for building)
 #
 ######################################################################
-#    Licensed to the Subversion Corporation (SVN Corp.) under one
+#    Licensed to the Apache Software Foundation (ASF) under one
 #    or more contributor license agreements.  See the NOTICE file
 #    distributed with this work for additional information
-#    regarding copyright ownership.  The SVN Corp. licenses this file
+#    regarding copyright ownership.  The ASF licenses this file
 #    to you under the Apache License, Version 2.0 (the
 #    "License"); you may not use this file except in compliance
 #    with the License.  You may obtain a copy of the License at

Modified: subversion/branches/ignore-mergeinfo/build/getversion.py
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/getversion.py?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/getversion.py (original)
+++ subversion/branches/ignore-mergeinfo/build/getversion.py Tue Aug 10 17:03:06 2010
@@ -1,5 +1,25 @@
 #!/usr/bin/env python
 #
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
+#
 # getversion.py - Parse version numbers from C header files.
 #
 

Modified: subversion/branches/ignore-mergeinfo/build/run_ctypesgen.sh
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/run_ctypesgen.sh?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/run_ctypesgen.sh (original)
+++ subversion/branches/ignore-mergeinfo/build/run_ctypesgen.sh Tue Aug 10 17:03:06 2010
@@ -1,5 +1,25 @@
 #!/bin/sh
 #
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
+#
 # Helper script to generate the ctypesgen wrappers
 #
 
@@ -14,8 +34,8 @@ abs_srcdir="$6"
 abs_builddir="$7"
 
 svn_libdir="$8"
-apr_prefix="$9"
-apu_prefix="${10}"
+apr_config="$9"
+apu_config="${10}"
 
 cp_relpath="subversion/bindings/ctypes-python"
 output="$cp_relpath/svn_all.py"
@@ -29,9 +49,6 @@ else
 fi
 
 ### most of this should be done at configure time and passed in
-apr_config="$apr_prefix/bin/apr-1-config"
-apu_config="$apr_prefix/bin/apu-1-config"
-
 apr_cppflags="`$apr_config --includes --cppflags`"
 apr_include_dir="`$apr_config --includedir`"
 apr_ldflags="`$apr_config --ldflags --link-ld`"

Modified: subversion/branches/ignore-mergeinfo/build/run_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/run_tests.py?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/run_tests.py (original)
+++ subversion/branches/ignore-mergeinfo/build/run_tests.py Tue Aug 10 17:03:06 2010
@@ -1,5 +1,25 @@
 #!/usr/bin/env python
 #
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
+#
 # run_tests.py - run the tests in the regression test suite.
 #
 

Modified: subversion/branches/ignore-mergeinfo/build/strip-po-charset.py
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/strip-po-charset.py?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/strip-po-charset.py (original)
+++ subversion/branches/ignore-mergeinfo/build/strip-po-charset.py Tue Aug 10 17:03:06 2010
@@ -1,5 +1,25 @@
 #!/usr/bin/env python
 #
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
+#
 # strip-po-charset.py
 #
 

Modified: subversion/branches/ignore-mergeinfo/build/transform_libtool_scripts.sh
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/transform_libtool_scripts.sh?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/transform_libtool_scripts.sh (original)
+++ subversion/branches/ignore-mergeinfo/build/transform_libtool_scripts.sh Tue Aug 10 17:03:06 2010
@@ -1,4 +1,24 @@
 #!/bin/sh
+#
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
 
 # Dependencies of libraries
 subr="subr"

Modified: subversion/branches/ignore-mergeinfo/build/transform_sql.py
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/transform_sql.py?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/transform_sql.py (original)
+++ subversion/branches/ignore-mergeinfo/build/transform_sql.py Tue Aug 10 17:03:06 2010
@@ -1,5 +1,25 @@
 #!/usr/bin/env python
 #
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
+#
 # transform_sql.py -- create a header file with the appropriate SQL variables
 # from an SQL file
 #

Propchange: subversion/branches/ignore-mergeinfo/build/win32/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Tue Aug 10 17:03:06 2010
@@ -6,6 +6,7 @@ make_dist.log
 *.dsp
 msvc-dsp
 *.vcproj
+*.vcxproj
 vcnet-vcproj
 *.user
 BuildLog.htm

Modified: subversion/branches/ignore-mergeinfo/build/win32/make_dist.py
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/win32/make_dist.py?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/win32/make_dist.py (original)
+++ subversion/branches/ignore-mergeinfo/build/win32/make_dist.py Tue Aug 10 17:03:06 2010
@@ -1,3 +1,23 @@
+#
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
 import os
 import sys
 import shutil

Modified: subversion/branches/ignore-mergeinfo/build/win32/make_gem.rb
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/win32/make_gem.rb?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/win32/make_gem.rb (original)
+++ subversion/branches/ignore-mergeinfo/build/win32/make_gem.rb Tue Aug 10 17:03:06 2010
@@ -1,4 +1,24 @@
 #!/usr/bin/env ruby
+#
+#
+#   Licensed to the Apache Software Foundation (ASF) under one
+#   or more contributor license agreements.  See the NOTICE file
+#   distributed with this work for additional information
+#   regarding copyright ownership.  The ASF licenses this file
+#   to you under the Apache License, Version 2.0 (the
+#   "License"); you may not use this file except in compliance
+#   with the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+#   Unless required by applicable law or agreed to in writing,
+#   software distributed under the License is distributed on an
+#   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#   KIND, either express or implied.  See the License for the
+#   specific language governing permissions and limitations
+#   under the License.
+#
+#
 
 require 'optparse'
 require 'ostruct'

Modified: subversion/branches/ignore-mergeinfo/build/win32/svn.rc
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/build/win32/svn.rc?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/build/win32/svn.rc (original)
+++ subversion/branches/ignore-mergeinfo/build/win32/svn.rc Tue Aug 10 17:03:06 2010
@@ -1,10 +1,10 @@
 /* svn.rc: Resource definitions for Subversion programs
  *
  * ====================================================================
- *    Licensed to the Subversion Corporation (SVN Corp.) under one
+ *    Licensed to the Apache Software Foundation (ASF) under one
  *    or more contributor license agreements.  See the NOTICE file
  *    distributed with this work for additional information
- *    regarding copyright ownership.  The SVN Corp. licenses this file
+ *    regarding copyright ownership.  The ASF licenses this file
  *    to you under the Apache License, Version 2.0 (the
  *    "License"); you may not use this file except in compliance
  *    with the License.  You may obtain a copy of the License at
@@ -62,11 +62,11 @@ BEGIN
   BEGIN
     BLOCK "040904B0"
     BEGIN
-      VALUE "CompanyName", "http://subversion.tigris.org/\0"
+      VALUE "CompanyName", "http://subversion.apache.org/\0"
       VALUE "FileDescription", APR_STRINGIFY(SVN_FILE_DESCRIPTION) "\0"
       VALUE "FileVersion", SVN_VER_NUMBER "\0"
       VALUE "InternalName", "SVN\0"
-      VALUE "LegalCopyright", "Copyright (c) 2009 Subversion Corporation\0"
+      VALUE "LegalCopyright", "Copyright (c) 2009 The Apache Software Foundation\0"
       VALUE "OriginalFilename", APR_STRINGIFY(SVN_FILE_NAME) "\0"
       VALUE "ProductName", "Subversion\0"
       VALUE "ProductVersion", SVN_VERSION "\0"

Modified: subversion/branches/ignore-mergeinfo/configure.ac
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/configure.ac?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/configure.ac (original)
+++ subversion/branches/ignore-mergeinfo/configure.ac Tue Aug 10 17:03:06 2010
@@ -1,3 +1,20 @@
+dnl     Licensed to the Apache Software Foundation (ASF) under one
+dnl     or more contributor license agreements.  See the NOTICE file
+dnl     distributed with this work for additional information
+dnl     regarding copyright ownership.  The ASF licenses this file
+dnl     to you under the Apache License, Version 2.0 (the
+dnl     "License"); you may not use this file except in compliance
+dnl     with the License.  You may obtain a copy of the License at
+dnl    
+dnl       http://www.apache.org/licenses/LICENSE-2.0
+dnl    
+dnl     Unless required by applicable law or agreed to in writing,
+dnl     software distributed under the License is distributed on an
+dnl     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+dnl     KIND, either express or implied.  See the License for the
+dnl     specific language governing permissions and limitations
+dnl     under the License.
+
 dnl configure.ac: Autoconfiscation for Subversion
 dnl Process this file with autoconf to produce a configure script.
 
@@ -850,6 +867,9 @@ AS_HELP_STRING([--enable-maintainer-mode
         CFLAGS_KEEP="$CFLAGS"
         AC_LANG_PUSH([C])
 
+        CFLAGS="-Wdeclaration-after-statement $CFLAGS_KEEP"
+        AC_COMPILE_IFELSE([AC_LANG_SOURCE([[]])], [CFLAGS_KEEP="$CFLAGS"])
+
         CFLAGS="-Wextra-tokens $CFLAGS_KEEP"
         AC_COMPILE_IFELSE([AC_LANG_SOURCE([[]])], [CFLAGS_KEEP="$CFLAGS"])
 

Modified: subversion/branches/ignore-mergeinfo/contrib/client-side/emacs/dsvn.el
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/contrib/client-side/emacs/dsvn.el?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/contrib/client-side/emacs/dsvn.el (original)
+++ subversion/branches/ignore-mergeinfo/contrib/client-side/emacs/dsvn.el Tue Aug 10 17:03:06 2010
@@ -1,12 +1,11 @@
 ;;; dsvn.el --- Subversion interface
 
-;; Copyright 2006-2008 Virtutech AB
+;; Copyright 2006-2009 Virtutech AB
 
 ;; Author: David Kågedal <da...@virtutech.com>
 ;;	Mattias Engdegård <ma...@virtutech.com>
 ;; Maintainer: Mattias Engdegård <ma...@virtutech.com>
 ;; Created: 27 Jan 2006
-;; Version: 1.8
 ;; Keywords: docs
 
 ;; This program is free software; you can redistribute it and/or
@@ -724,14 +723,19 @@ name or revision number)."
 	 " to save changes.\n\n")
 	(mapc (lambda (prop)
 		(let* ((value (cdr prop))
-		       (lines (split-string value "\n")))
-		  ;; split-string ignores single leading and trailing
-		  ;; delimiters, so add them explicitly
-		  (when (not (equal value ""))
-		    (when (equal (substring value 0 1) "\n")
-		      (setq lines (cons "" lines)))
-		    (when (equal (substring value -1) "\n")
-		      (setq lines (append lines (list "")))))
+		       (lines nil)
+		       (len (length value))
+		       (ofs 0))
+		  ;; Split value in lines - we can't use split-string because
+		  ;; its behaviour is not consistent across Emacs versions.
+		  (while (<= ofs len)
+		    (let* ((nl (or (string-match "\n" value ofs) len)))
+		      (setq lines (cons (substring value ofs nl) lines))
+		      (setq ofs (+ nl 1))))
+		  (setq lines (nreverse lines))
+		  ;; The lines list now contains one string per line, and
+		  ;; an empty list at the end if the string finished in a \n.
+
 		  (insert (car prop) ":")
 		  (if (> (length lines) 1)
 		      (progn
@@ -1997,7 +2001,7 @@ files instead."
 
 (defun svn-merge-columns-list (columns fmt)
   (let ((first-lines (mapcar #'car columns)))
-    (and (eval `(or ',@first-lines))
+    (and (eval `(or ,@first-lines))
 	 (cons (mapconcat (lambda (str) (format fmt (or str "")))
 			  first-lines " | ")
 	       (svn-merge-columns-list (mapcar #'cdr columns) fmt)))))
@@ -2008,51 +2012,36 @@ files instead."
 	     "\n"))
 
 (defun svn-status-help ()
-  "Display keyboard help for svn status buffer."
+  "Display keyboard help for the svn-status buffer."
   (interactive)
-  (let* ((buf (get-buffer-create "*svn-keyboard-help*"))
-	 (help-text
-	  (svn-merge-columns
-	   (list (svn-format-help-column
-		  '((svn-commit "commit marked files")
-		    (svn-add-file "add marked files")
-		    (svn-remove-file "remove marked files")
-		    (svn-revert "revert marked files")
-		    (svn-update-current "update working copy")
-		    (svn-resolve "resolve conflicts")
-		    (svn-move "rename/move files")
-		    (svn-switch "switch working tree")
-		    (svn-merge "merge into WC")
-		    (svn-propedit "edit properties")))
-		 (svn-format-help-column
-		  '((svn-mark-forward "mark and go down")
-		    (svn-unmark-backward "go up and unmark")
-		    (svn-unmark-forward  "unmark and go down")
-		    (svn-toggle-mark "toggle mark")
-		    (svn-unmark-all "unmark all")))
-		 (svn-format-help-column
-		  '((svn-find-file "visit file")
-		    (svn-find-file-other-window "visit file other win")
-		    (svn-diff-file "show file diff")
-		    (svn-file-log "show file log")
-		    (svn-refresh "refresh all files")
-		    (svn-refresh-file "refresh marked files")
-		    (svn-refresh-one "refresh named file")
-		    (svn-expunge "expunge unchanged"))))
-	   24)))
-    (with-current-buffer buf
-      (setq buffer-read-only t)
-      (let ((inhibit-read-only t))
-	(erase-buffer)
-	(insert help-text)
-	(goto-char 1))
-      (set-buffer-modified-p nil))
-    (unless (get-buffer-window buf)
-      (let ((nlines (with-current-buffer buf
-		      (count-lines 1 (buffer-size)))))
-	(set-window-buffer
-	 (split-window-vertically (- 0 nlines 1))
-	 buf)))))
+  (message (svn-merge-columns
+	    (list (svn-format-help-column
+		   '((svn-commit "commit marked files")
+		     (svn-add-file "add marked files")
+		     (svn-remove-file "remove marked files")
+		     (svn-revert "revert marked files")
+		     (svn-update-current "update working copy")
+		     (svn-resolve "resolve conflicts")
+		     (svn-move "rename/move files")
+		     (svn-switch "switch working tree")
+		     (svn-merge "merge into WC")
+		     (svn-propedit "edit properties")))
+		  (svn-format-help-column
+		   '((svn-mark-forward "mark and go down")
+		     (svn-unmark-backward "go up and unmark")
+		     (svn-unmark-forward  "unmark and go down")
+		     (svn-toggle-mark "toggle mark")
+		     (svn-unmark-all "unmark all")))
+		  (svn-format-help-column
+		   '((svn-find-file "visit file")
+		     (svn-find-file-other-window "visit file other win")
+		     (svn-diff-file "show file diff")
+		     (svn-file-log "show file log")
+		     (svn-refresh "refresh all files")
+		     (svn-refresh-file "refresh marked files")
+		     (svn-refresh-one "refresh named file")
+		     (svn-expunge "expunge unchanged"))))
+	    24)))
 
 ;;; Hooks
 

Modified: subversion/branches/ignore-mergeinfo/contrib/client-side/emacs/psvn.el
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/contrib/client-side/emacs/psvn.el?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/contrib/client-side/emacs/psvn.el (original)
+++ subversion/branches/ignore-mergeinfo/contrib/client-side/emacs/psvn.el Tue Aug 10 17:03:06 2010
@@ -73,6 +73,7 @@
 ;; e     - svn-status-toggle-edit-cmd-flag
 ;; ?     - svn-status-toggle-hide-unknown
 ;; _     - svn-status-toggle-hide-unmodified
+;; z     - svn-status-toggle-hide-externals
 ;; m     - svn-status-set-user-mark
 ;; u     - svn-status-unset-user-mark
 ;; $     - svn-status-toggle-elide
@@ -304,6 +305,11 @@ This can be toggled with \\[svn-status-t
 This can be toggled with \\[svn-status-toggle-hide-unmodified]."
   :type 'boolean
   :group 'psvn)
+(defcustom svn-status-hide-externals nil
+  "*Hide external files in `svn-status-buffer-name' buffer.
+This can be toggled with \\[svn-status-toggle-hide-externals]."
+  :type 'boolean
+  :group 'psvn)
 (defcustom svn-status-sort-status-buffer t
   "*Whether to sort the `svn-status-buffer-name' buffer.
 
@@ -416,6 +422,12 @@ Any non-nil value overrides that variabl
 ;; (put 'svn-browse-url-function 'risky-local-variable t)
 ;; already implied by "-function" suffix
 
+(defcustom svn-log-edit-header
+  "## Lines starting with '## ' will be removed from the log message.\n"
+  "*Header content of the *svn-log* buffer"
+  :type 'string
+  :group 'psvn)
+
 (defcustom svn-status-window-alist
   '((diff "*svn-diff*") (log "*svn-log*") (info t) (blame t) (proplist t) (update t))
   "An alist to specify which windows should be used for svn command outputs.
@@ -1172,6 +1184,7 @@ If there is no .svn directory, examine i
                             (if arg "-u" "")))))
     (save-excursion
       (set-buffer status-buf)
+      (buffer-disable-undo)
       (setq default-directory dir)
       (set-buffer proc-buf)
       (setq default-directory dir
@@ -1940,6 +1953,7 @@ A and B must be line-info's."
   (define-key svn-status-mode-map (kbd "V") 'svn-status-svnversion)
   (define-key svn-status-mode-map (kbd "?") 'svn-status-toggle-hide-unknown)
   (define-key svn-status-mode-map (kbd "_") 'svn-status-toggle-hide-unmodified)
+  (define-key svn-status-mode-map (kbd "z") 'svn-status-toggle-hide-externals)
   (define-key svn-status-mode-map (kbd "a") 'svn-status-add-file)
   (define-key svn-status-mode-map (kbd "A") 'svn-status-add-file-recursively)
   (define-key svn-status-mode-map (kbd "+") 'svn-status-make-directory)
@@ -2155,6 +2169,8 @@ A and B must be line-info's."
      :style toggle :selected svn-status-hide-unknown]
     ["Hide Unmodified" svn-status-toggle-hide-unmodified
      :style toggle :selected svn-status-hide-unmodified]
+    ["Hide Externals" svn-status-toggle-hide-externals
+     :style toggle :selected svn-status-hide-externals]
     ["Show Client versions" svn-status-version t]
     ["Prepare bug report" svn-prepare-bug-report t]
     ))
@@ -2404,6 +2420,7 @@ This list holds currently only one eleme
   "Return whether the line is visible or not"
   (or (not (or (svn-status-line-info->hide-because-unknown line-info)
                (svn-status-line-info->hide-because-unmodified line-info)
+               (svn-status-line-info->hide-because-externals line-info)
                (svn-status-line-info->hide-because-custom-hide-function line-info)
                (svn-status-line-info->hide-because-user-elide line-info)))
       (svn-status-line-info->update-available line-info) ;; show the line, if an update is available
@@ -2414,6 +2431,10 @@ This list holds currently only one eleme
   (and svn-status-hide-unknown
        (eq (svn-status-line-info->filemark line-info) ??)))
 
+(defun svn-status-line-info->hide-because-externals (line-info)
+  (and svn-status-hide-externals
+       (eq (svn-status-line-info->filemark line-info) ?X)))
+
 (defun svn-status-line-info->hide-because-custom-hide-function (line-info)
   (and svn-status-custom-hide-function
        (apply svn-status-custom-hide-function (list line-info))))
@@ -2850,7 +2871,8 @@ Symbolic links to directories count as d
         (filename  ;; <indentation>file or /path/to/file
                      (concat
                       (if (or svn-status-display-full-path
-                              svn-status-hide-unmodified)
+                              svn-status-hide-unmodified
+                              svn-status-hide-externals)
                           (svn-add-face
                            (let ((dir-name (file-name-as-directory
                                             (svn-status-line-info->directory-containing-line-info
@@ -2947,6 +2969,7 @@ Additionally clear the psvn-extra-info f
         (overlay)
         (unmodified-count 0)    ;how many unmodified files are hidden
         (unknown-count 0)       ;how many unknown files are hidden
+        (externals-count 0)     ;how many svn:externals files are hidden
         (custom-hide-count 0)   ;how many files are hidden via svn-status-custom-hide-function
         (marked-count 0)        ;how many files are elided
         (user-elide-count 0)
@@ -2976,6 +2999,8 @@ Additionally clear the psvn-extra-info f
              (setq unknown-count (1+ unknown-count)))
             ((svn-status-line-info->hide-because-unmodified (car st-info))
              (setq unmodified-count (1+ unmodified-count)))
+            ((svn-status-line-info->hide-because-externals (car st-info))
+             (setq externals-count (1+ externals-count)))
             (t
              (svn-insert-line-in-status-buffer (car st-info))))
       (when (svn-status-line-info->has-usermark (car st-info))
@@ -3006,6 +3031,10 @@ Additionally clear the psvn-extra-info f
       (insert
        (format "%d Unmodified file(s) are hidden - press `_' to toggle hiding\n"
                unmodified-count)))
+    (when svn-status-hide-externals
+      (insert
+       (format "%d Externals file(s) are hidden - press `z' to toggle hiding\n"
+               externals-count)))
     (when (> custom-hide-count 0)
       (insert
        (format "%d file(s) are hidden via the svn-status-custom-hide-function\n"
@@ -3254,12 +3283,12 @@ When called from a file buffer provide a
   (interactive)
   (let ((info (svn-status-get-line-information)))
     (if info
-        (message "%S hide-because-unknown: %S hide-because-unmodified: %S" info
+        (message "%S hide-because-unknown: %S hide-because-unmodified: %S hide-because-externals: %S" info
                  (svn-status-line-info->hide-because-unknown info)
-                 (svn-status-line-info->hide-because-unmodified info))
+                 (svn-status-line-info->hide-because-unmodified info)
+                 (svn-status-line-info->hide-because-externals info))
       (message "No file on this line"))))
-
-(defun svn-status-ensure-cursor-on-file ()
+ (defun svn-status-ensure-cursor-on-file ()
     "Raise an error unless point is on a valid file."
   (unless (svn-status-get-line-information)
     (error "No file on the current line")))
@@ -3514,6 +3543,11 @@ If the function is called with a prefix 
   (setq svn-status-hide-unmodified (not svn-status-hide-unmodified))
   (svn-status-update-buffer))
 
+(defun svn-status-toggle-hide-externals ()
+  (interactive)
+  (setq svn-status-hide-externals (not svn-status-hide-externals))
+  (svn-status-update-buffer))
+
 (defun svn-status-get-file-name-buffer-position (name)
   "Find the buffer position for a file.
 If the file is not found, return nil."
@@ -4402,8 +4436,11 @@ static char * data[] = {
 
 (defsubst svn-status-in-vc-mode? ()
   "Is vc-svn active?"
-  (if (and (boundp 'vc-mode) vc-mode)
-      (string-match "^ SVN" (svn-substring-no-properties vc-mode))))
+  (cond
+   ((fboundp 'vc-backend)
+    (eq 'SVN (vc-backend buffer-file-name)))
+   ((and (boundp 'vc-mode) vc-mode)
+    (string-match "^ SVN" (svn-substring-no-properties vc-mode)))))
 
 (when svn-status-fancy-file-state-in-modeline
   (defadvice vc-find-file-hook (after svn-status-vc-svn-find-file-hook activate)
@@ -5218,7 +5255,7 @@ If ARG then show diff between some other
   (let ((buf-size (- (point-max) (point-min))))
     (save-excursion
       (goto-char (point-min))
-      (insert "## Lines starting with '## ' will be removed from the log message.\n")
+      (insert svn-log-edit-header)
       (insert "## File(s) to commit"
               (if svn-status-recursive-commit " recursively" "") ":\n")
       (let ((file-list svn-status-files-to-commit))

Modified: subversion/branches/ignore-mergeinfo/doc/user/cvs-crossover-guide.html
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/doc/user/cvs-crossover-guide.html?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/doc/user/cvs-crossover-guide.html (original)
+++ subversion/branches/ignore-mergeinfo/doc/user/cvs-crossover-guide.html Tue Aug 10 17:03:06 2010
@@ -1,7 +1,30 @@
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+   "http://www.w3.org/TR/html4/strict.dtd">
 <html>
 <head>
+<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
 <title>CVS to SVN Crossover Guide</title>
-<style>
+<style type="text/css">
 body {
   font-family: sans-serif;
 }
@@ -210,11 +233,10 @@ dd {
       the repository, to hold tags and branches later on.  Then we
       import the contents of the local <tt>myproj/</tt> directory into
       a newly created <tt>/trunk</tt> directory in the
-      repository.</tt>
+      repository.</dd>
     </dl>
   </td>
 </tr>
-<tr>
 </table>
 
 <dl class="bookref">
@@ -310,7 +332,7 @@ dd {
       the <tt>--username</tt> and <tt>--password</tt> options are
       merely values to be used <em>if</em> the server issues a
       challenge; they do not "push" the credentials at the
-      server.)</tt> </dd>
+      server.)</dd>
 
     </dl>
   </td>

Modified: subversion/branches/ignore-mergeinfo/doc/user/svn-best-practices.html
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/doc/user/svn-best-practices.html?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/doc/user/svn-best-practices.html (original)
+++ subversion/branches/ignore-mergeinfo/doc/user/svn-best-practices.html Tue Aug 10 17:03:06 2010
@@ -1,13 +1,40 @@
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
+   "http://www.w3.org/TR/html4/strict.dtd">
 <html>
 <head>
+<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
 <title>Subversion Best Practices</title>
+<style type="text/css">
+h1 {
+  text-align: center;
+}
+</style>
 </head>
 
 <body>
 
-<center>
- <h1>Subversion Best Practices</h1>
-</center>
+<h1>Subversion Best Practices</h1>
 
 <p>This is a quick set of guidelines for making the best use of
 Subversion in your day-to-day software development work.</p>

Modified: subversion/branches/ignore-mergeinfo/gen-make.py
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/gen-make.py?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/gen-make.py (original)
+++ subversion/branches/ignore-mergeinfo/gen-make.py Tue Aug 10 17:03:06 2010
@@ -1,5 +1,25 @@
 #!/usr/bin/env python
 #
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+#
+#
 # gen-make.py -- generate makefiles for building Subversion
 #
 
@@ -183,7 +203,7 @@ def _usage_exit():
   print("           only build static libraries")
   print("")
   print("  --vsnet-version=VER")
-  print("           generate for VS.NET version VER (2002, 2003, 2005 or 2008)")
+  print("           generate for VS.NET version VER (2002, 2003, 2005, 2008 or 2010)")
   print("           [only valid in combination with '-t vcproj']")
   print("")
   print("  --with-apr_memcache=DIR")

Modified: subversion/branches/ignore-mergeinfo/notes/http-protocol-v2.txt
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/notes/http-protocol-v2.txt?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/notes/http-protocol-v2.txt (original)
+++ subversion/branches/ignore-mergeinfo/notes/http-protocol-v2.txt Tue Aug 10 17:03:06 2010
@@ -276,6 +276,9 @@ STATUS
       DELETE     [DONE]
       PUT        [DONE]
 
+ * Teach mod_dav_svn to handle HTTPv2 requests in its mirroring
+   logic.  [STARTED (by Dave Brown)]
+
  * Teach ra_serf operations to not do the multi-PROPFIND dance any
    more, but to fetch the information they seek from mod_dav_svn using
    the new stub URIs:

Modified: subversion/branches/ignore-mergeinfo/notes/obliterate/design-audit.html
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/notes/obliterate/design-audit.html?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/notes/obliterate/design-audit.html (original)
+++ subversion/branches/ignore-mergeinfo/notes/obliterate/design-audit.html Tue Aug 10 17:03:06 2010
@@ -27,10 +27,10 @@
 
 <!--
   ================================================================
-    Licensed to the Subversion Corporation (SVN Corp.) under one
+    Licensed to the Apache Software Foundation (ASF) under one
     or more contributor license agreements.  See the NOTICE file
     distributed with this work for additional information
-    regarding copyright ownership.  The SVN Corp. licenses this file
+    regarding copyright ownership.  The ASF licenses this file
     to you under the Apache License, Version 2.0 (the
     "License"); you may not use this file except in compliance
     with the License.  You may obtain a copy of the License at

Modified: subversion/branches/ignore-mergeinfo/notes/obliterate/design-authz.html
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/notes/obliterate/design-authz.html?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/notes/obliterate/design-authz.html (original)
+++ subversion/branches/ignore-mergeinfo/notes/obliterate/design-authz.html Tue Aug 10 17:03:06 2010
@@ -21,10 +21,10 @@
 
 <!--
   ================================================================
-    Licensed to the Subversion Corporation (SVN Corp.) under one
+    Licensed to the Apache Software Foundation (ASF) under one
     or more contributor license agreements.  See the NOTICE file
     distributed with this work for additional information
-    regarding copyright ownership.  The SVN Corp. licenses this file
+    regarding copyright ownership.  The ASF licenses this file
     to you under the Apache License, Version 2.0 (the
     "License"); you may not use this file except in compliance
     with the License.  You may obtain a copy of the License at
@@ -46,6 +46,26 @@
 
 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
 
+<div class="h2" id="introduction" title="#introduction">
+  <h2>Introduction</h2>
+
+  <p>Authorization is by a pre-obliterate hook which can base its decision on
+    the user name and the details of the attempted obliteration.</p>
+
+  <p>A post-obliterate hook will be available for reporting or other purposes,
+    analogous to the post-commit hook. This is not involved in authorization.
+    </p>
+
+  <p>Before a normal commit, two hooks are invoked: start-commit and
+    pre-commit, with only the list of files available to the first one and
+    the entire content of the change available to the second one. As
+    obliteration does not involve transmitting file contents, there is no
+    reason to have separate start-obliterate and pre-obliterate hooks.</p>
+
+</div>
+
+<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
+
 <div class="h2" id="pre-obliterate" title="#pre-obliterate">
   <h2>Pre-obliterate hook</h2>
 
@@ -64,8 +84,10 @@
   </ol>
 
   <p>The pre-obliterate hook is passed the OBLITERATION SET on its standard
-    input as one or more PATH@REV lines, where PATH is the path within the
-    repository, starting with '/'.</p>
+    input as one or more PATH@REV1:REV2 lines, where PATH is the path within
+    the repository, starting with '/', and REV1 is the first and REV2 the
+    last revision number in the range to be obliterated. (For a single
+    revision, REV1 == REV2 and both are present.)</p>
 
   <p>If the hook returns a zero exit code, the obliteration is performed.
     If the hook returns a non-zero exit code, the obliteration is denied

Modified: subversion/branches/ignore-mergeinfo/notes/obliterate/design-repos.html
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/notes/obliterate/design-repos.html?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/notes/obliterate/design-repos.html (original)
+++ subversion/branches/ignore-mergeinfo/notes/obliterate/design-repos.html Tue Aug 10 17:03:06 2010
@@ -2,13 +2,14 @@
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
-<title>Repository Transaction Design</title>
+<title>Repository Transaction Design for Svn Obliterate</title>
 </head>
 
 <body>
 
 <div class="h1">
-<h1 style="text-align: center">Repository Transaction Design</h1>
+<h1 style="text-align: center">Repository Transaction Design for Svn
+  Obliterate</h1>
 </div>
 
 <div class="h1">
@@ -23,18 +24,16 @@
     </li> <!-- server.fs -->
   </ol>
   </li> <!-- server -->
-<!--
-  <li><a href="#license">License &mdash; Copyright</a></li>
--->
+  <li><a href="#refs">References</a></li>
 </ol>
 </div>
 
 <!--
   ================================================================
-    Licensed to the Subversion Corporation (SVN Corp.) under one
+    Licensed to the Apache Software Foundation (ASF) under one
     or more contributor license agreements.  See the NOTICE file
     distributed with this work for additional information
-    regarding copyright ownership.  The SVN Corp. licenses this file
+    regarding copyright ownership.  The ASF licenses this file
     to you under the Apache License, Version 2.0 (the
     "License"); you may not use this file except in compliance
     with the License.  You may obtain a copy of the License at
@@ -376,6 +375,46 @@
 </div> <!-- server (h2) -->
 
 
+<div class="h2" id="refs" title="#refs">
+  <h2>References</h2>
+
+  <p>Diagrams...</p>
+
+  <p>The repository transformations for <a href="fspec-dd1" >fspec-dd1</a> <a
+    href="fspec-dd1/dd1-file-ops.svg" >files</a> and <a
+    href="fspec-dd1/dd1-dir-ops.svg" >dirs</a>, and for <a href="fspec-cc1"
+    >fspec-cc1</a> <a href="fspec-cc1/cc1-file-ops.svg" >files</a> and <a
+    href="fspec-cc1/cc1-dir-ops.svg" >dirs</a>.</p>
+
+  <p>A database <a href="../../subversion/libsvn_fs_base/notes/schema-bdb-1.6.svg"
+    >schema diagram for BDB</a> in Subversion 1.6.</p>
+
+  <p>Diagrams showing the before-and-after content of BDB tables for a "dd1"
+    type of obliteration: <a href="schema-bdb-dd1-before.svg" >before</a> and <a
+    href="schema-bdb-dd1-after.svg" >after</a>.</p>
+
+  <p>A database <a href="http://homepages.paradise.net.nz/~ejrh/subversion/mysql/"
+    >schema diagram for MYSQL</a> by Edmund Horner, which is like the
+    BDB schema except with exploding of skels into table columns -
+    transaction_props, transaction_copies, representation_windows.</p>
+
+  <p><a href="../../subversion/libsvn_fs_fs/structure" >FSFS structure</a> doc</p>
+
+  <p><a href="../../subversion/libsvn_fs_base/notes/structure" >FS-BDB
+    structure</a> doc: nodes, node-revs, keys, skels, reps, deltifying, txns,
+    changes, copies, locks, merge rules, uuid, summary (structure syntax),
+    misc-table (forward-delta support)</p>
+
+  <p>FS-BDB <a href="../../subversion/libsvn_fs_base/notes/fs-history"
+    >fs-history</a> doc: DAG node-revs, node-rev-ids, copies, copy-ids</p>
+
+  <p><a
+    href=""
+    ></a></p>
+
+</div> <!-- server.fs (h3) -->
+
+
 <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
 
 </body>

Modified: subversion/branches/ignore-mergeinfo/notes/obliterate/design-wc.html
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/notes/obliterate/design-wc.html?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/notes/obliterate/design-wc.html (original)
+++ subversion/branches/ignore-mergeinfo/notes/obliterate/design-wc.html Tue Aug 10 17:03:06 2010
@@ -25,10 +25,10 @@
 
 <!--
   ================================================================
-    Licensed to the Subversion Corporation (SVN Corp.) under one
+    Licensed to the Apache Software Foundation (ASF) under one
     or more contributor license agreements.  See the NOTICE file
     distributed with this work for additional information
-    regarding copyright ownership.  The SVN Corp. licenses this file
+    regarding copyright ownership.  The ASF licenses this file
     to you under the Apache License, Version 2.0 (the
     "License"); you may not use this file except in compliance
     with the License.  You may obtain a copy of the License at

Modified: subversion/branches/ignore-mergeinfo/notes/obliterate/fspec-cc1/cc1-file-ops.svg
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/notes/obliterate/fspec-cc1/cc1-file-ops.svg?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
Binary files - no diff available.

Modified: subversion/branches/ignore-mergeinfo/notes/obliterate/fspec-dd1/dd1-file-ops.svg
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/notes/obliterate/fspec-dd1/dd1-file-ops.svg?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
Binary files - no diff available.

Modified: subversion/branches/ignore-mergeinfo/notes/obliterate/high-level-design.txt
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/notes/obliterate/high-level-design.txt?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/notes/obliterate/high-level-design.txt (original)
+++ subversion/branches/ignore-mergeinfo/notes/obliterate/high-level-design.txt Tue Aug 10 17:03:06 2010
@@ -42,22 +42,36 @@ OPEN ISSUES
 
     Invocation from:
 
-      * server side only
+      * server side only, or
 
-      * client side
+      * client side?
 
     Ultimately we need client-side invocation because many of the use cases
     (except the disk space reduction) are client-side responsibilities and in
     large installations it is infeasible to push all such tasks on to a
-    server-side administrator. It may be feasible to split the obliteration
-    into data-hiding invoked from the client and space-reduction invoked from
-    the server.
+    server-side administrator.
+
+    It is possible that implementation would be simplified if we split the
+    obliteration into data-hiding invoked from the client and space-reduction
+    invoked as an off-line adminitrative procedure on the server. For example,
+    a dump-load cycle or an svnsync mirror could be employed as a crude (slow)
+    way to achieve the space-reduction part. Such a split has no significant
+    user benefits in itself. The effect on implementation complexity is yet to
+    be determined.
+
+    One behavioural design option is to split the obliteration into a
+    reversible data-hiding invoked from the client, and an administrative
+    "purge" after which the data-hiding is no longer reversible. This option
+    at first glance sounds "safer", but it is a substantially more complex
+    behaviour in that the history of the repository as viewed by a client is
+    subject not only to change with obliteration but also to change again if
+    the hiding is reversed. It also adds complexity to the implementation.
 
     Authorization (if client-side):
 
       * By a new pre-obliterate hook.
 
-    Subversion currently has no appropriate permission system. A hook would
+    Subversion currently has no more suitable permission system. A hook would
     probably be wanted anyway and would probably be the easiest way to achieve
     authorization.
 
@@ -85,7 +99,7 @@ OPEN ISSUES
 
     MORE SOPHISTICATED
 
-      * Client-side; authorization to be defined.
+      * Client-side; authorization by pre-obliterate hook.
 
       * UI: svn obliterate [--obliteration-method=...] OBLIT_SPEC...
 
@@ -136,6 +150,16 @@ OPEN ISSUES
     any information necessary for continuing such propagation after restoring
     from a backup.
 
+    It is not important, according to feedback from admins, to make svnsync
+    automatically propagate obliterations. In fact it can be seen as correct
+    that obliteration must be applied separately to any svnsync mirrors if the
+    obliteration is indeed intended to be propagated, because it is not
+    necessarily the case that obliterations should be propagated.
+
+    The dump file needs no change. It would be perverse to record obliteration
+    history or even metadata in the dump file, as it is intended to represent
+    just the visible history of the repository.
+
     SIMPLE
 
       * No server-side support for propagation of changes.
@@ -152,10 +176,6 @@ OPEN ISSUES
       * If there is obliteration history or metadata, it should be included in
         a repository backup, but not in a dump file.
 
-    The dump file needs no change. It would be perverse to record obliteration
-    history or even metadata in the dump file, as it is intended to represent
-    just the visible history of the repository.
-
 
   2.4 Client-side Behaviour
 

Modified: subversion/branches/ignore-mergeinfo/notes/obliterate/req-spec.txt
URL: http://svn.apache.org/viewvc/subversion/branches/ignore-mergeinfo/notes/obliterate/req-spec.txt?rev=984122&r1=984121&r2=984122&view=diff
==============================================================================
--- subversion/branches/ignore-mergeinfo/notes/obliterate/req-spec.txt (original)
+++ subversion/branches/ignore-mergeinfo/notes/obliterate/req-spec.txt Tue Aug 10 17:03:06 2010
@@ -117,6 +117,11 @@ OPEN ISSUES
     U1 wants to prune old versions of F1 regularly in order to limit server
     disk space usage.
 
+    This use case is not directly what most people consider to be
+    "obliterate". It is really a separate feature that could use the
+    functionality of "obliterate" in its implementation, but could also be
+    implemented in other ways.
+
 
 3. REQUIREMENTS