upgraded the ndk version

This commit is contained in:
Debanjan Basu 2024-04-14 15:31:16 +10:00
parent 0756107d95
commit 70bc2235d7
10 changed files with 273 additions and 257 deletions

View File

@ -22,11 +22,11 @@ welcome!
Running the setup script requires: Running the setup script requires:
* Rust - Rust
#### Optionally, to build for Android: #### Optionally, to build for Android:
* Android SDK and NDK - Android SDK and NDK
You may decide to use Android Studio [here](https://developer.android.com/studio) You may decide to use Android Studio [here](https://developer.android.com/studio)
to maintain your Android dependencies. If so, use the dependency manager to maintain your Android dependencies. If so, use the dependency manager
@ -35,11 +35,11 @@ method is highly recommended as you may run into path problems with the 'flutter
command line without it. If you do so, you may skip to command line without it. If you do so, you may skip to
[Run Veilid setup script](#Run Veilid setup script). [Run Veilid setup script](#Run Veilid setup script).
* build-tools;33.0.1 - build-tools;34.0.0
* ndk;25.1.8937393 - ndk;26.3.11579264
* cmake;3.22.1 - cmake;3.22.1
* platform-tools - platform-tools
* platforms;android-33 - platforms;android-34
#### Setup Dependencies using the CLI #### Setup Dependencies using the CLI
@ -56,9 +56,9 @@ the command line to install the requisite package versions:
```shell ```shell
sdkmanager --install "platform-tools" sdkmanager --install "platform-tools"
sdkmanager --install "platforms;android-33" sdkmanager --install "platforms;android-34"
sdkmanager --install "build-tools;33.0.1" sdkmanager --install "build-tools;34.0.0"
sdkmanager --install "ndk;25.1.8937393" sdkmanager --install "ndk;26.3.11579264"
sdkmanager --install "cmake;3.22.1" sdkmanager --install "cmake;3.22.1"
``` ```
@ -66,7 +66,7 @@ Export environment variables and add the Android SDK platform-tools directory to
your path. See [instructions here](https://developer.android.com/tools/variables). your path. See [instructions here](https://developer.android.com/tools/variables).
```shell ```shell
cat << EOF >> ~/.profile cat << EOF >> ~/.profile
export ANDROID_HOME=<path to sdk> export ANDROID_HOME=<path to sdk>
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools
EOF EOF
@ -97,23 +97,23 @@ Development of Veilid on MacOS is possible on both Intel and ARM hardware.
Development requires: Development requires:
* Xcode, preferably latest version - Xcode, preferably latest version
* Homebrew [here](https://brew.sh) - Homebrew [here](https://brew.sh)
* Rust - Rust
#### Optionally, to build for Android: #### Optionally, to build for Android:
* Android Studio - Android Studio
* Android SDK and NDK - Android SDK and NDK
You will need to use Android Studio [here](https://developer.android.com/studio) You will need to use Android Studio [here](https://developer.android.com/studio)
to maintain your Android dependencies. Use the SDK Manager in the IDE to install the following packages (use package details view to select version): to maintain your Android dependencies. Use the SDK Manager in the IDE to install the following packages (use package details view to select version):
* Android SDK Build Tools (33.0.1) - Android SDK Build Tools (34.0.0)
* NDK (Side-by-side) (25.1.8937393) - NDK (Side-by-side) (26.3.11579264)
* Cmake (3.22.1) - Cmake (3.22.1)
* Android SDK 33 - Android SDK 34
* Android SDK Command Line Tools (latest) (7.0/latest) - Android SDK Command Line Tools (latest) (7.0/latest)
#### Setup command line environment #### Setup command line environment

View File

@ -68,7 +68,7 @@ deps-android:
RUN mkdir /Android; mkdir /Android/Sdk RUN mkdir /Android; mkdir /Android/Sdk
RUN curl -o /Android/cmdline-tools.zip https://dl.google.com/android/repository/commandlinetools-linux-9123335_latest.zip RUN curl -o /Android/cmdline-tools.zip https://dl.google.com/android/repository/commandlinetools-linux-9123335_latest.zip
RUN cd /Android; unzip /Android/cmdline-tools.zip RUN cd /Android; unzip /Android/cmdline-tools.zip
RUN yes | /Android/cmdline-tools/bin/sdkmanager --sdk_root=/Android/Sdk build-tools\;33.0.1 ndk\;25.1.8937393 cmake\;3.22.1 platform-tools platforms\;android-33 cmdline-tools\;latest RUN yes | /Android/cmdline-tools/bin/sdkmanager --sdk_root=/Android/Sdk build-tools\;34.0.0 ndk\;26.3.11579264 cmake\;3.22.1 platform-tools platforms\;android-34 cmdline-tools\;latest
RUN rm -rf /Android/cmdline-tools RUN rm -rf /Android/cmdline-tools
RUN apt-get clean RUN apt-get clean
@ -155,7 +155,7 @@ build-linux-arm64:
build-android: build-android:
FROM +code-android FROM +code-android
WORKDIR /veilid/veilid-core WORKDIR /veilid/veilid-core
ENV PATH=$PATH:/Android/Sdk/ndk/25.1.8937393/toolchains/llvm/prebuilt/linux-x86_64/bin/ ENV PATH=$PATH:/Android/Sdk/ndk/26.3.11579264/toolchains/llvm/prebuilt/linux-x86_64/bin/
RUN cargo build --target aarch64-linux-android --release RUN cargo build --target aarch64-linux-android --release
RUN cargo build --target armv7-linux-androideabi --release RUN cargo build --target armv7-linux-androideabi --release
RUN cargo build --target i686-linux-android --release RUN cargo build --target i686-linux-android --release
@ -261,4 +261,4 @@ package-linux-arm64:
package-linux: package-linux:
BUILD +package-linux-amd64 BUILD +package-linux-amd64
BUILD +package-linux-arm64 BUILD +package-linux-arm64

View File

@ -1,66 +1,71 @@
#!/bin/bash #!/bin/bash
set -eo pipefail set -eo pipefail
if [ $(id -u) -eq 0 ]; then if [ $(id -u) -eq 0 ]; then
echo "Don't run this as root" echo "Don't run this as root"
exit exit
fi fi
if [ ! -z "$(command -v apt)" ]; then if [ ! -z "$(command -v apt)" ]; then
# Install APT dependencies # Install APT dependencies
sudo apt update -y sudo apt update -y
sudo apt install -y openjdk-17-jdk-headless iproute2 curl build-essential cmake libssl-dev openssl file git pkg-config libdbus-1-dev libdbus-glib-1-dev libgirepository1.0-dev libcairo2-dev checkinstall unzip llvm wabt python3-pip sudo apt install -y openjdk-17-jdk-headless iproute2 curl build-essential cmake libssl-dev openssl file git pkg-config libdbus-1-dev libdbus-glib-1-dev libgirepository1.0-dev libcairo2-dev checkinstall unzip llvm wabt python3-pip
elif [ ! -z "$(command -v dnf)" ]; then elif [ ! -z "$(command -v dnf)" ]; then
# DNF (formerly yum) # DNF (formerly yum)
sudo dnf update -y sudo dnf update -y
# libgirepository -> gobject-introspection # libgirepository -> gobject-introspection
# iproute2 -> iproute # iproute2 -> iproute
# openjdk-17-jdk-headless -> java-11-openjdk-headless # openjdk-17-jdk-headless -> java-11-openjdk-headless
# checkinstall does not appear to be a thing in Fedora 38 repos # checkinstall does not appear to be a thing in Fedora 38 repos
# #
# Seems like iproute and file might come preinstalled but I put # Seems like iproute and file might come preinstalled but I put
# them in anyway # them in anyway
# #
# Also Fedora doesn't come with pip # Also Fedora doesn't come with pip
sudo dnf install -y java-17-openjdk-headless iproute curl cmake openssl-devel openssl git file pkg-config dbus-devel dbus-glib gobject-introspection-devel cairo-devel unzip llvm wabt python3-pip gcc-c++ sudo dnf install -y java-17-openjdk-headless iproute curl cmake openssl-devel openssl git file pkg-config dbus-devel dbus-glib gobject-introspection-devel cairo-devel unzip llvm wabt python3-pip gcc-c++
# build-essentials # build-essentials
sudo dnf groupinstall -y 'Development Tools' sudo dnf groupinstall -y 'Development Tools'
fi fi
# Install Rust # Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y -c clippy --profile default curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y -c clippy --profile default
source "$HOME/.cargo/env" source "$HOME/.cargo/env"
#ask if they want to install optional android sdk (and install if yes) #ask if they want to install optional android sdk (and install if yes)
while true; do while true; do
read -p "Do you want to install Android SDK (optional) Y/N) " response read -p "Do you want to install Android SDK (optional) Y/N) " response
case $response in case $response in
[yY] ) echo Installing Android SDK...; [yY])
# Install Android SDK echo Installing Android SDK...
mkdir $HOME/Android; mkdir $HOME/Android/Sdk # Install Android SDK
curl -o $HOME/Android/cmdline-tools.zip https://dl.google.com/android/repository/commandlinetools-linux-9123335_latest.zip mkdir $HOME/Android
cd $HOME/Android; unzip $HOME/Android/cmdline-tools.zip mkdir $HOME/Android/Sdk
$HOME/Android/cmdline-tools/bin/sdkmanager --sdk_root=$HOME/Android/Sdk build-tools\;33.0.1 ndk\;25.1.8937393 cmake\;3.22.1 platform-tools platforms\;android-33 cmdline-tools\;latest emulator curl -o $HOME/Android/cmdline-tools.zip https://dl.google.com/android/repository/commandlinetools-linux-9123335_latest.zip
cd $HOME cd $HOME/Android
rm -rf $HOME/Android/cmdline-tools $HOME/Android/cmdline-tools.zip unzip $HOME/Android/cmdline-tools.zip
$HOME/Android/cmdline-tools/bin/sdkmanager --sdk_root=$HOME/Android/Sdk build-tools\;34.0.0 ndk\;26.3.11579264 cmake\;3.22.1 platform-tools platforms\;android-34 cmdline-tools\;latest emulator
cd $HOME
rm -rf $HOME/Android/cmdline-tools $HOME/Android/cmdline-tools.zip
# Add environment variables # Add environment variables
cat >> $HOME/.profile <<END cat >>$HOME/.profile <<END
source "\$HOME/.cargo/env" source "\$HOME/.cargo/env"
export PATH=\$PATH:\$HOME/Android/Sdk/ndk/25.1.8937393/toolchains/llvm/prebuilt/linux-x86_64/bin:\$HOME/Android/Sdk/platform-tools:\$HOME/Android/Sdk/cmdline-tools/latest/bin export PATH=\$PATH:\$HOME/Android/Sdk/ndk/26.3.11579264/toolchains/llvm/prebuilt/linux-x86_64/bin:\$HOME/Android/Sdk/platform-tools:\$HOME/Android/Sdk/cmdline-tools/latest/bin
export ANDROID_HOME=\$HOME/Android/Sdk export ANDROID_HOME=\$HOME/Android/Sdk
END END
break ;; break
[nN] ) echo Skipping Android SDK; ;;
cat >> $HOME/.profile <<END [nN])
echo Skipping Android SDK
cat >>$HOME/.profile <<END
source "\$HOME/.cargo/env" source "\$HOME/.cargo/env"
END END
break;; break
;;
* ) echo invalid response;; *) echo invalid response ;;
esac esac
done done
echo Complete! Exit and reopen the shell and continue with ./setup_linux.sh echo Complete! Exit and reopen the shell and continue with ./setup_linux.sh

