{"thread":{"id":"24179","subject":"[PATCH 4/4] Makefile: Don't pass $(ALL_CFLAGS) to the linker","startedAt":"2010-06-23T19:48:48Z","lastAt":"2010-07-01T21:27:21Z","messageCount":12,"participants":["Ramsay Jones","Jonathan Nieder","Peter Harris","Bernhard R. Link","Andreas Schwab"],"isPatch":true,"patchVersion":1,"patchTotal":4},"messages":[{"id":"144101","messageId":"4C226520.5080009@ramsay1.demon.co.uk","threadId":"24179","inReplyTo":null,"subject":"[PATCH 4/4] Makefile: Don't pass $(ALL_CFLAGS) to the linker","fromName":"Ramsay Jones","fromEmail":"ramsay@ramsay1.demon.co.uk","sentAt":"2010-06-23T19:48:48Z","receivedAt":"2010-06-23T19:48:48Z","isPatch":true,"sender":{"key":"ramsay@ramsayjones.plus.com","avatar":"https://avatars.githubusercontent.com/u/33702710?v=4"},"body":"\nThe msvc debug build (make MSVC=1 DEBUG=1) issues a warning\non every invocation of the linker:\n\n    LINK : warning LNK4044: unrecognized option '/Zi'; ignored\n\nIn order to suppress the warning, we refrain from passing the\n$(ALL_CFLAGS) macro to the linker.\n\nNote that, should it be necessary in the future, an option\nintended for both the (front-end) compiler and the linker can\nbe included in both CFLAGS and LDFLAGS.\n\nSigned-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk>\n---\n Makefile |   14 +++++++-------\n 1 files changed, 7 insertions(+), 7 deletions(-)\n\ndiff --git a/Makefile b/Makefile\nindex b979fb7..2730199 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -1515,7 +1515,7 @@ git.s git.o: EXTRA_CPPFLAGS = -DGIT_VERSION='\"$(GIT_VERSION)\"' \\\n \t'-DGIT_HTML_PATH=\"$(htmldir_SQ)\"'\n \n git$X: git.o $(BUILTIN_OBJS) $(GITLIBS)\n-\t$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ git.o \\\n+\t$(QUIET_LINK)$(CC) -o $@ git.o \\\n \t\t$(BUILTIN_OBJS) $(ALL_LDFLAGS) $(LIBS)\n \n builtin/help.o: common-cmds.h\n@@ -1810,17 +1810,17 @@ http-walker.s http-walker.o: EXTRA_CPPFLAGS = -DNO_EXPAT\n endif\n \n git-%$X: %.o $(GITLIBS)\n-\t$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) $(LIBS)\n+\t$(QUIET_LINK)$(CC) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) $(LIBS)\n \n git-imap-send$X: imap-send.o $(GITLIBS)\n-\t$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \\\n+\t$(QUIET_LINK)$(CC) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \\\n \t\t$(LIBS) $(OPENSSL_LINK) $(OPENSSL_LIBSSL)\n \n git-http-fetch$X: revision.o http.o http-walker.o http-fetch.o $(GITLIBS)\n-\t$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \\\n+\t$(QUIET_LINK)$(CC) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \\\n \t\t$(LIBS) $(CURL_LIBCURL)\n git-http-push$X: revision.o http.o http-push.o $(GITLIBS)\n-\t$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \\\n+\t$(QUIET_LINK)$(CC) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \\\n \t\t$(LIBS) $(CURL_LIBCURL) $(EXPAT_LIBEXPAT)\n \n $(REMOTE_CURL_ALIASES): $(REMOTE_CURL_PRIMARY)\n@@ -1830,7 +1830,7 @@ $(REMOTE_CURL_ALIASES): $(REMOTE_CURL_PRIMARY)\n \tcp $< $@\n \n $(REMOTE_CURL_PRIMARY): remote-curl.o http.o http-walker.o $(GITLIBS)\n-\t$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \\\n+\t$(QUIET_LINK)$(CC) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) \\\n \t\t$(LIBS) $(CURL_LIBCURL) $(EXPAT_LIBEXPAT)\n \n $(LIB_FILE): $(LIB_OBJS)\n@@ -1934,7 +1934,7 @@ test-parse-options$X: parse-options.o\n .PRECIOUS: $(TEST_OBJS)\n \n test-%$X: test-%.o $(GITLIBS)\n-\t$(QUIET_LINK)$(CC) $(ALL_CFLAGS) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) $(LIBS)\n+\t$(QUIET_LINK)$(CC) -o $@ $(ALL_LDFLAGS) $(filter %.o,$^) $(LIBS)\n \n check-sha1:: test-sha1$X\n \t./test-sha1.sh\n-- \n1.7.1\n"},{"id":"144107","messageId":"20100623210820.GA24242@burratino","threadId":"24179","inReplyTo":"4C226520.5080009@ramsay1.demon.co.uk","subject":"Re: [PATCH 4/4] Makefile: Don't pass $(ALL_CFLAGS) to the linker","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2010-06-23T21:08:20Z","receivedAt":"2010-06-23T21:08:20Z","isPatch":true,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Hi Ramsay,\n\nRamsay Jones wrote:\n\n>     LINK : warning LNK4044: unrecognized option '/Zi'; ignored\n> \n> In order to suppress the warning, we refrain from passing the\n> $(ALL_CFLAGS) macro to the linker.\n> \n> Note that, should it be necessary in the future, an option\n> intended for both the (front-end) compiler and the linker can\n> be included in both CFLAGS and LDFLAGS.\n\nI think traditionally CPPFLAGS is meant to be used for the purpose\nyou are describing (see [1] for example).\n\nI realize that the Makefile does not currently use the terms this way:\nmaking it consistent would require\n\n . s/BASIC_CFLAGS/BASIC_CPPFLAGS/, except that the\n\n\tBASIC_CFLAGS += -Kthread\n\n   settings should probably stay as-is\n\n . Windows BASIC_CFLAGS would probably need to be split:\n\n\tBASIC_CFLAGS = -nologo\n\tBASIC_CPPFLAGS = -I. -I../zlib ... -DWIN32 ...\n\n . s/COMPAT_CFLAGS/COMPAT_CPPFLAGS\n\nWhat do you think?\nJonathan\n\n[1] http://www.gnu.org/software/autoconf/manual/html_node/Preset-Output-Variables.html#index-CFLAGS-80\n"},{"id":"144157","messageId":"AANLkTinmGOSwNzLBngXHOU-pxNTbHFJQyCLIHQWFW6Eo@mail.gmail.com","threadId":"24179","inReplyTo":"4C226520.5080009@ramsay1.demon.co.uk","subject":"Re: [PATCH 4/4] Makefile: Don't pass $(ALL_CFLAGS) to the linker","fromName":"Peter Harris","fromEmail":"git@peter.is-a-geek.org","sentAt":"2010-06-24T15:30:09Z","receivedAt":"2010-06-24T15:30:09Z","isPatch":true,"sender":{"key":"git@peter.is-a-geek.org","avatar":null},"body":"On Wed, Jun 23, 2010 at 3:48 PM, Ramsay Jones wrote:\n>\n> The msvc debug build (make MSVC=1 DEBUG=1) issues a warning\n> on every invocation of the linker:\n>\n>    LINK : warning LNK4044: unrecognized option '/Zi'; ignored\n>\n> In order to suppress the warning, we refrain from passing the\n> $(ALL_CFLAGS) macro to the linker.\n\nAlternatively, we could leave the makefile alone and fix it up in\ncompat/vcbuild/scripts/clink.pl\n\n(Apologies for the patch attached instead of inline; I'm not using a\nwhitespace-clean email client at the moment.)\n\nPeter Harris\n\n\ndiff --git a/Makefile b/Makefile\nindex 7134509..dccee8e 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -1072,7 +1072,8 @@ ifndef DEBUG\n \tBASIC_LDFLAGS += -LTCG\n \tAR += -LTCG\n else\n \tBASIC_CFLAGS += -Zi -MTd\n+\tBASIC_LDFLAGS = -DEBUG -MAP\n endif\n \tX = .exe\n endif\ndiff --git a/compat/vcbuild/scripts/clink.pl b/compat/vcbuild/scripts/clink.pl\nindex 4374771..aec9980 100644\n--- a/compat/vcbuild/scripts/clink.pl\n+++ b/compat/vcbuild/scripts/clink.pl\n@@ -12,10 +12,14 @@\n use strict;\n my @args = ();\n my @cflags = ();\n+my @lflags = ();\n my $is_linking = 0;\n+my %linkflag = ( '-DEBUG' => 1, '-MAP' => 1 );\n while (@ARGV) {\n \tmy $arg = shift @ARGV;\n-\tif (\"$arg\" =~ /^-[DIMGO]/) {\n+\tif ($linkflag{$arg}) {\n+\t\tpush(@lflags, $arg);\n+\t} elsif (\"$arg\" =~ /^-[DIMGOZ]/) {\n \t\tpush(@cflags, $arg);\n \t} elsif (\"$arg\" eq \"-o\") {\n \t\tmy $file_out = shift @ARGV;\n@@ -44,6 +48,7 @@ while (@ARGV) {\n }\n if ($is_linking) {\n \tunshift(@args, \"link.exe\");\n+\tpush(@args, @lflags);\n } else {\n \tunshift(@args, \"cl.exe\");\n \tpush(@args, @cflags);\n"},{"id":"144324","messageId":"4C251062.8040507@ramsay1.demon.co.uk","threadId":"24179","inReplyTo":"AANLkTinmGOSwNzLBngXHOU-pxNTbHFJQyCLIHQWFW6Eo@mail.gmail.com","subject":"Re: [PATCH 4/4] Makefile: Don't pass $(ALL_CFLAGS) to the linker","fromName":"Ramsay Jones","fromEmail":"ramsay@ramsay1.demon.co.uk","sentAt":"2010-06-25T20:24:02Z","receivedAt":"2010-06-25T20:24:02Z","isPatch":true,"sender":{"key":"ramsay@ramsayjones.plus.com","avatar":"https://avatars.githubusercontent.com/u/33702710?v=4"},"body":"Peter Harris wrote:\n> On Wed, Jun 23, 2010 at 3:48 PM, Ramsay Jones wrote:\n>> The msvc debug build (make MSVC=1 DEBUG=1) issues a warning\n>> on every invocation of the linker:\n>>\n>>    LINK : warning LNK4044: unrecognized option '/Zi'; ignored\n>>\n>> In order to suppress the warning, we refrain from passing the\n>> $(ALL_CFLAGS) macro to the linker.\n> \n> Alternatively, we could leave the makefile alone and fix it up in\n> compat/vcbuild/scripts/clink.pl\n\nHmm, OK ... but it would be much easier if we didn't pass inappropriate\noptions in the first place. :-P\n\nAlso, are you correctly filtering *all* possible inappropriate options?\nFor example, the very next patch on my branch (not sent to list) adds\na -W3 option ... ;-)\n\nATB,\nRamsay Jones\n"},{"id":"144323","messageId":"4C264019.6030408@ramsay1.demon.co.uk","threadId":"24179","inReplyTo":"20100623210820.GA24242@burratino","subject":"Re: [PATCH 4/4] Makefile: Don't pass $(ALL_CFLAGS) to the linker","fromName":"Ramsay Jones","fromEmail":"ramsay@ramsay1.demon.co.uk","sentAt":"2010-06-26T17:59:53Z","receivedAt":"2010-06-26T17:59:53Z","isPatch":true,"sender":{"key":"ramsay@ramsayjones.plus.com","avatar":"https://avatars.githubusercontent.com/u/33702710?v=4"},"body":"Jonathan Nieder wrote:\n> Ramsay Jones wrote:\n> \n>>     LINK : warning LNK4044: unrecognized option '/Zi'; ignored\n>>\n>> In order to suppress the warning, we refrain from passing the\n>> $(ALL_CFLAGS) macro to the linker.\n>>\n>> Note that, should it be necessary in the future, an option\n>> intended for both the (front-end) compiler and the linker can\n>> be included in both CFLAGS and LDFLAGS.\n> \n> I think traditionally CPPFLAGS is meant to be used for the purpose\n> you are describing (see [1] for example).\n\nReally? I thought that the general scheme was something like:\n\n    - LDFLAGS is for options which only affects the operation of\n      the linker (e.g. -L).\n    - CPPFLAGS is for options which only affects the operation of\n      the C pre-processor (e.g. -I, -D, -U)\n    - CFLAGS is for options which only affects the operation of\n      the compiler proper.\n\nIf an option affects multiple phases, then (one option) is to include\nit into each of the above macros to which it applies.\n\nIn practice, of course, I've yet to see a Makefile which faithfully\nimplements the above scheme. ;-)\n\nAlso, the last time I was forced to use automake (yuck), I noticed that\nit passed CPPFLAGS to the linker; I consider this to be a bug in\nautomake. :-P\n\n[CFLAGS et. al. are also supposed to be user settable ...]\n\n> I realize that the Makefile does not currently use the terms this way:\n> making it consistent would require\n> \n>  . s/BASIC_CFLAGS/BASIC_CPPFLAGS/, except that the\n> \n> \tBASIC_CFLAGS += -Kthread\n> \n>    settings should probably stay as-is\n> \n>  . Windows BASIC_CFLAGS would probably need to be split:\n> \n> \tBASIC_CFLAGS = -nologo\n> \tBASIC_CPPFLAGS = -I. -I../zlib ... -DWIN32 ...\n> \n>  . s/COMPAT_CFLAGS/COMPAT_CPPFLAGS\n> \n> What do you think?\n\nI think I am missing something, since I don't see how this relates to\nmy patch!\n\nI'm sure the misunderstanding is mine; sorry to be so dense!\n\nATB,\nRamsay Jones\n"},{"id":"144326","messageId":"20100626181945.GA13070@burratino","threadId":"24179","inReplyTo":"4C264019.6030408@ramsay1.demon.co.uk","subject":"Re: [PATCH 4/4] Makefile: Don't pass $(ALL_CFLAGS) to the linker","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2010-06-26T18:19:45Z","receivedAt":"2010-06-26T18:19:45Z","isPatch":true,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Ramsay Jones wrote:\n\n> I thought that the general scheme was something like:\n> \n>     - LDFLAGS is for options which only affects the operation of\n>       the linker (e.g. -L).\n>     - CPPFLAGS is for options which only affects the operation of\n>       the C pre-processor (e.g. -I, -D, -U)\n>     - CFLAGS is for options which only affects the operation of\n>       the compiler proper.\n>\n> If an option affects multiple phases, then (one option) is to include\n> it into each of the above macros to which it applies.\n\nThat does make sense.  Perhaps “traditionally” was not the right word;\nI was just looking at common practice.  I’ve just never seen -O put\ninto LDFLAGS, for example, and I think most people would expect\nsetting CFLAGS=-O0 to affect the linker, too.\n\n> Jonathan Nieder wrote:\n\n>> I realize that the Makefile does not currently use the terms this way:\n>> making it consistent would require\n>> \n>>  . s/BASIC_CFLAGS/BASIC_CPPFLAGS/, except that the\n[etc]\n>> \n>> What do you think?\n>\n> I think I am missing something, since I don't see how this relates to\n> my patch!\n\nI suspect the problem comes from my unfamiliarity with MSVC.\n\nBy analogy with GCC, I assumed that any parameter is intended for the\npreprocessor, the linker, or the frontend/both.  In other words, I was\nassuming flags for the compiler proper can be safely passed to the\nlinker, and that /Zi must be for the preprocessor-using stages only.\nCFLAGS tends to contain front-end arguments used for all stages of\ntranslation.\n\nWhat does /Zi do?  Searching online reveals:\n\n - it means “enable debugging information”\n - weakly implies /debug for the linker\n - overrides /Z7 and /Zd, and is overridden by them\n - is incompatible with /MP\n - is among the prerequisites for /dlp and for /Gm\n\nMaybe clink.pl should use “cl.exe /link” instead of “link.exe” and this\nproblem would go away.\n"},{"id":"144347","messageId":"20100627094433.GA21771@pcpool00.mathematik.uni-freiburg.de","threadId":"24179","inReplyTo":"4C264019.6030408@ramsay1.demon.co.uk","subject":"Re: [PATCH 4/4] Makefile: Don't pass $(ALL_CFLAGS) to the linker","fromName":"Bernhard R. Link","fromEmail":"brlink@debian.org","sentAt":"2010-06-27T09:44:34Z","receivedAt":"2010-06-27T09:44:34Z","isPatch":true,"sender":{"key":"brlink@debian.org","avatar":null},"body":"* Ramsay Jones <ramsay@ramsay1.demon.co.uk> [100626 20:02]:\n> Really? I thought that the general scheme was something like:\n>\n>     - LDFLAGS is for options which only affects the operation of\n>       the linker (e.g. -L).\n>     - CPPFLAGS is for options which only affects the operation of\n>       the C pre-processor (e.g. -I, -D, -U)\n>     - CFLAGS is for options which only affects the operation of\n>       the compiler proper.\n\nI think the problem are options like -g or -m64 and the like which\nyou also want to give to the linker on some systems, so it is quite\ncommon and I'd say recommended to have the compiling stage get\nCPPFLAGS and CFLAGS and the linking stage getting CFLAGS and LDFLAGS\n(and link using the compiler, otherwise you might miss libraries anyway).\nI do not know if automake started with this, or if it is older.\n\n> Also, the last time I was forced to use automake (yuck), I noticed that\n> it passed CPPFLAGS to the linker; I consider this to be a bug in\n> automake. :-P\n\nHuh? Never heared of that bug, it must be more than 15 years ago. Are\nyou sure it was not CFLAGS it passed to the linker?\n\n\tBernhard R. Link\n\nNo need to CC me, I'm subscribed...\n"},{"id":"144365","messageId":"AANLkTilvV9Lty6jciIvASrRrzZ5rf9s2zmgulxuyM1hE@mail.gmail.com","threadId":"24179","inReplyTo":"4C251062.8040507@ramsay1.demon.co.uk","subject":"Re: [PATCH 4/4] Makefile: Don't pass $(ALL_CFLAGS) to the linker","fromName":"Peter Harris","fromEmail":"git@peter.is-a-geek.org","sentAt":"2010-06-27T20:45:01Z","receivedAt":"2010-06-27T20:45:01Z","isPatch":true,"sender":{"key":"git@peter.is-a-geek.org","avatar":null},"body":"On Fri, Jun 25, 2010 at 4:24 PM, Ramsay Jones wrote:\n> Peter Harris wrote:\n>> On Wed, Jun 23, 2010 at 3:48 PM, Ramsay Jones wrote:\n>>> The msvc debug build (make MSVC=1 DEBUG=1) issues a warning\n>>> on every invocation of the linker:\n>>>\n>>>    LINK : warning LNK4044: unrecognized option '/Zi'; ignored\n>>>\n>>> In order to suppress the warning, we refrain from passing the\n>>> $(ALL_CFLAGS) macro to the linker.\n>>\n>> Alternatively, we could leave the makefile alone and fix it up in\n>> compat/vcbuild/scripts/clink.pl\n>\n> Hmm, OK ... but it would be much easier if we didn't pass inappropriate\n> options in the first place. :-P\n\nWell, yes and no.\n\nThe vast majority of git devs work in an environment where compiler\nflags and linker flags aren't completely disjoint, and it's not very\npolite of us to rework their makefile to fit our view of the world.\nEspecially when we already have a wrapper that fits their world to\nours.\n\nSo I suggest that improving clink.pl is a whole lot easier for a whole\nlot more people (compared to reworking the entire makefile being\neasier for far fewer people).\n\n> Also, are you correctly filtering *all* possible inappropriate options?\n> For example, the very next patch on my branch (not sent to list) adds\n> a -W3 option ... ;-)\n\nHeck no. This only filters the options that are used by the git makefile.\n\nBut adding a filter for -W* is a trivial one liner (one character-er, even).\n\nPeter Harris\n"},{"id":"144546","messageId":"4C2B9DA7.9000902@ramsay1.demon.co.uk","threadId":"24179","inReplyTo":"20100626181945.GA13070@burratino","subject":"Re: [PATCH 4/4] Makefile: Don't pass $(ALL_CFLAGS) to the linker","fromName":"Ramsay Jones","fromEmail":"ramsay@ramsay1.demon.co.uk","sentAt":"2010-06-30T19:40:23Z","receivedAt":"2010-06-30T19:40:23Z","isPatch":true,"sender":{"key":"ramsay@ramsayjones.plus.com","avatar":"https://avatars.githubusercontent.com/u/33702710?v=4"},"body":"Jonathan Nieder wrote:\n> That does make sense.  Perhaps “traditionally” was not the right word;\n> I was just looking at common practice.  I’ve just never seen -O put\n> into LDFLAGS, for example, and I think most people would expect\n> setting CFLAGS=-O0 to affect the linker, too.\n\n[This is now a bit off-topic, see below, but what version of gcc are\nyou using that passes -O to the linker (well, collect2 anyway)?\nDo you have to pass -flto? For example \"gcc -v -g -O2 hello.o -o hello\"\nseems to show (for both gcc 3.4.4 and gcc 4.4.0) that neither -g or -O2\nis passed to collect2.\n\nHmmm, the output from gcc 4.4.0 adds a line like:\n    COLLECT_GCC_OPTIONS='-v' '-g' '-O2' '-o' 'hello.exe' '-mtune=i386'\nso, does this imply this is a env. var exported to collect2?\ndunno ;-P ]\n\n> I suspect the problem comes from my unfamiliarity with MSVC.\n\nHeh, I'm not an expert user of msvc either!\n\n> Maybe clink.pl should use “cl.exe /link” instead of “link.exe” and this\n> problem would go away.\n\nI tried this *very* quickly and it didn't work. (It's quite possible\nthat I could spend some time and get it to work, but ...)\n\nThe patch that Peter sent seems like the way to go, since it does not\naffect the regular (non-msvc) build - and it works! ;-)\n\nSo we can drop this patch. Thanks for your time.\n\nATB,\nRamsay Jones\n"},{"id":"144545","messageId":"4C2BA085.3060601@ramsay1.demon.co.uk","threadId":"24179","inReplyTo":"AANLkTilvV9Lty6jciIvASrRrzZ5rf9s2zmgulxuyM1hE@mail.gmail.com","subject":"Re: [PATCH 4/4] Makefile: Don't pass $(ALL_CFLAGS) to the linker","fromName":"Ramsay Jones","fromEmail":"ramsay@ramsay1.demon.co.uk","sentAt":"2010-06-30T19:52:37Z","receivedAt":"2010-06-30T19:52:37Z","isPatch":true,"sender":{"key":"ramsay@ramsayjones.plus.com","avatar":"https://avatars.githubusercontent.com/u/33702710?v=4"},"body":"Peter Harris wrote:\n> The vast majority of git devs work in an environment where compiler\n> flags and linker flags aren't completely disjoint, and it's not very\n> polite of us to rework their makefile to fit our view of the world.\n> Especially when we already have a wrapper that fits their world to\n> ours.\n\nYep, good point.\n\n>> Also, are you correctly filtering *all* possible inappropriate options?\n>> For example, the very next patch on my branch (not sent to list) adds\n>> a -W3 option ... ;-)\n> \n> Heck no. This only filters the options that are used by the git makefile.\n> But adding a filter for -W* is a trivial one liner (one character-er, even).\n\nYour patch fixes my problem, and is *much* better than my patch, so could\nyou send a formal patch to the list (with W added to the the regex as well\nas Z)?\n\nThanks.\n\nATB,\nRamsay Jones\n"},{"id":"144553","messageId":"m2d3v8b4rf.fsf@igel.home","threadId":"24179","inReplyTo":"4C2B9DA7.9000902@ramsay1.demon.co.uk","subject":"Re: [PATCH 4/4] Makefile: Don't pass $(ALL_CFLAGS) to the linker","fromName":"Andreas Schwab","fromEmail":"schwab@linux-m68k.org","sentAt":"2010-06-30T21:16:20Z","receivedAt":"2010-06-30T21:16:20Z","isPatch":true,"sender":{"key":"schwab@linux-m68k.org","avatar":"https://avatars.githubusercontent.com/u/2175493?v=4"},"body":"Ramsay Jones <ramsay@ramsay1.demon.co.uk> writes:\n\n> Hmmm, the output from gcc 4.4.0 adds a line like:\n>     COLLECT_GCC_OPTIONS='-v' '-g' '-O2' '-o' 'hello.exe' '-mtune=i386'\n> so, does this imply this is a env. var exported to collect2?\n\nThis is needed for the case that the linker needs to rerun the compiler.\n\nAndreas.\n\n-- \nAndreas Schwab, schwab@linux-m68k.org\nGPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5\n\"And now for something completely different.\"\n"},{"id":"144641","messageId":"AANLkTin_JLmLaN20TuuORpN56qj94njQo3sJHJhRDvvM@mail.gmail.com","threadId":"24179","inReplyTo":"4C2BA085.3060601@ramsay1.demon.co.uk","subject":"Re: [PATCH 4/4] Makefile: Don't pass $(ALL_CFLAGS) to the linker","fromName":"Peter Harris","fromEmail":"git@peter.is-a-geek.org","sentAt":"2010-07-01T21:27:21Z","receivedAt":"2010-07-01T21:27:21Z","isPatch":true,"sender":{"key":"git@peter.is-a-geek.org","avatar":null},"body":"On Wed, Jun 30, 2010 at 3:52 PM, Ramsay Jones wrote:\n> Your patch fixes my problem, and is *much* better than my patch, so could\n> you send a formal patch to the list (with W added to the the regex as well\n> as Z)?\n\nI'm currently on vacation. I'll try to remember to do that on Monday.\n\nPeter Harris\n"}]}