Просмотр исходного кода

tools/release: merge trunk

[SVN r56782]
Beman Dawes 17 лет назад
Родитель
Сommit
533827e012

+ 46 - 0
tools/release/build_release_packages.bat

@@ -0,0 +1,46 @@
+@echo off
+rem  Build release packages
+
+rem  Copyright Beman Dawes 2009
+
+rem  Distributed under the Boost Software License, Version 1.0.
+rem  See http://www.boost.org/LICENSE_1_0.txt
+
+echo Build release packages...
+
+if not %1$==$ goto ok
+echo Usage: build_release_packages release-name
+echo Example: build_release_packages boost_1_38_0_Beta1
+goto done
+
+:ok
+
+echo Preping posix...
+rmdir /s /q posix\bin.v2 2>nul
+rmdir /s /q posix\dist 2>nul
+ren posix %1
+del %1.tar.gz 2>nul
+del %1.tar.bz2 2>nul
+echo Creating gz...
+tar cfz %1.tar.gz %1
+echo Creating bz2...
+gzip -d -c %1.tar.gz | bzip2 >%1.tar.bz2
+echo Cleaning up posix...
+ren %1 posix
+
+echo Preping windows...
+rmdir /s /q windows\bin.v2 2>nul
+rmdir /s /q windows\dist 2>nul
+ren windows %1
+del %1.zip 2>nul
+del %1.7z 2>nul
+echo Creating zip...
+zip -r -q %1.zip %1
+echo Creating 7z...
+7z a -r -bd %1.7z %1
+echo Cleaning up windows...
+ren %1 windows
+
+echo Build release packages complete
+
+:done

+ 3 - 2
tools/release/build_release_packages.sh

@@ -3,7 +3,8 @@
 # Build release packages
 
 # Copyright 2008 Beman Dawes
