Closed
Bug 64217
Opened 24 years ago
Closed 23 years ago
make fails when date string contains '
Categories
(NSPR :: NSPR, defect, P2)
Tracking
(Not tracked)
RESOLVED
FIXED
4.2
People
(Reporter: tzafrir, Assigned: wtc)
Details
Attachments
(1 file)
2.08 KB,
patch
|
Details | Diff | Splinter Review |
I use a hebrew (he_IL) glibc locale. the date string of this locale contains one ' character. on nsprpub/pr/src/ I get the following error: /bin/sh: -c: line 1: unexpected EOF while looking for matching `"' /bin/sh: -c: line 2: syntax error: unexpected end of file when trying to build the target Linux2.2.17pre6_x86_PTH_OPT.OBJ/_pr_bld.h in the Makefile I see: $(TINC): @$(MAKE_OBJDIR) @$(ECHO) '#define _BUILD_STRING "$(SH_DATE)"' > $(TINC) (etc.) indeed bash does not accept the syntax: echo 'foo "'bar"' A workaround: run make with a different date format. e.g. (on bash): LC_TIME=C make To reproduce: have the 'date' command contain exactly one ' character. e.g.: replace /bin/date with a script that returns `date.orig|sed -e "s/.$/\'/"` or simply use the he_IL (iw_IL or he on some systems) locale, if it is installed on your system.
Comment 1•24 years ago
|
||
Marking NEW to get someone to look at it.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Assignee | ||
Comment 2•24 years ago
|
||
This is a known problem. Instead of using 'date', I'm considering writing a small program that outputs the current date and time in ISO 8601 notation. (http://www.cl.cam.ac.uk/~mgk25/iso-time.html) (http://www.w3.org/TR/1998/NOTE-datetime-19980827) Here is such a program and a sample output. gandalf:/u/wtc/time 70% cat time.c #include <stdio.h> #include <time.h> int main() { struct tm *gmt; time_t clock; clock = time(NULL); gmt = gmtime(&clock); printf("%04d-%02d-%02dT%02d:%02d:%02dZ\n", gmt->tm_year + 1900, gmt->tm_mon + 1, gmt->tm_mday, gmt->tm_hour, gmt->tm_min, gmt->tm_sec); return 0; } gandalf:/u/wtc/time 71% cc time.c gandalf:/u/wtc/time 72% ./a.out 2001-01-13T06:20:34Z gandalf:/u/wtc/time 73%
Status: NEW → ASSIGNED
Assignee | ||
Updated•24 years ago
|
Priority: -- → P3
Target Milestone: --- → 4.2
Version: other → 4.0.2
Assignee | ||
Updated•24 years ago
|
Priority: P3 → P1
Assignee | ||
Updated•23 years ago
|
Priority: P1 → P2
Assignee | ||
Comment 3•23 years ago
|
||
Assignee | ||
Comment 4•23 years ago
|
||
I checked in my proposed patch on the trunk of NSPR. Now the version strings in our libraries look like this: NSPR 4.2 Beta (debug) 2001-06-23 07:16:16 or $Header: NSPR 4.2 Beta (debug) 2001-06-23 07:16:16 $ No time zone is specified, so the time is the local time. 'date' can only print time zone names (such as PDT) but not time zone offsets (such as -07:00). If we want language-neutral time zone info, I could also use UTC (GMT) and say date -u "+%Y-%m-%d %TZ" but I found that most people don't know what the Z in 2001-06-23 14:16:16Z stands for.
Status: ASSIGNED → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•