build: Add support for Android NDK r23 LTS #23478

pull hebasto wants to merge 3 commits into bitcoin:master from hebasto:211109-binutils changing 3 files +19 −19
  1. hebasto commented at 9:52 pm on November 9, 2021: member

    The new Long Term Support release of the Android NDK is available since 2021-08-11:

    As r23 is the new LTS, the support windows for r21 and r22 have now ended.

    On master (8ae4ba481ce8f7da173bef24432729c87a36cb70), dependency build fails because it expects GNU Binutils are present in the Android NDK. In fact:

    GNU Binutils remains available up to and including r22. All binutils tools with the exception of the assembler (GAS) were removed in r23. GAS was removed in r24.

    This PR switches our depends build system to llvm binutils. The usage of llvm-ar and llvm-ranlib tools effectively makes r21 the minimum supported version of NDK.

    With this PR:

    • building depends against NDK r23 LTS now is possible with NO_QT=1
    • building the qt package in depends against NDK r23 LTS still fails:
    0Creating qmake...
    1...
    2
    3ERROR: Cannot detect Android NDK toolchain.
    4Please use -android-toolchain-version to specify it.
    

    The issue with the qt package is going to be addressed in another PR.

  2. hebasto added the label Build system on Nov 9, 2021
  3. hebasto added the label Android on Nov 9, 2021
  4. DrahtBot commented at 2:53 am on November 10, 2021: member

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Conflicts

    No conflicts as of last run.

  5. build: Switch to llvm buinutils for Android builds
    GNU Binutils with the exception of the assembler were removed in NDK r23
    LTS.
    ac323a7222
  6. doc: Move Android dependencies guide into `build-android.md` 6393bdcd53
  7. doc: Add minimum supported Android NDK version 4ba492052e
  8. in depends/README.md:140 in 3873023a2e outdated
    135@@ -136,6 +136,11 @@ options will be passed to bitcoin's configure. In this case, `--disable-wallet`.
    136 ### Android
    137 
    138 Before proceeding with an Android build one needs to get the [Android SDK](https://developer.android.com/studio) and use the "SDK Manager" tool to download the NDK and one or more "Platform packages" (these are Android versions and have a corresponding API level).
    139+
    140+The minimum supported Android NDK version is [r21](https://github.com/android/ndk/wiki/Changelog-r21).
    


    fanquake commented at 3:16 am on November 10, 2021:
    Rather than adding more info here, I think this whole section should be moved to build-android.md, instead of existing randomly at the end of the depends README.

    hebasto commented at 4:55 pm on November 10, 2021:
    Thanks! Updated.
  9. hebasto force-pushed on Nov 10, 2021
  10. hebasto commented at 4:55 pm on November 10, 2021: member

    Updated 3873023a2e922f9aa50f0bc8adbf856214765ab4 -> 4ba492052ec09d48f8c3f391cc248340e761c7f2 (pr23478.01 -> pr23478.02):

  11. hebasto commented at 4:56 pm on November 10, 2021: member

    Friendly ping @icota

    :tiger2:

  12. promag commented at 5:33 pm on November 11, 2021: member

    The issue with the qt package is going to be addressed in another PR.

    Do you know if the issue exists with 5.15.2?

  13. hebasto commented at 5:39 pm on November 11, 2021: member

    Do you know if the issue exists with 5.15.2?

    I’m not sure, but Android stuff has been re-worked much in 5.14.

  14. fanquake approved
  15. fanquake commented at 2:04 am on November 16, 2021: member
    ACK 4ba492052ec09d48f8c3f391cc248340e761c7f2
  16. fanquake merged this on Nov 16, 2021
  17. fanquake closed this on Nov 16, 2021

  18. hebasto deleted the branch on Nov 16, 2021
  19. sidhujag referenced this in commit f691f5973e on Nov 16, 2021
  20. hebasto commented at 1:41 am on December 5, 2021: member

    @promag

    The issue with the qt package is going to be addressed in another PR.

    Do you know if the issue exists with 5.15.2?

    See #23677.

  21. fanquake deleted a comment on Dec 5, 2021
  22. fanquake referenced this in commit 6db7e43d42 on Dec 7, 2021
  23. RandyMcMillan referenced this in commit ba6d3b3956 on Dec 23, 2021
  24. DrahtBot locked this on Dec 5, 2022

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-12-03 15:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me