-# Distributed under the Boost Software License, Version 1.0. See http://www.boost.org/LICENSE_1_0.txt
+# Distributed under the Boost Software License, Version 1.0.
+# See http://www.boost.org/LICENSE_1_0.txt
 
 if [ $# -lt 1 ]
 then
@@ -21,7 +22,7 @@ rm -f $1.tar.bz2 2>/dev/null
 echo "creating gz..."
 tar cfz $1.tar.gz $1
 echo "creating bz2..."
-gunzip -c $1.tar.gz | bzip2 >$1.tar.bz2
+gzip -c $1.tar.gz | bzip2 >$1.tar.bz2
 echo "cleaning up..."
 mv $1 posix
 

+ 0 - 10
tools/release/diff_trunk_release.bat

@@ -1,10 +0,0 @@
-@echo off
-if not %1$==$ goto usage_ok
-echo Usage: diff_trunk_release library-name
-goto done
-
-:usage_ok
-svn diff http://svn.boost.org/svn/boost/branches/release/boost/%1 http://svn.boost.org/svn/boost/trunk/boost/%1
-svn diff http://svn.boost.org/svn/boost/branches/release/libs/%1 http://svn.boost.org/svn/boost/trunk/libs/%1
-
-:done

+ 40 - 0
tools/release/inspect_trunk.bat

@@ -0,0 +1,40 @@
+rem Inspect Trunk
+rem Copyright Beman Dawes 2008, 2009
+
+rem Distributed under the Boost Software License, Version 1.0.
+rem See http://www.boost.org/LICENSE_1_0.txt
+
+echo Must be run in directory containing svn checkout of trunk
+
+echo Clean trunk working copy ...
+rem cleanup clears locks or other residual problems (we learned this the hard way!)
+svn cleanup
+echo Update trunk working copy...
+svn up --non-interactive
+pushd tools\inspect\build
+echo Build inspect program...
+bjam
+popd
+echo Inspect...
+dist\bin\inspect >%TEMP%\trunk_inspect.html
+
+echo Create ftp script...
+pushd %TEMP%
+copy %BOOST_TRUNK%\..\user.txt inspect.ftp
+echo dir >>inspect.ftp
+echo binary >>inspect.ftp
+echo put trunk_inspect.html >>inspect.ftp
+echo dir >>inspect.ftp
+echo mdelete inspect-trunk.html >>inspect.ftp
+echo rename trunk_inspect.html inspect-trunk.html >>inspect.ftp
+echo dir >>inspect.ftp
+echo bye >>inspect.ftp
+
+echo Run ftp script...
+ftp -n -i -s:inspect.ftp boost.cowic.de
+popd
+
+echo Update script for next run
+copy /y tools\release\inspect_trunk.bat
+
+echo Inspect script complete

+ 21 - 0
tools/release/linux_user-config.jam

@@ -0,0 +1,21 @@
+# Linux user-config.jam
+
+import toolset : using ;
+
+using gcc ;
+
+using python ; # requires pythonN.NN-dev be installed
+
+# Boost iostreams requires no user-config.jam entries,
+# but does require zliblg-dev, libbz2-dev, be installed
+
+using xsltproc ;
+
+using boostbook
+    : /usr/share/xml/docbook/stylesheet/nwalsh
+    : /usr/share/xml/docbook/schema/dtd/4.2
+    ;
+
+# Remove this line if you're not using doxygen
+using doxygen ;
+using quickbook ;

+ 0 - 0
tools/release/msvc/compare_trees/compare_trees.vcproj → tools/release/release-mgt-msvc/compare_trees/compare_trees.vcproj


+ 6 - 0
tools/release/msvc/msvc.sln → tools/release/release-mgt-msvc/msvc.sln

@@ -3,6 +3,8 @@ Microsoft Visual Studio Solution File, Format Version 10.00
 # Visual C++ Express 2008
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "compare_trees", "compare_trees\compare_trees.vcproj", "{7E6AD5ED-4168-4613-A342-0217AA82DEC1}"
 EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "strftime", "strftime\strftime.vcproj", "{4A82F955-7630-4B79-9C50-E45F27E28BA8}"
+EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|Win32 = Debug|Win32
@@ -13,6 +15,10 @@ Global
 		{7E6AD5ED-4168-4613-A342-0217AA82DEC1}.Debug|Win32.Build.0 = Debug|Win32
 		{7E6AD5ED-4168-4613-A342-0217AA82DEC1}.Release|Win32.ActiveCfg = Release|Win32
 		{7E6AD5ED-4168-4613-A342-0217AA82DEC1}.Release|Win32.Build.0 = Release|Win32
+		{4A82F955-7630-4B79-9C50-E45F27E28BA8}.Debug|Win32.ActiveCfg = Debug|Win32
+		{4A82F955-7630-4B79-9C50-E45F27E28BA8}.Debug|Win32.Build.0 = Debug|Win32
+		{4A82F955-7630-4B79-9C50-E45F27E28BA8}.Release|Win32.ActiveCfg = Release|Win32
+		{4A82F955-7630-4B79-9C50-E45F27E28BA8}.Release|Win32.Build.0 = Release|Win32
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE

+ 193 - 0
tools/release/release-mgt-msvc/strftime/strftime.vcproj

@@ -0,0 +1,193 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+	ProjectType="Visual C++"
+	Version="9.00"
+	Name="strftime"
+	ProjectGUID="{4A82F955-7630-4B79-9C50-E45F27E28BA8}"
+	RootNamespace="strftime"
+	Keyword="Win32Proj"
+	TargetFrameworkVersion="196613"
+	>
+	<Platforms>
+		<Platform
+			Name="Win32"
+		/>
+	</Platforms>
+	<ToolFiles>
+	</ToolFiles>
+	<Configurations>
+		<Configuration
+			Name="Debug|Win32"
+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+			IntermediateDirectory="$(ConfigurationName)"
+			ConfigurationType="1"
+			CharacterSet="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="0"
+				PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+				MinimalRebuild="true"
+				BasicRuntimeChecks="3"
+				RuntimeLibrary="3"
+				UsePrecompiledHeader="0"
+				WarningLevel="3"
+				DebugInformationFormat="4"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				LinkIncremental="2"
+				GenerateDebugInformation="true"
+				SubSystem="1"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+		<Configuration
+			Name="Release|Win32"
+			OutputDirectory="$(SolutionDir)$(ConfigurationName)"
+			IntermediateDirectory="$(ConfigurationName)"
+			ConfigurationType="1"
+			CharacterSet="1"
+			WholeProgramOptimization="1"
+			>
+			<Tool
+				Name="VCPreBuildEventTool"
+			/>
+			<Tool
+				Name="VCCustomBuildTool"
+			/>
+			<Tool
+				Name="VCXMLDataGeneratorTool"
+			/>
+			<Tool
+				Name="VCWebServiceProxyGeneratorTool"
+			/>
+			<Tool
+				Name="VCMIDLTool"
+			/>
+			<Tool
+				Name="VCCLCompilerTool"
+				Optimization="2"
+				EnableIntrinsicFunctions="true"
+				PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+				RuntimeLibrary="0"
+				EnableFunctionLevelLinking="true"
+				UsePrecompiledHeader="0"
+				WarningLevel="3"
+				DebugInformationFormat="3"
+			/>
+			<Tool
+				Name="VCManagedResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCResourceCompilerTool"
+			/>
+			<Tool
+				Name="VCPreLinkEventTool"
+			/>
+			<Tool
+				Name="VCLinkerTool"
+				LinkIncremental="1"
+				GenerateDebugInformation="true"
+				SubSystem="1"
+				OptimizeReferences="2"
+				EnableCOMDATFolding="2"
+				TargetMachine="1"
+			/>
+			<Tool
+				Name="VCALinkTool"
+			/>
+			<Tool
+				Name="VCManifestTool"
+			/>
+			<Tool
+				Name="VCXDCMakeTool"
+			/>
+			<Tool
+				Name="VCBscMakeTool"
+			/>
+			<Tool
+				Name="VCFxCopTool"
+			/>
+			<Tool
+				Name="VCAppVerifierTool"
+			/>
+			<Tool
+				Name="VCPostBuildEventTool"
+			/>
+		</Configuration>
+	</Configurations>
+	<References>
+	</References>
+	<Files>
+		<Filter
+			Name="Source Files"
+			Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+			>
+			<File
+				RelativePath="..\..\strftime.cpp"
+				>
+			</File>
+		</Filter>
+		<Filter
+			Name="Header Files"
+			Filter="h;hpp;hxx;hm;inl;inc;xsd"
+			UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+			>
+		</Filter>
+		<Filter
+			Name="Resource Files"
+			Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
+			UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
+			>
+		</Filter>
+	</Files>
+	<Globals>
+	</Globals>
+</VisualStudioProject>

+ 31 - 0
tools/release/release_reports.sh

@@ -0,0 +1,31 @@
+#!/usr/bin/env bash
+
+# Run the release branch regression reporting system
+
+# Copyright 2008 Beman Dawes
+
+# Distributed under the Boost Software License, Version 1.0.
+# See http://www.boost.org/LICENSE_1_0.txt
+
+# Requirements:
+#
+#   * ~/boost/trunk is an svn working copy of the trunk
+#   * ~/boost/release-reports is a directory devoted to release regression reporting
+#   * ~/boost/release-reports/boost is an svn working of branches/release
+#   * ~/boost/release-reports/release/ exists
+
+echo Updating ~/boost/trunk/tools/regression ...
+svn up ~/boost/trunk/tools/regression
+
+echo Updating ~/boost/trunk/tools/release ...
+svn up ~/boost/trunk/tools/release
+
+pushd ~/boost/release-reports
+
+echo Running build_results.sh ...
+date >report.log
+~/boost/trunk/tools/regression/xsl_reports/build_results.sh release 1>>report.log 2>>report.log
+date >>report.log
+
+popd 
+echo Release regression reporting complete - see ~/boost/release-reports/report.log

+ 23 - 0
tools/release/snapshot.bat

@@ -0,0 +1,23 @@
+@echo off
+rem  Run POSIX and Windows snapshots and inspection
+
+rem  Copyright 2008 Beman Dawes
+
+rem  Distributed under the Boost Software License, Version 1.0.
+rem  See http://www.boost.org/LICENSE_1_0.txt
+
+rem  Must be run in a directory devoted to boost release snapshots
+
+echo Using %BOOST_TRUNK% as boost trunk
+time /t
+pushd %BOOST_TRUNK%
+svn up
+popd
+call %BOOST_TRUNK%\tools\release\snapshot_download_docs.bat
+time /t
+call %BOOST_TRUNK%\tools\release\snapshot_posix.bat
+time /t
+call %BOOST_TRUNK%\tools\release\snapshot_windows.bat
+time /t
+call %BOOST_TRUNK%\tools\release\snapshot_inspection.bat
+time /t

+ 10 - 3
tools/release/snapshot.sh

@@ -4,6 +4,13 @@
 # Distributed under the Boost Software License, Version 1.0.
 # See http://www.boost.org/LICENSE_1_0.txt
 
-./snapshot_posix.sh
-./snapshot_windows.sh
-./inspect.sh
+sleep 5s
+echo Using $BOOST_TRUNK as boost trunk
+date
+$BOOST_TRUNK/tools/release/snapshot_posix.sh
+date
+$BOOST_TRUNK/tools/release/snapshot_windows.sh
+date
+$BOOST_TRUNK/tools/release/snapshot_inspect.sh
+date
+sleep 5s

+ 28 - 0
tools/release/snapshot_download_docs.bat

@@ -0,0 +1,28 @@
+@echo off
+rem  Download and unpack boost-docs.7z
+
+rem  Copyright 2008 Beman Dawes
+
+rem  Distributed under the Boost Software License, Version 1.0.
+rem  See http://www.boost.org/LICENSE_1_0.txt
+
+echo Deleting old files and directories ...
+del boost-docs.7z 2>nul
+rmdir /s /q docs_temp 2>nul 
+mkdir docs_temp
+
+echo Creating ftp script ...
+rem user.txt must be a single line: user userid password
+rem where "userid" and "password" are replace with the appropriate values
+copy user.txt download_docs.ftp
+echo binary >>download_docs.ftp
+echo get boost-docs.7z >>download_docs.ftp
+echo bye >>download_docs.ftp
+
+echo Running ftp script ...
+ftp -d -n -i -s:download_docs.ftp boost.cowic.de
+
+echo Unpacking 7z file ...
+7z x -y -odocs_temp boost-docs.7z
+
+echo Download and unpack boost-docs.7z complete!

+ 31 - 0
tools/release/snapshot_inspect.sh

@@ -0,0 +1,31 @@
+#!/usr/bin/env bash
+
+# Inspect snapshot
+
+# © Copyright 2008 Beman Dawes
+# Distributed under the Boost Software License, Version 1.0.
+# See http://www.boost.org/LICENSE_1_0.txt
+
+# This script uses ftp, and thus assumes ~/.netrc contains a machine ... entry
+
+pushd posix/tools/inspect/build
+bjam
+popd
+echo inspect...
+pushd posix
+dist/bin/inspect >../inspect.html
+popd
+
+# create the ftp script
+echo create ftp script...
+echo "dir" >inspect.ftp
+echo "binary" >>inspect.ftp
+echo "put inspect.html" >>inspect.ftp
+echo "delete inspect-snapshot.html" >>inspect.ftp
+echo "rename inspect.html inspect-snapshot.html" >>inspect.ftp
+echo "dir" >>inspect.ftp
+echo "bye" >>inspect.ftp
+# use cygwin ftp rather than Windows ftp
+echo ftp...
+/usr/bin/ftp -v -i boost.cowic.de <inspect.ftp
+echo inspect.sh complete

+ 30 - 0
tools/release/snapshot_inspection.bat

@@ -0,0 +1,30 @@
+rem Inspect snapshot
+
+rem Copyright 2008 Beman Dawes
+
+rem Distributed under the Boost Software License, Version 1.0.
+rem See http://www.boost.org/LICENSE_1_0.txt
+
+pushd posix\tools\inspect\build
+bjam
+popd
+echo inspect...
+pushd posix
+dist\bin\inspect >..\inspect.html
+popd
+
+echo Create ftp script...
+copy user.txt inspect.ftp
+echo dir >>inspect.ftp
+echo binary >>inspect.ftp
+echo put inspect.html >>inspect.ftp
+echo dir >>inspect.ftp
+echo mdelete inspect-snapshot.html >>inspect.ftp
+echo rename inspect.html inspect-snapshot.html >>inspect.ftp
+echo dir >>inspect.ftp
+echo bye >>inspect.ftp
+
+echo Run ftp script...
+ftp -n -i -s:inspect.ftp boost.cowic.de
+
+echo Inspect script complete

+ 74 - 0
tools/release/snapshot_posix.bat

@@ -0,0 +1,74 @@
+rem  Build a branches/release snapshot for POSIX, using LF line termination
+
+rem  Copyright 2008 Beman Dawes
+
+rem  Distributed under the Boost Software License, Version 1.0.
+rem  See http://www.boost.org/LICENSE_1_0.txt
+
+echo Build a branches/release snapshot for POSIX, using LF line termination...
+
+echo Removing old files...
+rmdir /s /q posix >nul
+rmdir /s /q svn_info >nul
+del posix.tar.gz >nul
+del posix.tar.bz2 >nul
+
+echo Exporting files from subversion...
+rem  leave an audit trail, which is used by inspect to determine revision number
+svn co --depth=files http://svn.boost.org/svn/boost/branches/release svn_info
+svn export --non-interactive --native-eol LF http://svn.boost.org/svn/boost/branches/release posix
+
+echo Creating release history README.txt...
+lynx -width=72 -dump -nolist -display_charset=utf-8 http://beta.boost.org/users/history/minimal.php >posix\README.txt
+
+echo Copying docs into posix\doc...
+pushd posix\doc
+xcopy /s /y ..\..\docs_temp\html html
+popd
+
+echo Setting SNAPSHOT_DATE
+strftime "%%Y-%%m-%%d" >date.txt
+set /p SNAPSHOT_DATE= <date.txt
+echo SNAPSHOT_DATE is %SNAPSHOT_DATE%
+
+echo Renaming root directory...
+ren posix boost-posix-%SNAPSHOT_DATE%
+
+echo Building .gz file...
+tar cfz posix.tar.gz boost-posix-%SNAPSHOT_DATE%
+echo Building .bz2 file...
+gzip -d -c posix.tar.gz | bzip2 >posix.tar.bz2
+
+ren boost-posix-%SNAPSHOT_DATE% posix
+
+echo The ftp transfer will be done in two steps because that has proved more
+echo reliable on Beman's Windows XP 64-bit system.
+
+echo Creating ftp script 1 ...
+copy user.txt posix.ftp
+echo dir >>posix.ftp
+echo binary >>posix.ftp
+
+rem echo put posix.tar.gz >>posix.ftp
+rem echo mdelete boost-posix*.gz >>posix.ftp
+rem echo rename posix.tar.gz boost-posix-%SNAPSHOT_DATE%.tar.gz >>posix.ftp
+
+echo put posix.tar.bz2 >>posix.ftp
+echo bye >>posix.ftp
+
+echo Running ftp script 1 ...
+ftp -n -i -s:posix.ftp boost.cowic.de
+
+echo Creating ftp script 2 ...
+copy user.txt posix.ftp
+echo dir >>posix.ftp
+echo mdelete boost-posix*.bz2 >>posix.ftp
+echo rename posix.tar.bz2 boost-posix-%SNAPSHOT_DATE%.tar.bz2 >>posix.ftp
+
+echo dir >>posix.ftp
+echo bye >>posix.ftp
+
+echo Running ftp script 2 ...
+ftp -n -i -s:posix.ftp boost.cowic.de
+
+echo POSIX snapshot complete!

+ 16 - 6
tools/release/snapshot_posix.sh

@@ -10,17 +10,27 @@ echo "Build a branches/release snapshot for POSIX, using LF line termination..."
 
 echo "Removing old files..."
 rm -r -f posix
+rm -r -f svn_info
 
 echo "Exporting files from subversion..."
+# leave an audit trail, which is used by inspect to determine revision number
+#   use --non-recursive rather than --depth=files until the linux distros catch up
+svn co --non-recursive http://svn.boost.org/svn/boost/branches/release svn_info
 svn export --non-interactive --native-eol LF http://svn.boost.org/svn/boost/branches/release posix
 
-echo "Building docs..."
-pushd posix/doc
-bjam-cygwin --v2 --toolset=gcc &>../../posix-bjam.log
-popd
+#echo "Building bjam..."
+# failure to use an up-to-date copy of bjam has caused much wasted effort.
+#pushd posix/tools/jam/src
+#./build.sh gcc
+#popd
+#
+#echo "Building docs..."
+#pushd posix/doc
+#../tools/jam/src/bin.cygwinx86/bjam --toolset=gcc &>../../posix-bjam.log
+#popd
 
 echo "Cleaning up and renaming..."
-rm -r posix/bin.v2
+#rm -r posix/bin.v2
 SNAPSHOT_DATE=`eval date +%Y-%m-%d`
 echo SNAPSHOT_DATE is $SNAPSHOT_DATE
 mv posix boost-posix-$SNAPSHOT_DATE
@@ -52,4 +62,4 @@ echo "Running ftp script..."
 # use cygwin ftp rather than Windows ftp
 /usr/bin/ftp -v -i boost.cowic.de <posix.ftp
 
-echo "POSIX snapshot complete!
+echo POSIX snapshot complete!

+ 79 - 0
tools/release/snapshot_windows.bat

@@ -0,0 +1,79 @@
+rem  Build a branches/release snapshot for Windows, using CRLF line termination
+
+rem  Copyright 2008 Beman Dawes
+
+rem  Distributed under the Boost Software License, Version 1.0.
+rem  See http://www.boost.org/LICENSE_1_0.txt
+
+echo Build a branches/release snapshot for Windows, using CRLF line termination...
+
+echo Removing old files...
+rmdir /s /q windows >nul
+rmdir /s /q svn_info >nul
+del windows.7z >nul
+del windows.zip >nul
+
+echo Exporting files from subversion...
+rem  leave an audit trail, which is used by inspect to determine revision number
+svn co --depth=files http://svn.boost.org/svn/boost/branches/release svn_info
+svn export --non-interactive --native-eol CRLF http://svn.boost.org/svn/boost/branches/release windows
+
+echo Creating release history README.txt...
+lynx -width=72 -dump -nolist -display_charset=utf-8 http://beta.boost.org/users/history/minimal.php >windows\README.txt
+
+echo Copying docs into windows\doc...
+pushd windows\doc
+xcopy /s /y ..\..\docs_temp\html html
+popd
+
+echo Setting SNAPSHOT_DATE
+strftime "%%Y-%%m-%%d" >date.txt
+set /p SNAPSHOT_DATE= <date.txt
+echo SNAPSHOT_DATE is %SNAPSHOT_DATE%
+
+echo Renaming root directory...
+ren windows boost-windows-%SNAPSHOT_DATE%
+
+echo Building .7z file...
+rem On Windows, 7z comes from the 7-Zip package, not Cygwin,
+rem so path must include C:\Program Files\7-Zip
+7z a -r windows.7z boost-windows-%SNAPSHOT_DATE%
+
+rem Building .zip file...
+rem zip -r windows.zip boost-windows-%SNAPSHOT_DATE%
+
+ren boost-windows-%SNAPSHOT_DATE% windows
+
+echo The ftp transfer will be done in two steps because that has proved more
+echo reliable on Beman's Windows XP 64-bit system.
+
+echo Creating ftp script 1 ...
+rem user.txt must be a single line: user userid password
+rem where "userid" and "password" are replace with the appropriate values
+copy user.txt windows.ftp
+echo dir >>windows.ftp
+echo binary >>windows.ftp
+
+rem echo put windows.zip >>windows.ftp
+rem echo mdelete boost-windows*.zip >>windows.ftp
+rem echo rename windows.zip boost-windows-%SNAPSHOT_DATE%.zip >>windows.ftp
+
+echo put windows.7z >>windows.ftp
+echo bye >>windows.ftp
+
+echo Running ftp script 1 ...
+ftp -n -i -s:windows.ftp boost.cowic.de
+
+echo Creating ftp script 2 ...
+copy user.txt windows.ftp
+echo dir >>windows.ftp
+echo mdelete boost-windows*.7z >>windows.ftp
+echo rename windows.7z boost-windows-%SNAPSHOT_DATE%.7z >>windows.ftp
+
+echo dir >>windows.ftp
+echo bye >>windows.ftp
+
+echo Running ftp script 2 ...
+ftp -n -i -s:windows.ftp boost.cowic.de
+
+echo Windows snapshot complete!

+ 10 - 13
tools/release/snapshot_windows.sh

@@ -16,16 +16,10 @@ rm -r -f windows
 echo "Exporting files from subversion..."
 svn export --non-interactive --native-eol CRLF http://svn.boost.org/svn/boost/branches/release windows
 
-#echo "Building documentation..."
-#pushd windows/doc
-#bjam-cygwin --v2 --toolset=gcc &>../../windows-bjam.log
-#popd
+#echo "Copying docs from posix tree..."
+#cp --recursive posix/doc/html windows/doc
 
-echo "Copying docs from posix tree..."
-cp --recursive posix/doc/html windows/doc
-
-echo "Cleaning up and renaming..."
-rm -r windows/bin.v2
+echo "Renaming..."
 SNAPSHOT_DATE=`eval date +%Y-%m-%d`
 echo SNAPSHOT_DATE is $SNAPSHOT_DATE
 mv windows boost-windows-$SNAPSHOT_DATE
@@ -35,13 +29,16 @@ mv windows boost-windows-$SNAPSHOT_DATE
 
 echo "Building .7z..."
 rm -f windows.7z
+# On Windows, 7z comes from the 7-Zip package, not Cygwin,
+# so path must include C:\Program Files\7-Zip.
 7z a -r windows.7z boost-windows-$SNAPSHOT_DATE
 
 echo "Reverting name..."
 mv boost-windows-$SNAPSHOT_DATE windows
 
 echo "Creating ftp script..."
-echo "dir" >windows.ftp
+cat <user.txt >>windows.ftp
+echo "dir" >>windows.ftp
 echo "binary" >>windows.ftp
 
 #echo "put windows.zip" >>windows.ftp
@@ -55,7 +52,7 @@ echo "dir" >>windows.ftp
 echo "bye" >>windows.ftp
 
 echo "Running ftp script..."
-# use cygwin ftp rather than windows ftp
-/usr/bin/ftp -v -i boost.cowic.de <windows.ftp
+# This is the Windows ftp client
+ftp -n -i -d -s:windows.ftp boost.cowic.de
 
-echo "Windows snapshot complete!
+echo "Windows snapshot complete!"

+ 68 - 0
tools/release/strftime.cpp

@@ -0,0 +1,68 @@
+//  Command line utility to output the date under control of a format string
+
+//  Copyright 2008 Beman Dawes
+
+//  Distributed under the Boost Software License, Version 1.0.
+//  See http://www.boost.org/LICENSE_1_0.txt
+
+#define _CRT_SECURE_NO_WARNINGS
+
+#include <ctime>
+#include <string>
+#include <iostream>
+#include <cstdlib>
+
+using namespace std;
+
+int main(int argc, char * argv[])
+{
+  if (argc != 2 )
+  {
+    cerr <<
+      "Invoke: strftime format\n"
+      "Example: strftime \"The date is %Y-%m-%d in ISO format\""
+      "The format codes are:\n" 
+      "  %a  Abbreviated weekday name\n" 
+      "  %A  Full weekday name\n"
+      "  %b  Abbreviated month name\n"
+      "  %B  Full month name\n"
+      "  %c  Date and time representation appropriate for locale\n"
+      "  %d  Day of month as decimal number (01 - 31)\n"
+      "  %H  Hour in 24-hour format (00 - 23)\n"
+      "  %I  Hour in 12-hour format (01 - 12)\n"
+      "  %j  Day of year as decimal number (001 - 366)\n"
+      "  %m  Month as decimal number (01 - 12)\n"
+      "  %M  Minute as decimal number (00 - 59)\n"
+      "  %p  Current locale's A.M./P.M. indicator for 12-hour clock\n"
+      "  %S  Second as decimal number (00 - 59)\n"
+      "  %U  Week of year as decimal number, with Sunday as first day of week (00 - 53)\n"
+      "  %w  Weekday as decimal number (0 - 6; Sunday is 0)\n"
+      "  %W  Week of year as decimal number, with Monday as first day of week (00 - 53)\n"
+      "  %x  Date representation for current locale\n"
+      "  %X  Time representation for current locale\n"
+      "  %y  Year without century, as decimal number (00 - 99)\n"
+      "  %Y  Year with century, as decimal number\n"
+      "  %z, %Z  Either the time-zone name or time zone abbreviation, depending on registry settings; no characters if time zone is unknown\n"
+      "  %%  Percent sign\n"
+    ;
+    return 1;
+  }
+
+  string format = argv[1];
+  time_t t = time(0);
+  tm * tod = localtime(&t);
+  if (!tod)
+  {
+    cerr << "error: localtime function failed\n";
+    return 1;
+  }
+  char* s = new char [format.size() + 256];
+  if (strftime( s, format.size() + 256, format.c_str(), tod ) == 0 )
+  {
+    cerr << "error: buffer overflow\n";
+    return 1;
+  }
+
+  cout << s;
+  return 0;
+}

+ 15 - 0
tools/release/unmerged.bat

@@ -0,0 +1,15 @@
+@echo off
+if not %1$==$ goto usage_ok
+echo Usage: unmerged library-name [svn-options]
+echo Options include --summarize to show paths only. i.e. suppresses line-by-line diffs
+goto done
+
+:usage_ok
+svn diff %2 %3 %4 %5 %6 http://svn.boost.org/svn/boost/branches/release/boost/%1.hpp ^
+ http://svn.boost.org/svn/boost/trunk/boost/%1.hpp
+svn diff %2 %3 %4 %5 %6 http://svn.boost.org/svn/boost/branches/release/boost/%1 ^
+  http://svn.boost.org/svn/boost/trunk/boost/%1
+svn diff %2 %3 %4 %5 %6 http://svn.boost.org/svn/boost/branches/release/libs/%1 ^
+  http://svn.boost.org/svn/boost/trunk/libs/%1
+
+:done

+ 84 - 0
tools/release/unmerged_all.bat

@@ -0,0 +1,84 @@
+call unmerged accumulators --summarize
+call unmerged algorithm --summarize
+call unmerged any --summarize
+call unmerged array --summarize
+call unmerged asio --summarize
+call unmerged assign --summarize
+call unmerged bimap --summarize
+call unmerged bind --summarize
+call unmerged circular_buffer --summarize
+call unmerged compatibility --summarize
+call unmerged compose --summarize
+call unmerged concept --summarize
+call unmerged concept_check --summarize
+call unmerged config --summarize
+call unmerged conversion --summarize
+call unmerged crc --summarize
+call unmerged date_time --summarize
+call unmerged detail --summarize
+call unmerged disjoint_sets --summarize
+call unmerged dynamic_bitset --summarize
+call unmerged exception --summarize
+call unmerged filesystem --summarize
+call unmerged flyweight --summarize
+call unmerged foreach --summarize
+call unmerged format --summarize
+call unmerged function --summarize
+call unmerged functional --summarize
+call unmerged function_types --summarize
+call unmerged fusion --summarize
+call unmerged gil --summarize
+call unmerged graph --summarize
+call unmerged graph_parallel --summarize
+call unmerged integer --summarize
+call unmerged interprocess --summarize
+call unmerged intrusive --summarize
+call unmerged io --summarize
+call unmerged iostreams --summarize
+call unmerged iterator --summarize
+call unmerged lambda --summarize
+call unmerged logic --summarize
+call unmerged math --summarize
+call unmerged mem_fn --summarize
+call unmerged mpi --summarize
+call unmerged mpl --summarize
+call unmerged multi_array --summarize
+call unmerged multi_index --summarize
+call unmerged numeric --summarize
+call unmerged optional --summarize
+call unmerged parameter --summarize
+call unmerged pool --summarize
+call unmerged preprocessor --summarize
+call unmerged program_options --summarize
+call unmerged property_map --summarize
+call unmerged property_tree --summarize
+call unmerged proto --summarize
+call unmerged ptr_container --summarize
+call unmerged python --summarize
+call unmerged random --summarize
+call unmerged range --summarize
+call unmerged rational --summarize
+call unmerged regex --summarize
+call unmerged scope_exit --summarize
+call unmerged serialization --summarize
+call unmerged signals --summarize
+call unmerged signals2 --summarize
+call unmerged smart_ptr --summarize
+call unmerged spirit --summarize
+call unmerged statechart --summarize
+call unmerged static_assert --summarize
+call unmerged system --summarize
+call unmerged test --summarize
+call unmerged thread --summarize
+call unmerged timer --summarize
+call unmerged tokenizer --summarize
+call unmerged tr1 --summarize
+call unmerged tuple --summarize
+call unmerged typeof --summarize
+call unmerged type_traits --summarize
+call unmerged units --summarize
+call unmerged unordered --summarize
+call unmerged utility --summarize
+call unmerged variant --summarize
+call unmerged wave --summarize
+call unmerged xpressive --summarize

+ 11 - 0
tools/release/upload2sourceforge.bat

@@ -0,0 +1,11 @@
+if not %1$==$ goto usage_ok
+echo Usage: upload2sourceforge release-folder
+echo Example: upload2sourceforge 1.40.0
+goto done
+
+:usage_ok
+dir boost_*
+pause Are these the correct files to upload? [Ctrl-C to interrupt]
+rsync -avP -e ssh boost_* beman_dawes,boost@frs.sourceforge.net:/home/frs/project/b/bo/boost/boost/%1/
+
+:done

粤ICP备19079148号