93 lines
3.2 KiB
Bash
93 lines
3.2 KiB
Bash
#!/bin/bash
|
|
# Perform PL/Java lib installation.
|
|
# Copyright (c) Huawei Technologies Co., Ltd. 2010-2018. All rights reserved.
|
|
# description: the script that make install pljava libs
|
|
# date: 2019-5-16
|
|
# modified:
|
|
# version: 1.0
|
|
# history:
|
|
WORK_PATH="$(dirname ${0})"
|
|
source "${WORK_PATH}/build_global.sh"
|
|
#######################################################################
|
|
# make patch md5sum for a new patch, make sure to
|
|
# run "diff -ruN old new > huawei_pljava.patch" to create one first
|
|
#######################################################################
|
|
function make_patch_md5()
|
|
{
|
|
md5sum huawei_pljava.patch | cut -d ' ' -f1 >> patch_ids.dat
|
|
}
|
|
#######################################################################
|
|
# Return whether the pljava folder matches the current patch
|
|
#######################################################################
|
|
function is_match_patch(){
|
|
if [ ! -d "${SOURCE_CODE_PATH}" ] || [ ! -f "tmp_id.dat" ]; then
|
|
return 0
|
|
fi
|
|
last_src_id="$(tail -n 1 patch_ids.dat | cut -d ' ' -f1)"
|
|
last_make_id="$(tail -n 1 tmp_id.dat | cut -d ' ' -f1)"
|
|
if [ "$last_make_id" = "$last_src_id" ]; then
|
|
return 1
|
|
else
|
|
return 0
|
|
fi
|
|
}
|
|
#######################################################################
|
|
# Decompression and do patch
|
|
#######################################################################
|
|
function do_patch(){
|
|
clean_component
|
|
patch -p1 < ../pljava.patch 2>&1
|
|
if [ $? -ne 0 ]; then
|
|
die "[Error] do plajva patch failed."
|
|
fi
|
|
}
|
|
#######################################################################
|
|
# build .so and dist
|
|
#######################################################################
|
|
function build_dist_so()
|
|
{
|
|
cd ${LOCAL_DIR}
|
|
# patch
|
|
do_patch
|
|
|
|
# build
|
|
# log "[Notice] pljava start configure"
|
|
cd ${LOCAL_DIR}/${SOURCE_CODE_PATH}
|
|
make pljava_so
|
|
if [ $? -ne 0 ]; then
|
|
die "pljava make failed."
|
|
fi
|
|
# log "[Notice] pljava End make"
|
|
|
|
# shark
|
|
mkdir -p ${LOCAL_DIR}/install_comm_dist/lib
|
|
cp ${LOCAL_DIR}/pljava-1_5_2/lib/* ${LOCAL_DIR}/install_comm_dist/lib -r
|
|
if [ $? -ne 0 ]; then
|
|
die "[Error] \"cp -r ${LOCAL_DIR}/lib/* ${LOCAL_DIR}/install_comm_dist\" failed."
|
|
fi
|
|
mkdir -p ${LOCAL_DIR}/install_llt_dist/lib
|
|
cp ${LOCAL_DIR}/pljava-1_5_2/lib/* ${LOCAL_DIR}/install_llt_dist/lib -r
|
|
if [ $? -ne 0 ]; then
|
|
die "[Error] \"cp -r ${LOCAL_DIR}/lib/* ${LOCAL_DIR}/install_llt_dist\" failed."
|
|
fi
|
|
|
|
# dist
|
|
if [ ! -d "${INSTALL_COMPONENT_PATH_NAME}/comm" ];then
|
|
die "[Error] Not found \"${INSTALL_COMPONENT_PATH_NAME}/comm/java/pljava.jar\". Please git pull. failed."
|
|
else
|
|
cp -r ${LOCAL_DIR}/install_comm_dist/* ${INSTALL_COMPONENT_PATH_NAME}/comm
|
|
fi
|
|
if [ ! -d "${INSTALL_COMPONENT_PATH_NAME}/llt" ];then
|
|
die "[Error] Not found \"${INSTALL_COMPONENT_PATH_NAME}/llt/java/pljava.jar\". Please git pull. failed."
|
|
else
|
|
cp -r ${LOCAL_DIR}/install_llt_dist/* ${INSTALL_COMPONENT_PATH_NAME}/llt
|
|
fi
|
|
if [ $? -ne 0 ]; then
|
|
die "[Error] \"cp pljava.so\" failed."
|
|
fi
|
|
cd ${LOCAL_DIR}
|
|
nowtime="$(date --date='0 days ago' "+%Y-%m-%d %H:%M:%S")"
|
|
make_id="$(tail -n 1 patch_ids.dat)"
|
|
echo "$make_id $nowtime" >> tmp_id.dat
|
|
}
|