3rdparty/build.sh | ●●●●● patch | view | raw | blame | history | |
3rdparty/local/build.sh | ●●●●● patch | view | raw | blame | history | |
3rdparty/local/libevent/build.sh | ●●●●● patch | view | raw | blame | history | |
3rdparty/local/libgpiod/build.sh | ●●●●● patch | view | raw | blame | history | |
3rdparty/local/mosquitto/build.sh | ●●●●● patch | view | raw | blame | history | |
3rdparty/local/paho.mqtt/build.sh | ●●●●● patch | view | raw | blame | history |
3rdparty/build.sh
New file @@ -0,0 +1,28 @@ #!/bin/bash ARCH=`uname -m` function msg_banner() { echo "" echo "+-----------------------------------------------------------------------" echo "| $1 " echo "+-----------------------------------------------------------------------" echo "" } echo ${ARCH} | grep "arm" > /dev/null if [ $? == 0 ] ; then msg_banner "Start local compile on RaspberryPi..." cd local && bash build.sh exit 0; fi echo ${ARCH} | grep "x86" > /dev/null if [ $? == 0 ] ; then msg_banner "Start cross compile on x86 server..." cd cross && bash build.sh exit 0; fi 3rdparty/local/build.sh
New file @@ -0,0 +1,43 @@ #!/bin/bash ARCH=`uname -m` echo ${ARCH} | grep "arm" > /dev/null if [ $? != 0 ] ; then echo "+---------------------------------------------------+" echo "| ERROR: This folder must compile on RaspberryPi |"; echo "+---------------------------------------------------+" exit 1; fi function do_compile { for dir in `ls` do if [ -f $dir/build*.sh ] ; then cd $dir ./build*.sh cd - fi done } function do_clean { for dir in `ls` do if [ -f $dir/build*.sh ] ; then rm -rf ${dir}/${dir}* fi done } if [[ $# == 1 ]] && [[ $1 == "clean" ]] ; then do_clean exit; fi do_compile 3rdparty/local/libevent/build.sh
@@ -7,11 +7,8 @@ #| 1, Initialize 1.0.0 on 2011.04.12 #+-------------------------------------------------------------------------------------------- PREFIX_PATH=`pwd`/install if [ -z $CROSSTOOL ] ; then CROSSTOOL=/opt/rpi/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf- fi PREFIX_PATH=/usr LYFTP_SRC=ftp://master.iot-yun.club/src/ function msg_banner() { @@ -34,57 +31,36 @@ fi } function export_cross() { # export cross toolchain export CC=${CROSSTOOL}gcc export AS=${CROSSTOOL}as export AR=${CROSSTOOL}ar export LD=${CROSSTOOL}ld export NM=${CROSSTOOL}nm export RANLIB=${CROSSTOOL}ranlib export OBJDUMP=${CROSSTOOL}objdump export STRIP=${CROSSTOOL}strip # export cross configure export CONFIG_CROSS=" --build=i686-pc-linux --host=arm-linux " # Clear LDFLAGS and CFLAGS export LDFLAGS= export CFLAGS= } function compile_libevent() { SRC_NAME=libevent-2.0.21-stable SRC_NAME=libevent-2.1.11-stable PACK_SUFIX=tar.gz IMG_NAME=ipt if [ -f ${PREFIX_PATH}/${IMG_NAME} ] ; then if [ -f ${PREFIX_PATH}/lib/libevent.so ] ; then msg_banner "$SRC_NAME already compile and installed" return 0; fi msg_banner "Start cross compile $SRC_NAME " msg_banner "Start compile $SRC_NAME " if [ ! -f ${SRC_NAME}.${PACK_SUFIX} ] ; then wget https://github.com/downloads/libevent/libevent/${SRC_NAME}.${PACK_SUFIX} #wget https://github.com/downloads/libevent/libevent/${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} ./configure --prefix=${PREFIX_PATH} ${CONFIG_CROSS} --enable-thread-support --enable-openssl --enable-function-sections ./configure --prefix=${PREFIX_PATH} --enable-thread-support --enable-openssl --enable-function-sections check_result "ERROR: configure ${SRC_NAME} failure" make && make install make && sudo make install check_result "ERROR: compile ${SRC_NAME} failure" cd - } export_cross compile_libevent 3rdparty/local/libgpiod/build.sh
@@ -7,7 +7,7 @@ #| 1, Initialize 1.0.0 on 2011.04.12 #+-------------------------------------------------------------------------------------------- PREFIX_PATH=/usr LYFTP_SRC=ftp://master.iot-yun.club/src/ function msg_banner() @@ -53,9 +53,9 @@ tar -xzf ${SRC_NAME}.${PACK_SUFIX} cd ${SRC_NAME} ./autogen.sh && ./configure --enable-tools ./autogen.sh && sudo ./configure --prefix=${PREFIX_PATH} --enable-tools make && make install make && sudo make install cd - } 3rdparty/local/mosquitto/build.sh
@@ -7,12 +7,8 @@ #| 1, Initialize 1.0.0 on 2011.04.12 #+-------------------------------------------------------------------------------------------- PREFIX_PATH=`pwd`/install OPENSSL_PATH=`pwd`/../openssl/install/ if [ -z $CROSSTOOL ] ; then CROSSTOOL=/opt/rpi/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf- fi PREFIX_PATH=/usr/ LYFTP_SRC=ftp://master.iot-yun.club/src/ function msg_banner() { @@ -35,67 +31,36 @@ fi } function export_cross() { # export cross toolchain export CC=${CROSSTOOL}gcc export CXX=${CROSSTOOL}g++ export AS=${CROSSTOOL}as export AR=${CROSSTOOL}ar export LD=${CROSSTOOL}ld export NM=${CROSSTOOL}nm export RANLIB=${CROSSTOOL}ranlib export OBJDUMP=${CROSSTOOL}objdump export STRIP=${CROSSTOOL}strip # export cross configure export CONFIG_CROSS=" --build=i686-pc-linux --host=arm-linux " # Clear LDFLAGS and CFLAGS export LDFLAGS= export CFLAGS= } function compile_mosquitto() { SRC_NAME=mosquitto-1.4.15 SRC_NAME=mosquitto-2.0.10 PACK_SUFIX=tar.gz if [ -d ${PREFIX_PATH}/lib ] ; then if [ -f ${PREFIX_PATH}/lib/libmosquitto.so ] ; then msg_banner "$SRC_NAME already compile and installed" return 0; fi msg_banner "Start cross compile $SRC_NAME " msg_banner "Start compile $SRC_NAME " if [ ! -f ${SRC_NAME}.${PACK_SUFIX} ] ; then wget https://mosquitto.org/files/source//${SRC_NAME}.${PACK_SUFIX} #wget https://mosquitto.org/files/source//${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} export CFLAGS=-I${OPENSSL_PATH}/include export LDFLAGS=-L${OPENSSL_PATH}/lib export DESTDIR=${PREFIX_PATH} make WITH_SRV=no WITH_UUID=no check_result "ERROR: compile ${SRC_NAME} failure" mkdir -p ${PREFIX_PATH}/{lib,bin} cp lib/libmosquitto.so.1 ${PREFIX_PATH}/lib cp src/mosquitto src/mosquitto_passwd client/mosquitto_pub client/mosquitto_sub ${PREFIX_PATH}/bin cd - sudo make prefix=${PREFIX_PATH} install } export_cross if [ ! -d ${OPENSSL_PATH}/include ] ; then cd ../openssl ./build.sh cd - fi sudo apt install -y libssl1.0-dev compile_mosquitto 3rdparty/local/paho.mqtt/build.sh
@@ -7,12 +7,8 @@ #| 1, Initialize 1.0.0 on 2011.04.12 #+-------------------------------------------------------------------------------------------- PREFIX_PATH=`pwd`/install OPENSSL_PATH=`pwd`/../openssl/install/ if [ -z $CROSSTOOL ] ; then CROSSTOOL=/opt/rpi/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf- fi PREFIX_PATH=/usr LYFTP_SRC=ftp://master.iot-yun.club/src/ function msg_banner() { @@ -35,76 +31,35 @@ fi } function export_cross() { # export cross toolchain export CC=${CROSSTOOL}gcc export AS=${CROSSTOOL}as export AR=${CROSSTOOL}ar export LD=${CROSSTOOL}ld export NM=${CROSSTOOL}nm export RANLIB=${CROSSTOOL}ranlib export OBJDUMP=${CROSSTOOL}objdump export STRIP=${CROSSTOOL}strip # export cross configure export CONFIG_CROSS=" --build=i686-pc-linux --host=arm-linux " # Clear LDFLAGS and CFLAGS export LDFLAGS= export CFLAGS= } function compile_paho() { SRC_NAME=paho.mqtt.c-1.2.1 SRC_NAME=paho.mqtt.c-1.3.9 PACK_SUFIX=tar.gz if [ -f ${PREFIX_PATH}/ethtool ] ; then if [ -f ${PREFIX_PATH}/lib/libpaho-mqtt3a.so ] ; then msg_banner "$SRC_NAME already compile and installed" return 0; fi msg_banner "Start cross compile $SRC_NAME " msg_banner "Start compile $SRC_NAME " if [ ! -f ${SRC_NAME}.${PACK_SUFIX} ] ; then wget https://github.com/eclipse/paho.mqtt.c/archive/v1.2.1.tar.gz -O ${SRC_NAME}.${PACK_SUFIX} #wget https://github.com/eclipse/paho.mqtt.c/archive/v1.3.9.tar.gz -O ${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} tar -xzf ${SRC_NAME}.${PACK_SUFIX} check_result "ERROR: decompress ${SRC_NAME} failure" cd ${SRC_NAME} export CFLAGS=-I${OPENSSL_PATH}/include export LDFLAGS=-L${OPENSSL_PATH}/lib mkdir -p ${PREFIX_PATH}/usr/local/{bin,include,lib} make && make install DESTDIR=${PREFIX_PATH} make && sudo make prefix=${PREFIX_PATH} install cp -af build/output/samples/ ${PREFIX_PATH}/ cd ${PREFIX_PATH}/usr/local/lib ln -s libpaho-mqtt3a.so.1.0 libpaho-mqtt3a.so.1 ln -s libpaho-mqtt3as.so.1.0 libpaho-mqtt3as.so.1 ln -s libpaho-mqtt3c.so.1.0 libpaho-mqtt3c.so.1 ln -s libpaho-mqtt3cs.so.1.0 libpaho-mqtt3cs.so.1 tar -cf libpaho-mqtt.tar * mv libpaho-mqtt.tar ${PREFIX_PATH} cd - check_result "ERROR: compile ${SRC_NAME} failure" cd - } export_cross if [ ! -d ${OPENSSL_PATH}/include ] ; then cd ../openssl ./build.sh cd - fi compile_paho