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

ndk-which still uses no-longer-supported armeabi ABI #755

Closed
rcombs opened this issue Jul 27, 2018 · 2 comments
Closed

ndk-which still uses no-longer-supported armeabi ABI #755

rcombs opened this issue Jul 27, 2018 · 2 comments
Assignees
Milestone

Comments

@rcombs
Copy link

rcombs commented Jul 27, 2018

Description

STR:

$ ndk-which gcc
/usr/local/Caskroom/android-ndk/17/android-ndk-r17/prebuilt/darwin-x86_64/bin/../../../build/core/setup-app.mk:79: *** Android NDK: Aborting    .  Stop.
/usr/bin/gcc
$ ndk-which clang
/usr/local/Caskroom/android-ndk/17/android-ndk-r17/prebuilt/darwin-x86_64/bin/../../../build/core/setup-app.mk:79: *** Android NDK: Aborting    .  Stop.
/usr/bin/clang

See relevant code from ndk-which:

get_build_var_for_abi ()
{
    if [ -z "$GNUMAKE" ] ; then
        GNUMAKE=make
    fi
    NDK_PROJECT_PATH=$TMPDIR $GNUMAKE --no-print-dir -f $MYNDKDIR/build/core/build-local.mk DUMP_$1 APP_ABI=$2
}

TOOLCHAIN_PREFIX=`get_build_var_for_abi TOOLCHAIN_PREFIX armeabi`

And from setup-app.mk:

_bad_abis = $(strip $(filter-out $(NDK_ALL_ABIS),$(NDK_APP_ABI)))
ifneq ($(_bad_abis),)
    ifneq ($(filter $(_bad_abis),armeabi-v7a-hard),)
        $(call __ndk_info,armeabi-v7a-hard is no longer supported. Use armeabi-v7a.)
        $(call __ndk_info,See https://android.googlesource.com/platform/ndk/+/master/docs/HardFloatAbi.md)
    else ifneq ($(filter $(_bad_abis),armeabi),)
        $(call __ndk_info,The armeabi ABI is no longer supported. Use armeabi-v7a.)
    else ifneq ($(filter $(_bad_abis),mips mips64),)
        $(call __ndk_info,MIPS and MIPS64 are no longer supported.)
    endif
    $(call __ndk_info,NDK Application '$(_app)' targets unknown ABI(s): $(_bad_abis))
    $(call __ndk_info,Please fix the APP_ABI definition in $(NDK_APP_APPLICATION_MK))
    $(call __ndk_error,Aborting)
endif

Related to #56. I'd say that the proposed new flag from that issue should be added, and the default should be changed to… I guess armeabi-v7a?

Environment Details

  • NDK Version: r17
  • Build system: N/A
  • Host OS: macOS
  • Compiler: N/A
  • ABI: N/A
  • STL: N/A
  • NDK API level: N/A
  • Device API level: N/A
@enh enh self-assigned this Jul 27, 2018
@enh
Copy link
Contributor

enh commented Aug 8, 2018

https://android-review.googlesource.com/c/platform/ndk/+/722891 added --abi and switched the default.

https://android-review.googlesource.com/c/platform/ndk/+/723009 cherrypicked this for r18 beta 2.

@enh enh added this to the r18 milestone Aug 8, 2018
@DanAlbert
Copy link
Member

Merged into r18.

mehulagg pushed a commit to mehulagg/superproject that referenced this issue Dec 21, 2019
* Update ndk from branch 'master'
  to e1f0ad12fc317c0ca3183529cc9625d3f084d981
  - Merge "ndk-which: support all ABIs."
  - ndk-which: support all ABIs.
    
    Also switch the default to armeabi-v7a rather than armeabi which was
    removed in r17.
    
    We should probably just remove this tool, but as long as it's there,
    we should make it work.
    
    Bug: android/ndk#755
    Bug: android/ndk#56
    Test: `ndk-which --abi x86 objdump` and `ndk-which objdump`
    Change-Id: I034ee26d1a695bf771a0f38e0097650b61a78ca6
mehulagg pushed a commit to mehulagg/superproject that referenced this issue Dec 21, 2019
* Update ndk from branch 'master'
  to e1f0ad12fc317c0ca3183529cc9625d3f084d981
  - Merge "ndk-which: support all ABIs."
  - ndk-which: support all ABIs.
    
    Also switch the default to armeabi-v7a rather than armeabi which was
    removed in r17.
    
    We should probably just remove this tool, but as long as it's there,
    we should make it work.
    
    Bug: android/ndk#755
    Bug: android/ndk#56
    Test: `ndk-which --abi x86 objdump` and `ndk-which objdump`
    Change-Id: I034ee26d1a695bf771a0f38e0097650b61a78ca6
mehulagg pushed a commit to mehulagg/superproject that referenced this issue Dec 21, 2019
* Update ndk from branch 'master'
  to e1f0ad12fc317c0ca3183529cc9625d3f084d981
  - Merge "ndk-which: support all ABIs."
  - ndk-which: support all ABIs.
    
    Also switch the default to armeabi-v7a rather than armeabi which was
    removed in r17.
    
    We should probably just remove this tool, but as long as it's there,
    we should make it work.
    
    Bug: android/ndk#755
    Bug: android/ndk#56
    Test: `ndk-which --abi x86 objdump` and `ndk-which objdump`
    Change-Id: I034ee26d1a695bf771a0f38e0097650b61a78ca6
mehulagg pushed a commit to mehulagg/superproject that referenced this issue Dec 21, 2019
* Update ndk from branch 'ndk-release-r18'
  to 477efcead24f1107e0200bbf75176913b38e9d01
  - Merge "ndk-which: support all ABIs." into ndk-release-r18
  - ndk-which: support all ABIs.
    
    Also switch the default to armeabi-v7a rather than armeabi which was
    removed in r17.
    
    We should probably just remove this tool, but as long as it's there,
    we should make it work.
    
    Bug: android/ndk#755
    Bug: android/ndk#56
    Test: `ndk-which --abi x86 objdump` and `ndk-which objdump`
    Change-Id: I034ee26d1a695bf771a0f38e0097650b61a78ca6
    (cherry picked from commit e97023726375a8bd49a0e4da376b1da12624c3b3)
mehulagg pushed a commit to mehulagg/superproject that referenced this issue Dec 21, 2019
* Update ndk from branch 'ndk-release-r18'
  to ed20dd9dd6b153bd13d412ad4a6843bd74fcd0cb
  - Merge "ndk-which: require exact ABI strings" into ndk-release-r18
  - ndk-which: require exact ABI strings
    
    e.g. Allow x86, but not x86-foo or foo-x86.
    
    Bug: android/ndk#755
    Bug: android/ndk#56
    Test: `ndk-which --abi x86-foo objdump`
    Test: `ndk-which --abi foo-x86 objdump`
    Change-Id: If9bc43847265be90b432a3cb7b112040580726c8
    (cherry picked from commit d626c3f2673f7e2681eba5090524f49d44cfb429)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants