You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
#!/bin/bash
# 接收参数 TARGET="$2" WORK="$3" STAGE=$9
# 记录已经完成的编译阶段,如果上一次编译发生错误,则提前终此脚本运行 function complete_stage() {
local next=$1 cd $SHELLROOT
if [ $2 -eq 0 ] then echo -n $next > $TARGET/stage else exit 1 fi sleep 2
}
#######################################################################################################################################################################################
# 开始编译
cd $SHELLROOT # 建入到 本编译脚本项目 的根目录 mkdir -p tempDIR # 新建 本编译脚本项目 在运行所需要的临时工作目录 echo -ne "\033]0;Preparing\007" # 检查当前编译工作已经进入哪个阶段 if [ ! $STAGE ] ; then S=`cat $TARGET/stage 2>/dev/null` if [[ ! $S ]] ; then STAGE=0 else STAGE=$S fi fi echo " * 使用 GCC 编译器"
# # STAGE 0.1 -- zlib # NEXT=0.2 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-zlib.sh "$TARGET" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 0.2 -- bzip2 # NEXT=0.3 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-bzip2.sh "$TARGET" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 0.3 -- lzma # NEXT=0.4 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-lzma.sh "$TARGET" "$CONFIGOPTS" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 1.1 -- Boost # NEXT=1.2 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-boost.sh "$TARGET" "$CONFIGOPTS" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 1.2 -- Jpeg # NEXT=1.3 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-Jpeg.sh "$TARGET" "$CONFIGOPTS" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 1.3 -- Tiff # NEXT=1.4 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-Tiff.sh "$TARGET" "$CONFIGOPTS" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 1.4 -- PNG # NEXT=1.5 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-PNG.sh "$TARGET" "$CONFIGOPTS" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 1.5 -- FreeType # NEXT=1.6 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-FreeType.sh "$TARGET" "$CONFIGOPTS" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 1.6 -- OpenEXR # NEXT=2.1 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-OpenEXR.sh "$TARGET" "$CONFIGOPTS" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# STAGE 2.1 -- OpenImageIO NEXT=2.2 if [[ $STAGE && $STAGE < $NEXT ]] ; then echo $BOUNDARYSTART ${SHELLROOT}/compileing/compile-OpenImageIO.sh "$TARGET" "$CONFIGOPTS" complete_stage $NEXT $? echo $BOUNDARYEND fi
# # STAGE 3 -- Qt # NEXT=4.1 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-qt.sh "$TARGET" "$CONFIGOPTS" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 4.1 -- Embree # NEXT=4.2 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-Embree.sh "$TARGET" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 4.2 -- Oidn # NEXT=4.3 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-Oidn.sh "$TARGET" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 4.3 -- C-blosc # NEXT=4.4 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-CBlosc.sh "$TARGET" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 4.4 -- TBB # NEXT=4.5 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-TBB.sh "$TARGET" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 4.5 -- NVRTC # NEXT=5 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-NVRTC.sh "$TARGET" # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # STAGE 5 -- LuxCore # NEXT=6 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-LuxCore.sh "$TARGET" # complete_stage $NEXT $? # echo -n "export PATH=${SHELLROOT}/LuxCore/bin:\$PATH" | sudo tee -a /etc/profile # echo -e "\n\n" # echo $BOUNDARYEND # fi
# # STAGE 6 -- LuxMark # NEXT=7 # if [[ $STAGE && $STAGE < $NEXT ]] ; then # echo $BOUNDARYSTART # ${SHELLROOT}/compileing/compile-LuxMark.sh # complete_stage $NEXT $? # echo $BOUNDARYEND # fi
# # 编译已经完成,执行 install脚本,完成最后的安装部署 # echo $BOUNDARYSTART # echo -e "\n 正在完成最后的安装部署\n" # if ! ${SHELLROOT}/utils/install "$TARGET" "LuxCore" "${SHELLROOT}/distfiles" ; then # echo " * 安装失败" # else # echo -e "\n * 安装成功 $TARGET/$LUX_TAG" # echo -e " * 恭喜你,LuxCore已经编译安装成功\n" # fi # echo $BOUNDARYEND
sleep 2 exit 0
|