1
1
# -*-perl-*- hey - emacs - this is a perl file
2
- BEGIN {
2
+ # my $currpath = cwd();
3
+
4
+ our $pgsrc ;
5
+ our $currpath ;
6
+
7
+ BEGIN {
8
+ # path to the pg_pprobackup dir
9
+ $currpath = File::Basename::dirname(Cwd::abs_path($0 ));
3
10
use Cwd;
4
11
use File::Basename;
5
-
6
- my $pgsrc =" " ;
7
- if (@ARGV ==1)
12
+ if (($#ARGV +1)==1)
8
13
{
9
14
$pgsrc = shift @ARGV ;
10
15
if ($pgsrc eq " --help" ){
@@ -23,14 +28,13 @@ BEGIN
23
28
chdir ($path );
24
29
chdir (" ../.." );
25
30
$pgsrc = cwd();
31
+ $currpath = " contrib/pg_probackup" ;
26
32
}
27
-
28
33
chdir (" $pgsrc /src/tools/msvc" );
29
34
push (@INC , " $pgsrc /src/tools/msvc" );
30
35
chdir (" ../../.." ) if (-d " ../msvc" && -d " ../../../src" );
31
36
32
37
}
33
-
34
38
use Win32;
35
39
use Carp;
36
40
use strict;
@@ -84,22 +88,27 @@ BEGIN
84
88
my $bconf = $ENV {CONFIG } || " Release" ;
85
89
my $msbflags = $ENV {MSBFLAGS } || " " ;
86
90
my $buildwhat = $ARGV [1] || " " ;
87
- if (uc ($ARGV [0]) eq ' DEBUG' )
88
- {
89
- $bconf = " Debug" ;
90
- }
91
- elsif (uc ($ARGV [0]) ne " RELEASE" )
92
- {
93
- $buildwhat = $ARGV [0] || " " ;
94
- }
95
91
92
+ # if (uc($ARGV[0]) eq 'DEBUG')
93
+ # {
94
+ # $bconf = "Debug";
95
+ # }
96
+ # elsif (uc($ARGV[0]) ne "RELEASE")
97
+ # {
98
+ # $buildwhat = $ARGV[0] || "";
99
+ # }
100
+
101
+ # printf "currpath=$currpath";
102
+
103
+ # exit(0);
96
104
# ... and do it
97
105
system (" msbuild pg_probackup.vcxproj /verbosity:normal $msbflags /p:Configuration=$bconf " );
98
106
99
-
100
107
# report status
101
108
102
109
my $status = $? >> 8;
110
+ printf (" Status: $status \n " );
111
+ printf (" Output file built in the folder $pgsrc /$bconf /pg_probackup\n " );
103
112
104
113
exit $status ;
105
114
@@ -126,10 +135,10 @@ sub build_pgprobackup
126
135
127
136
# vvs test
128
137
my $probackup =
129
- $solution -> AddProject(' pg_probackup' , ' exe' , ' pg_probackup' ); # , 'contrib/pg_probackup'
138
+ $solution -> AddProject(" pg_probackup" , ' exe' , " pg_probackup" ); # , 'contrib/pg_probackup'
130
139
$probackup -> AddDefine(' FRONTEND' );
131
140
$probackup -> AddFiles(
132
- ' contrib/pg_probackup/ src' ,
141
+ " $currpath / src" ,
133
142
' archive.c' ,
134
143
' backup.c' ,
135
144
' catalog.c' ,
@@ -149,39 +158,39 @@ sub build_pgprobackup
149
158
' validate.c'
150
159
);
151
160
$probackup -> AddFiles(
152
- ' contrib/pg_probackup/ src/utils' ,
161
+ " $currpath / src/utils" ,
153
162
' json.c' ,
154
163
' logger.c' ,
155
164
' parray.c' ,
156
165
' pgut.c' ,
157
166
' thread.c'
158
167
);
159
- $probackup -> AddFile(' src/backend/access/transam/xlogreader.c' );
160
- $probackup -> AddFile(' src/backend/utils/hash/pg_crc.c' );
168
+ $probackup -> AddFile(" $pgsrc / src/backend/access/transam/xlogreader.c" );
169
+ $probackup -> AddFile(" $pgsrc / src/backend/utils/hash/pg_crc.c" );
161
170
$probackup -> AddFiles(
162
- ' src/bin/pg_basebackup' ,
171
+ " $pgsrc / src/bin/pg_basebackup" ,
163
172
' receivelog.c' ,
164
173
' streamutil.c'
165
174
);
166
175
167
- if (-e ' src/bin/pg_basebackup/walmethods.c' )
176
+ if (-e " $pgsrc / src/bin/pg_basebackup/walmethods.c" )
168
177
{
169
- $probackup -> AddFile(' src/bin/pg_basebackup/walmethods.c' );
178
+ $probackup -> AddFile(" $pgsrc / src/bin/pg_basebackup/walmethods.c" );
170
179
}
171
180
172
- $probackup -> AddFile(' src/bin/pg_rewind/datapagemap.c' );
181
+ $probackup -> AddFile(" $pgsrc / src/bin/pg_rewind/datapagemap.c" );
173
182
174
- $probackup -> AddFile(' src/interfaces/libpq/pthread-win32.c' );
183
+ $probackup -> AddFile(" $pgsrc / src/interfaces/libpq/pthread-win32.c" );
175
184
176
- $probackup -> AddIncludeDir(' src/bin/pg_basebackup' );
177
- $probackup -> AddIncludeDir(' src/bin/pg_rewind' );
178
- $probackup -> AddIncludeDir(' src/interfaces/libpq' );
179
- $probackup -> AddIncludeDir(' src' );
180
- $probackup -> AddIncludeDir(' src/port' );
185
+ $probackup -> AddIncludeDir(" $pgsrc / src/bin/pg_basebackup" );
186
+ $probackup -> AddIncludeDir(" $pgsrc / src/bin/pg_rewind" );
187
+ $probackup -> AddIncludeDir(" $pgsrc / src/interfaces/libpq" );
188
+ $probackup -> AddIncludeDir(" $pgsrc / src" );
189
+ $probackup -> AddIncludeDir(" $pgsrc / src/port" );
181
190
182
- $probackup -> AddIncludeDir(' contrib/pg_probackup ' );
183
- $probackup -> AddIncludeDir(' contrib/pg_probackup/ src' );
184
- $probackup -> AddIncludeDir(' contrib/pg_probackup/ src/utils' );
191
+ $probackup -> AddIncludeDir(" $currpath " );
192
+ $probackup -> AddIncludeDir(" $currpath / src" );
193
+ $probackup -> AddIncludeDir(" $currpath / src/utils" );
185
194
186
195
$probackup -> AddReference($libpq , $libpgfeutils , $libpgcommon , $libpgport );
187
196
$probackup -> AddLibrary(' ws2_32.lib' );
0 commit comments