Modified: subversion/branches/ev2-export/build/generator/gen_win.py URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/gen_win.py?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/build/generator/gen_win.py (original) +++ subversion/branches/ev2-export/build/generator/gen_win.py Sun Oct 21 02:00:31 2012 @@ -94,6 +94,7 @@ class GeneratorBase(gen_base.GeneratorBa # Instrumentation options self.disable_shared = None self.static_apr = None + self.static_openssl = None self.instrument_apr_pools = None self.instrument_purify_quantify = None self.configure_apr_util = None @@ -155,6 +156,8 @@ class GeneratorBase(gen_base.GeneratorBa self.disable_shared = 1 elif opt == '--with-static-apr': self.static_apr = 1 + elif opt == '--with-static-openssl': + self.static_openssl = 1 elif opt == '--vsnet-version': if val == '2002' or re.match('7(\.\d+)?', val): self.vs_version = '2002' @@ -962,7 +965,11 @@ class WinGeneratorBase(GeneratorBase): def get_win_lib_dirs(self, target, cfg): "Return the list of library directories for target" - libcfg = cfg.replace("Debug", "LibD").replace("Release", "LibR") + expatlibcfg = cfg.replace("Debug", "LibD").replace("Release", "LibR") + if self.static_apr: + libcfg = expatlibcfg + else: + libcfg = cfg fakelibdirs = [ self.apath(self.bdb_path, "lib"), self.apath(self.zlib_path), @@ -976,10 +983,10 @@ class WinGeneratorBase(GeneratorBase): if self.serf_lib: fakelibdirs.append(self.apath(msvc_path_join(self.serf_path, cfg))) - fakelibdirs.append(self.apath(self.apr_path, cfg)) - fakelibdirs.append(self.apath(self.apr_util_path, cfg)) + fakelibdirs.append(self.apath(self.apr_path, libcfg)) + fakelibdirs.append(self.apath(self.apr_util_path, libcfg)) fakelibdirs.append(self.apath(self.apr_util_path, 'xml', 'expat', - 'lib', libcfg)) + 'lib', expatlibcfg)) if isinstance(target, gen_base.TargetApacheMod): fakelibdirs.append(self.apath(self.httpd_path, cfg)) @@ -1160,6 +1167,8 @@ class WinGeneratorBase(GeneratorBase): else: serflib = 'serf.lib' + apr_static = self.static_apr and 'APR_STATIC=1' or '' + openssl_static = self.static_openssl and 'OPENSSL_STATIC=1' or '' self.move_proj_file(self.serf_path, name, (('serf_sources', serf_sources), ('serf_headers', serf_headers), @@ -1172,7 +1181,8 @@ class WinGeneratorBase(GeneratorBase): ('apr_util_path', os.path.relpath(self.apr_util_path, self.serf_path)), ('project_guid', self.makeguid('serf')), - ('apr_static', self.static_apr), + ('apr_static', apr_static), + ('openssl_static', openssl_static), ('serf_lib', serflib), )) @@ -1605,7 +1615,6 @@ class POFile: "Item class for holding po file info" def __init__(self, base): self.po = base + '.po' - self.spo = base + '.spo' self.mo = base + '.mo' # MSVC paths always use backslashes regardless of current platform
Modified: subversion/branches/ev2-export/build/generator/templates/build_locale.ezt URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/templates/build_locale.ezt?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/build/generator/templates/build_locale.ezt (original) +++ subversion/branches/ev2-export/build/generator/templates/build_locale.ezt Sun Oct 21 02:00:31 2012 @@ -18,15 +18,12 @@ @echo off @rem ************************************************************************** -cd ..\..\subversion\po +cd ..\..\..\subversion\po mkdir ..\..\%1\mo set exitcode=0 [for pofiles]echo Running msgfmt on [pofiles.po]... -python ..\..\build\strip-po-charset.py [pofiles.po] [pofiles.spo] -if not errorlevel 0 goto err -msgfmt.exe -c -o ..\..\%1\mo\[pofiles.mo] [pofiles.spo] -if not errorlevel 0 goto err -del [pofiles.spo] +msgfmt.exe -c -o ..\..\%1\mo\[pofiles.mo] [pofiles.po] +if errorlevel 1 goto err [end] goto end @rem ************************************************************************** Modified: subversion/branches/ev2-export/build/generator/templates/build_zlib.ezt URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/templates/build_zlib.ezt?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/build/generator/templates/build_zlib.ezt (original) +++ subversion/branches/ev2-export/build/generator/templates/build_zlib.ezt Sun Oct 21 02:00:31 2012 @@ -108,7 +108,7 @@ set BUILD_OPTS=%ASM_OPTS% [end] @echo nmake /f win32\Makefile.msc %BUILD_OPTS% STATICLIB=%STATICLIB% %target% nmake /nologo /f win32\Makefile.msc %BUILD_OPTS% STATICLIB=%STATICLIB% %target% -if not errorlevel 0 goto err +if errorlevel 1 goto err goto end @rem ************************************************************************** Modified: subversion/branches/ev2-export/build/generator/templates/makefile.ezt URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/templates/makefile.ezt?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/build/generator/templates/makefile.ezt (original) +++ subversion/branches/ev2-export/build/generator/templates/makefile.ezt Sun Oct 21 02:00:31 2012 @@ -112,7 +112,7 @@ $([target.varname]_OBJECTS): $([target.v [else][target.varname]_DEPS = [target.add_deps][for target.objects] [target.objects][end][for target.deps] [target.deps][end] [target.varname]_OBJECTS =[for target.objnames] [target.objnames][end] [target.filename]: $([target.varname]_DEPS) - cd [target.path] && [target.link_cmd] $([target.varname]_LDFLAGS) -o [target.basename] [target.undefined_flag] $([target.varname]_OBJECTS)[for target.libs] [target.libs][end] $(LIBS) + [if-any target.when]if $([target.when]) ; then [else][end]cd [target.path] && [target.link_cmd] $([target.varname]_LDFLAGS) -o [target.basename] [target.undefined_flag] $([target.varname]_OBJECTS)[for target.libs] [target.libs][end] $(LIBS)[if-any target.when] ; else echo "fake" > [target.filename] ; fi[else][end] [end][end][end] ######################################## @@ -127,13 +127,13 @@ $([target.varname]_OBJECTS): $([target.v ######################################## [for areas] [is areas.type "apache-mod"]install-mods-shared:[for areas.files] [areas.files.fullname][end][for areas.files] - cd [areas.files.dirname] ; $(MKDIR) "$(APACHE_LIBEXECDIR)" ; $(INSTALL_MOD_SHARED) -n [areas.files.name] [areas.files.filename][end] + [if-any areas.files.when]if $([areas.files.when]) ; then [else][end]cd [areas.files.dirname] ; $(MKDIR) "$(APACHE_LIBEXECDIR)" ; $(INSTALL_MOD_SHARED) -n [areas.files.name] [areas.files.filename][if-any areas.files.when] ; fi[else][end][end] [else]install-[areas.type]: [for areas.files][if-index areas.files first][else] [end][areas.files.fullname][end] [for areas.apache_files] [areas.apache_files.fullname][end] $(MKDIR) $(DESTDIR)$([areas.varname]dir)[for areas.files][is areas.type "locale"] $(MKDIR) [areas.files.installdir] - cd [areas.files.dirname] ; $(INSTALL_[areas.uppervar]) [areas.files.filename] [areas.files.installdir]/$(PACKAGE_NAME)[areas.files.objext][else] - cd [areas.files.dirname] ; $(INSTALL_[areas.uppervar]) [areas.files.filename] $(DESTDIR)[areas.files.install_fname][end][end][for areas.apache_files] - cd [areas.apache_files.dirname] ; $(MKDIR) "$(APACHE_LIBEXECDIR)" ; $(INSTALL_MOD_SHARED) -n [areas.apache_files.name] [areas.apache_files.filename][end] + [if-any areas.files.when]if $([areas.files.when]) ; then [else][end]cd [areas.files.dirname] ; $(INSTALL_[areas.uppervar]) [areas.files.filename] [areas.files.installdir]/$(PACKAGE_NAME)[areas.files.objext][if-any areas.files.when] ; fi[else][end][else] + [if-any areas.files.when]if $([areas.files.when]) ; then [else][end]cd [areas.files.dirname] ; $(INSTALL_[areas.uppervar]) [areas.files.filename] $(DESTDIR)[areas.files.install_fname][if-any areas.files.when] ; fi[else][end][end][end][for areas.apache_files] + [if-any areas.apache_files.when]if $([areas.apache_files.when]) ; then [else][end]cd [areas.apache_files.dirname] ; $(MKDIR) "$(APACHE_LIBEXECDIR)" ; $(INSTALL_MOD_SHARED) -n [areas.apache_files.name] [areas.apache_files.filename][if-any areas.apache_files.when] ; fi[else][end][end] [if-any areas.extra_install] $(INSTALL_EXTRA_[areas.uppervar]) [end][end][end] @@ -156,5 +156,5 @@ install-include:[for includes] [includes ######################################## [for deps] [deps.name]:[for deps.deps] [deps.deps][end][if-any deps.cmd] - [deps.cmd] [if-any deps.generated][else]$(canonicalized_srcdir)[end][deps.source][end] + [if-any deps.when]if $([deps.when]) ; then [else][end][deps.cmd] [if-any deps.generated][else]$(canonicalized_srcdir)[end][deps.source][end][if-any deps.when] ; else echo "fake" > [deps.name] ; fi[else][end] [end] Modified: subversion/branches/ev2-export/build/generator/templates/serf.vcproj.ezt URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/templates/serf.vcproj.ezt?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/build/generator/templates/serf.vcproj.ezt (original) +++ subversion/branches/ev2-export/build/generator/templates/serf.vcproj.ezt Sun Oct 21 02:00:31 2012 @@ -40,9 +40,9 @@ ATLMinimizesCRunTimeLibraryUsage="FALSE"> <Tool Name="VCNMakeTool" - BuildCommandLine="nmake /s /nologo /f serf.mak ALL DEBUG_BUILD=1 APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]" - ReBuildCommandLine="nmake /s /nologo /f serf.mak CLEAN ALL DEBUG_BUILD=1 APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]" - CleanCommandLine="nmake /s /nologo /f serf.mak CLEAN DEBUG_BUILD=1 APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]" + BuildCommandLine="nmake /s /nologo /f serf.mak ALL DEBUG_BUILD=1 APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]" + ReBuildCommandLine="nmake /s /nologo /f serf.mak CLEAN ALL DEBUG_BUILD=1 APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]" + CleanCommandLine="nmake /s /nologo /f serf.mak CLEAN DEBUG_BUILD=1 APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]" Output="$(OutDir)\[serf_lib]"/> </Configuration> <Configuration @@ -56,9 +56,9 @@ ATLMinimizesCRunTimeLibraryUsage="FALSE"> <Tool Name="VCNMakeTool" - BuildCommandLine="nmake /s /nologo /f serf.mak ALL APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]" - ReBuildCommandLine="nmake /s /nologo /f serf.mak CLEAN ALL APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]" - CleanCommandLine="nmake /s /nologo /f serf.mak CLEAN APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]" + BuildCommandLine="nmake /s /nologo /f serf.mak ALL APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]" + ReBuildCommandLine="nmake /s /nologo /f serf.mak CLEAN ALL APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]" + CleanCommandLine="nmake /s /nologo /f serf.mak CLEAN APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]" Output="$(OutDir)\[serf_lib]"/> </Configuration> [end] </Configurations> Modified: subversion/branches/ev2-export/build/generator/templates/serf.vcxproj.ezt URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/templates/serf.vcxproj.ezt?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/build/generator/templates/serf.vcxproj.ezt (original) +++ subversion/branches/ev2-export/build/generator/templates/serf.vcxproj.ezt Sun Oct 21 02:00:31 2012 @@ -46,9 +46,9 @@ <PropertyGroup> [for configs][for platforms] <OutDir Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">[configs]</OutDir> <IntDir Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">[configs]</IntDir> - <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"$(VCInstallDir)bin\nmake.exe" /s /nologo /f serf.mak ALL [is configs "Debug"]DEBUG_BUILD=1 [end]APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]</NMakeBuildCommandLine> - <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"$(VCInstallDir)bin\nmake.exe" /s /nologo /f serf.mak CLEAN ALL [is configs "Debug"]DEBUG_BUILD=1 [end]APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]</NMakeReBuildCommandLine> - <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"$(VCInstallDir)bin\nmake.exe" /s /nologo /f serf.mak CLEAN [is configs "Debug"]DEBUG_BUILD=1 [end]APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path][end]</NMakeCleanCommandLine> + <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"$(VCInstallDir)bin\nmake.exe" /s /nologo /f serf.mak ALL [is configs "Debug"]DEBUG_BUILD=1 [end]APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]</NMakeBuildCommandLine> + <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"$(VCInstallDir)bin\nmake.exe" /s /nologo /f serf.mak CLEAN ALL [is configs "Debug"]DEBUG_BUILD=1 [end]APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]</NMakeReBuildCommandLine> + <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"$(VCInstallDir)bin\nmake.exe" /s /nologo /f serf.mak CLEAN [is configs "Debug"]DEBUG_BUILD=1 [end]APR_SRC=[apr_path] APRUTIL_SRC=[apr_util_path] [apr_static] [if-any zlib_path]ZLIB_SRC=[zlib_path][end] [if-any openssl_path]OPENSSL_SRC=[openssl_path] [openssl_static][end]</NMakeCleanCommandLine> <NMakeOutput Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">$(OutDir)\[serf_lib]</NMakeOutput> [end][end] </PropertyGroup> <ItemDefinitionGroup> Modified: subversion/branches/ev2-export/build/generator/templates/svn_config.vcproj.ezt URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/templates/svn_config.vcproj.ezt?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/build/generator/templates/svn_config.vcproj.ezt (original) +++ subversion/branches/ev2-export/build/generator/templates/svn_config.vcproj.ezt Sun Oct 21 02:00:31 2012 @@ -33,7 +33,7 @@ Name="[configs]|[platforms]" OutputDirectory="." BuildLogFile="$(IntDir)\BuildLog_$(ProjectName).htm" - IntermediateDirectory="..\..\$(ConfigurationName)" + IntermediateDirectory="..\..\..\[configs]" ConfigurationType="10" UseOfMFC="0" DeleteExtensionsOnClean="*.obj;*.ilk;*.pdb;*.tlb;*.tli;*.tlh;*.tmp;*.rsp;$(TargetPath)" @@ -53,7 +53,7 @@ </Configurations> <Files> <File - RelativePath="..\..\subversion\svn_private_config.h"> + RelativePath="$(IntDir)\svn_private_config.h"> [for platforms][for configs] <FileConfiguration Name="[configs]|[platforms]" ExcludedFromBuild="TRUE"> @@ -62,25 +62,33 @@ </FileConfiguration> [end][end] </File> <File - RelativePath="..\..\subversion\svn_private_config.hw"> + RelativePath="..\..\..\subversion\svn_private_config.hw"> [for platforms][for configs] <FileConfiguration Name="[configs]|[platforms]"> <Tool Name="VCCustomBuildTool" Description="Creating svn_private_config.h from svn_private_config.hw." - CommandLine="copy ..\..\..\subversion\svn_private_config.hw ..\..\..\subversion\svn_private_config.h > nul -" - Outputs="..\..\subversion\svn_private_config.h"/> + CommandLine=""[svn_python]" "$(SolutionDir)\build\transform_config_hw.py" [platforms] "$(InputPath)" "$(IntDir)\svn_private_config.h"" + Outputs="$(IntDir)\svn_private_config.h"/> </FileConfiguration> [end][end] </File> [for sql] <File + RelativePath="$(SolutionDir)\[sql.header]"> +[for platforms][for configs] <FileConfiguration + Name="[configs]|[platforms]" + ExcludedFromBuild="TRUE"> + <Tool + Name="VCCustomBuildTool"/> + </FileConfiguration> +[end][end] </File> + <File RelativePath="../../../[sql.source]"> [for platforms][for configs] <FileConfiguration Name="[configs]|[platforms]"> <Tool Name="VCCustomBuildTool" Description="Generating [sql.header]" - CommandLine=""[sql.svn_python]" "$(SolutionDir)\build\transform_sql.py" "$(InputPath)" "$(SolutionDir)\[sql.header]"" + CommandLine=""[svn_python]" "$(SolutionDir)\build\transform_sql.py" "$(InputPath)" "$(SolutionDir)\[sql.header]"" AdditionalDependencies="[for sql.dependencies]$(SolutionDir)\[sql.dependencies];[end]" Outputs="$(SolutionDir)\[sql.header]" /> @@ -91,4 +99,3 @@ <Globals> </Globals> </VisualStudioProject> - Modified: subversion/branches/ev2-export/build/generator/templates/svn_config.vcxproj.ezt URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/templates/svn_config.vcxproj.ezt?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/build/generator/templates/svn_config.vcxproj.ezt (original) +++ subversion/branches/ev2-export/build/generator/templates/svn_config.vcxproj.ezt Sun Oct 21 02:00:31 2012 @@ -46,10 +46,10 @@ [end][end] <PropertyGroup Label="UserMacros" /> <PropertyGroup> [for configs][for platforms] <OutDir Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">.\</OutDir> - <IntDir Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">.\</IntDir> + <IntDir Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">$(SolutionDir)\$(Configuration)\</IntDir> [end][end] </PropertyGroup> <ItemGroup> - <CustomBuild Include="$(SolutionDir)\subversion\svn_private_config.h"> + <CustomBuild Include="$(IntDir)svn_private_config.h"> [for configs][for platforms] <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">true</ExcludedFromBuild> [end][end] </CustomBuild> </ItemGroup> @@ -57,13 +57,16 @@ <CustomBuild Include="$(SolutionDir)\subversion\svn_private_config.hw"> <FileType>Document</FileType> [for configs][for platforms] <Message Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">Creating svn_private_config.h from svn_private_config.hw.</Message> - <Command Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">copy $(SolutionDir)\subversion\svn_private_config.hw $(SolutionDir)\subversion\svn_private_config.h > nul:</Command> - <Outputs Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">$(SolutionDir)\subversion\svn_private_config.h;%(Outputs)</Outputs> + <Command Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"[svn_python]" "$(SolutionDir)\build\transform_config_hw.py" $(Platform) "%(FullPath)" "$(IntDir)svn_private_config.h"</Command> + <Outputs Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">$(IntDir)svn_private_config.h;%(Outputs)</Outputs> [end][end] </CustomBuild> -[for sql] <CustomBuild Include="$(SolutionDir)\[sql.source]"> +[for sql] <CustomBuild Include="$(SolutionDir)\[sql.header]"> +[for configs][for platforms] <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">true</ExcludedFromBuild> +[end][end] </CustomBuild> + <CustomBuild Include="$(SolutionDir)\[sql.source]"> <FileType>Document</FileType> [for configs][for platforms] <Message Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">Generating [sql.header].</Message> - <Command Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"[sql.svn_python]" "$(SolutionDir)\build\transform_sql.py" "%(FullPath)" "$(SolutionDir)\[sql.header]"</Command> + <Command Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">"[svn_python]" "$(SolutionDir)\build\transform_sql.py" "%(FullPath)" "$(SolutionDir)\[sql.header]"</Command> <Outputs Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">$(SolutionDir)\[sql.header];%(Outputs)</Outputs> <AdditionalInputs Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">[for sql.dependencies]$(SolutionDir)\[sql.dependencies];[end]%(AdditionalInputs)</AdditionalInputs> [end][end] Modified: subversion/branches/ev2-export/build/generator/templates/svn_locale.vcproj.ezt URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/templates/svn_locale.vcproj.ezt?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/build/generator/templates/svn_locale.vcproj.ezt (original) +++ subversion/branches/ev2-export/build/generator/templates/svn_locale.vcproj.ezt Sun Oct 21 02:00:31 2012 @@ -31,9 +31,9 @@ <Configurations> [for platforms][for configs] <Configuration Name="[configs]|[platforms]" - OutputDirectory="..\..\[configs]\mo" + OutputDirectory="..\..\..\[configs]\mo" BuildLogFile="$(IntDir)\BuildLog_$(ProjectName).htm" - IntermediateDirectory="..\..\[configs]\mo" + IntermediateDirectory="..\..\..\[configs]\mo" ConfigurationType="0" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="FALSE"> Modified: subversion/branches/ev2-export/build/generator/templates/svn_locale.vcxproj.ezt URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/templates/svn_locale.vcxproj.ezt?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/build/generator/templates/svn_locale.vcxproj.ezt (original) +++ subversion/branches/ev2-export/build/generator/templates/svn_locale.vcxproj.ezt Sun Oct 21 02:00:31 2012 @@ -32,7 +32,7 @@ </PropertyGroup> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> [for platforms][for configs] <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'" Label="Configuration"> - <ConfigurationType>Utility</ConfigurationType> + <ConfigurationType>Makefile</ConfigurationType> <CLRSupport>false</CLRSupport> <PlatformToolset>[toolset_version]</PlatformToolset> </PropertyGroup> @@ -44,8 +44,8 @@ </ImportGroup> [end][end] <PropertyGroup Label="UserMacros" /> <PropertyGroup> -[for configs][for platforms] <OutDir Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">..\..\[configs]\mo\</OutDir> - <IntDir Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">..\..\[configs]\mo\</IntDir> +[for configs][for platforms] <OutDir Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">..\..\..\[configs]\mo\</OutDir> + <IntDir Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">..\..\..\[configs]\mo\</IntDir> <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">cmd /c build_locale.bat [configs]</NMakeBuildCommandLine> <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">cmd /c build_locale.bat [configs]</NMakeReBuildCommandLine> <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='[configs]|[platforms]'">cmd /c del $(OutDir)*.mo</NMakeCleanCommandLine> Modified: subversion/branches/ev2-export/build/generator/templates/vcnet_vcproj.ezt URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/templates/vcnet_vcproj.ezt?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/build/generator/templates/vcnet_vcproj.ezt (original) +++ subversion/branches/ev2-export/build/generator/templates/vcnet_vcproj.ezt Sun Oct 21 02:00:31 2012 @@ -45,7 +45,7 @@ EnableIntrinsicFunctions="TRUE" FavorSizeOrSpeed="1" OmitFramePointers="TRUE" -[end] AdditionalIncludeDirectories="[for includes][includes][if-index includes last][else];[end][end]" +[end] AdditionalIncludeDirectories="..\..\..\[configs.name];[for includes][includes][if-index includes last][else];[end][end]" PreprocessorDefinitions="[if-any instrument_apr_pools]APR_POOL_DEBUG=[instrument_apr_pools];[end][is platforms "x64"]WIN64;[end][for configs.defines][configs.defines][if-index configs.defines last][else];[end][end];_CRT_SECURE_NO_WARNINGS" [is configs.name "Debug"] MinimalRebuild="TRUE" RuntimeLibrary="3" Modified: subversion/branches/ev2-export/build/generator/templates/vcnet_vcxproj.ezt URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/generator/templates/vcnet_vcxproj.ezt?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/build/generator/templates/vcnet_vcxproj.ezt (original) +++ subversion/branches/ev2-export/build/generator/templates/vcnet_vcxproj.ezt Sun Oct 21 02:00:31 2012 @@ -57,7 +57,7 @@ <IntrinsicFunctions>true</IntrinsicFunctions> <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed> <StringPooling>true</StringPooling> -[end] <AdditionalIncludeDirectories>[for includes][includes];[end]%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> +[end] <AdditionalIncludeDirectories>$(SolutionDir)[configs.name];[for includes][includes];[end];%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <PreprocessorDefinitions>[if-any instrument_apr_pools]APR_POOL_DEBUG=[instrument_apr_pools];[end][is platforms "x64"]WIN64;[end][for configs.defines][configs.defines];[end]%(PreprocessorDefinitions)</PreprocessorDefinitions> <WarningLevel>Level4</WarningLevel> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> Propchange: subversion/branches/ev2-export/build/hudson/README ------------------------------------------------------------------------------ svn:eol-style = native Modified: subversion/branches/ev2-export/build/run_tests.py URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/build/run_tests.py?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/build/run_tests.py (original) +++ subversion/branches/ev2-export/build/run_tests.py Sun Oct 21 02:00:31 2012 @@ -45,7 +45,7 @@ separated list of test numbers; the defa # A few useful constants SVN_VER_MINOR = 8 -import os, re, subprocess, sys, imp +import os, re, subprocess, sys, imp, threading from datetime import datetime import getopt @@ -317,6 +317,12 @@ class TestHarness: print("WARNING: no failures, but '%s' exists from a previous run." % self.faillogfile) + # Summary. + if failed or xpassed or failed_list: + print("SUMMARY: Some tests failed.\n") + else: + print("SUMMARY: All tests successful.\n") + self._close_log() return failed @@ -377,12 +383,13 @@ class TestHarness: # This has to be class-scoped for use in the progress_func() self.dots_written = 0 def progress_func(completed): + if not self.log or self.dots_written >= dot_count: + return dots = (completed * dot_count) / total - + if dots > dot_count: + dots = dot_count dots_to_write = dots - self.dots_written - if self.log: - os.write(sys.stdout.fileno(), '.' * dots_to_write) - + os.write(sys.stdout.fileno(), '.' * dots_to_write) self.dots_written = dots tests_completed = 0 @@ -478,21 +485,28 @@ class TestHarness: sys.stdout.flush() sys.stderr.flush() self.log.flush() - old_stdout = os.dup(1) - old_stderr = os.dup(2) - os.dup2(self.log.fileno(), 1) - os.dup2(self.log.fileno(), 2) + old_stdout = os.dup(sys.stdout.fileno()) + old_stderr = os.dup(sys.stderr.fileno()) + os.dup2(self.log.fileno(), sys.stdout.fileno()) + os.dup2(self.log.fileno(), sys.stderr.fileno()) - # This has to be class-scoped for use in the progress_func() + # These have to be class-scoped for use in the progress_func() self.dots_written = 0 + self.progress_lock = threading.Lock() def progress_func(completed, total): + """Report test suite progress. Can be called from multiple threads + in parallel mode.""" + if not self.log: + return dots = (completed * dot_count) / total - - dots_to_write = dots - self.dots_written - if self.log: + if dots > dot_count: + dots = dot_count + self.progress_lock.acquire() + if self.dots_written < dot_count: + dots_to_write = dots - self.dots_written + self.dots_written = dots os.write(old_stdout, '.' * dots_to_write) - - self.dots_written = dots + self.progress_lock.release() serial_only = hasattr(prog_mod, 'serial_only') and prog_mod.serial_only @@ -525,8 +539,8 @@ class TestHarness: if self.log: sys.stdout.flush() sys.stderr.flush() - os.dup2(old_stdout, 1) - os.dup2(old_stderr, 2) + os.dup2(old_stdout, sys.stdout.fileno()) + os.dup2(old_stderr, sys.stderr.fileno()) os.close(old_stdout) os.close(old_stderr) Modified: subversion/branches/ev2-export/configure.ac URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/configure.ac?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/configure.ac (original) +++ subversion/branches/ev2-export/configure.ac Sun Oct 21 02:00:31 2012 @@ -146,7 +146,9 @@ SVN_FIND_APACHE(20020903) dnl Search for SQLite SQLITE_MINIMUM_VER="3.7.12" SQLITE_RECOMMENDED_VER="3.7.12" -SQLITE_URL="http://www.sqlite.org/sqlite-amalgamation-${SQLITE_RECOMMENDED_VER}.tar.gz" +SQLITE_RECOMMENDED_VER_URL="3071200" +SQLITE_URL="http://www.sqlite.org/sqlite-amalgamation-${SQLITE_RECOMMENDED_VER_URL}.zip" + SVN_LIB_SQLITE(${SQLITE_MINIMUM_VER}, ${SQLITE_RECOMMENDED_VER}, ${SQLITE_URL}) @@ -477,43 +479,11 @@ if test "$svn_lib_sasl" = "yes"; then [Defined if Cyrus SASL v2 is present on the system]) fi -dnl Mac OS KeyChain ------------------- - -AC_ARG_ENABLE(keychain, - AS_HELP_STRING([--disable-keychain], - [Disable use of Mac OS KeyChain for auth credentials]), - [enable_keychain=$enableval],[enable_keychain=yes]) - -AC_MSG_CHECKING([for Mac OS KeyChain Services]) - -if test "$enable_keychain" = "yes"; then - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <AvailabilityMacros.h> -#if !DARWIN || (MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_2) -#error KeyChain API unavailable. -#endif]], [[]])],[],[enable_keychain=no]) -fi - -if test "$enable_keychain" = "yes"; then - dnl ### Hack. We should only need to pass the -framework options when - dnl linking libsvn_subr, since it is the only library that uses Keychain. - dnl - dnl Unfortunately, libtool 1.5.x doesn't track transitive dependencies for - dnl OS X frameworks like it does for normal libraries, so we need to - dnl explicitly pass the option to all the users of libsvn_subr to allow - dnl static builds to link successfully. - dnl - dnl This does mean that all executables we link will be linked directly - dnl to these frameworks - even when building shared libraries - but that - dnl shouldn't cause any problems. - LIBS="$LIBS -framework Security" - LIBS="$LIBS -framework CoreFoundation" - LIBS="$LIBS -framework CoreServices" - AC_DEFINE([SVN_HAVE_KEYCHAIN_SERVICES], [1], [Is Mac OS KeyChain support enabled?]) - AC_MSG_RESULT([yes]) -else - AC_MSG_RESULT([no]) -fi +dnl Mac OS specific features ------------------- +SVN_LIB_MACHO_ITERATE +SVN_LIB_MACOS_PLIST +SVN_LIB_MACOS_KEYCHAIN dnl APR_HAS_DSO ------------------- @@ -532,7 +502,7 @@ AC_PREPROC_IFELSE([AC_LANG_SOURCE([[ CPPFLAGS="$old_CPPFLAGS" -dnl D-Bus (required for support for KWallet and GNOME Keyring) ------------------- +dnl D-Bus (required for support for KWallet) ------------------- if test -n "$PKG_CONFIG"; then AC_MSG_CHECKING([for D-Bus .pc file]) @@ -575,9 +545,7 @@ AS_HELP_STRING([--without-gpg-agent], [Disable support for GPG-Agent]), [], [with_gpg_agent=yes]) AC_MSG_CHECKING([whether to support GPG-Agent]) -if test "$svn_enable_shared" != "yes"; then - AC_MSG_RESULT([no (shared library support is disabled)]) -elif test "$with_gpg_agent" = "yes"; then +if test "$with_gpg_agent" = "yes"; then AC_MSG_RESULT([yes]) AC_DEFINE([SVN_HAVE_GPG_AGENT], [1], [Is GPG Agent support enabled?]) @@ -591,50 +559,65 @@ dnl GNOME Keyring ------------------- AC_ARG_WITH(gnome_keyring, AS_HELP_STRING([--with-gnome-keyring], - [Enable use of GNOME Keyring for auth credentials]), + [Enable use of GNOME Keyring for auth credentials (enabled by default if found)]), [with_gnome_keyring="$withval"], - [with_gnome_keyring=no]) + [with_gnome_keyring=auto]) +found_gnome_keyring=no AC_MSG_CHECKING([whether to look for GNOME Keyring]) if test "$with_gnome_keyring" != "no"; then AC_MSG_RESULT([yes]) if test "$svn_enable_shared" = "yes"; then if test "$APR_HAS_DSO" = "yes"; then if test -n "$PKG_CONFIG"; then - if test "$HAVE_DBUS" = "yes"; then - AC_MSG_CHECKING([for GLib and GNOME Keyring .pc files]) - if $PKG_CONFIG --exists glib-2.0 gnome-keyring-1; then + AC_MSG_CHECKING([for GLib and GNOME Keyring .pc files]) + if $PKG_CONFIG --exists glib-2.0 gnome-keyring-1; then + AC_MSG_RESULT([yes]) + old_CPPFLAGS="$CPPFLAGS" + SVN_GNOME_KEYRING_INCLUDES="`$PKG_CONFIG --cflags glib-2.0 gnome-keyring-1`" + CPPFLAGS="$CPPFLAGS $SVN_GNOME_KEYRING_INCLUDES" + AC_CHECK_HEADER(gnome-keyring.h, found_gnome_keyring=yes, found_gnome_keyring=no) + AC_MSG_CHECKING([for GNOME Keyring]) + if test "$found_gnome_keyring" = "yes"; then AC_MSG_RESULT([yes]) - old_CPPFLAGS="$CPPFLAGS" - SVN_GNOME_KEYRING_INCLUDES="$DBUS_CPPFLAGS `$PKG_CONFIG --cflags glib-2.0 gnome-keyring-1`" - CPPFLAGS="$CPPFLAGS $SVN_GNOME_KEYRING_INCLUDES" - AC_CHECK_HEADER(gnome-keyring.h, with_gnome_keyring=yes, with_gnome_keyring=no) - AC_MSG_CHECKING([for GNOME Keyring]) + AC_DEFINE([SVN_HAVE_GNOME_KEYRING], [1], + [Is GNOME Keyring support enabled?]) + CPPFLAGS="$old_CPPFLAGS" + SVN_GNOME_KEYRING_LIBS="`$PKG_CONFIG --libs glib-2.0 gnome-keyring-1`" + else + AC_MSG_RESULT([no]) if test "$with_gnome_keyring" = "yes"; then - AC_MSG_RESULT([yes]) - AC_DEFINE([SVN_HAVE_GNOME_KEYRING], [1], - [Is GNOME Keyring support enabled?]) - CPPFLAGS="$old_CPPFLAGS" - SVN_GNOME_KEYRING_LIBS="$DBUS_LIBS `$PKG_CONFIG --libs glib-2.0 gnome-keyring-1`" - else - AC_MSG_RESULT([no]) AC_MSG_ERROR([cannot find GNOME Keyring]) fi - else - AC_MSG_RESULT([no]) - AC_MSG_ERROR([cannot find GLib and GNOME Keyring .pc files]) fi else - AC_MSG_ERROR([cannot find D-Bus]) + AC_MSG_RESULT([no]) + if test "$with_gnome_keyring" = "yes"; then + AC_MSG_ERROR([cannot find GLib and GNOME Keyring .pc files.]) + else + with_gnome_keyring=no + fi fi else - AC_MSG_ERROR([cannot find pkg-config]) + if test "$with_gnome_keyring" = "yes"; then + AC_MSG_ERROR([cannot find pkg-config. GNOME Keyring requires this.]) + else + with_gnome_keyring=no + fi fi else - AC_MSG_ERROR([APR does not have support for DSOs]) + if test "$with_gnome_keyring" = "yes"; then + AC_MSG_ERROR([APR does not have support for DSOs. GNOME Keyring requires this.]) + else + with_gnome_keyring=no + fi fi else - AC_MSG_ERROR([--with-gnome-keyring conflicts with --disable-shared]) + if test "$with_gnome_keyring" = "yes"; then + AC_MSG_ERROR([--with-gnome-keyring conflicts with --disable-shared]) + else + with_gnome_keyring=no + fi fi else AC_MSG_RESULT([no]) @@ -699,13 +682,23 @@ if test "$enable_nls" = "yes"; then fi fi -AH_BOTTOM( +AH_BOTTOM([ +/* Indicate to translators that string X should be translated. Do not look + up the translation at run time; just expand to X. This macro is suitable + for use where a constant string is required at compile time. */ #define N_(x) x +/* Indicate to translators that we have decided the string X should not be + translated. Expand to X. */ #define U_(x) x #ifdef ENABLE_NLS #include <locale.h> #include <libintl.h> +/* Indicate to translators that string X should be translated. At run time, + look up and return the translation of X. */ #define _(x) dgettext(PACKAGE_NAME, x) +/* Indicate to translators that strings X1 and X2 are singular and plural + forms of the same message, and should be translated. At run time, return + an appropriate translation depending on the number N. */ #define Q_(x1, x2, n) dngettext(PACKAGE_NAME, x1, x2, n) #else #define _(x) (x) @@ -713,7 +706,7 @@ AH_BOTTOM( #define gettext(x) (x) #define dgettext(domain, x) (x) #endif -) +]) dnl Used to simulate makefile conditionals. GETTEXT_CODESET=\# @@ -836,7 +829,7 @@ if test "$svn_lib_kwallet" = "yes"; then INSTALL_STATIC_RULES="$INSTALL_STATIC_RULES install-kwallet-lib" fi -if test "$with_gnome_keyring" = "yes"; then +if test "$found_gnome_keyring" = "yes"; then BUILD_RULES="$BUILD_RULES gnome-keyring-lib" INSTALL_RULES="`echo $INSTALL_RULES | $SED 's/install-lib/install-lib install-gnome-keyring-lib/'`" INSTALL_STATIC_RULES="$INSTALL_STATIC_RULES install-gnome-keyring-lib" @@ -877,6 +870,8 @@ AC_FUNC_VPRINTF dnl check for functions needed in special file handling AC_CHECK_FUNCS(symlink readlink) +dnl check for uname +AC_CHECK_HEADERS(sys/utsname.h, [AC_CHECK_FUNCS(uname)], []) dnl Process some configuration options ---------- @@ -1192,7 +1187,8 @@ SVN_CHECK_CTYPESGEN dnl decide whether we want to link against the RA/FS libraries AC_ARG_ENABLE(runtime-module-search, AS_HELP_STRING([--enable-runtime-module-search], - [Turn on dynamic loading of RA/FS libraries]), + [Turn on dynamic loading of RA/FS libraries including + third-party FS libraries]), [ if test "$enableval" = "yes"; then use_dso=yes @@ -1388,6 +1384,10 @@ AC_SUBST(SVN_CONFIG_SCRIPT_FILES) # Ensure that SWIG is checked after reconfiguration. rm -f .swig_checked +dnl Provide ${host} for use in compiled code (for svn --version) +AC_DEFINE_UNQUOTED([SVN_BUILD_HOST], "${host}", + [Defined to the config.guess name of the build system]) + AC_OUTPUT # ==== Print final messages to user ========================================== Modified: subversion/branches/ev2-export/contrib/client-side/emacs/dsvn.el URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/contrib/client-side/emacs/dsvn.el?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/contrib/client-side/emacs/dsvn.el (original) +++ subversion/branches/ev2-export/contrib/client-side/emacs/dsvn.el Sun Oct 21 02:00:31 2012 @@ -130,6 +130,11 @@ :type 'boolean :group 'dsvn) +(defcustom svn-diff-args '("-x" "-p") + "*Additional arguments used for all invocations of `svn diff'." + :type '(repeat string) + :group 'dsvn) + ;; start-file-process and process-file are needed for tramp but only appeared ;; in Emacs 23 and 22 respectively. (setq svn-start-file-process @@ -351,23 +356,59 @@ during the run." "Run `svn diff'. Argument ARG are the command line arguments." (interactive "ssvn diff arguments: ") - (svn-run-with-output "diff" (split-string arg) 'diff-mode)) + (svn-run-with-output "diff" + (append svn-diff-args (split-string arg)) + 'diff-mode)) + +(defun svn-add-unversioned-files-p (files) + "Ask the user whether FILES should be added; return the answer." + (let ((buf (get-buffer-create "*svn-unversioned-files*"))) + (with-current-buffer buf + (setq buffer-read-only nil) + (erase-buffer) + (insert (mapconcat (lambda (f) f) files "\n")) + (setq buffer-read-only t) + (goto-char (point-min)) + (save-selected-window + (pop-to-buffer buf) + (shrink-window-if-larger-than-buffer) + (let* ((n (length files)) + (add-them (y-or-n-p + (if (= n 1) + "Add this item first? " + (format "Add these %d items first? " n))))) + (let ((win (get-buffer-window buf))) + (if win + (condition-case nil + (delete-window win) + (error nil)))) + (bury-buffer buf) + add-them))))) (defun svn-commit () "Commit changes to one or more files." (interactive) (save-some-buffers) - (let ((status-buf (current-buffer)) - (commit-buf (get-buffer-create "*svn commit*")) - (window-conf (and svn-restore-windows (current-window-configuration))) - (listfun (lambda () (with-current-buffer log-edit-parent-buffer - (svn-action-files))))) - (log-edit 'svn-confirm-commit t - (if (< emacs-major-version 23) - listfun - (list (cons 'log-edit-listfun listfun))) - commit-buf) - (set (make-local-variable 'saved-window-configuration) window-conf))) + (let ((unversioned-files (svn-action-files + (lambda (pos) (eq (svn-file-status pos) ?\?))))) + (if unversioned-files + (if (svn-add-unversioned-files-p unversioned-files) + (progn + (message "Adding unversioned items. Please re-commit when ready.") + (svn-run 'add unversioned-files "Adding files")) + (message "Files not added; nothing committed.")) + (let ((status-buf (current-buffer)) + (commit-buf (get-buffer-create "*svn commit*")) + (window-conf (and svn-restore-windows + (current-window-configuration))) + (listfun (lambda () (with-current-buffer log-edit-parent-buffer + (svn-action-files))))) + (log-edit 'svn-confirm-commit t + (if (< emacs-major-version 23) + listfun + (list (cons 'log-edit-listfun listfun))) + commit-buf) + (set (make-local-variable 'saved-window-configuration) window-conf))))) (defun svn-confirm-commit () "Commit changes with the current buffer as commit message." @@ -573,7 +614,7 @@ VERBOSE-P." (erase-buffer) (setq default-directory dir) (svn-call-process diff-buf - "diff" "-r" + "diff" "-x" "-p" "-r" (format "%d:%d" (1- commit-id) commit-id))))) (defun svn-log-edit-files (commit-id) @@ -601,7 +642,9 @@ VERBOSE-P." "Run `svn diff' for the current log entry." (interactive) (let ((commit-id (svn-log-current-commit))) - (svn-run-with-output "diff" (list "-c" (number-to-string commit-id)) + (svn-run-with-output "diff" + (append svn-diff-args + (list "-c" (number-to-string commit-id))) 'diff-mode))) (defun svn-log-edit () @@ -1634,27 +1677,24 @@ Set it if MARK is non-NIL, and clear it "Return a list of lists (FILE POS) to act on. Optional argument PRED is a predicate function that is called with POS as argument." - (let ((files ()) - (pos (next-single-property-change (point-min) 'svn-file))) - (while pos - (when (and (get-text-property pos 'svn-mark) - (or (not pred) - (funcall pred pos))) - (setq files (cons (list (get-text-property pos 'svn-file) - pos) - files))) - (setq pos (next-single-property-change pos 'svn-file))) - (if (null files) - (let ((file (svn-getprop (point) 'file))) - (unless file - (error "No file on this line")) - (when (and pred - (not (funcall pred (line-beginning-position)))) - (error "Invalid file")) - (list (list file - (save-excursion - (beginning-of-line) - (point))))) + (let ((positions ())) + (let ((pos (next-single-property-change (point-min) 'svn-file))) + (while pos + (when (get-text-property pos 'svn-mark) + (setq positions (cons pos positions))) + (setq pos (next-single-property-change pos 'svn-file)))) + (when (null positions) + (unless (svn-getprop (point) 'file) + (error "No file on this line")) + (setq positions (list (line-beginning-position)))) + + (let ((files ())) + (mapc (lambda (pos) + (when (or (not pred) (funcall pred pos)) + (setq files (cons (list (get-text-property pos 'svn-file) + pos) + files)))) + (reverse positions)) (reverse files)))) (defun svn-action-files (&optional pred) @@ -1957,7 +1997,8 @@ files instead." (list (or (svn-getprop (point) 'file) (svn-getprop (point) 'dir) (error "No file on line")))))) - (unless (svn-run-with-output "diff" files 'diff-mode) + (unless (svn-run-with-output "diff" (append svn-diff-args files) + 'diff-mode) (message "No difference found")))) (defun svn-previous-file (arg) Modified: subversion/branches/ev2-export/contrib/client-side/emacs/psvn.el URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/contrib/client-side/emacs/psvn.el?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/contrib/client-side/emacs/psvn.el (original) +++ subversion/branches/ev2-export/contrib/client-side/emacs/psvn.el Sun Oct 21 02:00:31 2012 @@ -3575,7 +3575,7 @@ If the file is not found, return nil." (and found start-pos))) (defun svn-status-goto-file-name (name) - "Move the cursor the the line that displays NAME." + "Move the cursor to the line that displays NAME." (let ((pos (svn-status-get-file-name-buffer-position name))) (if pos (goto-char pos) Modified: subversion/branches/ev2-export/contrib/client-side/svn-push/svn-push.c URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/contrib/client-side/svn-push/svn-push.c?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/contrib/client-side/svn-push/svn-push.c (original) +++ subversion/branches/ev2-export/contrib/client-side/svn-push/svn-push.c Sun Oct 21 02:00:31 2012 @@ -147,8 +147,8 @@ check_lib_versions (void) { "svn_ra", svn_ra_version }, { NULL, NULL } }; - SVN_VERSION_DEFINE (my_version); + return svn_ver_check_list (&my_version, checklist); } Modified: subversion/branches/ev2-export/contrib/client-side/svnmerge/svnmerge.py URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/contrib/client-side/svnmerge/svnmerge.py?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/contrib/client-side/svnmerge/svnmerge.py (original) +++ subversion/branches/ev2-export/contrib/client-side/svnmerge/svnmerge.py Sun Oct 21 02:00:31 2012 @@ -342,10 +342,13 @@ def check_dir_clean(dir): # Checking with -q does not show unversioned files or external # directories. Though it displays a debug message for external # directories, after a blank line. So, practically, the first line - # matters: if it's non-empty there is a modification. + # matters: if it's non-empty there is a modification. (Lines starting + # with "X" must be skipped, since they just indicate externals.) out = launchsvn("status -q %s" % dir) - if out and out[0].strip(): - error('"%s" has local modifications; it must be clean' % dir) + while out and out[0].strip(): + if not out[0].startswith("X"): + error('"%s" has local modifications; it must be clean' % dir) + out.pop(0) class PathIdentifier: """Abstraction for a path identifier, so that we can start talking Modified: subversion/branches/ev2-export/contrib/hook-scripts/enforcer/enforcer URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/contrib/hook-scripts/enforcer/enforcer?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/contrib/hook-scripts/enforcer/enforcer (original) +++ subversion/branches/ev2-export/contrib/hook-scripts/enforcer/enforcer Sun Oct 21 02:00:31 2012 @@ -129,7 +129,7 @@ configuration file "enforcer.conf". When writing hooks, it is usually easier to test the hooks on committed transactions already in the repository, rather than installing the -hook and making commits to test the them. Enforcer allows you to +hook and making commits to test them. Enforcer allows you to specify either a transaction ID (for use in a hook script) or a revision number (for testing). You can then, for example, find a revision that you would like to have blocked (or not) and test your Modified: subversion/branches/ev2-export/contrib/server-side/fsfsfixer/fix-repo URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/contrib/server-side/fsfsfixer/fix-repo?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/contrib/server-side/fsfsfixer/fix-repo (original) +++ subversion/branches/ev2-export/contrib/server-side/fsfsfixer/fix-repo Sun Oct 21 02:00:31 2012 @@ -5,6 +5,7 @@ Usage: $0 REPO-DIR START-REV Backup your repository before running these scripts." +THIS_DIR=`dirname "$0"` REPO_DIR="$1" START_REV="$2" @@ -13,7 +14,7 @@ if [ ! -d "$REPO_DIR" ] || [ "$START_REV exit 1 fi -YOUNGEST="$(svnlook youngest "$REPO_DIR")" +YOUNGEST=`svnlook youngest "$REPO_DIR"` if [ "$YOUNGEST" = "" ]; then echo "$0: error running 'svnlook youngest $REPO_DIR'" @@ -25,6 +26,6 @@ echo "Verifying revisions $START_REV thr REV=$START_REV while [ $REV -le $YOUNGEST ]; do echo "=== r$REV" - ./fixer/fix-rev.py "$REPO_DIR" "$REV" + "$THIS_DIR"/fixer/fix-rev.py "$REPO_DIR" "$REV" REV=`expr $REV + 1` done Modified: subversion/branches/ev2-export/gen-make.py URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/gen-make.py?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/gen-make.py (original) +++ subversion/branches/ev2-export/gen-make.py Sun Oct 21 02:00:31 2012 @@ -204,6 +204,9 @@ def _usage_exit(err=None): print(" --with-static-apr") print(" Use static apr and apr-util") print("") + print(" --with-static-openssl") + print(" Use static openssl") + print("") print(" --vsnet-version=VER") print(" generate for VS.NET version VER (2002, 2003, 2005, 2008, 2010 or 2012)") print(" [only valid in combination with '-t vcproj']") @@ -248,6 +251,7 @@ if __name__ == '__main__': 'with-sasl=', 'with-apr_memcache=', 'with-static-apr', + 'with-static-openssl', 'enable-pool-debug', 'enable-purify', 'enable-quantify', Modified: subversion/branches/ev2-export/get-deps.sh URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/get-deps.sh?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/get-deps.sh (original) +++ subversion/branches/ev2-export/get-deps.sh Sun Oct 21 02:00:31 2012 @@ -48,7 +48,7 @@ APACHE_MIRROR=http://archive.apache.org/ # helpers usage() { echo "Usage: $0" - echo "Usage: $0 [ apr | neon | serf | zlib | sqlite ] ..." + echo "Usage: $0 [ apr | serf | zlib | sqlite ] ..." exit $1 } Propchange: subversion/branches/ev2-export/notes/api-changes-1.7.txt ------------------------------------------------------------------------------ svn:eol-style = native Propchange: subversion/branches/ev2-export/notes/api-errata/1.8/fs001.txt ------------------------------------------------------------------------------ svn:eol-style = native Modified: subversion/branches/ev2-export/notes/authz_policy.txt URL: http://svn.apache.org/viewvc/subversion/branches/ev2-export/notes/authz_policy.txt?rev=1400556&r1=1400555&r2=1400556&view=diff ============================================================================== --- subversion/branches/ev2-export/notes/authz_policy.txt (original) +++ subversion/branches/ev2-export/notes/authz_policy.txt Sun Oct 21 02:00:31 2012 @@ -111,6 +111,21 @@ WHAT USERS SHOULD EXPECT FROM PATH-BASED This situation is quite annoying for people who can't read all the changed-paths. + Notice that for the purposes of gating read and write access to + revision properties, Subversion never considers the user's *write* + access to the changed-paths. To understand the reason behind this, + it helps to understand why revprop access is gated at all. + Subversion assumes that revprops for a given revision -- especially + the log message (svn:log) property -- are likely to reveal paths + modified in that revision. It is precisely because Subversion + tries not to reveal unreadable paths to users that revprop access + is limited as described above. So as long as the user has the + requisite read access to the changed-paths, it's okay if he or she + lacks write access to one or more of those paths when attempting to + set or change revprops -- the information Subversion is trying to + protect through its revprop access control is considered safe to + reveal to that user. + 6. KNOWN LEAKAGE OF UNREADABLE PATHS Propchange: subversion/branches/ev2-export/notes/diff-data-flows.txt ------------------------------------------------------------------------------ svn:eol-style = native
