On 15/10/2020 15:36, Jon Turney wrote:
---
  winsup/Makefile.common       |  4 +--
  winsup/acinclude.m4          | 16 +++++------
  winsup/c++wrap               |  6 -----
  winsup/ccwrap                | 51 ------------------------------------
  winsup/configure.cygwin      | 10 -------
  winsup/cygserver/Makefile.in |  9 +------
  winsup/cygwin/Makefile.in    | 13 +++------
  winsup/cygwin/gentls_offsets |  2 +-
  winsup/utils/Makefile.in     | 11 +-------
  9 files changed, 16 insertions(+), 106 deletions(-)
  delete mode 100755 winsup/c++wrap
  delete mode 100755 winsup/ccwrap


This breaks running make in a subdirectory, when cross-compiling.

The attached should fix that.

From 27ac737da3347b3918a5e4142ca7aabbcb848e8d Mon Sep 17 00:00:00 2001
From: Jon Turney <jon.tur...@dronecode.org.uk>
Date: Tue, 27 Oct 2020 15:31:06 +0000
Subject: [PATCH] Restore setting CC and CXX Makefile variables

b55e3f19 was a bit too aggressive in dropping, rather than just
un-exporting these Makefile variables.  We need to set these to the
configured host compiler if we are cross-compiling, otherwise they
default to the build compiler.

Also export CC to the mkvers.sh script (which requires it since
4eca5e6a).  It's unclear why we can't just cause windres to use the
build 'cpp' as the pre-processor there.
---
 winsup/cygserver/Makefile.in | 3 +++
 winsup/cygwin/Makefile.in    | 4 ++++
 winsup/utils/Makefile.in     | 3 +++
 3 files changed, 10 insertions(+)

diff --git a/winsup/cygserver/Makefile.in b/winsup/cygserver/Makefile.in
index 7b250dd68..65c402517 100644
--- a/winsup/cygserver/Makefile.in
+++ b/winsup/cygserver/Makefile.in
@@ -11,6 +11,9 @@ target_builddir:=@target_builddir@
 winsup_srcdir:=@winsup_srcdir@
 configure_args=@configure_args@
 
+CC:=@CC@
+CXX:=@CXX@
+
 CFLAGS:=@CFLAGS@
 override CXXFLAGS=@CXXFLAGS@
 override CXXFLAGS+=-MMD -Wimplicit-fallthrough=5 -Werror -D__OUTSIDE_CYGWIN__ 
-DSYSCONFDIR="\"$(sysconfdir)\""
diff --git a/winsup/cygwin/Makefile.in b/winsup/cygwin/Makefile.in
index dad526b74..f6236d909 100644
--- a/winsup/cygwin/Makefile.in
+++ b/winsup/cygwin/Makefile.in
@@ -14,6 +14,9 @@ target_builddir:=@target_builddir@
 winsup_srcdir:=@winsup_srcdir@
 configure_args=@configure_args@
 
+CC:=@CC@
+CXX:=@CXX@
+
 CFLAGS?=@CFLAGS@
 CXXFLAGS?=@CXXFLAGS@
 INCLUDES?=@INCLUDES@
@@ -773,6 +776,7 @@ src_files := $(foreach dir,$(VPATH),$(find_src_files))
 # second, so version.cc is always older than winver.o
 version.cc: mkvers.sh include/cygwin/version.h winver.rc $(src_files)
        @echo "Making version.cc and winver.o";\
+       export CC="${CC}";\
        /bin/sh ${word 1,$^} ${word 2,$^} ${word 3,$^} $(WINDRES) ${CFLAGS} 
-I${srcdir}/include
 $(VERSION_OFILES): version.cc
 
diff --git a/winsup/utils/Makefile.in b/winsup/utils/Makefile.in
index add29d10f..e21874027 100644
--- a/winsup/utils/Makefile.in
+++ b/winsup/utils/Makefile.in
@@ -11,6 +11,9 @@ target_builddir:=@target_builddir@
 winsup_srcdir:=@winsup_srcdir@
 configure_args=@configure_args@
 
+CC:=@CC@
+CXX:=@CXX@
+
 CFLAGS_COMMON=-Wimplicit-fallthrough=4 -Werror
 CFLAGS:=@CFLAGS@
 CXXFLAGS:=@CXXFLAGS@
-- 
2.29.0

Reply via email to