[PATCH 11/11] Allow ETC_GITCONFIG to be a relative path.

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Junio C Hamano <gitster@...>
Cc: <git@...>, Johannes Sixt <johannes.sixt@...>
Date: Tuesday, November 13, 2007 - 4:05 pm

If ETC_GITCONFIG is not an absolute path, interpret it relative to
--exec-dir. This makes the installed binaries relocatable because the
prefix is not compiled-in.

Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at>
---
 config.c |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/config.c b/config.c
index dd7e9ad..9f014bb 100644
--- a/config.c
+++ b/config.c
@@ -6,6 +6,7 @@
  *
  */
 #include "cache.h"
+#include "exec_cmd.h"
 
 #define MAXNAME (256)
 
@@ -454,7 +455,17 @@ int git_config_from_file(config_fn_t fn, const char *filename)
 
 const char *git_etc_gitconfig(void)
 {
-	return ETC_GITCONFIG;
+	static const char *system_wide;
+	if (!system_wide) {
+		system_wide = ETC_GITCONFIG;
+		if (!is_absolute_path(system_wide)) {
+			/* interpret path relative to exec-dir */
+			const char *exec_path = git_exec_path();
+			system_wide = prefix_path(exec_path, strlen(exec_path),
+						system_wide);
+		}
+	}
+	return system_wide;
 }
 
 int git_config(config_fn_t fn)
-- 
1.5.3.5.1592.g0d6db

-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: [PATCH 10/11] Introduce git_etc_gitconfig() that encapsu..., Johannes Schindelin, (Tue Nov 13, 5:22 pm)
Re: [PATCH 10/11] Introduce git_etc_gitconfig() that encapsu..., Johannes Schindelin, (Tue Nov 13, 5:43 pm)
[PATCH 11/11] Allow ETC_GITCONFIG to be a relative path., Johannes Sixt, (Tue Nov 13, 4:05 pm)
Re: [PATCH 11/11] Allow ETC_GITCONFIG to be a relative path., Steffen Prohaska, (Thu Nov 15, 2:53 am)
Re: [PATCH 11/11] Allow ETC_GITCONFIG to be a relative path., Steffen Prohaska, (Thu Nov 15, 4:10 pm)
Re: [PATCH 11/11] Allow ETC_GITCONFIG to be a relative path., Steffen Prohaska, (Thu Nov 15, 6:24 pm)