blob: b395718b63fe0c7f53c877ca7286ec21e9f5ebd8 [file] [log] [blame]
Haibo Huang23e8f072019-02-06 12:55:44 -08001#!/bin/bash
2
3set -e
4set -x
5
6if [ ! -d "$NDK" ]; then
7 echo 'Please set $NDK to the path to NDK'
8 exit 1
9fi
10
11cd $(dirname "$0")
12
13function RunConfigure() {
14 HOST=$1
15 TARGET=$2
16 ARCH=$3
17
18 TOOLCHAIN=${NDK}/toolchains/llvm/prebuilt/linux-x86_64/bin/
19
20 export AR=${TOOLCHAIN}${HOST}-ar
21 export AS=${TOOLCHAIN}${TARGET}-clang
22 export CC=${TOOLCHAIN}${TARGET}-clang
23 export CXX=${TOOLCHAIN}${TARGET}-clang++
24 export LD=${TOOLCHAIN}${HOST}-ld
25 export STRIP=${TOOLCHAIN}${HOST}-strip
26
27 # Tell configure what flags Android requires.
28 export CFLAGS="-fPIE -fPIC"
29 export LDFLAGS="-pie"
30
31 ./configure --host=${HOST}
32
33 mkdir -p configs/${ARCH}/MagickCore
34 mv MagickCore/version.h configs/${ARCH}/MagickCore/
35 mv MagickCore/magick-baseconfig.h configs/${ARCH}/MagickCore/
36}
37
38RunConfigure "aarch64-linux-android" "aarch64-linux-android28" "arm64"
39RunConfigure "arm-linux-androideabi" "armv7a-linux-androideabi28" "arm"
40RunConfigure "i686-linux-android" "i686-linux-android28" "x86"
41RunConfigure "x86_64-linux-android" "x86_64-linux-android28" "x86-64"