1From ebb1e37285ab541135005cfe945b7a58e4b95040 Mon Sep 17 00:00:00 2001 2From: Jason Wessel <jason.wessel@windriver.com> 3Date: Sat, 7 Dec 2019 10:01:37 -0800 4Subject: [PATCH] localedef: fix-ups hardlink to make it compile 5 6Upstream-Status: Pending 7Signed-off-by: Jason Wessel <jason.wessel@windriver.com> 8Signed-off-by: Khem Raj <raj.khem@gmail.com> 9--- 10 locale/programs/c.h | 2 +- 11 locale/programs/cross-localedef-hardlink.c | 79 +++++++++++----------- 12 2 files changed, 39 insertions(+), 42 deletions(-) 13 14diff --git a/locale/programs/c.h b/locale/programs/c.h 15index d0a402e90e..1804d31c73 100644 16--- a/locale/programs/c.h 17+++ b/locale/programs/c.h 18@@ -240,7 +240,7 @@ errmsg(char doexit, int excode, char adderr, const char *fmt, ...) 19 /* Don't use inline function to avoid '#include "nls.h"' in c.h 20 */ 21 #define errtryhelp(eval) __extension__ ({ \ 22- fprintf(stderr, _("Try '%s --help' for more information.\n"), \ 23+ fprintf(stderr, ("Try '%s --help' for more information.\n"), \ 24 program_invocation_short_name); \ 25 exit(eval); \ 26 }) 27diff --git a/locale/programs/cross-localedef-hardlink.c b/locale/programs/cross-localedef-hardlink.c 28index 63615896b0..726e6dd948 100644 29--- a/locale/programs/cross-localedef-hardlink.c 30+++ b/locale/programs/cross-localedef-hardlink.c 31@@ -20,6 +20,8 @@ 32 * with this program; if not, write to the Free Software Foundation, Inc., 33 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 34 */ 35+ 36+#undef HAVE_PCRE 37 #include <sys/types.h> 38 #include <stdlib.h> 39 #include <getopt.h> 40@@ -38,8 +40,8 @@ 41 42 #include "c.h" 43 #include "xalloc.h" 44-#include "nls.h" 45-#include "closestream.h" 46+//#include "nls.h" 47+//#include "closestream.h" 48 49 #define NHASH (1<<17) /* Must be a power of 2! */ 50 #define NBUF 64 51@@ -124,33 +126,33 @@ static void print_summary(void) 52 if (ctl->verbose > 1 && ctl->nlinks) 53 fputc('\n', stdout); 54 55- printf(_("Directories: %9lld\n"), ctl->ndirs); 56- printf(_("Objects: %9lld\n"), ctl->nobjects); 57- printf(_("Regular files: %9lld\n"), ctl->nregfiles); 58- printf(_("Comparisons: %9lld\n"), ctl->ncomp); 59+ printf(("Directories: %9lld\n"), ctl->ndirs); 60+ printf(("Objects: %9lld\n"), ctl->nobjects); 61+ printf(("Regular files: %9lld\n"), ctl->nregfiles); 62+ printf(("Comparisons: %9lld\n"), ctl->ncomp); 63 printf( "%s%9lld\n", (ctl->no_link ? 64- _("Would link: ") : 65- _("Linked: ")), ctl->nlinks); 66+ ("Would link: ") : 67+ ("Linked: ")), ctl->nlinks); 68 printf( "%s %9lld\n", (ctl->no_link ? 69- _("Would save: ") : 70- _("Saved: ")), ctl->nsaved); 71+ ("Would save: ") : 72+ ("Saved: ")), ctl->nsaved); 73 } 74 75 static void __attribute__((__noreturn__)) usage(void) 76 { 77 fputs(USAGE_HEADER, stdout); 78- printf(_(" %s [options] directory...\n"), program_invocation_short_name); 79+ printf((" %s [options] directory...\n"), program_invocation_short_name); 80 81 fputs(USAGE_SEPARATOR, stdout); 82- puts(_("Consolidate duplicate files using hardlinks.")); 83+ puts(("Consolidate duplicate files using hardlinks.")); 84 85 fputs(USAGE_OPTIONS, stdout); 86- puts(_(" -c, --content compare only contents, ignore permission, etc.")); 87- puts(_(" -n, --dry-run don't actually link anything")); 88- puts(_(" -v, --verbose print summary after hardlinking")); 89- puts(_(" -vv print every hardlinked file and summary")); 90- puts(_(" -f, --force force hardlinking across filesystems")); 91- puts(_(" -x, --exclude <regex> exclude files matching pattern")); 92+ puts((" -c, --content compare only contents, ignore permission, etc.")); 93+ puts((" -n, --dry-run don't actually link anything")); 94+ puts((" -v, --verbose print summary after hardlinking")); 95+ puts((" -vv print every hardlinked file and summary")); 96+ puts((" -f, --force force hardlinking across filesystems")); 97+ puts((" -x, --exclude <regex> exclude files matching pattern")); 98 99 fputs(USAGE_SEPARATOR, stdout); 100 printf(USAGE_HELP_OPTIONS(16)); /* char offset to align option descriptions */ 101@@ -164,7 +166,7 @@ static inline size_t add2(size_t a, size_t b) 102 size_t sum = a + b; 103 104 if (sum < a) 105- errx(EXIT_FAILURE, _("integer overflow")); 106+ errx(EXIT_FAILURE, ("integer overflow")); 107 return sum; 108 } 109 110@@ -193,7 +195,7 @@ static void process_path(struct hardlink_ctl *ctl, const char *name) 111 if (st.st_dev != ctl->dev && !ctl->force) { 112 if (ctl->dev) 113 errx(EXIT_FAILURE, 114- _("%s is on different filesystem than the rest " 115+ ("%s is on different filesystem than the rest " 116 "(use -f option to override)."), name); 117 ctl->dev = st.st_dev; 118 } 119@@ -287,9 +289,9 @@ static void process_path(struct hardlink_ctl *ctl, const char *name) 120 (ssize_t) sizeof(ctl->iobuf1) : fsize; 121 122 if ((xsz = read(fd, ctl->iobuf1, rsize)) != rsize) 123- warn(_("cannot read %s"), name); 124+ warn(("cannot read %s"), name); 125 else if ((xsz = read(fd2, ctl->iobuf2, rsize)) != rsize) 126- warn(_("cannot read %s"), fp2->name); 127+ warn(("cannot read %s"), fp2->name); 128 129 if (xsz != rsize) { 130 close(fd); 131@@ -303,13 +305,13 @@ static void process_path(struct hardlink_ctl *ctl, const char *name) 132 if (fsize > 0) 133 continue; 134 if (lstat(name, &st3)) { 135- warn(_("cannot stat %s"), name); 136+ warn(("cannot stat %s"), name); 137 close(fd); 138 return; 139 } 140 st3.st_atime = st.st_atime; 141 if (stcmp(&st, &st3, 0)) { 142- warnx(_("file %s changed underneath us"), name); 143+ warnx(("file %s changed underneath us"), name); 144 close(fd); 145 return; 146 } 147@@ -329,18 +331,18 @@ static void process_path(struct hardlink_ctl *ctl, const char *name) 148 suffixlen + 1); 149 /* First create a temporary link to n1 under a new name */ 150 if (link(n1, nam2.buf)) { 151- warn(_("failed to hardlink %s to %s (create temporary link as %s failed)"), 152+ warn(("failed to hardlink %s to %s (create temporary link as %s failed)"), 153 n1, n2, nam2.buf); 154 free(nam2.buf); 155 continue; 156 } 157 /* Then rename into place over the existing n2 */ 158 if (rename(nam2.buf, n2)) { 159- warn(_("failed to hardlink %s to %s (rename temporary link to %s failed)"), 160+ warn(("failed to hardlink %s to %s (rename temporary link to %s failed)"), 161 n1, n2, n2); 162 /* Something went wrong, try to remove the now redundant temporary link */ 163 if (unlink(nam2.buf)) 164- warn(_("failed to remove temporary link %s"), nam2.buf); 165+ warn(("failed to remove temporary link %s"), nam2.buf); 166 free(nam2.buf); 167 continue; 168 } 169@@ -351,16 +353,16 @@ static void process_path(struct hardlink_ctl *ctl, const char *name) 170 /* We actually did not save anything this time, since the link second argument 171 had some other links as well. */ 172 if (ctl->verbose > 1) 173- printf(_(" %s %s to %s\n"), 174- (ctl->no_link ? _("Would link") : _("Linked")), 175+ printf((" %s %s to %s\n"), 176+ (ctl->no_link ? ("Would link") : ("Linked")), 177 n1, n2); 178 } else { 179 ctl->nsaved += ((st.st_size + 4095) / 4096) * 4096; 180 if (ctl->verbose > 1) 181- printf(_(" %s %s to %s, %s %jd\n"), 182- (ctl->no_link ? _("Would link") : _("Linked")), 183+ printf((" %s %s to %s, %s %jd\n"), 184+ (ctl->no_link ? ("Would link") : ("Linked")), 185 n1, n2, 186- (ctl->no_link ? _("would save") : _("saved")), 187+ (ctl->no_link ? ("would save") : ("saved")), 188 (intmax_t)st.st_size); 189 } 190 close(fd); 191@@ -410,11 +412,6 @@ int main(int argc, char **argv) 192 { NULL, 0, NULL, 0 }, 193 }; 194 195- setlocale(LC_ALL, ""); 196- bindtextdomain(PACKAGE, LOCALEDIR); 197- textdomain(PACKAGE); 198- close_stdout_atexit(); 199- 200 while ((ch = getopt_long(argc, argv, "cnvfx:Vh", longopts, NULL)) != -1) { 201 switch (ch) { 202 case 'n': 203@@ -434,7 +431,7 @@ int main(int argc, char **argv) 204 exclude_pattern = (PCRE2_SPTR) optarg; 205 #else 206 errx(EXIT_FAILURE, 207- _("option --exclude not supported (built without pcre2)")); 208+ ("option --exclude not supported (built without pcre2)")); 209 #endif 210 break; 211 case 'V': 212@@ -447,7 +444,7 @@ int main(int argc, char **argv) 213 } 214 215 if (optind == argc) { 216- warnx(_("no directory specified")); 217+ warnx(("no directory specified")); 218 errtryhelp(EXIT_FAILURE); 219 } 220 221@@ -461,7 +458,7 @@ int main(int argc, char **argv) 222 PCRE2_UCHAR buffer[256]; 223 pcre2_get_error_message(errornumber, buffer, 224 sizeof(buffer)); 225- errx(EXIT_FAILURE, _("pattern error at offset %d: %s"), 226+ errx(EXIT_FAILURE, ("pattern error at offset %d: %s"), 227 (int)erroroffset, buffer); 228 } 229 match_data = pcre2_match_data_create_from_pattern(re, NULL); 230@@ -506,7 +503,7 @@ int main(int argc, char **argv) 231 >=0) { 232 if (ctl->verbose) { 233 nam1.buf[nam1baselen] = 0; 234- printf(_("Skipping %s%s\n"), nam1.buf, di->d_name); 235+ printf(("Skipping %s%s\n"), nam1.buf, di->d_name); 236 } 237 continue; 238 } 239