Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reduce build requirements for non-developers, neaten build system #3994

Commits on Aug 31, 2020

  1. doc, wiregen: use SHA256 stamps instead of git versions.

    This should be more robust in future: we SHA256 all of the deps.
    For wiregen we prefix with EXPERIMENTAL_FEATURES, since it can effect them.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    d26c9ae View commit details
    Browse the repository at this point in the history
  2. Makefile: use generic rules to make spec-derived sources.

    Now we use the same Makefile rules for all CSV->C generation.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    3b323f5 View commit details
    Browse the repository at this point in the history
  3. tools/check-bolt: don't trigger ourselves.

    We're going to make check-source cover every C file soon.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    9b214d5 View commit details
    Browse the repository at this point in the history
  4. Makefile: normalize all the Makefiles

    We create ALL_PROGRAMS, ALL_TEST_PROGRAMS, ALL_C_SOURCES and
    ALL_C_HEADERS.  Then the toplevel Makefile knows which are
    autogenerated (by wildcard), so it can have all the rules to clean
    them or check the source as necessary.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    0b925ed View commit details
    Browse the repository at this point in the history
  5. Makefile: force regeneration of manpages, wire source.

    Now that SHA256STAMP protects us, we can avoid timestamps altogether
    so we don't get missing builds.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    a3d735f View commit details
    Browse the repository at this point in the history
  6. Makefile: protect .po file and gen_db files with SHA256STAMP.

    And rename them so they're not cleared by `make clean`.  We leave the
    old rules in place so old files get cleaned still.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    3c80761 View commit details
    Browse the repository at this point in the history
  7. Makefile: commit and preserve all the wiregenerated files.

    Signed-off-by: Rusty Russell <[email protected]>
    Changelog-Changed: Build: we no longer require extra Python modules to build.
    rustyrussell committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    b19f622 View commit details
    Browse the repository at this point in the history
  8. external/Makefile: fix build from fresh git clone.

    ```
    make: *** No rule to make target 'external/gheap/gheap.h', needed by 'bitcoin/chainparams.o'.  Stop.
    make: *** Waiting for unfinished jobs....
    ```
    
    Just simplify the Makefile to make all the external headers we use
    dependent on submodcheck.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    d47743d View commit details
    Browse the repository at this point in the history
  9. tools/refresh-submodules.sh: don't exit, but wait if called in parallel.

    Otherwise make thinks we're done, and we can get errors.  Include
    primitive code if we abort build halfway and leave .refresh-submodules dir.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    0971905 View commit details
    Browse the repository at this point in the history
  10. external/Makefile: fix mkdir rule for libbacktrace.a

    The $(TARGET_DIR) may not exist: use mkdir -p.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    38cc673 View commit details
    Browse the repository at this point in the history
  11. configure: we don't need mako any more.

    And guard the mako-specific tests with a check instead.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    4bc2f15 View commit details
    Browse the repository at this point in the history
  12. Travis: don't install requirements.txt if we're just building.

    This tests our instructions in INSTALL.md, which say you only need
    requirements.txt for development or running tests, not building.
    
    Also removes the unused SOURCE_CHECK_ONLY flag.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    aab085b View commit details
    Browse the repository at this point in the history
  13. travis: don't suppress make output.

    It's far less verbose than it used to be!  And it's occasionally useful.
    
    Signed-off-by: Rusty Russell <[email protected]>
    rustyrussell committed Aug 31, 2020
    Configuration menu
    Copy the full SHA
    6e8cbbc View commit details
    Browse the repository at this point in the history