1@echo off
2REM src/tools/msvc/clean.bat
3
4set DIST=0
5if "%1"=="dist" set DIST=1
6
7set D=%CD%
8if exist ..\msvc if exist ..\..\..\src cd ..\..\..
9
10if exist debug rd /s /q debug
11if exist release rd /s /q release
12for %%f in (*.vcproj) do del %%f
13for %%f in (*.vcxproj) do del %%f
14for %%f in (*.vcxproj.user) do del %%f
15if exist pgsql.sln del /q pgsql.sln
16if exist pgsql.sln.cache del /q pgsql.sln.cache
17if exist pgsql.sdf del /q pgsql.sdf
18if exist pgsql.suo del /q /a:H pgsql.suo
19del /s /q src\bin\win32ver.rc 2> NUL
20del /s /q src\interfaces\win32ver.rc 2> NUL
21if exist src\backend\win32ver.rc del /q src\backend\win32ver.rc
22if exist src\backend\replication\libpqwalreceiver\win32ver.rc del /q src\backend\replication\libpqwalreceiver\win32ver.rc
23if exist src\backend\replication\pgoutput\win32ver.rc del /q src\backend\replication\pgoutput\win32ver.rc
24if exist src\backend\snowball\win32ver.rc del /q src\backend\snowball\win32ver.rc
25if exist src\interfaces\ecpg\test\win32ver.rc del /q src\interfaces\ecpg\test\win32ver.rc
26if exist src\pl\plperl\win32ver.rc del /q src\pl\plperl\win32ver.rc
27if exist src\pl\plpgsql\src\win32ver.rc del /q src\pl\plpgsql\src\win32ver.rc
28if exist src\pl\plpython\win32ver.rc del /q src\pl\plpython\win32ver.rc
29if exist src\pl\tcl\win32ver.rc del /q src\pl\tcl\win32ver.rc
30if exist src\test\isolation\win32ver.rc del /q src\test\isolation\win32ver.rc
31if exist src\test\regress\win32ver.rc del /q src\test\regress\win32ver.rc
32if exist src\timezone\win32ver.rc del /q src\timezone\win32ver.rc
33
34for /d %%f in (src\interfaces\ecpg\*) do if exist %%f\win32ver.rc del /q %%f\win32ver.rc
35for /d %%f in (contrib\*) do if exist %%f\win32ver.rc del /q %%f\win32ver.rc
36for /d %%f in (src\backend\utils\mb\conversion_procs\*) do if exist %%f\win32ver.rc del /q %%f\win32ver.rc
37for /d %%f in (src\test\modules\*) do if exist %%f\win32ver.rc del /q %%f\win32ver.rc
38
39REM Delete files created with GenerateFiles() in Solution.pm
40if exist src\include\pg_config.h del /q src\include\pg_config.h
41if exist src\include\pg_config_ext.h del /q src\include\pg_config_ext.h
42if exist src\include\pg_config_os.h del /q src\include\pg_config_os.h
43if exist src\include\dynloader.h del /q src\include\dynloader.h
44if %DIST%==1 if exist src\backend\parser\gram.h del /q src\backend\parser\gram.h
45if exist src\include\utils\errcodes.h del /q src\include\utils\errcodes.h
46if exist src\include\utils\fmgroids.h del /q src\include\utils\fmgroids.h
47if exist src\include\utils\fmgrprotos.h del /q src\include\utils\fmgrprotos.h
48if exist src\include\storage\lwlocknames.h del /q src\include\storage\lwlocknames.h
49if exist src\include\utils\probes.h del /q src\include\utils\probes.h
50if exist src\include\catalog\schemapg.h del /q src\include\catalog\schemapg.h
51if exist src\include\catalog\pg_*_d.h del /q src\include\catalog\pg_*_d.h
52if exist src\include\catalog\header-stamp del /q src\include\catalog\header-stamp
53if exist doc\src\sgml\version.sgml del /q doc\src\sgml\version.sgml
54
55if %DIST%==1 if exist src\backend\utils\fmgroids.h del /q src\backend\utils\fmgroids.h
56if %DIST%==1 if exist src\backend\utils\fmgrprotos.h del /q src\backend\utils\fmgrprotos.h
57if %DIST%==1 if exist src\backend\utils\fmgrtab.c del /q src\backend\utils\fmgrtab.c
58if %DIST%==1 if exist src\backend\utils\fmgr-stamp del /q src\backend\utils\fmgr-stamp
59if %DIST%==1 if exist src\backend\utils\errcodes.h del /q src\backend\utils\errcodes.h
60if %DIST%==1 if exist src\backend\storage\lmgr\lwlocknames.c del /q src\backend\storage\lmgr\lwlocknames.c
61if %DIST%==1 if exist src\backend\storage\lmgr\lwlocknames.h del /q src\backend\storage\lmgr\lwlocknames.h
62if %DIST%==1 if exist src\pl\plpython\spiexceptions.h del /q src\pl\plpython\spiexceptions.h
63if %DIST%==1 if exist src\pl\plpgsql\src\plerrcodes.h del /q src\pl\plpgsql\src\plerrcodes.h
64if %DIST%==1 if exist src\pl\tcl\pltclerrcodes.h del /q src\pl\tcl\pltclerrcodes.h
65if %DIST%==1 if exist src\backend\utils\sort\qsort_tuple.c del /q src\backend\utils\sort\qsort_tuple.c
66if %DIST%==1 if exist src\bin\psql\sql_help.c del /q src\bin\psql\sql_help.c
67if %DIST%==1 if exist src\bin\psql\sql_help.h del /q src\bin\psql\sql_help.h
68if %DIST%==1 if exist src\interfaces\ecpg\preproc\preproc.y del /q src\interfaces\ecpg\preproc\preproc.y
69if %DIST%==1 if exist src\backend\catalog\postgres.bki del /q src\backend\catalog\postgres.bki
70if %DIST%==1 if exist src\backend\catalog\postgres.description del /q src\backend\catalog\postgres.description
71if %DIST%==1 if exist src\backend\catalog\postgres.shdescription del /q src\backend\catalog\postgres.shdescription
72if %DIST%==1 if exist src\backend\catalog\schemapg.h del /q src\backend\catalog\schemapg.h
73if %DIST%==1 if exist src\backend\catalog\pg_*_d.h del /q src\backend\catalog\pg_*_d.h
74if %DIST%==1 if exist src\backend\catalog\bki-stamp del /q src\backend\catalog\bki-stamp
75if %DIST%==1 if exist src\backend\parser\scan.c del /q src\backend\parser\scan.c
76if %DIST%==1 if exist src\backend\parser\gram.c del /q src\backend\parser\gram.c
77if %DIST%==1 if exist src\backend\bootstrap\bootscanner.c del /q src\backend\bootstrap\bootscanner.c
78if %DIST%==1 if exist src\backend\bootstrap\bootparse.c del /q src\backend\bootstrap\bootparse.c
79if %DIST%==1 if exist src\backend\utils\misc\guc-file.c del /q src\backend\utils\misc\guc-file.c
80if %DIST%==1 if exist src\backend\replication\repl_scanner.c del /q src\backend\replication\repl_scanner.c
81if %DIST%==1 if exist src\backend\replication\repl_gram.c del /q src\backend\replication\repl_gram.c
82if %DIST%==1 if exist src\backend\replication\syncrep_scanner.c del /q src\backend\replication\syncrep_scanner.c
83if %DIST%==1 if exist src\backend\replication\syncrep_gram.c del /q src\backend\replication\syncrep_gram.c
84
85
86if exist src\interfaces\libpq\libpq.rc del /q src\interfaces\libpq\libpq.rc
87if exist src\interfaces\libpq\libpqdll.def del /q src\interfaces\libpq\libpqdll.def
88if exist src\interfaces\ecpg\compatlib\compatlib.def del /q src\interfaces\ecpg\compatlib\compatlib.def
89if exist src\interfaces\ecpg\ecpglib\ecpglib.def del /q src\interfaces\ecpg\ecpglib\ecpglib.def
90if exist src\interfaces\ecpg\include\ecpg_config.h del /q src\interfaces\ecpg\include\ecpg_config.h
91if exist src\interfaces\ecpg\pgtypeslib\pgtypeslib.def del /q src\interfaces\ecpg\pgtypeslib\pgtypeslib.def
92if %DIST%==1 if exist src\interfaces\ecpg\preproc\pgc.c del /q src\interfaces\ecpg\preproc\pgc.c
93if %DIST%==1 if exist src\interfaces\ecpg\preproc\preproc.c del /q src\interfaces\ecpg\preproc\preproc.c
94if %DIST%==1 if exist src\interfaces\ecpg\preproc\preproc.h del /q src\interfaces\ecpg\preproc\preproc.h
95
96if exist src\port\pg_config_paths.h del /q src\port\pg_config_paths.h
97
98if exist src\pl\plperl\SPI.c del /q src\pl\plperl\SPI.c
99if exist src\pl\plperl\Util.c del /q src\pl\plperl\Util.c
100if exist src\pl\plperl\perlchunks.h del /q src\pl\plperl\perlchunks.h
101if exist src\pl\plperl\plperl_opmask.h del /q src\pl\plperl\plperl_opmask.h
102if %DIST%==1 if exist src\pl\plpgsql\src\pl_gram.c del /q src\pl\plpgsql\src\pl_gram.c
103if %DIST%==1 if exist src\pl\plpgsql\src\pl_gram.h del /q src\pl\plpgsql\src\pl_gram.h
104
105if %DIST%==1 if exist src\fe_utils\psqlscan.c del /q src\fe_utils\psqlscan.c
106if %DIST%==1 if exist src\bin\psql\psqlscanslash.c del /q src\bin\psql\psqlscanslash.c
107if %DIST%==1 if exist src\bin\pgbench\exprscan.c del /q src\bin\pgbench\exprscan.c
108if %DIST%==1 if exist src\bin\pgbench\exprparse.c del /q src\bin\pgbench\exprparse.c
109
110if %DIST%==1 if exist contrib\cube\cubescan.c del /q contrib\cube\cubescan.c
111if %DIST%==1 if exist contrib\cube\cubeparse.c del /q contrib\cube\cubeparse.c
112if %DIST%==1 if exist contrib\seg\segscan.c del /q contrib\seg\segscan.c
113if %DIST%==1 if exist contrib\seg\segparse.c del /q contrib\seg\segparse.c
114
115if exist src\test\regress\tmp_check rd /s /q src\test\regress\tmp_check
116if exist contrib\spi\refint.dll del /q contrib\spi\refint.dll
117if exist contrib\spi\autoinc.dll del /q contrib\spi\autoinc.dll
118if exist src\test\regress\regress.dll del /q src\test\regress\regress.dll
119if exist src\test\regress\refint.dll del /q src\test\regress\refint.dll
120if exist src\test\regress\autoinc.dll del /q src\test\regress\autoinc.dll
121if %DIST%==1 if exist src\test\isolation\specscanner.c del /q src\test\isolation\specscanner.c
122if %DIST%==1 if exist src\test\isolation\specparse.c del /q src\test\isolation\specparse.c
123
124for /d %%f in (contrib\* src\bin\* src\test\* src\test\modules\*
125  ) do if exist %%f\tmp_check rd /s /q %%f\tmp_check
126
127REM Clean up datafiles built with contrib
128REM cd contrib
129REM for /r %%f in (*.sql) do if exist %%f.in del %%f
130
131cd %D%
132
133REM Clean up ecpg regression test files
134msbuild ecpg_regression.proj /NoLogo /v:q %MSBFLAGS% /t:clean
135
136goto :eof
137