Re: [PATCH 10/14] Makefile: introduce CROSS_COMPILE variable
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Oct 8, 2014, 19:25 UTC
- Message-ID
- <xmqqvbnu8it7.fsf@gitster.dls.corp.google.com>
- In-Reply-To
- <1412791267-13356-11-git-send-email-marat@slonopotamus.org>
Marat Radchenko <marat@slonopotamus.org> writes:
Show 27 quoted lines
> To ease cross-compilation process, introduce a single variable > with the prefix to all compiler-related executables. > > Define CROSS_COMPILE=foo- if your compiler and binary utilities > are foo-cc, foo-ar, foo-strip, etc. More specific variables > override this, so if you set CC=gcc CROSS_COMPILE=ia64-linux-gnu- > then the compiler will be 'gcc', not 'ia64-linux-gnu-gcc'. > > Signed-off-by: Marat Radchenko <marat@slonopotamus.org> > --- > Makefile | 19 +++++++++++++------ > config.mak.uname | 2 +- > 2 files changed, 14 insertions(+), 7 deletions(-) > > diff --git a/Makefile b/Makefile > index f34a2d4..c412996 100644 > --- a/Makefile > +++ b/Makefile > @@ -339,6 +339,11 @@ all:: > # return NULL when it receives a bogus time_t. > # > # Define HAVE_CLOCK_GETTIME if your platform has clock_gettime in librt. > +# > +# Define CROSS_COMPILE=foo- if your compiler and binary utilities > +# are foo-cc, foo-ar, foo-strip, etc. More specific variables > +# override this, so if you set CC=gcc CROSS_COMPILE=ia64-linux-gnu- > +# then the compiler will be 'gcc', not 'ia64-linux-gnu-gcc'.
I think you forgot the "default to empty", i.e.
CROSS_COMPILE =
somewhere to prevent stray an environment variable from affecting the build (which you did correctly for RCFLAGS).
Show 66 quoted lines
> GIT-VERSION-FILE: FORCE > @$(SHELL_PATH) ./GIT-VERSION-GEN > @@ -350,7 +355,6 @@ CFLAGS = -g -O2 -Wall > LDFLAGS = > ALL_CFLAGS = $(CPPFLAGS) $(CFLAGS) > ALL_LDFLAGS = $(LDFLAGS) > -STRIP ?= strip > > # Among the variables below, these: > # gitexecdir > @@ -390,8 +394,12 @@ htmldir_relative = $(patsubst $(prefix)/%,%,$(htmldir)) > > export prefix bindir sharedir sysconfdir gitwebdir localedir > > -CC = cc > -AR = ar > +AR = $(CROSS_COMPILE)ar > +CC = $(CROSS_COMPILE)cc > +GCOV = $(CROSS_COMPILE)gcov > +RC = $(CROSS_COMPILE)windres > +STRIP = $(CROSS_COMPILE)strip > + > RM = rm -f > DIFF = diff > TAR = tar > @@ -404,13 +412,12 @@ XGETTEXT = xgettext > MSGFMT = msgfmt > PTHREAD_LIBS = -lpthread > PTHREAD_CFLAGS = > -GCOV = gcov > > export TCL_PATH TCLTK_PATH > > SPARSE_FLAGS = > > - > +RCFLAGS = > > ### --- END CONFIGURATION SECTION --- > > @@ -1669,7 +1676,7 @@ $(SCRIPT_LIB) : % : %.sh GIT-SCRIPT-DEFINES > mv $@+ $@ > > git.res: git.rc GIT-VERSION-FILE > - $(QUIET_RC)$(RC) \ > + $(QUIET_RC)$(RC) $(RCFLAGS) \ > $(join -DMAJOR= -DMINOR=, $(wordlist 1,2,$(subst -, ,$(subst ., ,$(GIT_VERSION))))) \ > -DGIT_VERSION="\\\"$(GIT_VERSION)\\\"" $< -o $@ > > diff --git a/config.mak.uname b/config.mak.uname > index f79c0e0..9f7037e 100644 > --- a/config.mak.uname > +++ b/config.mak.uname > @@ -523,7 +523,7 @@ ifneq (,$(findstring MINGW,$(uname_S))) > EXTLIBS += -lws2_32 > GITLIBS += git.res > PTHREAD_LIBS = > - RC = windres -O coff > + RCFLAGS += -O coff > NATIVE_CRLF = YesPlease > X = .exe > SPARSE_FLAGS = -Wno-one-bit-signed-bitfield > -- > 2.1.1 > > --
-- -- *** Please reply-to-all at all times *** *** (do not pretend to know who is subscribed and who is not) *** *** Please avoid top-posting. *** The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free. You received this message because you are subscribed to the Google Groups "msysGit" group. To post to this group, send email to msysgit@googlegroups.com To unsubscribe from this group, send email to msysgit+unsubscribe@googlegroups.com For more options, and view previous threads, visit this group at http://groups.google.com/group/msysgit?hl=en_US?hl=en --- You received this message because you are subscribed to the Google Groups "Git for Windows" group. To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com. For more options, visit https://groups.google.com/d/optout.