View File

@ -1,106 +1,110 @@
#!/bin/bash #!/bin/bash
set -eo pipefail set -eo pipefail
if [ $(id -u) -eq 0 ]; then if [ $(id -u) -eq 0 ]; then
echo "Don't run this as root" echo "Don't run this as root"
exit exit
fi fi
SCRIPTDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" SCRIPTDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
if [[ "$(uname)" != "Linux" ]]; then if [[ "$(uname)" != "Linux" ]]; then
echo Not running Linux echo Not running Linux
exit 1 exit 1
fi fi
if ! lsb_release -d | grep -qEi 'debian|buntu|mint|pop\!\_os' && [ -z "$(command -v dnf)" ]; then if ! lsb_release -d | grep -qEi 'debian|buntu|mint|pop\!\_os' && [ -z "$(command -v dnf)" ]; then
echo Not a supported Linux echo Not a supported Linux
exit 1 exit 1
fi fi
while true; do while true; do
read -p "Did you install Android SDK? Y/N " response read -p "Did you install Android SDK? Y/N " response
case $response in case $response in
[yY] ) echo Checking android setup...; [yY])
echo Checking android setup...
# ensure ANDROID_HOME is defined and exists # ensure ANDROID_HOME is defined and exists
if [ -d "$ANDROID_HOME" ]; then if [ -d "$ANDROID_HOME" ]; then
echo '[X] $ANDROID_HOME is defined and exists' echo '[X] $ANDROID_HOME is defined and exists'
else else
echo '$ANDROID_HOME is not defined or does not exist' echo '$ANDROID_HOME is not defined or does not exist'
exit 1 exit 1
fi fi
# ensure Android Command Line Tools exist # ensure Android Command Line Tools exist
if [ -d "$ANDROID_HOME/cmdline-tools/latest/bin" ]; then if [ -d "$ANDROID_HOME/cmdline-tools/latest/bin" ]; then
echo '[X] Android command line tools are installed' echo '[X] Android command line tools are installed'
else else
echo 'Android command line tools are not installed' echo 'Android command line tools are not installed'
exit 1 exit 1
fi fi
# ensure ndk is installed # ensure ndk is installed
ANDROID_NDK_HOME="$ANDROID_HOME/ndk/25.1.8937393" ANDROID_NDK_HOME="$ANDROID_HOME/ndk/26.3.11579264"
if [ -f "$ANDROID_NDK_HOME/ndk-build" ]; then if [ -f "$ANDROID_NDK_HOME/ndk-build" ]; then
echo '[X] Android NDK is installed at the location $ANDROID_NDK_HOME' echo '[X] Android NDK is installed at the location $ANDROID_NDK_HOME'
else else
echo 'Android NDK is not installed at the location $ANDROID_NDK_HOME' echo 'Android NDK is not installed at the location $ANDROID_NDK_HOME'
exit 1 exit 1
fi fi
# ensure cmake is installed # ensure cmake is installed
if [ -d "$ANDROID_HOME/cmake" ]; then if [ -d "$ANDROID_HOME/cmake" ]; then
echo '[X] Android SDK CMake is installed' echo '[X] Android SDK CMake is installed'
else else
echo 'Android SDK CMake is not installed' echo 'Android SDK CMake is not installed'
exit 1 exit 1
fi fi
# ensure emulator is installed # ensure emulator is installed
if [ -d "$ANDROID_HOME/emulator" ]; then if [ -d "$ANDROID_HOME/emulator" ]; then
echo '[X] Android SDK emulator is installed' echo '[X] Android SDK emulator is installed'
else else
echo 'Android SDK emulator is not installed' echo 'Android SDK emulator is not installed'
exit 1 exit 1
fi fi
# ensure adb is installed # ensure adb is installed
if command -v adb &> /dev/null; then if command -v adb &>/dev/null; then
echo '[X] adb is available in the path' echo '[X] adb is available in the path'
else else
echo 'adb is not available in the path' echo 'adb is not available in the path'
exit 1 exit 1
fi fi
break;; break
[nN] ) echo Skipping Android SDK config check...; ;;
break;; [nN])
* ) echo invalid response;; echo Skipping Android SDK config check...
esac break
;;
*) echo invalid response ;;
esac
done done
# ensure rustup is installed # ensure rustup is installed
if command -v rustup &> /dev/null; then if command -v rustup &>/dev/null; then
echo '[X] rustup is available in the path' echo '[X] rustup is available in the path'
else else
echo 'rustup is not available in the path' echo 'rustup is not available in the path'
exit 1 exit 1
fi fi
# ensure cargo is installed # ensure cargo is installed
if command -v cargo &> /dev/null; then if command -v cargo &>/dev/null; then
echo '[X] cargo is available in the path' echo '[X] cargo is available in the path'
else else
echo 'cargo is not available in the path' echo 'cargo is not available in the path'
exit 1 exit 1
fi fi
# ensure pip3 is installed # ensure pip3 is installed
if command -v pip3 &> /dev/null; then if command -v pip3 &>/dev/null; then
echo '[X] pip3 is available in the path' echo '[X] pip3 is available in the path'
else else
echo 'pip3 is not available in the path' echo 'pip3 is not available in the path'
exit 1 exit 1
fi fi
# install targets # install targets
@ -114,17 +118,21 @@ pip3 install --upgrade bumpversion
# install capnp # install capnp
while true; do while true; do
read -p "Will you be modifying the capnproto schema? Y/N (say N if unsure)" response read -p "Will you be modifying the capnproto schema? Y/N (say N if unsure)" response
case $response in case $response in
[yY] ) echo Installing capnproto...; [yY])
echo Installing capnproto...
# Install capnproto using the same mechanism as our earthly build # Install capnproto using the same mechanism as our earthly build
$SCRIPTDIR/../scripts/earthly/install_capnproto.sh $SCRIPTDIR/../scripts/earthly/install_capnproto.sh
break;; break
[nN] ) echo Skipping capnproto installation...; ;;
break;; [nN])
* ) echo invalid response;; echo Skipping capnproto installation...
esac break
;;
*) echo invalid response ;;
esac
done done

