Cwtch Autobindings v0.0.14
This commit is contained in:
parent
c740cdeb76
commit
925da34c52
|
@ -0,0 +1,94 @@
|
|||
# Mount Virtual Disk for More Space
|
||||
@!setup-secondary
|
||||
|
||||
apt update -qq
|
||||
apt install -qq -y --no-install-recommends strace netcat git wget libc6-dev make gcc unzip ca-certificates p11-kit
|
||||
@%uname -a
|
||||
@%ldd --version
|
||||
export LANG=C.UTF-8
|
||||
|
||||
# Install JDK8
|
||||
cd /mount
|
||||
@%wget https://github.com/AdoptOpenJDK/openjdk8-upstream-binaries/releases/download/jdk8u342-b07/OpenJDK8U-jdk_x64_linux_8u342b07.tar.gz
|
||||
@!check OpenJDK8U-jdk_x64_linux_8u342b07.tar.gz 9a871e4dd2698ae8f4063aad7998414a7472926fbe46b3c89567d86338427bb85acb7e390e88c3c311cd5e631051b358530352fc6e7d65e9ea6c8cff0e72bc09
|
||||
tar --extract --file OpenJDK8U-jdk_x64_linux_8u342b07.tar.gz --no-same-owner
|
||||
ln -s /mount/openjdk-8u342-b07 /usr/local/openjdk-8
|
||||
export JAVA_HOME=/usr/local/openjdk-8
|
||||
export PATH="/usr/local/openjdk-8/bin/:$PATH"
|
||||
@%find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf
|
||||
@%ldconfig
|
||||
@%trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$JAVA_HOME/jre/lib/security/cacerts"
|
||||
@%java -version
|
||||
|
||||
# Setup Android SDK
|
||||
mkdir -p /usr/local/android-sdk
|
||||
cd /usr/local/android-sdk
|
||||
mkdir .android
|
||||
wget -q -O sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip
|
||||
unzip -q sdk.zip
|
||||
rm sdk.zip
|
||||
export ANDROID_SDK=/usr/local/android-sdk
|
||||
export ANDROID_HOME=/usr/local/android-sdk
|
||||
yes | $ANDROID_HOME/tools/bin/sdkmanager --licenses
|
||||
$ANDROID_HOME/tools/bin/sdkmanager --update
|
||||
$ANDROID_HOME/tools/bin/sdkmanager "build-tools;30.0.2" "platforms;android-31" "platform-tools"
|
||||
$ANDROID_HOME/tools/bin/sdkmanager "ndk;22.1.7171670"
|
||||
export NDK_VER="22.1.7171670"
|
||||
export ANDROID_NDK_HOME=/usr/local/android-sdk/ndk/$NDK_VER
|
||||
@%ln -sf $ANDROID_HOME/ndk/$NDK_VER $ANDROID_HOME/ndk-bundle
|
||||
echo 'hosts: files dns' > /etc/nsswitch.conf
|
||||
|
||||
|
||||
|
||||
# Setup Go
|
||||
cd /mount
|
||||
mkdir gopath
|
||||
# Downloading Go
|
||||
wget https://go.dev/dl/go1.21.5.linux-amd64.tar.gz
|
||||
@!check go1.21.5.linux-amd64.tar.gz b1f69fbeb6b607ea0650067c287683c56e3ed0c922d12112963cb7955641d75b6b28858e30f09753e3c6019aa19bece7e51aa2765b5ba0df5760ae9f4eb67cdf
|
||||
tar -xzf go1.21.5.linux-amd64.tar.gz
|
||||
|
||||
ln -s /mount/go /usr/local/go
|
||||
ln -s /mount/gopath /gomobile
|
||||
export GOROOT="/usr/local/go"
|
||||
export GOPATH="/gomobile"
|
||||
export PATH="$GOPATH/bin:/usr/local/go/bin:$PATH"
|
||||
go version
|
||||
|
||||
|
||||
# Building gomobile - NOTE this hash is important as it binds to Java 1.7 class support
|
||||
# We can't update this until docker is updated
|
||||
export GOMOBILEHASH="43a0384520996c8376bfb8637390f12b44773e65"
|
||||
mkdir -p $GOPATH/src/golang.org/x
|
||||
mkdir -p $GOPATH/bin/
|
||||
mkdir -p $GOPATH/pkg/
|
||||
cd $GOPATH/src/golang.org/x
|
||||
git clone https://github.com/golang/mobile.git
|
||||
cd mobile
|
||||
git checkout $GOMOBILEHASH
|
||||
#go install -trimpath -ldflags "-buildid=" golang.org/x/mobile/cmd/gomobile@$GOMOBILEHASH
|
||||
#go install -trimpath -ldflags "-buildid=" golang.org/x/mobile/cmd/gobind@$GOMOBILEHASH
|
||||
go install ./cmd/gobind
|
||||
go install ./cmd/gomobile
|
||||
@%gomobile version
|
||||
@%go env
|
||||
gomobile clean
|
||||
|
||||
# Building libCwtch.so
|
||||
cd /mount
|
||||
git clone https://git.openprivacy.ca/cwtch.im/autobindings
|
||||
mkdir /drone
|
||||
ln -s /mount/autobindings /drone/src
|
||||
cd /drone/src
|
||||
git fetch --tags
|
||||
git checkout tags/v0.0.14 -b v0.0.14
|
||||
echo `git describe --tags` > VERSION
|
||||
make clean-autobindings
|
||||
env EXPERIMENTS="" make lib.go
|
||||
go mod download
|
||||
gomobile init
|
||||
@%env
|
||||
@%make android
|
||||
sha512sum build/android/cwtch.aar
|
||||
@!extract build/android/cwtch.aar
|
||||
@!check build/android/cwtch.aar 0720ddcb753eda112897c7649e397f247ff195df49c93e2d760431242af5cc9f3b7cc179cbd62451bcc34af887725592a7bff19da45958a0c933c011c22e01f9
|
|
@ -0,0 +1,34 @@
|
|||
# Mount Virtual Disk for More Space
|
||||
@!setup-secondary
|
||||
cd /mount
|
||||
mkdir gopath
|
||||
mkdir /drone
|
||||
# Downloading Go
|
||||
wget https://go.dev/dl/go1.21.5.linux-amd64.tar.gz
|
||||
@!check go1.21.5.linux-amd64.tar.gz b1f69fbeb6b607ea0650067c287683c56e3ed0c922d12112963cb7955641d75b6b28858e30f09753e3c6019aa19bece7e51aa2765b5ba0df5760ae9f4eb67cdf
|
||||
tar -xzf go1.21.5.linux-amd64.tar.gz
|
||||
apt update > /dev/null 2>&1
|
||||
apt install -qq -y --no-install-recommends netcat git wget libc6-dev make gcc > /dev/null 2>&1
|
||||
ln -s /mount/go /usr/local/go
|
||||
ln -s /mount/gopath /go
|
||||
export GOROOT="/usr/local/go"
|
||||
export GOPATH="/go"
|
||||
export GOCACHE="/tmp/gocache"
|
||||
export PATH="/usr/local/go/bin/:$PATH"
|
||||
go version
|
||||
# Building libCwtch.so
|
||||
cd /mount/
|
||||
git clone https://git.openprivacy.ca/cwtch.im/autobindings
|
||||
ln -s /mount/autobindings /drone/src
|
||||
cd /drone/src/
|
||||
git fetch --tags
|
||||
git checkout tags/v0.0.14 -b v0.0.14
|
||||
|
||||
go mod download
|
||||
echo `git describe --tags` > VERSION
|
||||
make clean
|
||||
go run generate/generate_bindings.go --experiments "serverExperiment"
|
||||
@%make linux
|
||||
@!extract build/linux/libCwtch.x64.so
|
||||
sha512sum build/linux/libCwtch.x64.so
|
||||
@!check build/linux/libCwtch.x64.so 6557974330f9cffdf17b696202d9f68633d79ce8470fc14b40fef1476dc0b3010e2c1ded6bf82f834242b33abc8de4a0d36804f437ee09bb0046ada8c325cd9d
|
|
@ -0,0 +1,33 @@
|
|||
# Mount Virtual Disk for More Space
|
||||
@!setup-secondary
|
||||
cd /mount
|
||||
mkdir gopath
|
||||
mkdir /drone
|
||||
# Downloading Go
|
||||
wget https://go.dev/dl/go1.21.5.linux-amd64.tar.gz
|
||||
@!check go1.21.5.linux-amd64.tar.gz b1f69fbeb6b607ea0650067c287683c56e3ed0c922d12112963cb7955641d75b6b28858e30f09753e3c6019aa19bece7e51aa2765b5ba0df5760ae9f4eb67cdf
|
||||
tar -xzf go1.21.5.linux-amd64.tar.gz
|
||||
apt update
|
||||
apt install -y --no-install-recommends netcat git wget libc6-dev make gcc g++ pkg-config g++-mingw-w64-x86-64
|
||||
ln -s /mount/go /usr/local/go
|
||||
ln -s /mount/gopath /go
|
||||
export GOROOT="/usr/local/go"
|
||||
export GOPATH="/go"
|
||||
export GOCACHE="/tmp/gocache"
|
||||
export PATH="/usr/local/go/bin/:$PATH"
|
||||
go version
|
||||
# Building libCwtch.dll
|
||||
mkdir /mount/
|
||||
git clone https://git.openprivacy.ca/cwtch.im/autobindings
|
||||
ln -s /mount/autobindings /drone/src
|
||||
cd /drone/src/
|
||||
git fetch --tags
|
||||
git checkout tags/v0.0.14 -b v0.0.14
|
||||
echo `git describe --tags` > VERSION
|
||||
go mod download
|
||||
make clean
|
||||
go run generate/generate_bindings.go --experiments "serverExperiment"
|
||||
make windows
|
||||
sha512sum build/windows/libCwtch.dll
|
||||
@!check build/windows/libCwtch.dll e29a15364beb95956d5366d137d71088f028476b1b416ce94537e192aa56e9eb3a1331f7221ec92c84d99d8011b439f1f60508682ef2d3e9ec62250c597f14dd
|
||||
@!extract build/windows/libCwtch.dll
|
Loading…
Reference in New Issue