diff --git a/packages/addons/addon-depends/ffmpegx/package.mk b/packages/addons/addon-depends/ffmpegx/package.mk index 6dc5288155..f9bf91a49c 100644 --- a/packages/addons/addon-depends/ffmpegx/package.mk +++ b/packages/addons/addon-depends/ffmpegx/package.mk @@ -41,7 +41,7 @@ pre_configure_target() { LDFLAGS="$LDFLAGS -L$(get_build_dir gnutls)/.INSTALL_PKG/usr/lib" if [ "$KODIPLAYER_DRIVER" == "bcm2835-driver" ]; then - CFLAGS="-DRPI=1 -I$SYSROOT_PREFIX/usr/include/IL -I$SYSROOT_PREFIX/usr/include/interface/vcos/pthreads -I$SYSROOT_PREFIX/usr/include/interface/vmcs_host/linux $CFLAGS" + CFLAGS="$CFLAGS -DRPI=1 -I$SYSROOT_PREFIX/usr/include/IL" PKG_FFMPEG_LIBS="-lbcm_host -ldl -lmmal -lmmal_core -lmmal_util -lvchiq_arm -lvcos -lvcsm" fi diff --git a/packages/devel/libcec/package.mk b/packages/devel/libcec/package.mk index b9706ad184..c5b797d9b8 100644 --- a/packages/devel/libcec/package.mk +++ b/packages/devel/libcec/package.mk @@ -44,10 +44,6 @@ fi pre_configure_target() { if [ "$KODIPLAYER_DRIVER" = "bcm2835-driver" ]; then - export CXXFLAGS="$CXXFLAGS \ - -I$SYSROOT_PREFIX/usr/include/interface/vcos/pthreads/ \ - -I$SYSROOT_PREFIX/usr/include/interface/vmcs_host/linux" - # detecting RPi support fails without -lvchiq_arm export LDFLAGS="$LDFLAGS -lvchiq_arm" fi diff --git a/packages/graphics/bcm2835-driver/package.mk b/packages/graphics/bcm2835-driver/package.mk index 4abccb8ee6..e6c387260e 100644 --- a/packages/graphics/bcm2835-driver/package.mk +++ b/packages/graphics/bcm2835-driver/package.mk @@ -7,50 +7,66 @@ PKG_VERSION="fd15e0700e45d9b7db83e30696aba299b9f2f31d" PKG_SHA256="6324b4638b7b3f906469a1d2b94902f608436279749f167ade70e68c5c4c79a7" PKG_LICENSE="nonfree" PKG_SITE="http://www.broadcom.com" -PKG_URL="$DISTRO_SRC/$PKG_NAME-$PKG_VERSION.tar.xz" +PKG_URL="${DISTRO_SRC}/${PKG_NAME}-${PKG_VERSION}.tar.xz" PKG_DEPENDS_TARGET="toolchain dtc" PKG_LONGDESC="OpenMAX-bcm2835: OpenGL-ES and OpenMAX driver for BCM2835" PKG_TOOLCHAIN="manual" -if [ "$TARGET_FLOAT" = "softfp" -o "$TARGET_FLOAT" = "soft" ]; then - FLOAT="softfp" -elif [ "$TARGET_FLOAT" = "hard" ]; then - FLOAT="hardfp" +# Set SoftFP ABI or HardFP ABI +if [ "${TARGET_FLOAT}" = "soft" ]; then + PKG_FLOAT="softfp" +else + PKG_FLOAT="hardfp" fi make_target() { - mkdir -p $SYSROOT_PREFIX/usr/include - cp -PRv $FLOAT/opt/vc/include/* $SYSROOT_PREFIX/usr/include + # Install vendor header files + mkdir -p ${SYSROOT_PREFIX}/usr/include + cp -PRv ${PKG_FLOAT}/opt/vc/include/* ${SYSROOT_PREFIX}/usr/include - mkdir -p $SYSROOT_PREFIX/usr/lib - cp -PRv $FLOAT/opt/vc/lib/*.so $SYSROOT_PREFIX/usr/lib - ln -sf $SYSROOT_PREFIX/usr/lib/libbrcmEGL.so $SYSROOT_PREFIX/usr/lib/libEGL.so - ln -sf $SYSROOT_PREFIX/usr/lib/libbrcmGLESv2.so $SYSROOT_PREFIX/usr/lib/libGLESv2.so - cp -PRv $FLOAT/opt/vc/lib/*.a $SYSROOT_PREFIX/usr/lib - cp -PRv $FLOAT/opt/vc/lib/pkgconfig $SYSROOT_PREFIX/usr/lib + # Install EGL, OpenGL ES, Open VG, etc. vendor libs & pkgconfigs + mkdir -p ${SYSROOT_PREFIX}/usr/lib + cp -PRv ${PKG_FLOAT}/opt/vc/lib/*.so ${SYSROOT_PREFIX}/usr/lib + ln -sf ${SYSROOT_PREFIX}/usr/lib/libbrcmEGL.so ${SYSROOT_PREFIX}/usr/lib/libEGL.so + ln -sf ${SYSROOT_PREFIX}/usr/lib/libbrcmGLESv2.so ${SYSROOT_PREFIX}/usr/lib/libGLESv2.so + cp -PRv ${PKG_FLOAT}/opt/vc/lib/*.a ${SYSROOT_PREFIX}/usr/lib + cp -PRv ${PKG_FLOAT}/opt/vc/lib/pkgconfig ${SYSROOT_PREFIX}/usr/lib + + # Update prefix in vendor pkgconfig files + for PKG_CONFIGS in $(find "${SYSROOT_PREFIX}/usr/lib" -type f -name "*.pc" 2>/dev/null); do + sed -e "s#prefix=/opt/vc#prefix=/usr#g" -i "${PKG_CONFIGS}" + done + + # Create symlinks to /opt/vc to satisfy hardcoded include & lib paths + mkdir -p ${SYSROOT_PREFIX}/opt/vc + ln -sf ${SYSROOT_PREFIX}/usr/lib ${SYSROOT_PREFIX}/opt/vc/lib + ln -sf ${SYSROOT_PREFIX}/usr/include ${SYSROOT_PREFIX}/opt/vc/include } makeinstall_target() { - mkdir -p $INSTALL/usr/lib - cp -PRv $FLOAT/opt/vc/lib/*.so $INSTALL/usr/lib - ln -sf /usr/lib/libbrcmEGL.so $INSTALL/usr/lib/libEGL.so - ln -sf /usr/lib/libbrcmEGL.so $INSTALL/usr/lib/libEGL.so.1 - ln -sf /usr/lib/libbrcmGLESv2.so $INSTALL/usr/lib/libGLESv2.so - ln -sf /usr/lib/libbrcmGLESv2.so $INSTALL/usr/lib/libGLESv2.so.2 + # Install EGL, OpenGL ES and other vendor libs + mkdir -p ${INSTALL}/usr/lib + cp -PRv ${PKG_FLOAT}/opt/vc/lib/*.so ${INSTALL}/usr/lib + ln -sf /usr/lib/libbrcmEGL.so ${INSTALL}/usr/lib/libEGL.so + ln -sf /usr/lib/libbrcmEGL.so ${INSTALL}/usr/lib/libEGL.so.1 + ln -sf /usr/lib/libbrcmGLESv2.so ${INSTALL}/usr/lib/libGLESv2.so + ln -sf /usr/lib/libbrcmGLESv2.so ${INSTALL}/usr/lib/libGLESv2.so.2 -# some usefull debug tools - mkdir -p $INSTALL/usr/bin - cp -PRv $FLOAT/opt/vc/bin/dtoverlay $INSTALL/usr/bin - ln -s dtoverlay $INSTALL/usr/bin/dtparam - cp -PRv $FLOAT/opt/vc/bin/vcdbg $INSTALL/usr/bin - cp -PRv $FLOAT/opt/vc/bin/vcgencmd $INSTALL/usr/bin - cp -PRv $FLOAT/opt/vc/bin/tvservice $INSTALL/usr/bin - cp -PRv $FLOAT/opt/vc/bin/edidparser $INSTALL/usr/bin + # Install useful tools + mkdir -p ${INSTALL}/usr/bin + cp -PRv ${PKG_FLOAT}/opt/vc/bin/dtoverlay ${INSTALL}/usr/bin + ln -s dtoverlay ${INSTALL}/usr/bin/dtparam + cp -PRv ${PKG_FLOAT}/opt/vc/bin/vcdbg ${INSTALL}/usr/bin + cp -PRv ${PKG_FLOAT}/opt/vc/bin/vcgencmd ${INSTALL}/usr/bin + cp -PRv ${PKG_FLOAT}/opt/vc/bin/tvservice ${INSTALL}/usr/bin + cp -PRv ${PKG_FLOAT}/opt/vc/bin/edidparser ${INSTALL}/usr/bin - mkdir -p $INSTALL/opt/vc - ln -sf /usr/lib $INSTALL/opt/vc/lib + # Create symlinks to /opt/vc to satisfy hardcoded lib paths + mkdir -p ${INSTALL}/opt/vc + ln -sf /usr/lib ${INSTALL}/opt/vc/lib } post_install() { + # unbind Framebuffer console enable_service unbind-console.service } diff --git a/packages/mediacenter/kodi-binary-addons/screensaver.shadertoy/package.mk b/packages/mediacenter/kodi-binary-addons/screensaver.shadertoy/package.mk index e6b85ded24..75861e4693 100644 --- a/packages/mediacenter/kodi-binary-addons/screensaver.shadertoy/package.mk +++ b/packages/mediacenter/kodi-binary-addons/screensaver.shadertoy/package.mk @@ -27,12 +27,3 @@ if [ "$OPENGLES_SUPPORT" = yes ]; then # for OpenGL-ES support PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET $OPENGLES" fi - -pre_configure_target() { - if [ "$KODIPLAYER_DRIVER" = bcm2835-driver ]; then - BCM2835_INCLUDES="-I$SYSROOT_PREFIX/usr/include/interface/vcos/pthreads/ \ - -I$SYSROOT_PREFIX/usr/include/interface/vmcs_host/linux" - export CFLAGS="$CFLAGS $BCM2835_INCLUDES" - export CXXFLAGS="$CXXFLAGS $BCM2835_INCLUDES" - fi -} diff --git a/packages/mediacenter/kodi-binary-addons/visualization.shadertoy/package.mk b/packages/mediacenter/kodi-binary-addons/visualization.shadertoy/package.mk index 4bf51711e2..d1be56a67e 100644 --- a/packages/mediacenter/kodi-binary-addons/visualization.shadertoy/package.mk +++ b/packages/mediacenter/kodi-binary-addons/visualization.shadertoy/package.mk @@ -27,12 +27,3 @@ if [ "$OPENGLES_SUPPORT" = yes ]; then # for OpenGL-ES support PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET $OPENGLES" fi - -pre_configure_target() { - if [ "$KODIPLAYER_DRIVER" = bcm2835-driver ]; then - BCM2835_INCLUDES="-I$SYSROOT_PREFIX/usr/include/interface/vcos/pthreads/ \ - -I$SYSROOT_PREFIX/usr/include/interface/vmcs_host/linux" - export CFLAGS="$CFLAGS $BCM2835_INCLUDES" - export CXXFLAGS="$CXXFLAGS $BCM2835_INCLUDES" - fi -} diff --git a/packages/multimedia/ffmpeg/package.mk b/packages/multimedia/ffmpeg/package.mk index 64e3d0bcf6..1ca7bc3148 100644 --- a/packages/multimedia/ffmpeg/package.mk +++ b/packages/multimedia/ffmpeg/package.mk @@ -81,7 +81,6 @@ pre_configure_target() { rm -rf .$TARGET_NAME if [ "$KODIPLAYER_DRIVER" = "bcm2835-driver" ]; then - CFLAGS="-I$SYSROOT_PREFIX/usr/include/interface/vcos/pthreads -I$SYSROOT_PREFIX/usr/include/interface/vmcs_host/linux $CFLAGS" PKG_FFMPEG_LIBS="-lbcm_host -lvcos -lvchiq_arm -lmmal -lmmal_core -lmmal_util -lvcsm" PKG_FFMPEG_RPI="--enable-rpi" else diff --git a/projects/Allwinner/devices/H3/options b/projects/Allwinner/devices/H3/options index d81632549e..dbfe882111 100644 --- a/projects/Allwinner/devices/H3/options +++ b/projects/Allwinner/devices/H3/options @@ -21,7 +21,7 @@ # TARGET_FLOAT: # Specifies which floating-point ABI to use. Permissible values are: - # soft softfp hard + # soft hard TARGET_FLOAT="hard" # TARGET_FPU: diff --git a/projects/RPi/options b/projects/RPi/options index 0151033f93..172f569997 100644 --- a/projects/RPi/options +++ b/projects/RPi/options @@ -16,7 +16,7 @@ # TARGET_FLOAT: # Specifies which floating-point ABI to use. Permissible values are: - # soft softfp hard + # soft hard TARGET_FLOAT="hard" # Valid TARGET_FPU for Raspberry Pi based devices: