Skip to content

Commit 7bae289

Browse files
author
az
committed
Complete the project framework design.
1 parent 03fb76a commit 7bae289

File tree

8 files changed

+198
-284
lines changed

8 files changed

+198
-284
lines changed

script/__color_log.sh

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,6 @@ function log_error_print() {
163163
local FOREGROUND=$LOG_VAR_FG_RED
164164
local FONT=$LOG_VAR_BOLD
165165
echo "\\033[${FOREGROUND};${FONT}m${@}\\033[0m"
166-
exit 1
167166
}
168167
function log_fatal_print() {
169168
# high | bold | red | blink

script/__util.sh

Lines changed: 29 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,30 @@ echo "# Reference:
1717
echo "# Url: https://github.com/AsteriskZuo/openssl_for_ios_and_android #" >/dev/null
1818
echo "###############################################################################" >/dev/null
1919

20+
function util_init_log() {
21+
if test -t 1 && which tput >/dev/null 2>&1; then
22+
ncolors=$(tput colors)
23+
if test -n "$ncolors" && test $ncolors -ge 8; then
24+
bold_color=$(tput bold)
25+
warn_color=$(tput setaf 3)
26+
error_color=$(tput setaf 1)
27+
reset_color=$(tput sgr0)
28+
fi
29+
# 72 used instead of 80 since that's the default of pr
30+
ncols=$(tput cols)
31+
fi
32+
: ${ncols:=72}
33+
}
34+
35+
function util_die() {
36+
echo "$error_color$bold_color$@$reset_color" && exit 1
37+
}
38+
39+
function util_debug() {
40+
PS4='+line:${LINENO} '
41+
set -x
42+
}
43+
2044
function util_get_cpu_count() {
2145
if [ "$(uname)" == "Darwin" ]; then
2246
echo $(sysctl -n hw.physicalcpu)
@@ -165,7 +189,7 @@ function util_download_file() {
165189
if [ ! -r ${zip} ]; then
166190
curl -SL "$url" -o "$zip" || ret="no"
167191
if [ "no" = $ret ]; then
168-
rm -rf "$zip" && exit 1
192+
rm -rf "$zip" && util_die "download zip ${zip} fail."
169193
fi
170194
fi
171195
}
@@ -180,10 +204,12 @@ function util_unzip() {
180204
local ret="yes"
181205
tar -x -C "$dir" -f "$zip" || ret="no"
182206
if [ "no" = ret ]; then
183-
rm -rf "$zip" && exit 1
207+
rm -rf "$zip" && util_die "unzip ${zip} fail."
184208
fi
185209
}
186210

187211
function util_load_script() {
188-
source $1 || exit 1
212+
source $1 || util_die "load script $1 fail."
189213
}
214+
215+
util_init_log

script/_common.sh

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,10 @@ function common_get_library_url_from_id() {
123123
echo "$(util_get_list_item $1 $COMMON_LIBRARY_URL_LIST)"
124124
}
125125

126+
function common_die() {
127+
log_error_print "$1" && exit 1
128+
}
129+
126130
echo "###############################################################################" >/dev/null
127131
echo "#### Flow Function Partition #####" >/dev/null
128132
echo "###############################################################################" >/dev/null
@@ -137,15 +141,9 @@ function common_pre_download_zip() {
137141

138142
function common_build_unzip() {
139143
local library_id=$1
140-
local arch=$2
141-
}
142-
143-
function common_build_config() {
144-
local library_id=$1
145-
local arch=$2
146144
}
147145

148-
function common_buid_make() {
146+
function common_build_config_make() {
149147
local library_id=$1
150148
local arch=$2
151149
}

script/android-common.sh

Lines changed: 37 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@ echo "#### Global Variable Partition
2424
echo "###############################################################################" >/dev/null
2525

2626
export COMMON_PLATFORM_TYPE="Android"
27-
export ANDROID_ARCHS=("armeabi-v7a" "arm64-v8a" "x86" "x86_64")
27+
export ANDROID_ARCHS=("armeabi-v7a" "arm64-v8a" "x86" "x86-64")
2828
export ANDROID_TRIPLES=("arm-linux-androideabi" "aarch64-linux-android" "i686-linux-android" "x86_64-linux-android")
2929
export ANDROID_API=23
3030

3131
# for test
32-
# ANDROID_ARCHS=("x86_64")
32+
# ANDROID_ARCHS=("x86-64")
3333
# ANDROID_TRIPLES=("x86_64-linux-android")
3434
# ANDROID_API=23
3535

@@ -55,46 +55,10 @@ function android_get_toolchain() {
5555
echo "${HOST_OS}-${HOST_ARCH}"
5656
}
5757

58-
function android_get_arch() {
59-
local common_arch=$1
60-
case ${common_arch} in
61-
arm)
62-
echo "arm-v7a"
63-
;;
64-
arm64)
65-
echo "arm64-v8a"
66-
;;
67-
x86)
68-
echo "x86"
69-
;;
70-
x86_64)
71-
echo "x86-64"
72-
;;
73-
esac
74-
}
75-
76-
function android_get_target_build() {
77-
local arch=$1
78-
case ${arch} in
79-
arm-v7a)
80-
echo "arm"
81-
;;
82-
arm64-v8a)
83-
echo "arm64"
84-
;;
85-
x86)
86-
echo "x86"
87-
;;
88-
x86-64)
89-
echo "x86_64"
90-
;;
91-
esac
92-
}
93-
94-
function android_get_build_host_internal() {
58+
function android_get_build_host() {
9559
local arch=$1
9660
case ${arch} in
97-
arm-v7a | arm-v7a-neon)
61+
armeabi-v7a)
9862
echo "arm-linux-androideabi"
9963
;;
10064
arm64-v8a)
@@ -109,16 +73,11 @@ function android_get_build_host_internal() {
10973
esac
11074
}
11175