View File

@ -1,147 +1,151 @@
#!/bin/bash #!/bin/bash
set -eo pipefail set -eo pipefail
SCRIPTDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" SCRIPTDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
if [ ! "$(uname)" == "Darwin" ]; then if [ ! "$(uname)" == "Darwin" ]; then
echo Not running on MacOS echo Not running on MacOS
exit 1 exit 1
fi fi
while true; do while true; do
read -p "Did you install Android SDK? Y/N " response read -p "Did you install Android SDK? Y/N " response
case $response in case $response in
[yY] ) echo Checking android setup...; [yY])
# ensure ANDROID_HOME is defined and exists echo Checking android setup...
if [ -d "$ANDROID_HOME" ]; then # ensure ANDROID_HOME is defined and exists
echo '[X] $ANDROID_HOME is defined and exists' if [ -d "$ANDROID_HOME" ]; then
else echo '[X] $ANDROID_HOME is defined and exists'
echo '$ANDROID_HOME is not defined or does not exist' else
exit 1 echo '$ANDROID_HOME is not defined or does not exist'
fi exit 1
fi
# ensure Android Command Line Tools exist # ensure Android Command Line Tools exist
if [ -d "$ANDROID_HOME/cmdline-tools/latest/bin" ]; then if [ -d "$ANDROID_HOME/cmdline-tools/latest/bin" ]; then
echo '[X] Android command line tools are installed' echo '[X] Android command line tools are installed'
else else
echo 'Android command line tools are not installed' echo 'Android command line tools are not installed'
exit 1 exit 1
fi fi
# ensure Android SDK packages are installed # ensure Android SDK packages are installed
$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager build-tools\;33.0.1 ndk\;25.1.8937393 cmake\;3.22.1 platform-tools platforms\;android-33 $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager build-tools\;34.0.0 ndk\;26.3.11579264 cmake\;3.22.1 platform-tools platforms\;android-34
# ensure ANDROID_NDK_HOME is defined and exists # ensure ANDROID_NDK_HOME is defined and exists
ANDROID_NDK_HOME="$ANDROID_HOME/ndk/25.1.8937393" ANDROID_NDK_HOME="$ANDROID_HOME/ndk/26.3.11579264"
if [ -d "$ANDROID_NDK_HOME" ]; then if [ -d "$ANDROID_NDK_HOME" ]; then
echo '[X] Android NDK is defined and exists' echo '[X] Android NDK is defined and exists'
else else
echo 'Android NDK is not defined or does not exist' echo 'Android NDK is not defined or does not exist'
exit 1 exit 1
fi fi
# ensure ndk is installed # ensure ndk is installed
if [ -f "$ANDROID_NDK_HOME/ndk-build" ]; then if [ -f "$ANDROID_NDK_HOME/ndk-build" ]; then
echo '[X] Android NDK is installed at the location $ANDROID_NDK_HOME' echo '[X] Android NDK is installed at the location $ANDROID_NDK_HOME'
else else
echo 'Android NDK is not installed at the location $ANDROID_NDK_HOME' echo 'Android NDK is not installed at the location $ANDROID_NDK_HOME'
exit 1 exit 1
fi fi
# ensure cmake is installed # ensure cmake is installed
if [ -d "$ANDROID_HOME/cmake" ]; then if [ -d "$ANDROID_HOME/cmake" ]; then
echo '[X] Android SDK CMake is installed' echo '[X] Android SDK CMake is installed'
else else
echo 'Android SDK CMake is not installed' echo 'Android SDK CMake is not installed'
exit 1 exit 1
fi fi
# ensure emulator is installed # ensure emulator is installed
if [ -d "$ANDROID_HOME/emulator" ]; then if [ -d "$ANDROID_HOME/emulator" ]; then
echo '[X] Android SDK emulator is installed' echo '[X] Android SDK emulator is installed'
else else
echo 'Android SDK emulator is not installed' echo 'Android SDK emulator is not installed'
exit 1 exit 1
fi fi
# ensure adb is installed # ensure adb is installed
if command -v adb &> /dev/null; then if command -v adb &>/dev/null; then
echo '[X] adb is available in the path' echo '[X] adb is available in the path'
else else
echo 'adb is not available in the path' echo 'adb is not available in the path'
exit 1 exit 1
fi fi
break;; break
[nN] ) echo Skipping Android SDK config check...; ;;
break;; [nN])
echo Skipping Android SDK config check...
break
;;
* ) echo invalid response;; *) echo invalid response ;;
esac esac
done done
# ensure brew is installed # ensure brew is installed
if command -v brew &> /dev/null; then if command -v brew &>/dev/null; then
echo '[X] brew is available in the path' echo '[X] brew is available in the path'
else else
echo 'brew is not available in the path' echo 'brew is not available in the path'
exit 1 exit 1
fi fi
# ensure xcode is installed # ensure xcode is installed
if command -v xcode-select &> /dev/null; then if command -v xcode-select &>/dev/null; then
echo '[X] XCode is available in the path' echo '[X] XCode is available in the path'
else else
echo 'XCode is not available in the path' echo 'XCode is not available in the path'
exit 1 exit 1
fi fi
# ensure rustup is installed # ensure rustup is installed
if command -v rustup &> /dev/null; then if command -v rustup &>/dev/null; then
echo '[X] rustup is available in the path' echo '[X] rustup is available in the path'
else else
echo 'rustup is not available in the path' echo 'rustup is not available in the path'
exit 1 exit 1
fi fi
# ensure cargo is installed # ensure cargo is installed
if command -v cargo &> /dev/null; then if command -v cargo &>/dev/null; then
echo '[X] cargo is available in the path' echo '[X] cargo is available in the path'
else else
echo 'cargo is not available in the path' echo 'cargo is not available in the path'
exit 1 exit 1
fi fi
# ensure pip3 is installed # ensure pip3 is installed
if command -v pip3 &> /dev/null; then if command -v pip3 &>/dev/null; then
echo '[X] pip3 is available in the path' echo '[X] pip3 is available in the path'
else else
echo 'pip3 is not available in the path' echo 'pip3 is not available in the path'
exit 1 exit 1
fi fi
# ensure Java 17 is the active version # ensure Java 17 is the active version
JAVA_VERSION=$(java -version 2>&1 | head -n 1 | cut -d\" -f2) JAVA_VERSION=$(java -version 2>&1 | head -n 1 | cut -d\" -f2)
if [ "$JAVA_VERSION" == "17" ]; then if [ "$JAVA_VERSION" == "17" ]; then
echo '[X] Java 17 is available in the path' echo '[X] Java 17 is available in the path'
else else
echo 'Java 17 is not available in the path' echo 'Java 17 is not available in the path'
exit 1 exit 1
fi fi
# ensure we have command line tools # ensure we have command line tools
xcode-select --install 2> /dev/null || true xcode-select --install 2>/dev/null || true
until [ -d /Library/Developer/CommandLineTools/usr/bin ]; do until [ -d /Library/Developer/CommandLineTools/usr/bin ]; do
sleep 5; sleep 5
done done
# install packages # install packages
# if $BREW_USER is set, run brew as that user, otherwise run it regularly # if $BREW_USER is set, run brew as that user, otherwise run it regularly
# this allows for developers who have brew installed as a different user to run this script # this allows for developers who have brew installed as a different user to run this script
if [ -z "$BREW_USER" ]; then if [ -z "$BREW_USER" ]; then
BREW_COMMAND="brew" BREW_COMMAND="brew"
else else
BREW_COMMAND="sudo -H -u $BREW_USER brew" BREW_COMMAND="sudo -H -u $BREW_USER brew"
fi fi
$BREW_COMMAND install capnp cmake wabt llvm jq $BREW_COMMAND install capnp cmake wabt llvm jq
@ -155,9 +159,9 @@ cargo install wasm-bindgen-cli wasm-pack cargo-edit
# install pip packages # install pip packages
pip3 install --upgrade bumpversion pip3 install --upgrade bumpversion
if command -v pod &> /dev/null; then if command -v pod &>/dev/null; then
echo '[X] CocoaPods is available in the path' echo '[X] CocoaPods is available in the path'
else else
echo 'CocoaPods is not available in the path, installing it now' echo 'CocoaPods is not available in the path, installing it now'
$BREW_COMMAND install cocoapods $BREW_COMMAND install cocoapods
fi fi

View File

@ -1,8 +1,8 @@
[target.aarch64-linux-android] [target.aarch64-linux-android]
linker = "/Android/Sdk/ndk/25.1.8937393/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android33-clang" linker = "/Android/Sdk/ndk/26.3.11579264/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android34-clang"
[target.armv7-linux-androideabi] [target.armv7-linux-androideabi]
linker = "/Android/Sdk/ndk/25.1.8937393/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi33-clang" linker = "/Android/Sdk/ndk/26.3.11579264/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi33-clang"
[target.x86_64-linux-android] [target.x86_64-linux-android]
linker = "/Android/Sdk/ndk/25.1.8937393/toolchains/llvm/prebuilt/linux-x86_64/bin/x86_64-linux-android33-clang" linker = "/Android/Sdk/ndk/26.3.11579264/toolchains/llvm/prebuilt/linux-x86_64/bin/x86_64-linux-android34-clang"
[target.i686-linux-android] [target.i686-linux-android]
linker = "/Android/Sdk/ndk/25.1.8937393/toolchains/llvm/prebuilt/linux-x86_64/bin/i686-linux-android33-clang" linker = "/Android/Sdk/ndk/26.3.11579264/toolchains/llvm/prebuilt/linux-x86_64/bin/i686-linux-android34-clang"

View File

@ -3,13 +3,13 @@ plugins {
} }
android { android {
compileSdkVersion 33 compileSdkVersion 34
buildToolsVersion "33.0.1" buildToolsVersion "34.0.0"
defaultConfig { defaultConfig {
applicationId "com.veilid.veilid_core_android_tests" applicationId "com.veilid.veilid_core_android_tests"
minSdkVersion 24 minSdkVersion 24
targetSdkVersion 33 targetSdkVersion 34
versionCode 1 versionCode 1
versionName "1.0" versionName "1.0"
@ -38,7 +38,7 @@ android {
sourceCompatibility JavaVersion.VERSION_1_8 sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8
} }
ndkVersion '25.1.8937393' ndkVersion '26.3.11579264'
// Required to copy libc++_shared.so // Required to copy libc++_shared.so
externalNativeBuild { externalNativeBuild {
@ -82,5 +82,4 @@ afterEvaluate {
def buildType = "${variant.buildType.name.capitalize()}" def buildType = "${variant.buildType.name.capitalize()}"
tasks["generate${productFlavor}${buildType}Assets"].dependsOn(tasks["cargoBuild"]) tasks["generate${productFlavor}${buildType}Assets"].dependsOn(tasks["cargoBuild"])
} }
} }

View File

@ -63,7 +63,7 @@ android {
} }
} }
ndkVersion '25.1.8937393' ndkVersion '26.3.11579264'
// Required to copy libc++_shared.so // Required to copy libc++_shared.so
externalNativeBuild { externalNativeBuild {
@ -99,4 +99,4 @@ afterEvaluate {
def buildType = "${variant.buildType.name.capitalize()}" def buildType = "${variant.buildType.name.capitalize()}"
tasks["generate${productFlavor}${buildType}Assets"].dependsOn(tasks["cargoBuild"]) tasks["generate${productFlavor}${buildType}Assets"].dependsOn(tasks["cargoBuild"])
} }
} }

