aes67-daemon/build.sh
amsobr 3d3e19ea3b make buildsystem yocto friendly
* daemon:
 - do not assume filesystem hierarchy in CMakeLists.txt
 - do not replace default CXX compilation flags to avoid breaking
   builds with external toolchain (e.g. yocto)
 - allow for tests to be enabled/disabled
 - allow for cpp-httplib dir to be provided by hand; otherwise search
   for it in system locations
 - allow for the location of the ravenna alsa lkm to be provided by
   hand, otherwise look for it in system locations
2020-11-02 10:54:51 +00:00

53 lines
1.5 KiB
Bash
Executable File

#!/bin/bash
#
# Tested on Ubuntu 18.04
#
#we need clang when compiling on ARMv7
export CC=/usr/bin/clang
export CXX=/usr/bin/clang++
TOPDIR=$(pwd)
cd 3rdparty
if [ ! -d ravenna-alsa-lkm.git ]; then
git clone https://bitbucket.org/MergingTechnologies/ravenna-alsa-lkm.git
cd ravenna-alsa-lkm
git checkout 35c708f3747474130790cf508c064360a9589ac8
echo "Apply patches to ravenna-alsa-lkm module ..."
git apply ../patches/ravenna-alsa-lkm-kernel-v5.patch
git apply ../patches/ravenna-alsa-lkm-enable-loopback.patch
git apply ../patches/ravenna-alsa-lkm-fixes.patch
git apply ../patches/ravenna-alsa-lkm-arm-32bit.patch
git apply ../patches/ravenna-alsa-lkm-add-codec-am824.patch
git apply ../patches/ravenna-alsa-lkm-disable-ptp-checksum.patch
git apply ../patches/ravenna-alsa-lkm-independent-playback-capture.patch
git apply ../patches/ravenna-alsa-lkm-direct-pcm-transfer.patch
echo "Building ravenna-alsa-lkm kernel module ..."
cd driver
make
cd ../..
fi
if [ ! -d cpp-httplib.git ]; then
git clone https://github.com/yhirose/cpp-httplib.git
cd cpp-httplib
git checkout 42f9f9107f87ad2ee04be117dbbadd621c449552
cd ..
fi
cd ..
cd webui
echo "Building and installing webui ..."
#npm install react-modal react-toastify react-router-dom
npm install
npm run build
cd ..
cd daemon
echo "Building aes67-daemon ..."
cmake -DCPP_HTTPLIB_DIR="$TOPDIR"/3rdparty/cpp-httplib -DRAVENNA_ALSA_LKM_DIR="$TOPDIR"/3rdparty/ravenna-alsa-lkm -DENABLE_TESTS=ON -DWITH_AVAHI=ON .
make
cd ..