#1873: Windows2000 version requirement impeded build
-----------------------+----------------------------------------------------
Reporter: jkeenan | Owner:
Type: bug | Status: new
Priority: normal | Milestone: 2.11
Component: configure | Version: 2.10.0
Severity: medium | Keywords:
Lang: | Patch:
Platform: win32 |
-----------------------+----------------------------------------------------
Comment(by ronaldws):
I installed Strawberry Perl on one of my systems. The gcc compiler that
was installed by Strawberry Perl is version 3.4.5 while the recent version
of gcc that was installed by my separate install of Mingw is v 4.5. A
quick look at
config/gen/platform/win32/sysmem.c
should explain why the two behave differently. There is an ifdef at the
top of the file acting on gcc compilers with a version less than 4. I
could sort of theoretically argue that the current Parrot isn't that far
wrong in asking that you edit windef.h to tell your compiler to target up
to date versions of Windows. Given the default gcc version choice for
Strawberry Perl, the argument looks a bit impractical.
From a more practical point of view we don't really support Windows 95 and
Windows NT 3.5x and don't actually expect many complaints from users
running those systems. We should probably pull the check in begin.c and
change sysmem.h approximately as described in the one line patch below:
-#if defined __MINGW32__ && __GNUC__ < 4[[BR]]
+#ifndef MEMEMORYSTATUSEX
Ideally we should also add checks to parrot that abort both Configure.pl
and the parrot runtime when run on obsolete versions of Windows. Again a
practical solution might look different. I don't know if we actually get
far enough on Win95/NT3.5 to make the code in sysmem.c a real problem. If
we do then it may be just as easy to call the older GlobalMemoryStatus as
it is to have it abort. I cannot quite tell that Parrot isn't already
checking the Windows OS version but I grepped for the windows GetVersion
and GetVersionEx calls and don't see anything that really matches.
There may be some judgement calls here other developers would prefer to
make.
Ron
--
Ticket URL: <https://trac.parrot.org/parrot/ticket/1873#comment:4>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets