Is postgresql on Windows compatible with flex 2.6.0?
Collegues,
Recently (about a month ago) flex 2.6.0 have been released.
But when we tried to compile PostgreSQL 9.5 beta 1 from git with it on
Windows, we've encountered that src/tools/msvc/pgflex.pl explicitely
checks that minor version of flex is equal to 5.
unless ($verparts[0] == 2 && $verparts[1] == 5 && $verparts[2]
=31) { print "WARNING! Flex install not found, or unsupported Flex
version.\n"; print "echo Attempting to build without.\n";
exit 0;
}
Is this check intentional, or it just seats here from the time when
version 2.6.0 didn't exist?
Postgres seems to compile fine with flex 2.6.0.
--
Victor Wagner
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
On Thu, Dec 10, 2015 at 5:45 PM, Victor Wagner <vitus@wagner.pp.ru> wrote:
Recently (about a month ago) flex 2.6.0 have been released.
But when we tried to compile PostgreSQL 9.5 beta 1 from git with it on
Windows, we've encountered that src/tools/msvc/pgflex.pl explicitely
checks that minor version of flex is equal to 5.unless ($verparts[0] == 2 && $verparts[1] == 5 && $verparts[2]
=31) { print "WARNING! Flex install not found, or unsupported Flex
version.\n"; print "echo Attempting to build without.\n";
exit 0;
}Is this check intentional, or it just seats here from the time when
version 2.6.0 didn't exist?Postgres seems to compile fine with flex 2.6.0.
It seems that 32f15d05 missed to update its equivalent in
src/tools/msvc. Per se the patch attached as you already found out.
--
Michael
Attachments:
20151210_msvc_flex.patchbinary/octet-stream; name=20151210_msvc_flex.patchDownload
diff --git a/src/tools/msvc/pgflex.pl b/src/tools/msvc/pgflex.pl
index c5b90ad..0410e3a 100644
--- a/src/tools/msvc/pgflex.pl
+++ b/src/tools/msvc/pgflex.pl
@@ -16,7 +16,8 @@ my ($flexver) = `flex -V`; # grab first line
$flexver = (split(/\s+/, $flexver))[1];
$flexver =~ s/[^0-9.]//g;
my @verparts = split(/\./, $flexver);
-unless ($verparts[0] == 2 && $verparts[1] == 5 && $verparts[2] >= 31)
+unless ($verparts[0] == 2 &&
+ ($verparts[1] > 5 || ($verparts[1] == 5 && $verparts[2] >= 31)))
{
print "WARNING! Flex install not found, or unsupported Flex version.\n";
print "echo Attempting to build without.\n";
On Thu, 10 Dec 2015 21:19:46 +0900
Michael Paquier <michael.paquier@gmail.com> wrote:
On Thu, Dec 10, 2015 at 5:45 PM, Victor Wagner <vitus@wagner.pp.ru>
Postgres seems to compile fine with flex 2.6.0.
It seems that 32f15d05 missed to update its equivalent in
src/tools/msvc. Per se the patch attached as you already found out.
May be it is better to use Perl standard module version to compare
version number.
something like:
use version;
unless (version->parse($flexver) > version->parse("2.5.31"))
Postgres requires relatively recent Perl. Version objects appeared in
Perl 5.10 and most people would have something newer.
--
Victor Wagner
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
On Thu, Dec 10, 2015 at 10:36 PM, Victor Wagner <vitus@wagner.pp.ru> wrote:
Postgres requires relatively recent Perl. Version objects appeared in
Perl 5.10 and most people would have something newer.
AFAIK, the minimum requirement for perl is 5.8...
--
Michael
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
Michael Paquier <michael.paquier@gmail.com> writes:
On Thu, Dec 10, 2015 at 10:36 PM, Victor Wagner <vitus@wagner.pp.ru> wrote:
Postgres requires relatively recent Perl. Version objects appeared in
Perl 5.10 and most people would have something newer.
AFAIK, the minimum requirement for perl is 5.8...
Yeah, that is our stated requirement, and we do have buildfarm members
checking it on the Unix side (eg prairiedog runs 5.8.6). I don't know
if anyone is checking the MSVC-build scripts against an old Perl,
though ... it seems possible that some more-recent constructs have
crept into that pile of perl code without anyone noticing.
regards, tom lane
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
On 2015-12-10 09:39:30 -0500, Tom Lane wrote:
Michael Paquier <michael.paquier@gmail.com> writes:
On Thu, Dec 10, 2015 at 10:36 PM, Victor Wagner <vitus@wagner.pp.ru> wrote:
Postgres requires relatively recent Perl. Version objects appeared in
Perl 5.10 and most people would have something newer.AFAIK, the minimum requirement for perl is 5.8...
Yeah, that is our stated requirement, and we do have buildfarm members
checking it on the Unix side (eg prairiedog runs 5.8.6). I don't know
if anyone is checking the MSVC-build scripts against an old Perl,
though ... it seems possible that some more-recent constructs have
crept into that pile of perl code without anyone noticing.
Tom, are you applying the patch, or should I?
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
Andres Freund <andres@anarazel.de> writes:
Tom, are you applying the patch, or should I?
I can do it ... it was my oversight to begin with :-(
regards, tom lane
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers