[Git][NTPsec/ntpsec][master] Partially address GitLab #212: waf needs some tlc

Eric S. Raymond gitlab at mg.gitlab.com
Thu Aug 10 21:43:00 UTC 2017


Eric S. Raymond pushed to branch master at NTPsec / ntpsec


Commits:
218ee2ae by Eric S. Raymond at 2017-08-10T17:41:32-04:00
Partially address GitLab #212: waf needs some tlc

One probleem in this issue - distclean not deleting ntpd/version.h or
ntpclients/ntp - can't be fixed.  clean does this through a hook in
wscript, but distclean has a separate, weird execution path that there
is no apparent way to set hooks in.

- - - - -


2 changed files:

- devel/TODO
- wscript


Changes:

=====================================
devel/TODO
=====================================
--- a/devel/TODO
+++ b/devel/TODO
@@ -7,12 +7,7 @@
 * Add .tar.xz tarball.
 
 * Fix ntpq retransmissions.
-  Too many cases don't work well enough.  (maybe inherited from ntp classic.)
-
-* Fix waf quirks:
-  waf build doesn't build everything
-    it takes a second pass (or check) to build pylib/control.pyc and friends.
-  waf should have an option to not build or run check
+  Too many cases don't work well enough (may be inherited from ntp classic).
 
 === Testing ===
 


=====================================
wscript
=====================================
--- a/wscript
+++ b/wscript
@@ -993,8 +993,9 @@ def afterparty(ctx):
     # Also, they need to be able to see the Python extension
     # module built in libntp.
     if ctx.cmd == 'clean' or ctx.cmd == 'distclean':
-        ctx.exec_command("rm -f wafhelpers/*.pyc pylib/__pycache__/*.pyc "
-                         "wafhelpers/__pycache__/*.pyc ntpd/version.h")
+        ctx.exec_command("rm -fr wafhelpers/*.pyc pylib/__pycache__/*.pyc "
+                         "wafhelpers/__pycache__/*.pyc ntpd/version.h "
+                         "ntpclients/ntp")
     for x in ("ntpclients",):
         # List used to be longer...
         path_build = ctx.bldnode.make_node("pylib")
@@ -1072,6 +1073,9 @@ def build(ctx):
     )
 
     ctx.add_post_fun(afterparty)
+    # Second clause in the following guard is an unfulfilled hope.
+    # waf distclean doesn't go through build(ctx), it has its own
+    # execution path that we apparently cannot set hooks in.
     if ctx.cmd == 'clean' or ctx.cmd == 'distclean':
         afterparty(ctx)
 



View it on GitLab: https://gitlab.com/NTPsec/ntpsec/commit/218ee2ae9c6cf05019d0a94b429106848ef689c9

---
View it on GitLab: https://gitlab.com/NTPsec/ntpsec/commit/218ee2ae9c6cf05019d0a94b429106848ef689c9
You're receiving this email because of your account on gitlab.com.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ntpsec.org/pipermail/vc/attachments/20170810/5dd8e4a8/attachment.html>


More information about the vc mailing list