{"thread":{"id":"4630","subject":"[PATCH] Git.pm: Implement Git::version()","startedAt":"2006-06-22T23:59:55Z","lastAt":"2006-06-22T23:59:55Z","messageCount":1,"participants":["Petr Baudis"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"22321","messageId":"20060622235955.560.46623.stgit@machine.or.cz","threadId":"4630","inReplyTo":null,"subject":"[PATCH] Git.pm: Implement Git::version()","fromName":"Petr Baudis","fromEmail":"pasky@suse.cz","sentAt":"2006-06-22T23:59:55Z","receivedAt":"2006-06-22T23:59:55Z","isPatch":true,"sender":{"key":"pasky@ucw.cz","avatar":"https://avatars.githubusercontent.com/u/18439?v=4"},"body":"Git::version() returns the Git version string.\n\nSigned-off-by: Petr Baudis <pasky@suse.cz>\n---\n\n Makefile    |    5 ++++-\n perl/Git.pm |   12 ++++++++++++\n perl/Git.xs |    8 ++++++++\n 3 files changed, 24 insertions(+), 1 deletions(-)\n\ndiff --git a/Makefile b/Makefile\nindex 4d20b22..7842195 100644\n--- a/Makefile\n+++ b/Makefile\n@@ -596,7 +596,10 @@ XDIFF_OBJS=xdiff/xdiffi.o xdiff/xprepare\n \n \n perl/Makefile:\tperl/Git.pm perl/Makefile.PL\n-\t(cd perl && $(PERL_PATH) Makefile.PL PREFIX=\"$(prefix)\" DEFINE=\"$(ALL_CFLAGS)\" LIBS=\"$(LIBS)\")\n+\t(cd perl && $(PERL_PATH) Makefile.PL \\\n+\t\tPREFIX=\"$(prefix)\" \\\n+\t\tDEFINE=\"$(ALL_CFLAGS) -DGIT_VERSION=\\\\\\\"$(GIT_VERSION)\\\\\\\"\" \\\n+\t\tLIBS=\"$(LIBS)\")\n \n doc:\n \t$(MAKE) -C Documentation all\ndiff --git a/perl/Git.pm b/perl/Git.pm\nindex 5b233ed..3f85000 100644\n--- a/perl/Git.pm\n+++ b/perl/Git.pm\n@@ -285,6 +285,18 @@ sub command_noisy {\n }\n \n \n+=item version ()\n+\n+Return the Git version in use.\n+\n+Implementation of this function is very fast; no external command calls\n+are involved.\n+\n+=cut\n+\n+# Implemented in Git.xs.\n+\n+\n =item exec_path ()\n \n Return path to the git sub-command executables (the same as\ndiff --git a/perl/Git.xs b/perl/Git.xs\nindex 792dc6d..4d57685 100644\n--- a/perl/Git.xs\n+++ b/perl/Git.xs\n@@ -22,6 +22,14 @@ # /* TODO: xs_call_gate(). See Git.pm. *\n \n \n const char *\n+xs_version()\n+CODE:\n+\tRETVAL = GIT_VERSION;\n+OUTPUT:\n+\tRETVAL\n+\n+\n+const char *\n xs_exec_path()\n CODE:\n \tRETVAL = git_exec_path();\n"}]}