homebrew-core/Formula/android-ndk.rb

55 lines
1.6 KiB
Ruby

class AndroidNdk < Formula
desc "Android native-code language toolset"
homepage "https://developer.android.com/ndk/index.html"
url "https://dl.google.com/android/repository/android-ndk-r12b-darwin-x86_64.zip"
sha256 "2bdef9143a2c7680fcb7c9fd54fe85013d591f106aea43831eba5e13e10db77e"
bottle :unneeded
# As of r10e, only a 64-bit version is provided
depends_on :arch => :x86_64
depends_on "android-sdk" => :recommended
conflicts_with "crystax-ndk",
:because => "both install `ndk-build`, `ndk-gdb` and `ndk-stack` binaries"
def install
bin.mkpath
# Now we can install both 64-bit and 32-bit targeting toolchains
prefix.install Dir["*"]
# Create a dummy script to launch the ndk apps
ndk_exec = prefix+"ndk-exec.sh"
ndk_exec.write <<-EOS.undent
#!/bin/sh
BASENAME=`basename $0`
EXEC="#{prefix}/$BASENAME"
test -f "$EXEC" && exec "$EXEC" "$@"
EOS
ndk_exec.chmod 0755
%w[ndk-build ndk-depends ndk-gdb ndk-stack ndk-which].each { |app| bin.install_symlink ndk_exec => app }
end
def caveats; <<-EOS.undent
We agreed to the Android NDK License Agreement for you by downloading the NDK.
If this is unacceptable you should uninstall.
License information at:
https://developer.android.com/sdk/terms.html
Software and System requirements at:
https://developer.android.com/sdk/ndk/index.html#requirements
For more documentation on Android NDK, please check:
#{prefix}/docs
EOS
end
test do
(testpath/"test.c").write("int main() { return 0; }")
cc = Utils.popen_read("#{bin}/ndk-which gcc").strip
system cc, "-c", "test.c", "-o", "test"
end
end