diff -u -r ../postgresql-9.6.2/src/bin/initdb/initdb.c ./src/bin/initdb/initdb.c --- ../postgresql-9.6.2/src/bin/initdb/initdb.c 2017-02-06 22:45:25.000000000 +0100 +++ ./src/bin/initdb/initdb.c 2017-03-05 14:41:04.690265407 +0100 @@ -122,8 +122,8 @@ /* values to be obtained from arguments */ static char *pg_data = ""; -static char *encoding = ""; -static char *locale = ""; +static char *encoding = "UTF-8"; +static char *locale = "en_US.UTF-8"; static char *lc_collate = ""; static char *lc_ctype = ""; static char *lc_monetary = ""; @@ -1848,6 +1848,7 @@ setup_collation(FILE *cmdfd) { #if defined(HAVE_LOCALE_T) && !defined(WIN32) +#ifndef __ANDROID__ int i; FILE *locale_a_handle; char localebuf[NAMEDATALEN]; /* we assume ASCII so this is fine */ @@ -1856,12 +1857,14 @@ locale_a_handle = popen_check("locale -a", "r"); if (!locale_a_handle) return; /* complaint already printed */ +#endif PG_CMD_PUTS("CREATE TEMP TABLE tmp_pg_collation ( " " collname name, " " locale name, " " encoding int) WITHOUT OIDS;\n\n"); +#ifndef __ANDROID__ while (fgets(localebuf, sizeof(localebuf), locale_a_handle)) { size_t len; @@ -1938,6 +1941,7 @@ } free(quoted_locale); } +#endif /* Add an SQL-standard name */ PG_CMD_PRINTF1("INSERT INTO tmp_pg_collation VALUES ('ucs_basic', 'C', %d);\n\n", PG_UTF8); @@ -1969,6 +1973,7 @@ */ PG_CMD_PUTS("DROP TABLE tmp_pg_collation;\n\n"); +#ifndef __ANDROID__ pclose(locale_a_handle); if (count == 0 && !debug) @@ -1976,6 +1981,7 @@ printf(_("No usable system locales were found.\n")); printf(_("Use the option \"--debug\" to see details.\n")); } +#endif #endif /* not HAVE_LOCALE_T && not WIN32 */ }