{"thread":{"id":"30818","subject":"Re: [PATCH] Fix git-svn in non-MakeMaker builds","startedAt":"2012-06-15T18:05:05Z","lastAt":"2012-06-29T08:55:44Z","messageCount":8,"participants":["Jonathan Nieder","Junio C Hamano","Johannes Sixt"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"193712","messageId":"20120615180505.GH10752@burratino","threadId":"30818","inReplyTo":"1339781427-10568-1-git-send-email-adam@roben.org","subject":"Re: [PATCH] Fix git-svn in non-MakeMaker builds","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2012-06-15T18:05:05Z","receivedAt":"2012-06-15T18:05:05Z","isPatch":true,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Adam Roben wrote:\n\n> c102f4cf729a65b3520dbb17b52aa0c4fe4d4b29 and\n> a6180325e885e2226d68144000e8bb18a906a2a6 split some git-svn code into\n> separate modules, but forgot to inform the non-MakeMaker build about\n> those new modules.\n\nGood catch.  How about this patch against master (untested)?\n\n-- >8 --\nSubject: perl/Makefile: install Git::SVN::* when NO_PERL_MAKEMAKER=yes, too\n\nv1.7.11-rc1~12^2~2 (2012-05-27) and friends split some git-svn code\ninto separate modules but did not update the fallback rules to install\nthem when NO_PERL_MAKEMAKER is set.  Add the appropriate rules so\nusers without MakeMaker can use git-svn again.\n\nAffected modules: Git::SVN::Prompt, Git::SVN::Fetcher,\nGit::SVN::Editor, Git::SVN::Ra, Git::SVN::Memoize::YAML.\n\nReported-by: Adam Roben <adam@roben.org>\nSigned-off-by: Jonathan Nieder <jrnieder@gmali.com>\n---\nSensible?\n\nIn principle this should be two patches --- one to introduce the loop,\nanother to add Git::SVN::* to that loop.  Let me know if you think\nthis would be easier to read that way and I can try it.\n\n perl/Makefile |   31 ++++++++++++++++++++++++-------\n 1 file changed, 24 insertions(+), 7 deletions(-)\n\ndiff --git a/perl/Makefile b/perl/Makefile\nindex 3e21766d..fe7a4864 100644\n--- a/perl/Makefile\n+++ b/perl/Makefile\n@@ -2,6 +2,7 @@\n # Makefile for perl support modules and routine\n #\n makfile:=perl.mak\n+modules =\n \n PERL_PATH_SQ = $(subst ','\\'',$(PERL_PATH))\n prefix_SQ = $(subst ','\\'',$(prefix))\n@@ -22,19 +23,35 @@ clean:\n \n ifdef NO_PERL_MAKEMAKER\n instdir_SQ = $(subst ','\\'',$(prefix)/lib)\n+\n+modules += Git\n+modules += Git/I18N\n+modules += Git/SVN/Memoize/YAML\n+modules += Git/SVN/Fetcher\n+modules += Git/SVN/Editor\n+modules += Git/SVN/Prompt\n+modules += Git/SVN/Ra\n+\n $(makfile): ../GIT-CFLAGS Makefile\n \techo all: private-Error.pm Git.pm Git/I18N.pm > $@\n-\techo '\tmkdir -p blib/lib/Git' >> $@\n-\techo '\t$(RM) blib/lib/Git.pm; cp Git.pm blib/lib/' >> $@\n-\techo '\t$(RM) blib/lib/Git/I18N.pm; cp Git/I18N.pm blib/lib/Git/' >> $@\n+\techo '\tmkdir -p blib/lib/Git/SVN/Memoize' >> $@\n+\tset -e; \\\n+\tfor i in $(modules); \\\n+\tdo \\\n+\t\techo '\t$(RM) blib/lib/'$$i'.pm' >> $@; \\\n+\t\techo '\tcp '$$i'.pm blib/lib/'$$i'.pm' >> $@; \\\n+\tdone\n \techo '\t$(RM) blib/lib/Error.pm' >> $@\n \t'$(PERL_PATH_SQ)' -MError -e 'exit($$Error::VERSION < 0.15009)' || \\\n \techo '\tcp private-Error.pm blib/lib/Error.pm' >> $@\n \techo install: >> $@\n-\techo '\tmkdir -p \"$$(DESTDIR)$(instdir_SQ)\"' >> $@\n-\techo '\tmkdir -p \"$$(DESTDIR)$(instdir_SQ)/Git\"' >> $@\n-\techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/Git.pm\"; cp Git.pm \"$$(DESTDIR)$(instdir_SQ)\"' >> $@\n-\techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/Git/I18N.pm\"; cp Git/I18N.pm \"$$(DESTDIR)$(instdir_SQ)/Git\"' >> $@\n+\techo '\tmkdir -p \"$$(DESTDIR)$(instdir_SQ)/Git/SVN/Memoize\"' >> $@\n+\tset -e; \\\n+\tfor i in $(modules); \\\n+\tdo \\\n+\t\techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/'$$i'.pm\"' >> $@; \\\n+\t\techo '\tcp '$$i'.pm \"$$(DESTDIR)$(instdir_SQ)/'$$i'.pm\"' >> $@; \\\n+\tdone\n \techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/Error.pm\"' >> $@\n \t'$(PERL_PATH_SQ)' -MError -e 'exit($$Error::VERSION < 0.15009)' || \\\n \techo '\tcp private-Error.pm \"$$(DESTDIR)$(instdir_SQ)/Error.pm\"' >> $@\n-- \n1.7.10.4\n"},{"id":"193716","messageId":"20120615181446.GI10752@burratino","threadId":"30818","inReplyTo":"20120615180505.GH10752@burratino","subject":"[PATCH 2/1] perl/Makefile.PL: warn about duplicate module list in perl/Makefile","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2012-06-15T18:14:46Z","receivedAt":"2012-06-15T18:14:46Z","isPatch":true,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Adding or removing a module requires modifying both files to support\nbuilds with and without MakeMaker.  Add a comment to remind patch\nauthors and reviewers at the crucial moment.\n\nLonger term, it would be nicer to maintain a single list, perhaps in a\nseparate file used by both build systems.\n\nSigned-off-by: Jonathan Nieder <jrnieder@gmail.com>\n---\n perl/Makefile.PL |    4 ++++\n 1 file changed, 4 insertions(+)\n\ndiff --git a/perl/Makefile.PL b/perl/Makefile.PL\nindex 2c20290f..b54b04a6 100644\n--- a/perl/Makefile.PL\n+++ b/perl/Makefile.PL\n@@ -24,6 +24,10 @@ endif\n MAKE_FRAG\n }\n \n+# XXX. When editing this list:\n+#\n+# * Please update perl/Makefile, too.\n+# * Don't forget to test with NO_PERL_MAKEMAKER=YesPlease\n my %pm = (\n \t'Git.pm' => '$(INST_LIBDIR)/Git.pm',\n \t'Git/I18N.pm' => '$(INST_LIBDIR)/Git/I18N.pm',\n-- \n1.7.10.4\n"},{"id":"193733","messageId":"7vehpg9vf3.fsf@alter.siamese.dyndns.org","threadId":"30818","inReplyTo":"20120615181446.GI10752@burratino","subject":"Re: [PATCH 2/1] perl/Makefile.PL: warn about duplicate module list in perl/Makefile","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2012-06-15T20:23:12Z","receivedAt":"2012-06-15T20:23:12Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Thanks for a last minute fix.  Will apply both directly to 'master'.\n"},{"id":"193742","messageId":"7vwr388dyp.fsf@alter.siamese.dyndns.org","threadId":"30818","inReplyTo":"20120615180505.GH10752@burratino","subject":"Re: [PATCH] Fix git-svn in non-MakeMaker builds","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2012-06-15T21:25:34Z","receivedAt":"2012-06-15T21:25:34Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jonathan Nieder <jrnieder@gmail.com> writes:\n\n> Adam Roben wrote:\n>\n>> c102f4cf729a65b3520dbb17b52aa0c4fe4d4b29 and\n>> a6180325e885e2226d68144000e8bb18a906a2a6 split some git-svn code into\n>> separate modules, but forgot to inform the non-MakeMaker build about\n>> those new modules.\n>\n> Good catch.  How about this patch against master (untested)?\n>\n> -- >8 --\n> Subject: perl/Makefile: install Git::SVN::* when NO_PERL_MAKEMAKER=yes, too\n>\n> v1.7.11-rc1~12^2~2 (2012-05-27) and friends split some git-svn code\n> into separate modules but did not update the fallback rules to install\n> them when NO_PERL_MAKEMAKER is set.  Add the appropriate rules so\n> users without MakeMaker can use git-svn again.\n>\n> Affected modules: Git::SVN::Prompt, Git::SVN::Fetcher,\n> Git::SVN::Editor, Git::SVN::Ra, Git::SVN::Memoize::YAML.\n>\n> Reported-by: Adam Roben <adam@roben.org>\n> Signed-off-by: Jonathan Nieder <jrnieder@gmali.com>\n> ---\n> Sensible?\n>\n> In principle this should be two patches --- one to introduce the loop,\n> another to add Git::SVN::* to that loop.  Let me know if you think\n> this would be easier to read that way and I can try it.\n\n>  perl/Makefile |   31 ++++++++++++++++++++++++-------\n>  1 file changed, 24 insertions(+), 7 deletions(-)\n>\n> diff --git a/perl/Makefile b/perl/Makefile\n> index 3e21766d..fe7a4864 100644\n> --- a/perl/Makefile\n> +++ b/perl/Makefile\n> @@ -2,6 +2,7 @@\n>  # Makefile for perl support modules and routine\n>  #\n>  makfile:=perl.mak\n> +modules =\n>  \n>  PERL_PATH_SQ = $(subst ','\\'',$(PERL_PATH))\n>  prefix_SQ = $(subst ','\\'',$(prefix))\n> @@ -22,19 +23,35 @@ clean:\n>  \n>  ifdef NO_PERL_MAKEMAKER\n>  instdir_SQ = $(subst ','\\'',$(prefix)/lib)\n> +\n> +modules += Git\n> +modules += Git/I18N\n> +modules += Git/SVN/Memoize/YAML\n> +modules += Git/SVN/Fetcher\n> +modules += Git/SVN/Editor\n> +modules += Git/SVN/Prompt\n> +modules += Git/SVN/Ra\n> +\n>  $(makfile): ../GIT-CFLAGS Makefile\n>  \techo all: private-Error.pm Git.pm Git/I18N.pm > $@\n> -\techo '\tmkdir -p blib/lib/Git' >> $@\n> -\techo '\t$(RM) blib/lib/Git.pm; cp Git.pm blib/lib/' >> $@\n> -\techo '\t$(RM) blib/lib/Git/I18N.pm; cp Git/I18N.pm blib/lib/Git/' >> $@\n> +\techo '\tmkdir -p blib/lib/Git/SVN/Memoize' >> $@\n\nWouldn't it be much less error prone to maintain if you did not\nhardcode the \"blib/lib/Git/SVN/Memoize is the deepest level\" here,\nand run the \"mkdir -p blib/lib/$$(basename $$i)\" or something in the\nloop instead?\n\n> +\tset -e; \\\n> +\tfor i in $(modules); \\\n> +\tdo \\\n> +\t\techo '\t$(RM) blib/lib/'$$i'.pm' >> $@; \\\n> +\t\techo '\tcp '$$i'.pm blib/lib/'$$i'.pm' >> $@; \\\n> +\tdone\n>  \techo '\t$(RM) blib/lib/Error.pm' >> $@\n>  \t'$(PERL_PATH_SQ)' -MError -e 'exit($$Error::VERSION < 0.15009)' || \\\n>  \techo '\tcp private-Error.pm blib/lib/Error.pm' >> $@\n>  \techo install: >> $@\n> -\techo '\tmkdir -p \"$$(DESTDIR)$(instdir_SQ)\"' >> $@\n> -\techo '\tmkdir -p \"$$(DESTDIR)$(instdir_SQ)/Git\"' >> $@\n> -\techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/Git.pm\"; cp Git.pm \"$$(DESTDIR)$(instdir_SQ)\"' >> $@\n> -\techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/Git/I18N.pm\"; cp Git/I18N.pm \"$$(DESTDIR)$(instdir_SQ)/Git\"' >> $@\n> +\techo '\tmkdir -p \"$$(DESTDIR)$(instdir_SQ)/Git/SVN/Memoize\"' >> $@\n\nLikewise.\n\n> +\tset -e; \\\n> +\tfor i in $(modules); \\\n> +\tdo \\\n> +\t\techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/'$$i'.pm\"' >> $@; \\\n> +\t\techo '\tcp '$$i'.pm \"$$(DESTDIR)$(instdir_SQ)/'$$i'.pm\"' >> $@; \\\n> +\tdone\n>  \techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/Error.pm\"' >> $@\n>  \t'$(PERL_PATH_SQ)' -MError -e 'exit($$Error::VERSION < 0.15009)' || \\\n>  \techo '\tcp private-Error.pm \"$$(DESTDIR)$(instdir_SQ)/Error.pm\"' >> $@\n"},{"id":"193746","messageId":"20120615230234.GA3547@burratino","threadId":"30818","inReplyTo":"7vwr388dyp.fsf@alter.siamese.dyndns.org","subject":"[PATCH] perl/Makefile: move \"mkdir -p\" to module installation loop for maintainability","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2012-06-15T23:02:34Z","receivedAt":"2012-06-15T23:02:34Z","isPatch":true,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"In the NO_PERL_MAKEMAKER=YesPlease fallback case, make the directory\nthat will contain each module when installing it (simulating \"install\n-D\") instead of hardcoding \"Git/SVN/Memoize is the deepest level\".\nThis should make this codepath which is not used often on development\nmachines a little easier to maintain.\n\nRequested-by: Junio C Hamano <gitster@pobox.com>\nSigned-off-by: Jonathan Nieder <jrnieder@gmail.com>\n---\nJun 15, 2012 at 02:25:34PM -0700, Junio C Hamano wrote:\n> Jonathan Nieder <jrnieder@gmail.com> writes:\n\n>> +\techo '\tmkdir -p blib/lib/Git/SVN/Memoize' >> $@\n>\n> Wouldn't it be much less error prone to maintain if you did not\n> hardcode the \"blib/lib/Git/SVN/Memoize is the deepest level\" here,\n> and run the \"mkdir -p blib/lib/$$(basename $$i)\" or something in the\n> loop instead?\n\nYes, I think so.\n\nWasn't sure if \"install -D\" or \"dirname\" is portable, so this\npatch avoids them.\n\n perl/Makefile |   16 ++++++++++++++--\n 1 file changed, 14 insertions(+), 2 deletions(-)\n\ndiff --git a/perl/Makefile b/perl/Makefile\nindex fe7a4864..2e8f9804 100644\n--- a/perl/Makefile\n+++ b/perl/Makefile\n@@ -34,22 +34,34 @@ modules += Git/SVN/Ra\n \n $(makfile): ../GIT-CFLAGS Makefile\n \techo all: private-Error.pm Git.pm Git/I18N.pm > $@\n-\techo '\tmkdir -p blib/lib/Git/SVN/Memoize' >> $@\n \tset -e; \\\n \tfor i in $(modules); \\\n \tdo \\\n+\t\tif test $$i = $${i%/*}; \\\n+\t\tthen \\\n+\t\t\tsubdir=; \\\n+\t\telse \\\n+\t\t\tsubdir=/$${i%/*}; \\\n+\t\tfi; \\\n \t\techo '\t$(RM) blib/lib/'$$i'.pm' >> $@; \\\n+\t\techo '\tmkdir -p blib/lib'$$subdir >> $@; \\\n \t\techo '\tcp '$$i'.pm blib/lib/'$$i'.pm' >> $@; \\\n \tdone\n \techo '\t$(RM) blib/lib/Error.pm' >> $@\n \t'$(PERL_PATH_SQ)' -MError -e 'exit($$Error::VERSION < 0.15009)' || \\\n \techo '\tcp private-Error.pm blib/lib/Error.pm' >> $@\n \techo install: >> $@\n-\techo '\tmkdir -p \"$$(DESTDIR)$(instdir_SQ)/Git/SVN/Memoize\"' >> $@\n \tset -e; \\\n \tfor i in $(modules); \\\n \tdo \\\n+\t\tif test $$i = $${i%/*}; \\\n+\t\tthen \\\n+\t\t\tsubdir=; \\\n+\t\telse \\\n+\t\t\tsubdir=/$${i%/*}; \\\n+\t\tfi; \\\n \t\techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/'$$i'.pm\"' >> $@; \\\n+\t\techo '\tmkdir -p \"$$(DESTDIR)$(instdir_SQ)'$$subdir >> $@; \\\n \t\techo '\tcp '$$i'.pm \"$$(DESTDIR)$(instdir_SQ)/'$$i'.pm\"' >> $@; \\\n \tdone\n \techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/Error.pm\"' >> $@\n-- \n1.7.10.4\n"},{"id":"193748","messageId":"7vhauc893k.fsf@alter.siamese.dyndns.org","threadId":"30818","inReplyTo":"20120615230234.GA3547@burratino","subject":"Re: [PATCH] perl/Makefile: move \"mkdir -p\" to module installation loop for maintainability","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2012-06-15T23:10:39Z","receivedAt":"2012-06-15T23:10:39Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jonathan Nieder <jrnieder@gmail.com> writes:\n\n> In the NO_PERL_MAKEMAKER=YesPlease fallback case, make the\n> directory that will contain each module when installing it\n> (simulating \"install -D\") instead of hardcoding \"Git/SVN/Memoize\n> is the deepest level\".  This should make this codepath which is\n> not used often on development machines a little easier to\n> maintain.\n>\n> Requested-by: Junio C Hamano <gitster@pobox.com>\n> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>\n> ---\n> Jun 15, 2012 at 02:25:34PM -0700, Junio C Hamano wrote:\n>> Jonathan Nieder <jrnieder@gmail.com> writes:\n>\n>>> +\techo '\tmkdir -p blib/lib/Git/SVN/Memoize' >> $@\n>>\n>> Wouldn't it be much less error prone to maintain if you did not\n>> hardcode the \"blib/lib/Git/SVN/Memoize is the deepest level\" here,\n>> and run the \"mkdir -p blib/lib/$$(basename $$i)\" or something in the\n>> loop instead?\n>\n> Yes, I think so.\n>\n> Wasn't sure if \"install -D\" or \"dirname\" is portable, so this\n> patch avoids them.\n\nOK.  I suspect others may come up with a cleaner solution, so I'm\ntempted to hold this in 'pu' for now and use the original one, which\nwas _not wrong_ in any way, for the 1.7.11 final.\n\nThanks.\n\n>  perl/Makefile |   16 ++++++++++++++--\n>  1 file changed, 14 insertions(+), 2 deletions(-)\n>\n> diff --git a/perl/Makefile b/perl/Makefile\n> index fe7a4864..2e8f9804 100644\n> --- a/perl/Makefile\n> +++ b/perl/Makefile\n> @@ -34,22 +34,34 @@ modules += Git/SVN/Ra\n>  \n>  $(makfile): ../GIT-CFLAGS Makefile\n>  \techo all: private-Error.pm Git.pm Git/I18N.pm > $@\n> -\techo '\tmkdir -p blib/lib/Git/SVN/Memoize' >> $@\n>  \tset -e; \\\n>  \tfor i in $(modules); \\\n>  \tdo \\\n> +\t\tif test $$i = $${i%/*}; \\\n> +\t\tthen \\\n> +\t\t\tsubdir=; \\\n> +\t\telse \\\n> +\t\t\tsubdir=/$${i%/*}; \\\n> +\t\tfi; \\\n>  \t\techo '\t$(RM) blib/lib/'$$i'.pm' >> $@; \\\n> +\t\techo '\tmkdir -p blib/lib'$$subdir >> $@; \\\n>  \t\techo '\tcp '$$i'.pm blib/lib/'$$i'.pm' >> $@; \\\n>  \tdone\n>  \techo '\t$(RM) blib/lib/Error.pm' >> $@\n>  \t'$(PERL_PATH_SQ)' -MError -e 'exit($$Error::VERSION < 0.15009)' || \\\n>  \techo '\tcp private-Error.pm blib/lib/Error.pm' >> $@\n>  \techo install: >> $@\n> -\techo '\tmkdir -p \"$$(DESTDIR)$(instdir_SQ)/Git/SVN/Memoize\"' >> $@\n>  \tset -e; \\\n>  \tfor i in $(modules); \\\n>  \tdo \\\n> +\t\tif test $$i = $${i%/*}; \\\n> +\t\tthen \\\n> +\t\t\tsubdir=; \\\n> +\t\telse \\\n> +\t\t\tsubdir=/$${i%/*}; \\\n> +\t\tfi; \\\n>  \t\techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/'$$i'.pm\"' >> $@; \\\n> +\t\techo '\tmkdir -p \"$$(DESTDIR)$(instdir_SQ)'$$subdir >> $@; \\\n>  \t\techo '\tcp '$$i'.pm \"$$(DESTDIR)$(instdir_SQ)/'$$i'.pm\"' >> $@; \\\n>  \tdone\n>  \techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/Error.pm\"' >> $@\n"},{"id":"194430","messageId":"4FED6250.7010103@viscovery.net","threadId":"30818","inReplyTo":"20120615230234.GA3547@burratino","subject":"[PATCH jn/perl-makemaker-leading-paths] perl/Makefile: Fix a missing double-quote","fromName":"Johannes Sixt","fromEmail":"j.sixt@viscovery.net","sentAt":"2012-06-29T08:07:44Z","receivedAt":"2012-06-29T08:07:44Z","isPatch":true,"sender":{"key":"j6t@kdbg.org","avatar":"https://avatars.githubusercontent.com/u/14810926?v=4"},"body":"From: Johannes Sixt <j6t@kdbg.org>\n\nSigned-off-by: Johannes Sixt <j6t@kdbg.org>\n---\n perl/Makefile | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)\n\ndiff --git a/perl/Makefile b/perl/Makefile\nindex 2e8f980..6ca7d47 100644\n--- a/perl/Makefile\n+++ b/perl/Makefile\n@@ -61,7 +61,7 @@ $(makfile): ../GIT-CFLAGS Makefile\n \t\t\tsubdir=/$${i%/*}; \\\n \t\tfi; \\\n \t\techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/'$$i'.pm\"' >> $@; \\\n-\t\techo '\tmkdir -p \"$$(DESTDIR)$(instdir_SQ)'$$subdir >> $@; \\\n+\t\techo '\tmkdir -p \"$$(DESTDIR)$(instdir_SQ)'$$subdir'\"' >> $@; \\\n \t\techo '\tcp '$$i'.pm \"$$(DESTDIR)$(instdir_SQ)/'$$i'.pm\"' >> $@; \\\n \tdone\n \techo '\t$(RM) \"$$(DESTDIR)$(instdir_SQ)/Error.pm\"' >> $@\n-- \n1.7.11.1.1304.g11834c6\n"},{"id":"194432","messageId":"20120629085544.GC3430@burratino","threadId":"30818","inReplyTo":"4FED6250.7010103@viscovery.net","subject":"Re: [PATCH jn/perl-makemaker-leading-paths] perl/Makefile: Fix a missing double-quote","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2012-06-29T08:55:44Z","receivedAt":"2012-06-29T08:55:44Z","isPatch":true,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Johannes Sixt wrote:\n\n> Signed-off-by: Johannes Sixt <j6t@kdbg.org>\n\nYes, not sure how I missed that. :(\n\nAcked-by: Jonathan Nieder <jrnieder@gmail.com>\n"}]}