7196595 Timestamp problem causes various clisp files to be delivered twice
authorRich Burridge <rich.burridge@oracle.com>
Mon, 01 Oct 2012 13:35:11 -0700
changeset 998 3f6ed23e8aae
parent 997 15b3b55c6b28
child 999 11f526e1d277
7196595 Timestamp problem causes various clisp files to be delivered twice
components/clisp/Makefile
tools/time.c
--- a/components/clisp/Makefile	Mon Oct 01 13:20:57 2012 -0700
+++ b/components/clisp/Makefile	Mon Oct 01 13:35:11 2012 -0700
@@ -64,6 +64,20 @@
 CONFIGURE_OPTIONS += --with-libsigsegv-prefix=$(CONFIGURE_PREFIX)
 CONFIGURE_OPTIONS += --with-libreadline-prefix=$(CONFIGURE_PREFIX)
 
+# Prevent clisp.ps and clisp.pdf having different versions for SPARC
+# and x86 in the clisp package, because of embedded dates.
+TIME_CONSTANT = 1348000000
+COMPONENT_BUILD_ENV +=		$(CONSTANT_TIME)
+
+# Adjust the "/ID [ ... ]" line in clisp.pdf to set it to a fixed value
+# to prevent it having different versions for SPARC and x86 in the clisp
+# package.  This value is normally generated by ghostscript, and is
+# different on each machine. The fixed value that's been used comes from 
+# value generated when building clisp on the Userland SPARC build machine.
+COMPONENT_POST_INSTALL_ACTION = \
+	(cd $(PROTOUSRSHAREDOCDIR)/clisp/doc ; \
+	$(GSED) -i 's|^/ID.*|/ID [<DEA6B2ECA0DB714B6BEB6209A211AEF0><DEA6B2ECA0DB714B6BEB6209A211AEF0>]|' clisp.pdf)
+
 # One of the tests now needs the GNU tail command.
 COMPONENT_TEST_ENV +=  PATH="$(GNUBIN):$(PATH)"
 
--- a/tools/time.c	Mon Oct 01 13:20:57 2012 -0700
+++ b/tools/time.c	Mon Oct 01 13:35:11 2012 -0700
@@ -36,9 +36,11 @@
 #include <time.h>
 
 /* The list of programs that we want to use a constant time. */
-static char *programs[] = { "autogen", "bash", "cpp", "cc1", "date", "doxygen",
-	"erl", "javadoc", "ksh", "ksh93", "ld", "perl", "perl5.8.4", "perl5.10",
-	"ruby", "sh", NULL };
+static char *programs[] = { 
+	"autogen", "bash", "cpp", "cc1", "date", "doxygen",
+	"erl", "grops", "gs", "gtroff", "javadoc", "ksh", "ksh93", "ld",
+	"perl", "perl5.8.4", "perl5.10", "ruby", "sh", NULL
+};
 
 static int
 stack_info(uintptr_t pc, int signo, void *arg)