Merge #18331: build: Use git archive as source tarball

Merge #18331: build: Use git archive as source tarball

e4d366788bc2e8dce8e6ca572fce08d913d15d6b build: Drop needless EXTRA_DIST content (Hennadii Stepanov)
6c4da59f5b5b3c40526d38965d4ffa7fd59f2ebc build: Drop SOURCEDIST reordering (Hennadii Stepanov)
5e6b8b391243016cb06e9e107c2e6a13a744b31e build: Use git archive as source tarball (Hennadii Stepanov)

Pull request description:

  This PR:
  - is an alternative to #17104
  - closes #16734
  - closes #6753

  The idea is clear described by some developers:
  - [MarcoFalke](
  > This whole concept of explicitly listing each and every file manually (or with a fragile wildcard) is an obvious sisyphean task. I'd say all we need to do is run git archive and be done with it forever, see #16734, #6753, #11530 ...

  - [laanwj](
  > I agree, I've never been a fan of it. I don't think we have any files in the git repository we don't want to ship in the source tarball.


  The suggested changes have a downside which is pointed by [**luke-jr**](
  > ... but the distfile needs to include autogen-generated files.

  This means that a user is not able to run `./configure && make` right away. One must run `./` at first.

  Here are opinions about mandatory use of `./`:
  - [ryanofsky](
  > It's probably ok to require autogen. I think historically configure scripts were supposed to work on obscure unix systems that would just have a generic shell + make tool + c compiler, and not necessarily need gnu packages like m4 which are needed for autogen.

  - [laanwj](
  > I also think it's fine to require autogen. What is one dependency more, if you're building from source.


  ~Also this PR provides Windows users with ZIP archives of the sources. Additionally the commit ID is stored in these ZIP files as a file comment:~


  Note for reviewers: please verify is `git archive` output deterministic?

ACKs for top commit:
    re-ACK e4d366788bc2e8dce8e6ca572fce08d913d15d6b, only change is adding two dots in a the path 🛳
    ACK e4d366788bc2e8dce8e6ca572fce08d913d15d6b

Tree-SHA512: d1153d3ca4a580696019b92be3555ab004d197d9a2146aacff9d3150eb7093b7d40eebd6eea12d861d93ff62d62b68706e04e64dbe5ea796ff6757486e462193

情報元 - Merge #18331: build: Use git archive as source tarball · bitcoin/[email protected] · GitHub

Merge #18331: build: Use git archive as source tarball · bitcoin/bitcoin@baa72cd · GitHub