View File

@ -27,7 +27,7 @@ apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
android { android {
compileSdkVersion flutter.compileSdkVersion compileSdkVersion flutter.compileSdkVersion
ndkVersion '25.1.8937393' ndkVersion '26.3.11579264'
compileOptions { compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8 sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8
@ -71,4 +71,4 @@ flutter {
dependencies { dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
} }

View File

@ -4,7 +4,7 @@ plugins {
android { android {
compileSdkVersion 33 compileSdkVersion 33
buildToolsVersion "33.0.1" buildToolsVersion "34.0.0"
defaultConfig { defaultConfig {
applicationId "com.veilid.veilid_tools_android_tests" applicationId "com.veilid.veilid_tools_android_tests"
@ -38,7 +38,7 @@ android {
sourceCompatibility JavaVersion.VERSION_1_8 sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8
} }
ndkVersion '25.1.8937393' ndkVersion '26.3.11579264'
// Required to copy libc++_shared.so // Required to copy libc++_shared.so
externalNativeBuild { externalNativeBuild {
@ -82,4 +82,4 @@ afterEvaluate {
def buildType = "${variant.buildType.name.capitalize()}" def buildType = "${variant.buildType.name.capitalize()}"
tasks["generate${productFlavor}${buildType}Assets"].dependsOn(tasks["cargoBuild"]) tasks["generate${productFlavor}${buildType}Assets"].dependsOn(tasks["cargoBuild"])
} }
} }