diff --git a/build.sh b/build.sh index 06ef7d3..9042d52 100755 --- a/build.sh +++ b/build.sh @@ -4,6 +4,24 @@ cpu=$(arch) #cpu架构 sys=$(cat /etc/issue) sys=${sys%% *} #操作系统 +docpath="" #哪种打包方式 uos 还是kylin + +#web so 只走kylin的打包方式 + +if [ $2 ]; +then + docpath=$2 #可以手动设置操作系统来进行打包 + echo "$docpath" +else + if [ "$sys" == "UnionTech" ]; + then + docpath=uos + else + docpath=kylin + fi +fi + + script_dir=$(cd $(dirname $0);pwd) cd $script_dir echo $script_dir @@ -22,6 +40,7 @@ minverstr="s/ver_2/" verstr3="s/ver_3/" ver3=10 + cp hgsane/CMakeLists.txt hgsane/CMakeLists.txtbkp cp hgdriver/hgdev/CMakeLists.txt hgdriver/hgdev/CMakeLists.txtbkp cp hgdriver/wrapper/CMakeLists.txt hgdriver/wrapper/CMakeLists.txtbkp @@ -31,26 +50,26 @@ minverstr=${minverstr}${minver}"/g" echo "minor version replacing pattern: "${minverstr} echo $mainverstr -if [ "$oem" == "hw" ] || [ "$oem" == "hwweb" ]; then +if [ "$oem" == "hw" ]; then ver3=16 sed -i "s/DOEM_HUAGAO/DOEM_HANWANG/g" hgdriver/hgdev/CMakeLists.txt sed -i "s/DOEM_HUAGAO/DOEM_HANWANG/g" hgdriver/wrapper/CMakeLists.txt sed -i "s/1%m%d1/1%m%d6/g" hgdriver/wrapper/CMakeLists.txt -elif [ "$oem" == "lsc" ] || [ "$oem" == "lscweb" ]; then +elif [ "$oem" == "lsc" ]; then ver3=14 sed -i "s/DOEM_HUAGAO/DOEM_LISICHENG/g" hgdriver/hgdev/CMakeLists.txt sed -i "s/DOEM_HUAGAO/DOEM_LISICHENG/g" hgdriver/wrapper/CMakeLists.txt sed -i "s/1%m%d1/1%m%d7/g" hgdriver/wrapper/CMakeLists.txt -elif [ "$oem" == "cts" ] || [ "$oem" == "ctsweb" ]; then +elif [ "$oem" == "cts" ]; then ver3=18 sed -i "s/DOEM_HUAGAO/DOEM_CANGTIAN/g" hgdriver/hgdev/CMakeLists.txt sed -i "s/DOEM_HUAGAO/DOEM_CANGTIAN/g" hgdriver/wrapper/CMakeLists.txt sed -i "s/1%m%d1/1%m%d8/g" hgdriver/wrapper/CMakeLists.txt -elif [ "$oem" == "zj" ] || [ "$oem" == "zjweb" ]; then +elif [ "$oem" == "zj" ]; then ver3=20 sed -i "s/DOEM_HUAGAO/DOEM_ZHONGJING/g" hgdriver/hgdev/CMakeLists.txt @@ -58,9 +77,18 @@ elif [ "$oem" == "zj" ] || [ "$oem" == "zjweb" ]; then sed -i "s/1%m%d1/1%m%d9/g" hgdriver/wrapper/CMakeLists.txt fi +project_sanename="project(sane-$oem"sane")" +project_drivername="project($oem"driver")" +echo $project_sanename $project_drivername +#project(sane-hgsane) +pwd if [ "$oem" != "" ]; then + + #sed -i "1s/.*/$project_sanename/g" hgsane/CMakeLists.txt + #sed -i "1s/.*/$project_drivername/g" hgdriver/wrapper/CMakeLists.txt sed -i "s/hgsane/$oem"sane"/g" hgsane/CMakeLists.txt sed -i "s/hgdriver/$oem"driver"/g" hgdriver/wrapper/CMakeLists.txt hgsane/CMakeLists.txt + echo $oem $oem fi @@ -90,27 +118,39 @@ fi verstr3=${verstr3}"${ver3}/g" echo "3rd version replacing pattern: "${verstr3} -sed -i ${mainverstr} hgdriver/wrapper/CMakeLists.txt -sed -i ${minverstr} hgdriver/wrapper/CMakeLists.txt -sed -i ${verstr3} hgdriver/wrapper/CMakeLists.txt +sed -i ${mainverstr} hgdriver/wrapper/CMakeLists.txt +sed -i ${minverstr} hgdriver/wrapper/CMakeLists.txt +sed -i ${verstr3} hgdriver/wrapper/CMakeLists.txt -if [ "$sys" == "UnionTech" ];then +#设置库的链接路径是 kylin 还是uos +if [ "$sys" == "UnionTech" ]; +then sed -i "s/kylin/uos/g" hgdriver/wrapper/CMakeLists.txt - sed -i "s/KYLIN/UOS/g" hgdriver/hgdev/CMakeLists.txt - sed -i "s/KYLIN/UOS/g" hgdriver/wrapper/CMakeLists.txt -elif [ "$sys" == "Kylin" ];then - sed -i "s/uos/kylin/g" hgdriver/wrapper/CMakeLists.txt - sed -i "s/uos/kylin/g" hgsane/CMakeLists.txt - sed -i "s/UOS/KYLIN/g" hgdriver/hgdev/CMakeLists.txt - sed -i "s/UOS/KYLIN/g" hgdriver/wrapper/CMakeLists.txt + sed -i "s/kylin/uos/g" hgsane/CMakeLists.txt + +elif [ "$sys" == "Kylin" ]; +then + sed -i "s/uos/kylin/g" hgdriver/wrapper/CMakeLists.txt + sed -i "s/uos/kylin/g" hgsane/CMakeLists.txt + else - sed -i "s/uos/kylin/g" hgdriver/wrapper/CMakeLists.txt - sed -i "s/uos/kylin/g" hgsane/CMakeLists.txt - sed -i "s/UOS/KYLIN/g" hgdriver/hgdev/CMakeLists.txt - sed -i "s/UOS/KYLIN/g" hgdriver/wrapper/CMakeLists.txt + sed -i "s/uos/kylin/g" hgdriver/wrapper/CMakeLists.txt + sed -i "s/uos/kylin/g" hgsane/CMakeLists.txt + echo "其他操作系统" fi +#设置代码宏定义 +if [ "$docpath" == "uos" ]; +then + sed -i "s/-DKYLIN/-DUOS/g" hgdriver/wrapper/CMakeLists.txt + sed -i "s/-DKYLIN/-DUOS/g" hgdriver/hgdev/CMakeLists.txt +else + sed -i "s/-DUOS/-DKYLIN/g" hgdriver/wrapper/CMakeLists.txt + sed -i "s/-DUOS/-DKYLIN/g" hgdriver/hgdev/CMakeLists.txt +fi +echo $docpath + cd ../ if [ -f ./build/CMakeCache.txt ]; then echo "" diff --git a/hgdriver/wrapper/CMakeLists.txt b/hgdriver/wrapper/CMakeLists.txt index bda31dd..c832ed1 100644 --- a/hgdriver/wrapper/CMakeLists.txt +++ b/hgdriver/wrapper/CMakeLists.txt @@ -7,7 +7,7 @@ add_definitions(-DVERSION_MINOR=ver_2) add_definitions(-DVERSION_YEAR=ver_3) add_definitions(-DVERSION_BUILD=${MONTHDAY}) add_definitions(-DOEM_HUAGAO) -add_definitions(-Duos) +add_definitions(-DUOS) add_compile_options(-std=c++11) #set(CMAKE_CXX_FLAGS "-std=c++0x ${CMAKE_CXX_FLAGS} -g -ftest-coverage -fprofile-arcs") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC -O2")