From 3024b0aa94286dbf5e59603527c68b596b60965f Mon Sep 17 00:00:00 2001 From: Magnus Hagander Date: Fri, 23 Mar 2007 09:57:55 +0000 Subject: [PATCH] Support for running contribcheck on msvc --- doc/src/sgml/install-win32.sgml | 5 ++++- src/tools/msvc/vcregress.bat | 28 ++++++++++++++++++++++++++-- 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/doc/src/sgml/install-win32.sgml b/doc/src/sgml/install-win32.sgml index a4554ffe2c..8889496141 100644 --- a/doc/src/sgml/install-win32.sgml +++ b/doc/src/sgml/install-win32.sgml @@ -1,4 +1,4 @@ - + Installation on <productname>Windows</productname> @@ -269,6 +269,9 @@ vcregress plcheck + + vcregress contribcheck + To change the schedule used (default is the parallel), append it to the diff --git a/src/tools/msvc/vcregress.bat b/src/tools/msvc/vcregress.bat index 3a3910e3a1..b3b5df9b05 100644 --- a/src/tools/msvc/vcregress.bat +++ b/src/tools/msvc/vcregress.bat @@ -1,5 +1,5 @@ @echo off -REM $PostgreSQL: pgsql/src/tools/msvc/vcregress.bat,v 1.5 2007/03/21 16:21:40 mha Exp $ +REM $PostgreSQL: pgsql/src/tools/msvc/vcregress.bat,v 1.6 2007/03/23 09:57:55 mha Exp $ SETLOCAL SET STARTDIR=%CD% @@ -10,6 +10,7 @@ set what= if /I "%1"=="check" SET what=CHECK if /I "%1"=="installcheck" SET what=INSTALLCHECK if /I "%1"=="plcheck" SET what=PLCHECK +if /I "%1"=="contribcheck" SET what=CONTRIBCHECK if "%what%"=="" goto usage SET CONFIG=Debug @@ -19,7 +20,7 @@ copy %CONFIG%\refint\refint.dll contrib\spi\ copy %CONFIG%\autoinc\autoinc.dll contrib\spi\ copy %CONFIG%\regress\regress.dll src\test\regress\ -SET PATH=..\..\..\%CONFIG%\libpq;%PATH% +SET PATH=..\..\..\%CONFIG%\libpq;..\..\%CONFIG%\libpq;%PATH% SET TOPDIR=%CD% cd src\test\regress @@ -32,6 +33,7 @@ SET PERL5LIB=..\..\tools\msvc if "%what%"=="INSTALLCHECK" ..\..\..\%CONFIG%\pg_regress\pg_regress --psqldir=..\..\..\%CONFIG%\psql --schedule=%SCHEDULE%_schedule --multibyte=SQL_ASCII --load-language=plpgsql --no-locale if "%what%"=="CHECK" ..\..\..\%CONFIG%\pg_regress\pg_regress --psqldir=..\..\..\%CONFIG%\psql --schedule=%SCHEDULE%_schedule --multibyte=SQL_ASCII --load-language=plpgsql --no-locale --temp-install=./tmp_check --top-builddir=%TOPDIR% --temp-port=%TEMPPORT% if "%what%"=="PLCHECK" call :plcheck +if "%what%"=="CONTRIBCHECK" call :contribcheck SET E=%ERRORLEVEL% cd %STARTDIR% @@ -69,3 +71,25 @@ del regress.tmp.bat set E=%ERRORLEVEL% cd .. exit /b %E% + + +REM Check contrib modules +:contribcheck +cd ..\..\..\contrib +for /d %%d IN (*) do if exist %%d\sql if exist %%d\expected ( + call :onecontribcheck %%d + if errorlevel 1 exit /b 1 +) +goto :eof + +REM Check a single contrib module +:onecontribcheck +cd %1 + +perl ../../src/tools/msvc/getregress.pl > regress.tmp.bat +call regress.tmp.bat +del regress.tmp.bat +..\..\%CONFIG%\pg_regress\pg_regress --psqldir=..\..\%CONFIG%\psql --no-locale --dbname=contrib_regression %TESTS% +set E=%ERRORLEVEL% +cd .. +exit /b %E%