Splendid!
I've attached a patch to RT #49433, which should fix that build issue when it's applied. At least, that patch works for me on Windows 10 with a sh.exe in a directory listed in $ENV{PATH}. Where, by "works" I mean that the Build.PL bails out with an error message instructing me to edit $ENV{PATH}.
From d64302f8b45901d2b91b9f813f8c4de76cad1714 Mon Sep 17 00:00:00 2001
From: Max Maischein <corion@corion.net>
Date: Tue, 27 Aug 2019 00:31:28 +0200
Subject: [PATCH] Bail out of building if sh.exe or cc1.exe are found o
+n the
path
This addresses # RT #49433 , RT #62451
The workaround is to adjust $PATH / $ENV{PATH} to exclude directories
in which sh.exe or cc1.exe is found. Another workaround is to set
$ENV{WX_IGNOREPATH} to a true value to disable this check.
---
Build.PL | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
mode change 100755 => 100644 Build.PL
diff --git a/Build.PL b/Build.PL
old mode 100755
new mode 100644
index b0728a2..38046e0
--- a/Build.PL
+++ b/Build.PL
@@ -226,6 +226,33 @@ $build->notes( 'userpatch' => $build->args('wxWid
+gets-userpatch') || '' );
$build->notes( 'graphicscontext' => $build->args('wxWidgets-graphicsc
+ontext') );
if( $build_wx ) {
+ # RT #49433 , RT #62451
+ if( $^O eq 'MSWin32' ) {
+ my @problematic = (qw(sh.exe cc1.exe));
+ my @problematic_path = map { My::Build::Base->awx_path_search
+( $_ ) } @problematic;
+ My::Build::Base->awx_path_search( 'cc1
+.exe' ),
+ ;
+ if( @problematic_path and not $ENV{WX_IGNOREPATH} ) {
+ local $" = "\n";
+ print <<EOT;
+The following programs were found in \$ENV{PATH}, and will break the
+build:
+@problematic_path
+
+PATH is
+
+$ENV{PATH}
+
+Please edit \$ENV{PATH} so these programs are not in it anymore and r
+estart the
+installation. Alternatively, set \$ENV{WX_IGNOREPATH} to a true value
+ and
+restart the installation:
+
+ set WX_IGNOREPATH=1
+
+EOT
+ exit 1;
+ }
+ };
+
$wx_version = _askmulti( $build, 'wxWidgets-version',
'Which wxWidgets version?',
[ sort keys %VERSIONS ], $DEFAULT_VERSIO
+N );
--
2.22.0.windows.1
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.