From d11af98fa65817962f3073d34d8a583d9b5ba211 Mon Sep 17 00:00:00 2001 From: guowenxue <guowenxue@gmail.com> Date: Tue, 12 Jan 2021 16:06:45 +0800 Subject: [PATCH] Add lightd 3rdlib build shell scripit --- lightd/3rdlib/build.sh | 126 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 126 insertions(+), 0 deletions(-) diff --git a/lightd/3rdlib/build.sh b/lightd/3rdlib/build.sh new file mode 100755 index 0000000..2c41b3b --- /dev/null +++ b/lightd/3rdlib/build.sh @@ -0,0 +1,126 @@ +#!/bin/bash + +LYFTP_SRC=ftp://master.iot-yun.club/src/ + +function msg_banner() +{ + echo "" + echo "+-----------------------------------------------------------------------" + echo "| $1 " + echo "+-----------------------------------------------------------------------" + echo "" +} + +function check_result() +{ + if [ $? != 0 ] ; then + echo "" + echo "+-----------------------------------------------------------------------" + echo "| $1 " + echo "+-----------------------------------------------------------------------" + echo "" + exit ; + fi +} + + +function compile_libgpiod() +{ + PREFIX_PATH=/usr + SRC_NAME=libgpiod-1.6.2 + PACK_SUFIX=tar.gz + IMG_NAME=libgpiod.so + + if [ -f ${PREFIX_PATH}/lib/${IMG_NAME} ] ; then + msg_banner "$SRC_NAME already compile and installed" + return 0; + fi + + msg_banner "Start compile $SRC_NAME " + + if [ ! -f ${SRC_NAME}.${PACK_SUFIX} ] ; then + #wget https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/snapshot/$SRC_NAME.$PACK_SUFIX + wget $LYFTP_SRC/$SRC_NAME.$PACK_SUFIX + check_result "ERROR: download ${SRC_NAME} failure" + fi + + tar -xzf ${SRC_NAME}.${PACK_SUFIX} + + cd ${SRC_NAME} + + ./autogen.sh + ./configure --enable-tools=yes --prefix=$PREFIX_PATH + make && sudo make install + + cd - +} + +function compile_cJson() +{ + PREFIX_PATH=/usr + SRC_NAME=cJSON-1.7.14 + PACK_SUFIX=tar.gz + IMG_NAME=libcjson.so + + if [ -f ${PREFIX_PATH}/lib/${IMG_NAME} ] ; then + msg_banner "$SRC_NAME already compile and installed" + return 0; + fi + + msg_banner "Start compile $SRC_NAME " + + if [ ! -f ${SRC_NAME}.${PACK_SUFIX} ] ; then + # official site: https://github.com/DaveGamble/cJSON + wget $LYFTP_SRC/$SRC_NAME.$PACK_SUFIX + check_result "ERROR: download ${SRC_NAME} failure" + fi + + + tar -xzf ${SRC_NAME}.${PACK_SUFIX} + + cd ${SRC_NAME} + make && sudo make PREFIX=$PREFIX_PATH install + cd - +} + + +function compile_mosquitto() +{ + PREFIX_PATH=/usr + SRC_NAME=mosquitto-2.0.5 + PACK_SUFIX=tar.gz + IMG_NAME=libmosquitto.so + + if [ -f ${PREFIX_PATH}/lib/${IMG_NAME} ] ; then + msg_banner "$SRC_NAME already compile and installed" + return 0; + fi + + # mosquitto depends on openssl + msg_banner "Using apt install openssl library now..." + sudo apt install -y libssl-dev + + + msg_banner "Start compile $SRC_NAME " + if [ ! -f ${SRC_NAME}.${PACK_SUFIX} ] ; then + wget $LYFTP_SRC/$SRC_NAME.$PACK_SUFIX + #wget https://mosquitto.org/files/source/$SRC_NAME.$PACK_SUFIX + check_result "ERROR: download ${SRC_NAME} failure" + fi + + + tar -xzf ${SRC_NAME}.${PACK_SUFIX} + + cd ${SRC_NAME} + + make && sudo make DESTDIR=${PREFIX_PATH} prefix=/ install + + cd - +} + +compile_libgpiod + +compile_cJson + +compile_mosquitto + -- Gitblit v1.9.1