112-
function android_get_build_host() {
113-
local arch=$(android_get_arch $1)
114-
android_get_build_host_internal $arch
115-
}
116-
11776
function android_get_clang_target_host() {
11877
local arch=$1
11978
local api=$2
12079
case ${arch} in
121-
arm-v7a | arm-v7a-neon)
80+
armeabi-v7a)
12281
echo "armv7a-linux-androideabi${api}"
12382
;;
12483
arm64-v8a)
@@ -140,9 +99,9 @@ function android_set_toolchain_bin() {
14099

141100
function android_set_toolchain() {
142101
local name=$1
143-
local arch=$(android_get_arch $2)
102+
local arch=$2
144103
local api=$3
145-
local build_host=$(android_get_build_host_internal "$arch")
104+
local build_host=$(android_get_build_host "$arch")
146105
local clang_target_host=$(android_get_clang_target_host "$arch" "$api")
147106

148107
export AR=${build_host}-ar
@@ -162,16 +121,16 @@ function android_get_common_linked_libraries() {
162121
local api=$1
163122
local arch=$2
164123
local toolchain=$(android_get_toolchain)
165-
local build_host=$(android_get_build_host_internal "$arch")
124+
local build_host=$(android_get_build_host "$arch")
166125
echo "-L${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${toolchain}/${build_host}/lib -L${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${toolchain}/sysroot/usr/lib/${build_host}/${api} -L${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${toolchain}/lib"
167126
}
168127

169128
function android_set_cpu_feature() {
170129
local name=$1
171-
local arch=$(android_get_arch $2)
130+
local arch=$2
172131
local api=$3
173132
case ${arch} in
174-
arm-v7a | arm-v7a-neon)
133+
armeabi-v7a)
175134
export CFLAGS="-march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=softfp -Wno-unused-function -fno-integrated-as -fstrict-aliasing -fPIC -DANDROID -D__ANDROID_API__=${api} -Os -ffunction-sections -fdata-sections $(android_get_common_includes)"
176135
export CXXFLAGS="-std=c++14 -Os -ffunction-sections -fdata-sections"
177136
export LDFLAGS="-march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=softfp -Wl,--fix-cortex-a8 -Wl,--gc-sections -Os -ffunction-sections -fdata-sections $(android_get_common_linked_libraries ${api} ${arch})"
@@ -199,9 +158,9 @@ function android_set_cpu_feature() {
199158
}
200159

201160
function android_printf_variable() {
202-
log_var_print "ANDROID_ARCHS = ${ANDROID_ARCHS[@]}"
203-
log_var_print "ANDROID_TRIPLES = ${ANDROID_TRIPLES[@]}"
204-
log_var_print "ANDROID_API = $ANDROID_API"
161+
log_var_print "ANDROID_ARCHS = ${ANDROID_ARCHS[@]}"
162+
log_var_print "ANDROID_TRIPLES = ${ANDROID_TRIPLES[@]}"
163+
log_var_print "ANDROID_API = $ANDROID_API"
205164
}
206165

207166
function android_printf_arch_variable() {
@@ -223,51 +182,55 @@ function android_help() {
223182
}
224183

225184
function android_get_shell_script_path() {
226-
echo "${COMMON_SCRIPT_DIR}/$(util_toupper $COMMON_PLATFORM_TYPE)-${COMMON_LIBRARY_NAME}.sh"
185+
echo "${COMMON_SCRIPT_DIR}/$(util_tolower $COMMON_PLATFORM_TYPE)-${COMMON_LIBRARY_NAME}.sh"
227186
}
228187

229188
echo "###############################################################################" >/dev/null
230189
echo "#### Flow Function Partition #####" >/dev/null
231190
echo "###############################################################################" >/dev/null
232191

233192
function android_pre_tool_check() {
193+
log_info_print "android_pre_tool_check $1 start..."
234194
local library_id=$1
235195
local pre_tool_check="android_${COMMON_LIBRARY_NAME}_pre_tool_check"
236-
common_pre_tool_check $library_id
237-
eval ${pre_tool_check} $library_id
196+
common_pre_tool_check "$library_id"
197+
eval ${pre_tool_check} "$library_id"
198+
log_info_print "android_pre_tool_check $1 end..."
238199
}
239200

240201
function android_pre_download_zip() {
202+
log_info_print "android_pre_download_zip $1 start..."
241203
local library_id=$1
242204
local pre_download_zip="android_${COMMON_LIBRARY_NAME}_pre_download_zip"
243-
common_pre_download_zip $library_id
244-
eval ${pre_download_zip} $library_id
205+
common_pre_download_zip "$library_id"
206+
eval ${pre_download_zip} "$library_id"
207+
log_info_print "android_pre_download_zip $1 end..."
245208
}
246209

247210
function android_build_unzip() {
211+
log_info_print "android_build_unzip $1 start..."
248212
local library_id=$1
249213
local build_unzip="android_${COMMON_LIBRARY_NAME}_build_unzip"
250-
common_build_unzip $library_id
251-
eval ${build_unzip} $library_id
252-
}
253-
254-
function android_build_config() {
255-
local library_id=$1
256-
local build_config="android_${COMMON_LIBRARY_NAME}_build_config"
257-
common_build_config $library_id
258-
eval ${build_config} $library_id
214+
common_build_unzip "$library_id"
215+
eval ${build_unzip} "$library_id"
216+
log_info_print "android_build_unzip $1 end..."
259217
}
260218

261-
function android_buid_make() {
219+
function android_build_config_make() {
220+
log_info_print "common_build_config_make $1 start..."
262221
local library_id=$1
263-
local buid_make="android_${COMMON_LIBRARY_NAME}_buid_make"
264-
common_buid_make $library_id
265-
eval ${buid_make} $library_id
222+
local library_arch=$2
223+
local build_config_make="android_${COMMON_LIBRARY_NAME}_build_config_make"
224+
common_build_config_make "$library_id" "$library_arch"
225+
eval ${build_config_make} "$library_id" "$library_arch"
226+
log_info_print "common_build_config_make $1 end..."
266227
}
267228

268229
function android_archive() {
230+
log_info_print "android_archive $1 start..."
269231
local library_id=$1
270232
local archive="android_${COMMON_LIBRARY_NAME}_archive"
271-
common_archive $library_id
272-
eval ${archive} $library_id
233+
common_archive "$library_id"
234+
eval ${archive} "$library_id"
235+
log_info_print "android_archive $1 end..."
273236
}

0 commit comments

Comments
 (0)