about summary refs log tree commit diff
path: root/doc/INSTALL
diff options
context:
space:
mode:
authorgiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2017-03-28 15:34:36 +0000
committergiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2017-03-28 15:34:36 +0000
commitca561223546a7e8acd055d5b2114869dd88f5114 (patch)
tree79a54d551eac6df794c539d8b8924aab217a1941 /doc/INSTALL
parent8b32628b4c65cdd2b09e877150bbc4bcdd9b6ba7 (diff)
downloadnetpbm-mirror-ca561223546a7e8acd055d5b2114869dd88f5114.tar.gz
netpbm-mirror-ca561223546a7e8acd055d5b2114869dd88f5114.tar.xz
netpbm-mirror-ca561223546a7e8acd055d5b2114869dd88f5114.zip
Copy Development as new Advanced
git-svn-id: http://svn.code.sf.net/p/netpbm/code/advanced@2932 9d0c8265-081b-0410-96cb-a4ca84ce46f8
Diffstat (limited to 'doc/INSTALL')
-rw-r--r--doc/INSTALL29
1 files changed, 29 insertions, 0 deletions
diff --git a/doc/INSTALL b/doc/INSTALL
index f0b3e87b..a71e5179 100644
--- a/doc/INSTALL
+++ b/doc/INSTALL
@@ -109,6 +109,35 @@ If you use the 'configure' program, be sure to edit config.mk _after_ you
 run 'configure', since 'configure' generates config.mk.
 
 
+COMPILED-IN BUILD DATETIME
+--------------------------
+
+By default, the Netpbm build system builds the datetime that you built it
+into libnetpbm, so the --version global command line option can display it.
+It's actually just when you began building from a clean build tree; if you
+modify code and rebuild, the build datetime does not change.
+
+This is problematic for any of various reasons you might want to compare two
+versions of libnetpbm, or anything of which it is part, for equality.  Two
+libnetpbms that are identical except that they were built at different times
+would compare as different.
+
+Furthermore, as version information, the modification datetime of the source
+code is often more useful than the build datetime.
+
+For these reasons, it is possible to change this timestamping behavior by
+setting the environment variable 'SOURCE_DATA_EPOCH'.  That is supposed to be
+the POSIX datetime value (decimal number of seconds since 1969, excluding leap
+seconds) for when the source code was last modified.  When you set this,
+before doing 'make' for the first time in a clean build tree, the resulting
+libnetpbm contains that information and not build datetime information, and
+the --version global option causes a different message.
+
+The name and meaning of the environment variable is taken from a standard
+described at https://reproducible-builds.org/specs/source-date-epoch/ on March
+16, 2017.
+
+
 AUTOMATING THE BUILD
 --------------------