lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [lmi] master 6425b3b 22/22: Install 'lmi_md5sum$(EXEEXT)'


From: Greg Chicares
Subject: [lmi-commits] [lmi] master 6425b3b 22/22: Install 'lmi_md5sum$(EXEEXT)' elsewhere
Date: Sat, 28 Mar 2020 18:23:39 -0400 (EDT)

branch: master
commit 6425b3b673006e5689c46b765f59a58fa5b5dacc
Author: Gregory W. Chicares <address@hidden>
Commit: Gregory W. Chicares <address@hidden>

    Install 'lmi_md5sum$(EXEEXT)' elsewhere
    
    This binary is no longer installed in third_party/bin/, which is
    therefore not needed at all. Instead: it is included in
    $(default_targets), and therefore in $(installable_binaries), so
    it's automatically installed in $(bindir); and it's explicitly
    included in $(fardel_checksummed_files) and $(fardel_binaries) for
    the nonce.
---
 Makefile.am    |  6 ++++++
 objects.make   |  4 ++++
 workhorse.make | 10 ++++++----
 3 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index 513c3dd..bd9662b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -53,6 +53,12 @@ bin_PROGRAMS = \
     test_coding_rules \
     wx_test
 
+# MD5 !! 'objects.make' copies lmi_md5sum$(EXEEXT) to $localbindir,
+# which is not a standard autotools directory. This doesn't matter
+# for production, because lmi itself no longer calls an external
+# program to validate its data files; but its absence may cause some
+# unit tests to fail.
+
 # other programs which may or not be built depending on configure arguments
 EXTRA_PROGRAMS = \
     antediluvian_cgi
diff --git a/objects.make b/objects.make
index d1231cc..f9f5400 100644
--- a/objects.make
+++ b/objects.make
@@ -1094,6 +1094,10 @@ elapsed_time$(EXEEXT): \
   system_command_non_wx.o \
   timer.o \
 
+# Copy this binary to the local bin directory, so that it's available
+# for 'authenticity_test' and 'system_command_test'.
+# MD5 !! Obviate this by rewriting those unit tests.
+lmi_md5sum$(EXEEXT): POST_LINK_COMMAND = $(CP) --preserve $@ $(localbindir)
 lmi_md5sum$(EXEEXT): \
   $(boost_filesystem_objects) \
   $(main_auxiliary_common_objects) \
diff --git a/workhorse.make b/workhorse.make
index 9abfb2c..c8b98a7 100644
--- a/workhorse.make
+++ b/workhorse.make
@@ -1076,7 +1076,6 @@ ifeq (,$(USE_SO_ATTRIBUTES))
 else
        @$(ECHO) "Can't build product_files$(EXEEXT) with USE_SO_ATTRIBUTES."
 endif
-       @$(CP) --preserve lmi_md5sum$(EXEEXT) $(prefix)/third_party/bin
 
 
################################################################################
 
@@ -1165,6 +1164,7 @@ fardel_binaries := \
   $(bindir)/wx_test$(EXEEXT) \
   $(wildcard $(localbindir)/*$(SHREXT)) \
   $(wildcard $(locallibdir)/*$(SHREXT)) \
+  $(wildcard $(bindir)/lmi_md5sum$(EXEEXT)) \
   $(wildcard $(bindir)/product_files$(EXEEXT)) \
   $(extra_fardel_binaries) \
 
@@ -1177,6 +1177,11 @@ fardel_files := \
 
 # Sensitive files are authenticated at run time.
 #
+# MD5 !! A native 'lmi_md5sum$(EXEEXT)' is provided because lmi once
+# used it for run-time authentication, and still uses it temporarily
+# for experimental timings. Once that experiment concludes, remove it
+# from $(fardel_checksummed_files) and $(fardel_binaries).
+#
 # Binary files other than 'lmi_md5sum$(EXEEXT)' are not authenticated
 # because they aren't easily forged but are sizable enough to make
 # authentication too slow. An incorrect version of any such file might
@@ -1208,14 +1213,11 @@ fardel: install
        @$(MAKE) --file=$(this_makefile) --directory=$(fardel_dir) wrap_fardel
        @$(ECHO) "Created '$(fardel_name)' archive in '$(fardel_root)'."
 
-# A native 'lmi_md5sum$(EXEEXT)' is provided to be used by end users.
-#
 # $(CP) is used without '--update' so that custom extra files can
 # replace defaults regardless of their datestamps.
 
 .PHONY: wrap_fardel
 wrap_fardel:
-       @$(CP) $(prefix)/third_party/bin/lmi_md5sum$(EXEEXT) .
        @$(CP) $(datadir)/configurable_settings.xml .
        @$(CP) $(datadir)/company_logo.png .
        @$(CP) $(datadir)/group_quote_banner.png .



reply via email to

[Prev in Thread] Current Thread [Next in Thread]