New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[PATCH] fix win32 gmake with win64 VC with 32 bit GCC in PATH build failure #15179
Comments
From @bulk88Created by @bulk88See attached patch. Perl Info
|
From @bulk880001-fix-win32-gmake-with-win64-VC-with-32-bit-GCC-in-PAT.patchFrom 1f3028abb456d6ffc65838401e0ad86a93e7677b Mon Sep 17 00:00:00 2001
From: Daniel Dragan <bulk88@hotmail.com>
Date: Sat, 13 Feb 2016 04:05:24 -0500
Subject: [PATCH] fix win32 gmake with win64 VC with 32 bit GCC in PATH build
failure
The assignment of PROCESSOR_ARCHITEW6432 to PROCESSOR_ARCHITECTURE near
the "When we are running from a 32bit cmd.exe on AMD64 then" comment
doesn't happen if WIN64 var was already assigned to. Do the 32/64 auto
detection only for GCC builds, not for VC builds. I not implementing 32/64
and cl version (CCTYPE setting) detection by parsing stdout of "cl<enter>"
with batch and gmake syntax at this time.
failure message:
generate_uudmap.obj : fatal error LNK1112: module machine type 'x64'
conflicts with target machine type 'X86'
GNUmakefile:1416: recipe for target '..\generate_uudmap.exe' failed
gmake: *** [..\generate_uudmap.exe] Error 2
---
win32/GNUmakefile | 20 +++++++++++---------
1 file changed, 11 insertions(+), 9 deletions(-)
diff --git a/win32/GNUmakefile b/win32/GNUmakefile
index 3abcba6..92d4528 100644
--- a/win32/GNUmakefile
+++ b/win32/GNUmakefile
@@ -41,15 +41,6 @@ GCCVER1 := $(shell for /f "delims=. tokens=1,2,3" %%i in ('gcc -dumpversion')
GCCVER2 := $(shell for /f "delims=. tokens=1,2,3" %%i in ('gcc -dumpversion') do echo %%j)
GCCVER3 := $(shell for /f "delims=. tokens=1,2,3" %%i in ('gcc -dumpversion') do echo %%k)
-ifeq ($(GCCTARGET),x86_64-w64-mingw32)
-WIN64 := define
-ARCHITECTURE := x64
-endif
-ifeq ($(GCCTARGET),i686-w64-mingw32)
-WIN64 := undef
-ARCHITECTURE := x86
-endif
-
##
## Build configuration. Edit the values below to suit your needs.
##
@@ -363,6 +354,17 @@ ifeq ($(USE_NO_REGISTRY),define)
BUILDOPT += -DWIN32_NO_REGISTRY
endif
+ifeq ($(CCTYPE),GCC)
+ifeq ($(GCCTARGET),x86_64-w64-mingw32)
+WIN64 := define
+ARCHITECTURE := x64
+endif
+ifeq ($(GCCTARGET),i686-w64-mingw32)
+WIN64 := undef
+ARCHITECTURE := x86
+endif
+endif
+
PROCESSOR_ARCHITECTURE ?= x86
ifeq ($(WIN64),undef)
--
1.8.0.msysgit.0
|
The RT System itself - Status changed from 'new' to 'open' |
@tonycoz - Status changed from 'open' to 'pending release' |
From @khwilliamsonThank you for submitting this report. You have helped make Perl better. Perl 5.24.0 may be downloaded via https://metacpan.org/release/RJBS/perl-5.24.0 |
@khwilliamson - Status changed from 'pending release' to 'resolved' |
Migrated from rt.perl.org#127532 (status was 'resolved')
Searchable as RT127532$
The text was updated successfully, but these errors were encountered: