[CICN-29] Build viper against hicn on fdio 68/25268/22
authormanang <[email protected]>
Wed, 19 Feb 2020 09:50:11 +0000 (10:50 +0100)
committermanang <[email protected]>
Thu, 20 Feb 2020 09:44:06 +0000 (10:44 +0100)
Signed-off-by: manang <[email protected]>
Change-Id: Ibeca86a031eb67fd753a5f142e6f6fb601be66a4

CMakeLists.txt
libdash/scripts/build-package.sh
scripts/build-package.sh
scripts/postinst
viper.pro

index 45fbe61..5f23dc6 100644 (file)
@@ -21,24 +21,26 @@ file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/qmake_build)
 option(ICNET "Link against Libicnet." ON)
 option(HICNET "Link against Libhicnet." OFF)
 if (HICNET)
+    set (VIPER_NAME hicn-viper)
     set (TRANSPORT_LIBRARY HICNET)
     set(ICNET OFF)
 
 else()
+    set (VIPER_NAME hicn-viper)
     set (TRANSPORT_LIBRARY ICNET)
 endif()
-add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/qmake_build/viper_
-                  COMMAND /opt/qt57/bin/qmake ${CMAKE_SOURCE_DIR}/viper.pro "TRANSPORT_LIBRARY = ${TRANSPORT_LIBRARY}"
+add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/qmake_build/${VIPER_NAME}_
+                  COMMAND qmake ${CMAKE_SOURCE_DIR}/viper.pro "TRANSPORT_LIBRARY = ${TRANSPORT_LIBRARY}"
                   COMMAND make
-                  COMMAND mv viper viper_
+                  COMMAND mv ${VIPER_NAME} ${VIPER_NAME}_
                   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/qmake_build
                   VERBATIM)
 
 add_custom_target(viper ALL
-                  COMMAND cp ${CMAKE_CURRENT_BINARY_DIR}/qmake_build/viper_ ./viper
-                  DEPENDS ${CMAKE_CURRENT_BINARY_DIR}//qmake_build/viper_)
+                  COMMAND cp ${CMAKE_CURRENT_BINARY_DIR}/qmake_build/${VIPER_NAME}_ ./${VIPER_NAME}
+                  DEPENDS ${CMAKE_CURRENT_BINARY_DIR}//qmake_build/${VIPER_NAME}_)
 
-install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/viper DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
+install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${VIPER_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
 
 # Generate DEB / RPM packages
 
@@ -51,7 +53,11 @@ set(DISTRIBUTION "xenial" CACHE STRING "Distribution")
 set(ARCHITECTURE "amd64" CACHE STRING "Architecture")
 set(PACKAGE_MAINTAINER "Mauro Sardara ([email protected])" CACHE STRING "Maintainer")
 set(BUILD_NUMBER "1" CACHE STRING "Build Number")
+if (HICNET)
+string(TOLOWER hicn-${CMAKE_PROJECT_NAME} PACKAGE_NAME)
+else ()
 string(TOLOWER ${CMAKE_PROJECT_NAME} PACKAGE_NAME)
+endif ()
 set(CPACK_PACKAGING_INSTALL_PREFIX "/usr")
 set(CPACK_PACKAGE_VENDOR ${VENDOR})
 set(CPACK_PACKAGE_CONTACT ${CONTACT})
@@ -66,7 +72,7 @@ if(DEB_PACKAGE)
     set(GENERATOR "DEB")
     set(CPACK_PACKAGE_FILE_NAME "${PACKAGE_NAME}_${PACKAGE_VERSION}_${ARCHITECTURE}")
     set(CPACK_${TYPE}_PACKAGE_SHLIBDEPS ON)
-    set(CPACK_${TYPE}_PACKAGE_DEPENDS "qt57base, qt57svg, qt57charts-no-lgpl, qt57multimedia, libqtav1, libicnet, libavcodec-ffmpeg56, libavformat-ffmpeg56, libswscale-ffmpeg3, libavresample-ffmpeg2, libdash, libqml-module-qtav, qt57quickcontrols, qt57quickcontrols2")
+    set(CPACK_${TYPE}_PACKAGE_DEPENDS "libdash, libhicntransport, qml-module-qtav, qml-module-qtav, qml-module-qtquick-window2, qml-module-qtquick2, qml-module-qtquick-dialogs, qml-module-qtcharts, qml-module-qtquick-layouts, qml-module-qtquick-controls2, qml-module-qtquick-controls, qml-module-qt-labs-settings, qml-module-qt-labs-folderlistmodel, qml-module-qtquick-extras, qml-module-qtquick-extras")
     set(CPACK_${TYPE}_PACKAGE_CONTROL_EXTRA "${CMAKE_SOURCE_DIR}/scripts/postinst;")
 elseif(RPM_PACKAGE)
     set(TYPE "RPM")
index 47f6a5f..f421df8 100644 (file)
@@ -9,49 +9,12 @@ apt_get=${APT_PATH:-"/usr/local/bin/apt-get"}
 
 PACKAGE_NAME="VIPER"
 VIPER_DEPS_UBUNTU="zlib1g-dev git-core build-essential libxml2-dev libcurl4-openssl-dev \
-                   qt57base qt57svg qt57charts-no-lgpl qt57multimedia libqtav-dev libicnet-dev \
-                   libavcodec-dev libavformat-dev libswscale-dev  libavresample-dev libqml-module-qtav \
-                   qt57quickcontrols qt57quickcontrols2 libboost-system-dev"
+libqtav-dev qt5-default libqt5svg5-dev qtdeclarative5-dev libqt5charts5-dev \
+qtmultimedia5-dev libqt5multimediawidgets5 libqt5multimedia5-plugins libqt5multimedia5 \
+libhicntransport-dev"
 
 BUILD_TOOLS="build-essential doxygen"
 
-# Parameters:
-# $1 = Distribution [Trusty / CentOS]
-#
-update_cmake_repo() {
-
-    cat /etc/resolv.conf
-    echo "nameserver 8.8.8.8" | sudo tee -a /etc/resolv.conf
-    cat /etc/resolv.conf
-
-    CMAKE_INSTALL_SCRIPT_URL="https://cmake.org/files/v3.8/cmake-3.8.0-Linux-x86_64.sh"
-    CMAKE_INSTALL_SCRIPT="/tmp/install_cmake.sh"
-    curl ${CMAKE_INSTALL_SCRIPT_URL} > ${CMAKE_INSTALL_SCRIPT}
-
-    sudo mkdir -p /opt/cmake
-    sudo bash ${CMAKE_INSTALL_SCRIPT} --skip-license --prefix=/opt/cmake
-    export PATH=/opt/cmake/bin:$PATH
-}
-
-# Parameters:
-# $1 = Distribution codename
-#
-update_qt_repo() {
-    DISTRIBUTION_CODENAME=$1
-
-    if [ "$DISTRIBUTION_CODENAME" != "trusty" ] && [ "$DISTRIBUTION_CODENAME" != "xenial" ]; then
-        echo "No valid distribution specified when calling 'update_qt_repo'. Exiting.."
-        exit -1
-    fi
-
-    sudo ${apt_get} install -y --allow-unauthenticated software-properties-common
-    sudo add-apt-repository --yes ppa:beineri/opt-qt571-$DISTRIBUTION_CODENAME
-
-    wget -q -O - http://archive.getdeb.net/getdeb-archive.key | sudo apt-key add -
-    sudo sh -c "echo 'deb http://archive.getdeb.net/ubuntu xenial-getdeb apps' >> /etc/apt/sources.list.d/getdeb.list"
-
-    sudo ${apt_get} update
-}
 
 # Parameters:
 # $1 = Distribution id
@@ -61,47 +24,13 @@ update_fdio_repo() {
     DISTRIB_ID=$1
     DISTRIB_CODENAME=$2
 
-    NEXUS_PROXY=${NEXUSPROXY:-"http://nexus.fd.io"}
     REPO_CICN_URL=""
     REPO_VPP_URL=""
 
     if [ "$DISTRIB_ID" == "Ubuntu" ]; then
-
-        if [ "$DISTRIB_CODENAME" == "xenial" ]; then
-            REPO_VPP_URL="${NEXUS_PROXY}/content/repositories/fd.io.stable.1701.ubuntu.xenial.main/"
-            REPO=${REPO_NAME:-"master.ubuntu.xenial.main"}
-            REPO_CICN_URL="${NEXUS_PROXY}/content/repositories/fd.io.${REPO}"
-        elif [ "$DISTRIB_CODENAME" == "trusty" ]; then
-            REPO_VPP_URL="${NEXUS_PROXY}/content/repositories/fd.io.stable.1701.ubuntu.trusty.main/"
-            REPO=${REPO_NAME:-"master.ubuntu.trusty.main"}
-            REPO_CICN_URL="${NEXUS_PROXY}/content/repositories/fd.io.${REPO}"
-        else
-            echo "Distribution $DISTRIB_CODENAME is not supported"
-            exit -1
-        fi
-
-        echo "deb ${REPO_VPP_URL} ./" | sudo tee /etc/apt/sources.list.d/99fd.io.list
-        echo "deb ${REPO_CICN_URL} ./" | sudo tee /etc/apt/sources.list.d/99fd.io.master.list
-
+        curl -s https://packagecloud.io/install/repositories/fdio/release/script.deb.sh | sudo bash
     elif [ "$DISTRIB_ID" == "CentOS" ]; then
-        REPO_VPP_URL="${NEXUS_PROXY}/content/repositories/fd.io.centos7/"
-        REPO=${REPO_NAME:-"master.centos7"}
-        REPO_CICN_URL="${NEXUS_PROXY}/content/repositories/fd.io.${REPO}"
-
-                sudo cat << EOF > fdio.repo
-[fdio-vpp-master]
-name=fd.io master branch latest merge
-baseurl=${REPO_VPP_URL}
-enabled=1
-gpgcheck=0
-
-[fdio-cicn-master]
-name=fd.io master branch latest merge
-baseurl=${REPO_CICN_URL}
-enabled=1
-gpgcheck=0
-EOF
-        sudo mv fdio.repo /etc/yum.repos.d/fdio.repo
+        curl -s https://packagecloud.io/install/repositories/fdio/release/script.rpm.sh | sudo bash
     else
         echo "Distribution $DISTRIB_CODENAME is not supported"
         exit -1
@@ -114,7 +43,6 @@ setup() {
     DISTRIB_ID=$1
     DISTRIB_CODENAME=$2
 
-    update_cmake_repo
     update_fdio_repo $DISTRIB_ID $DISTRIB_CODENAME
 
     if [ "$DISTRIB_ID" == "Ubuntu" ]; then
@@ -158,39 +86,23 @@ echo DISTRIB_DESCRIPTION: $DISTRIB_DESCRIPTION
 
 setup $DISTRIB_ID $DISTRIB_CODENAME
 
+
 # Install deps
 
 if [ $DISTRIB_ID == "Ubuntu" ]; then
-    update_qt_repo $DISTRIB_CODENAME
     echo $BUILD_TOOLS $VIPER_DEPS_UBUNTU | xargs sudo ${apt_get} install -y --allow-unauthenticated
 else
     echo "This package is currently supported only for ubuntu. Exiting.."
     exit -1
 fi
 
-# Create links
-
-sudo ln -sf /usr/include/x86_64-linux-gnu/qt5/QtAV                                /opt/qt57/include/QtAV
-sudo ln -sf /usr/include/x86_64-linux-gnu/qt5/QtAVWidgets                         /opt/qt57/include/QtAVWidgets
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/features/av.prf                 /opt/qt57/mkspecs/features/av.prf
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/features/avwidgets.prf          /opt/qt57/mkspecs/features/avwidgets.prf
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/modules/qt_lib_avwidgets.pri    /opt/qt57/mkspecs/modules/qt_lib_avwidgets.pri
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/modules/qt_lib_av.pri           /opt/qt57/mkspecs/modules/qt_lib_av.pri
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAV.prl                                 /opt/qt57/lib/libQtAV.prl
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAVWidgets.prl                          /opt/qt57/lib/libQtAVWidgets.prl
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAVWidgets.so                           /opt/qt57/lib/libQt5AVWidgets.so
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQt5AV.so                                 /opt/qt57/lib/libQt5AV.so
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAV.so                                  /opt/qt57/lib/libQtAV.so
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQt5AVWidgets.so                          /opt/qt57/lib/libQtAVWidgets.so
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/qml/QtAV                                /opt/qt57/qml/QtAV
-
 # Compile libdash
 
 build() {
     mkdir -p build
     cd build
     rm -rf *
-    cmake -DCMAKE_INSTALL_PREFIX=/usr -DRPM_PACKAGE=$RPM -DDEB_PACKAGE=$DEB -DDISTRIBUTION=$DISTRIB_CODENAME -DARCHITECTURE=$ARCHITECTURE ..
+    cmake -DCMAKE_INSTALL_PREFIX=/usr -DRPM_PACKAGE=$RPM -DDEB_PACKAGE=$DEB -DDISTRIBUTION=$DISTRIB_CODENAME -DARCHITECTURE=$ARCHITECTURE .. -DHICNET=ON -DICNET=OFF
     make
 }
 
index 47f6a5f..f421df8 100644 (file)
@@ -9,49 +9,12 @@ apt_get=${APT_PATH:-"/usr/local/bin/apt-get"}
 
 PACKAGE_NAME="VIPER"
 VIPER_DEPS_UBUNTU="zlib1g-dev git-core build-essential libxml2-dev libcurl4-openssl-dev \
-                   qt57base qt57svg qt57charts-no-lgpl qt57multimedia libqtav-dev libicnet-dev \
-                   libavcodec-dev libavformat-dev libswscale-dev  libavresample-dev libqml-module-qtav \
-                   qt57quickcontrols qt57quickcontrols2 libboost-system-dev"
+libqtav-dev qt5-default libqt5svg5-dev qtdeclarative5-dev libqt5charts5-dev \
+qtmultimedia5-dev libqt5multimediawidgets5 libqt5multimedia5-plugins libqt5multimedia5 \
+libhicntransport-dev"
 
 BUILD_TOOLS="build-essential doxygen"
 
-# Parameters:
-# $1 = Distribution [Trusty / CentOS]
-#
-update_cmake_repo() {
-
-    cat /etc/resolv.conf
-    echo "nameserver 8.8.8.8" | sudo tee -a /etc/resolv.conf
-    cat /etc/resolv.conf
-
-    CMAKE_INSTALL_SCRIPT_URL="https://cmake.org/files/v3.8/cmake-3.8.0-Linux-x86_64.sh"
-    CMAKE_INSTALL_SCRIPT="/tmp/install_cmake.sh"
-    curl ${CMAKE_INSTALL_SCRIPT_URL} > ${CMAKE_INSTALL_SCRIPT}
-
-    sudo mkdir -p /opt/cmake
-    sudo bash ${CMAKE_INSTALL_SCRIPT} --skip-license --prefix=/opt/cmake
-    export PATH=/opt/cmake/bin:$PATH
-}
-
-# Parameters:
-# $1 = Distribution codename
-#
-update_qt_repo() {
-    DISTRIBUTION_CODENAME=$1
-
-    if [ "$DISTRIBUTION_CODENAME" != "trusty" ] && [ "$DISTRIBUTION_CODENAME" != "xenial" ]; then
-        echo "No valid distribution specified when calling 'update_qt_repo'. Exiting.."
-        exit -1
-    fi
-
-    sudo ${apt_get} install -y --allow-unauthenticated software-properties-common
-    sudo add-apt-repository --yes ppa:beineri/opt-qt571-$DISTRIBUTION_CODENAME
-
-    wget -q -O - http://archive.getdeb.net/getdeb-archive.key | sudo apt-key add -
-    sudo sh -c "echo 'deb http://archive.getdeb.net/ubuntu xenial-getdeb apps' >> /etc/apt/sources.list.d/getdeb.list"
-
-    sudo ${apt_get} update
-}
 
 # Parameters:
 # $1 = Distribution id
@@ -61,47 +24,13 @@ update_fdio_repo() {
     DISTRIB_ID=$1
     DISTRIB_CODENAME=$2
 
-    NEXUS_PROXY=${NEXUSPROXY:-"http://nexus.fd.io"}
     REPO_CICN_URL=""
     REPO_VPP_URL=""
 
     if [ "$DISTRIB_ID" == "Ubuntu" ]; then
-
-        if [ "$DISTRIB_CODENAME" == "xenial" ]; then
-            REPO_VPP_URL="${NEXUS_PROXY}/content/repositories/fd.io.stable.1701.ubuntu.xenial.main/"
-            REPO=${REPO_NAME:-"master.ubuntu.xenial.main"}
-            REPO_CICN_URL="${NEXUS_PROXY}/content/repositories/fd.io.${REPO}"
-        elif [ "$DISTRIB_CODENAME" == "trusty" ]; then
-            REPO_VPP_URL="${NEXUS_PROXY}/content/repositories/fd.io.stable.1701.ubuntu.trusty.main/"
-            REPO=${REPO_NAME:-"master.ubuntu.trusty.main"}
-            REPO_CICN_URL="${NEXUS_PROXY}/content/repositories/fd.io.${REPO}"
-        else
-            echo "Distribution $DISTRIB_CODENAME is not supported"
-            exit -1
-        fi
-
-        echo "deb ${REPO_VPP_URL} ./" | sudo tee /etc/apt/sources.list.d/99fd.io.list
-        echo "deb ${REPO_CICN_URL} ./" | sudo tee /etc/apt/sources.list.d/99fd.io.master.list
-
+        curl -s https://packagecloud.io/install/repositories/fdio/release/script.deb.sh | sudo bash
     elif [ "$DISTRIB_ID" == "CentOS" ]; then
-        REPO_VPP_URL="${NEXUS_PROXY}/content/repositories/fd.io.centos7/"
-        REPO=${REPO_NAME:-"master.centos7"}
-        REPO_CICN_URL="${NEXUS_PROXY}/content/repositories/fd.io.${REPO}"
-
-                sudo cat << EOF > fdio.repo
-[fdio-vpp-master]
-name=fd.io master branch latest merge
-baseurl=${REPO_VPP_URL}
-enabled=1
-gpgcheck=0
-
-[fdio-cicn-master]
-name=fd.io master branch latest merge
-baseurl=${REPO_CICN_URL}
-enabled=1
-gpgcheck=0
-EOF
-        sudo mv fdio.repo /etc/yum.repos.d/fdio.repo
+        curl -s https://packagecloud.io/install/repositories/fdio/release/script.rpm.sh | sudo bash
     else
         echo "Distribution $DISTRIB_CODENAME is not supported"
         exit -1
@@ -114,7 +43,6 @@ setup() {
     DISTRIB_ID=$1
     DISTRIB_CODENAME=$2
 
-    update_cmake_repo
     update_fdio_repo $DISTRIB_ID $DISTRIB_CODENAME
 
     if [ "$DISTRIB_ID" == "Ubuntu" ]; then
@@ -158,39 +86,23 @@ echo DISTRIB_DESCRIPTION: $DISTRIB_DESCRIPTION
 
 setup $DISTRIB_ID $DISTRIB_CODENAME
 
+
 # Install deps
 
 if [ $DISTRIB_ID == "Ubuntu" ]; then
-    update_qt_repo $DISTRIB_CODENAME
     echo $BUILD_TOOLS $VIPER_DEPS_UBUNTU | xargs sudo ${apt_get} install -y --allow-unauthenticated
 else
     echo "This package is currently supported only for ubuntu. Exiting.."
     exit -1
 fi
 
-# Create links
-
-sudo ln -sf /usr/include/x86_64-linux-gnu/qt5/QtAV                                /opt/qt57/include/QtAV
-sudo ln -sf /usr/include/x86_64-linux-gnu/qt5/QtAVWidgets                         /opt/qt57/include/QtAVWidgets
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/features/av.prf                 /opt/qt57/mkspecs/features/av.prf
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/features/avwidgets.prf          /opt/qt57/mkspecs/features/avwidgets.prf
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/modules/qt_lib_avwidgets.pri    /opt/qt57/mkspecs/modules/qt_lib_avwidgets.pri
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/modules/qt_lib_av.pri           /opt/qt57/mkspecs/modules/qt_lib_av.pri
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAV.prl                                 /opt/qt57/lib/libQtAV.prl
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAVWidgets.prl                          /opt/qt57/lib/libQtAVWidgets.prl
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAVWidgets.so                           /opt/qt57/lib/libQt5AVWidgets.so
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQt5AV.so                                 /opt/qt57/lib/libQt5AV.so
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAV.so                                  /opt/qt57/lib/libQtAV.so
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQt5AVWidgets.so                          /opt/qt57/lib/libQtAVWidgets.so
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/qml/QtAV                                /opt/qt57/qml/QtAV
-
 # Compile libdash
 
 build() {
     mkdir -p build
     cd build
     rm -rf *
-    cmake -DCMAKE_INSTALL_PREFIX=/usr -DRPM_PACKAGE=$RPM -DDEB_PACKAGE=$DEB -DDISTRIBUTION=$DISTRIB_CODENAME -DARCHITECTURE=$ARCHITECTURE ..
+    cmake -DCMAKE_INSTALL_PREFIX=/usr -DRPM_PACKAGE=$RPM -DDEB_PACKAGE=$DEB -DDISTRIBUTION=$DISTRIB_CODENAME -DARCHITECTURE=$ARCHITECTURE .. -DHICNET=ON -DICNET=OFF
     make
 }
 
index 9499e8c..4135778 100644 (file)
@@ -1,42 +1,3 @@
 #!/bin/bash
 
 echo "Executing post install script."
-
-sudo ln -sf /usr/include/x86_64-linux-gnu/qt5/QtAV                                /opt/qt57/include/QtAV
-echo "sudo ln -sf /usr/include/x86_64-linux-gnu/qt5/QtAV                                /opt/qt57/include/QtAV"
-
-sudo ln -sf /usr/include/x86_64-linux-gnu/qt5/QtAVWidgets                         /opt/qt57/include/QtAVWidgets
-echo "sudo ln -sf /usr/include/x86_64-linux-gnu/qt5/QtAVWidgets                         /opt/qt57/include/QtAVWidgets"
-
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/features/av.prf                 /opt/qt57/mkspecs/features/av.prf
-echo "sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/features/av.prf                 /opt/qt57/mkspecs/features/av.prf"
-
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/features/avwidgets.prf          /opt/qt57/mkspecs/features/avwidgets.prf
-echo "sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/features/avwidgets.prf          /opt/qt57/mkspecs/features/avwidgets.prf"
-
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/modules/qt_lib_avwidgets.pri    /opt/qt57/mkspecs/modules/qt_lib_avwidgets.pri
-echo "sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/modules/qt_lib_avwidgets.pri    /opt/qt57/mkspecs/modules/qt_lib_avwidgets.pri"
-
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/modules/qt_lib_av.pri           /opt/qt57/mkspecs/modules/qt_lib_av.pri
-echo "sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/mkspecs/modules/qt_lib_av.pri           /opt/qt57/mkspecs/modules/qt_lib_av.pri"
-
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAV.prl                                 /opt/qt57/lib/libQtAV.prl
-echo "sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAV.prl                                 /opt/qt57/lib/libQtAV.prl"
-
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAVWidgets.prl                          /opt/qt57/lib/libQtAVWidgets.prl
-echo "sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAVWidgets.prl                          /opt/qt57/lib/libQtAVWidgets.prl"
-
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAVWidgets.so                           /opt/qt57/lib/libQt5AVWidgets.so
-echo "sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAVWidgets.so                           /opt/qt57/lib/libQt5AVWidgets.so"
-
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQt5AV.so                                 /opt/qt57/lib/libQt5AV.so
-echo "sudo ln -sf /usr/lib/x86_64-linux-gnu/libQt5AV.so                                 /opt/qt57/lib/libQt5AV.so"
-
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAV.so                                  /opt/qt57/lib/libQtAV.so
-echo "sudo ln -sf /usr/lib/x86_64-linux-gnu/libQtAV.so                                  /opt/qt57/lib/libQtAV.so"
-
-sudo ln -sf /usr/lib/x86_64-linux-gnu/libQt5AVWidgets.so                          /opt/qt57/lib/libQtAVWidgets.so
-echo "sudo ln -sf /usr/lib/x86_64-linux-gnu/libQt5AVWidgets.so                          /opt/qt57/lib/libQtAVWidgets.so"
-
-sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/qml/QtAV                                /opt/qt57/qml/QtAV
-echo "sudo ln -sf /usr/lib/x86_64-linux-gnu/qt5/qml/QtAV                                /opt/qt57/qml/QtAV"
\ No newline at end of file
index f7c056c..5b599b3 100644 (file)
--- a/viper.pro
+++ b/viper.pro
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-TARGET = viper
+equals(TRANSPORT_LIBRARY, "HICNET") {
+  TARGET = hicn-viper
+} else {
+  TARGET = viper
+}
+
 VERSION = $$QTAV_VERSION
 QT += av svg qml quick sql core gui opengl multimedia charts
 android {
@@ -21,7 +26,16 @@ android {
 CONFIG -= release
 CONFIG += debug
 CONFIG += c++14
-QMAKE_CXXFLAGS += -std=c++14 -g -fpermissive -DASIO_STANDALONE=1 -stdlib=libc++ -DQTC_ENABLE_CLANG_LIBTOOLING=ON
+QMAKE_CXXFLAGS += -std=c++14 -g -fpermissive -DASIO_STANDALONE=1
+equals(QMAKE_CXX, clang++) {
+  QMAKE_CXXFLAGS += -stdlib=libc++ -DQTC_ENABLE_CLANG_LIBTOOLING=ON
+}
+
+linux-g++ {
+   GCC_VERSION = $$system("g++ -dumpversion")
+   INCLUDEPATH += /usr/include/c++/$$GCC_VERSION
+}
+
 # Add more folders to ship with the application, here
 folder_01.source = qml/Viper
 folder_01.target = qml