diff options
author | Saul Wold <sgw@linux.intel.com> | 2012-12-13 19:01:35 -0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-12-19 17:50:03 +0000 |
commit | 4cb22ea0beb952a5d70f83aaac415b7f2ecf3fd5 (patch) | |
tree | bda353cc607b4fffd680f19017f239e98563fe20 /meta/recipes-extended/man/man-1.6f/man-1.6e-use_i18n_vars_in_a_std_way.patch | |
parent | a7fe871f7d5c1ac595df7a0e202f0e5d1fb76f03 (diff) | |
download | openembedded-core-contrib-4cb22ea0beb952a5d70f83aaac415b7f2ecf3fd5.tar.gz |
man: Update to 1.6g
Rebase some patches
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta/recipes-extended/man/man-1.6f/man-1.6e-use_i18n_vars_in_a_std_way.patch')
-rw-r--r-- | meta/recipes-extended/man/man-1.6f/man-1.6e-use_i18n_vars_in_a_std_way.patch | 160 |
1 files changed, 0 insertions, 160 deletions
diff --git a/meta/recipes-extended/man/man-1.6f/man-1.6e-use_i18n_vars_in_a_std_way.patch b/meta/recipes-extended/man/man-1.6f/man-1.6e-use_i18n_vars_in_a_std_way.patch deleted file mode 100644 index 568f742100..0000000000 --- a/meta/recipes-extended/man/man-1.6f/man-1.6e-use_i18n_vars_in_a_std_way.patch +++ /dev/null @@ -1,160 +0,0 @@ -Upstream-Status: Pending - -Signed-off-by: Scott Garman <scott.a.garman@intel.com> - -diff -Naur man-1.6e.orig/catopen/catopen.c man-1.6e/catopen/catopen.c ---- man-1.6e.orig/catopen/catopen.c 2005-08-20 20:26:06.000000000 -0300 -+++ man-1.6e/catopen/catopen.c 2007-05-18 11:31:05.000000000 -0300 -@@ -9,22 +9,63 @@ - extern char *index (const char *, int); /* not always in <string.h> */ - extern char *my_malloc(int); /* in util.c */ - -+/* if the program has sgid/suid privileges then getenv doesn't return -+ * NLSPATH; so we set here a good default value. -+ */ - #ifndef DEFAULT_NLSPATH - # if __GLIBC__ >= 2 --# define DEFAULT_NLSPATH "/usr/share/locale/%L/%N" -+# define DEFAULT_NLSPATH "/usr/share/locale/%L/%N:/usr/share/locale/%l_%t/%N:/usr/share/locale/%l/%N" - # else - # define DEFAULT_NLSPATH "/usr/lib/locale/%N/%L" - # endif - #endif - --static nl_catd my_catopenpath(char *name, char *path); -+static nl_catd my_catopenpath(char *name, char *path, char *lang); - - static /* this source included in gripes.c */ - nl_catd - my_catopen(char *name, int oflag) { -- nl_catd fd; -+ nl_catd fd = (nl_catd) -1; -+ -+ /* using first the my_catopenpath, which looks with LANGUAGE -+ * and only if it fails ressort to catopen, it gives better i18n -+ */ -+ { -+ char *nlspath, *lang, *s; - -- fd = catopen(name, oflag); -+ /* -+ * "If NLSPATH does not exist in the environment, or if a -+ * message catalog cannot be opened in any of the paths specified -+ * by NLSPATH, then an implementation defined default path is used" -+ */ -+ nlspath = getenv("NLSPATH"); -+ if (!nlspath) -+ nlspath = DEFAULT_NLSPATH; -+ -+ lang = getenv("LANGUAGE"); -+ if (!lang) -+ lang = getenv("LC_ALL"); -+ if (!lang) -+ lang = getenv("LC_MESSAGES"); -+ if (!lang) -+ lang = getenv("LANG"); -+ if (!lang) -+ lang = ""; -+ -+ while(*lang && (fd == (nl_catd) -1)) { -+ s = index(lang, ':'); -+ if (s) *s = 0; -+ fd = my_catopenpath(name, nlspath, lang); -+ if (s) lang=s+1; -+ else lang = ""; -+ } -+ if (fd == (nl_catd) -1) -+ fd = my_catopenpath(name, nlspath, "en"); -+ } -+ -+ /* still not found, use the system catopen */ -+ if (fd == (nl_catd) -1) -+ fd = catopen(name, oflag); - - if (fd == (nl_catd) -1 && oflag) { - oflag = 0; -@@ -32,8 +73,6 @@ - } - - if (fd == (nl_catd) -1) { -- char *nlspath; -- - /* The libc catopen fails - let us see if we can do better */ - /* The quotes below are from X/Open, XPG 1987, Vol. 3. */ - -@@ -58,17 +97,6 @@ - #endif - } - -- /* -- * "If NLSPATH does not exist in the environment, or if a -- * message catalog cannot be opened in any of the paths specified -- * by NLSPATH, then an implementation defined default path is used" -- */ -- -- nlspath = getenv("NLSPATH"); -- if (nlspath) -- fd = my_catopenpath(name, nlspath); -- if (fd == (nl_catd) -1) -- fd = my_catopenpath(name, DEFAULT_NLSPATH); - } - return fd; - } -@@ -90,15 +118,13 @@ - * - */ - static nl_catd --my_catopenpath(char *name, char *nlspath) { -- int fd; -+my_catopenpath(char *name, char *nlspath, char *lang) { - nl_catd cfd = (nl_catd) -1; -- char *path0, *path, *s, *file, *lang, *lang_l, *lang_t, *lang_c; -+ char *path0, *path, *s, *file, *lang_l, *lang_t, *lang_c; - int langsz, namesz, sz, lang_l_sz, lang_t_sz, lang_c_sz; - - namesz = strlen(name); - -- lang = getenv("LANG"); - if (!lang) - lang = ""; - langsz = strlen(lang); -@@ -194,14 +220,9 @@ - path = s+1; - } else - path = 0; -- fd = open(file, O_RDONLY); -- if (fd != -1) { -- /* we found the right catalog - but we don't know the -- type of nl_catd, so close it again and ask libc */ -- close(fd); -- cfd = catopen(file, 0); -- break; -- } -+ cfd = catopen(file, 0); -+ if (cfd != (nl_catd) -1) -+ break; - } - - free(path0); -diff -Naur man-1.6e.orig/src/manpath.c man-1.6e/src/manpath.c ---- man-1.6e.orig/src/manpath.c 2006-08-03 18:18:33.000000000 -0300 -+++ man-1.6e/src/manpath.c 2007-05-18 11:02:48.000000000 -0300 -@@ -282,13 +282,14 @@ - /* We cannot use "lang = setlocale(LC_MESSAGES, NULL)" or so: - the return value of setlocale is an opaque string. */ - /* POSIX prescribes the order: LC_ALL, LC_MESSAGES, LANG */ -- if((lang = getenv("LC_ALL")) != NULL) -+ /* LANGUAGE is GNU/Linux and overrules all */ -+ if((lang = getenv("LANGUAGE")) != NULL) - split2(dir, lang, add_to_mandirlist_x, perrs); -- if((lang = getenv("LC_MESSAGES")) != NULL) -+ else if((lang = getenv("LC_ALL")) != NULL) - split2(dir, lang, add_to_mandirlist_x, perrs); -- if((lang = getenv("LANG")) != NULL) -+ else if((lang = getenv("LC_MESSAGES")) != NULL) - split2(dir, lang, add_to_mandirlist_x, perrs); -- if((lang = getenv("LANGUAGE")) != NULL) -+ else if((lang = getenv("LANG")) != NULL) - split2(dir, lang, add_to_mandirlist_x, perrs); - add_to_mandirlist_x(dir, 0, perrs); - } |