mirror of
https://github.com/postgres/postgres.git
synced 2025-06-13 07:41:39 +03:00
Move set_pglocale_pgservice() from path.c to exec.c, so that pulling in
path.c does not in itself force linking of both exec.c and libintl. Should fix current ecpglib build failure on pickier platforms.
This commit is contained in:
@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/port/path.c,v 1.66 2006/03/05 15:59:10 momjian Exp $
|
||||
* $PostgreSQL: pgsql/src/port/path.c,v 1.67 2006/09/11 20:10:30 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -652,54 +652,6 @@ get_parent_directory(char *path)
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* set_pglocale_pgservice
|
||||
*
|
||||
* Set application-specific locale and service directory
|
||||
*
|
||||
* This function takes an argv[0] rather than a full path.
|
||||
*/
|
||||
void
|
||||
set_pglocale_pgservice(const char *argv0, const char *app)
|
||||
{
|
||||
char path[MAXPGPATH];
|
||||
char my_exec_path[MAXPGPATH];
|
||||
char env_path[MAXPGPATH + sizeof("PGSYSCONFDIR=")]; /* longer than
|
||||
* PGLOCALEDIR */
|
||||
|
||||
/* don't set LC_ALL in the backend */
|
||||
if (strcmp(app, "postgres") != 0)
|
||||
setlocale(LC_ALL, "");
|
||||
|
||||
if (find_my_exec(argv0, my_exec_path) < 0)
|
||||
return;
|
||||
|
||||
#ifdef ENABLE_NLS
|
||||
get_locale_path(my_exec_path, path);
|
||||
bindtextdomain(app, path);
|
||||
textdomain(app);
|
||||
|
||||
if (getenv("PGLOCALEDIR") == NULL)
|
||||
{
|
||||
/* set for libpq to use */
|
||||
snprintf(env_path, sizeof(env_path), "PGLOCALEDIR=%s", path);
|
||||
canonicalize_path(env_path + 12);
|
||||
putenv(strdup(env_path));
|
||||
}
|
||||
#endif
|
||||
|
||||
if (getenv("PGSYSCONFDIR") == NULL)
|
||||
{
|
||||
get_etc_path(my_exec_path, path);
|
||||
|
||||
/* set for libpq to use */
|
||||
snprintf(env_path, sizeof(env_path), "PGSYSCONFDIR=%s", path);
|
||||
canonicalize_path(env_path + 13);
|
||||
putenv(strdup(env_path));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* trim_directory
|
||||
*
|
||||
|
Reference in New Issue
Block a user