#!/bin/sh # Sets up and builds libcec to be used with Home Assistant. # Dependencies that need to be installed: # apt-get install cmake libudev-dev libxrandr-dev swig # Stop on errors set -e # Load required information about the current python environment PYTHON_LIBDIR=$(python -c 'from distutils import sysconfig; print(sysconfig.get_config_var("LIBDIR"))') PYTHON_LDLIBRARY=$(python -c 'from distutils import sysconfig; print(sysconfig.get_config_var("LDLIBRARY"))') PYTHON_LIBRARY="${PYTHON_LIBDIR}/${PYTHON_LDLIBRARY}" PYTHON_INCLUDE_DIR=$(python -c 'from distutils import sysconfig; print(sysconfig.get_python_inc())') PYTHON_SITE_DIR=$(python -c 'from distutils import sysconfig; print(sysconfig.get_python_lib(prefix=""))') cd "$(dirname "$0")/.." mkdir -p build && cd build if [ ! -d libcec ]; then git clone --branch release --depth 1 https://github.com/Pulse-Eight/libcec.git fi cd libcec git checkout release git pull git submodule update --init src/platform # Build libcec platform libs ( mkdir -p src/platform/build cd src/platform/build cmake .. make make install ) # Fix upstream install hardcoded Debian path. # See: https://github.com/Pulse-Eight/libcec/issues/288 sed -i \ -e '/DESTINATION/s:lib/python${PYTHON_VERSION}/dist-packages:${PYTHON_SITE_DIR}:' \ src/libcec/cmake/CheckPlatformSupport.cmake # Build libcec ( mkdir -p build && cd build cmake \ -DPYTHON_LIBRARY="${PYTHON_LIBRARY}" \ -DPYTHON_INCLUDE_DIR="${PYTHON_INCLUDE_DIR}" \ -DPYTHON_SITE_DIR="${PYTHON_SITE_DIR}" \ .. make make install ldconfig )