Commit 413b0845 authored by Luca Ceresoli's avatar Luca Ceresoli Committed by Thomas Petazzoni
Browse files

live555: fix library installation



The manual target installation commands optionally copy 3 executables
that demonstrate the library usage, but do not the library itself.

This results in the following errors at runtime:

  # openRTSP
  openRTSP: can't load library 'libliveMedia.so.38'
  # live555MediaServer
  live555MediaServer: can't load library 'libliveMedia.so.38'
  # MPEG2TransportStreamIndexer
  MPEG2TransportStreamIndexer: can't load library 'libliveMedia.so.38'
  #

Tested with the following defconfig, which is basically
qemu_arm_versatile_defconfig plus C++ and live555:

BR2_arm=y
BR2_KERNEL_HEADERS_VERSION=y
BR2_DEFAULT_KERNEL_VERSION="4.0"
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_0=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.0"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/arm-versatile/linux-4.0.config"
BR2_LINUX_KERNEL_ZIMAGE=y
BR2_PACKAGE_LIVE555=y
BR2_TARGET_ROOTFS_EXT2=y

Fix the whole installation step by using the 'make install' step provided
by the upstream package, similar to what was done in commit
44d15563 for the staging installation.

Note: this change has the effect of installing unconditionally all the
test and demo executables produced by the live555 compilation process,
and that were previously not (or optionally) copied. This increases the
uncompressed target filesystem size by roughly 300 kB (tested for a
32-bit ARM target). Undesired files can be deleted in a post-build script.

Signed-off-by: default avatarLuca Ceresoli <luca@lucaceresoli.net>
Cc: Baruch Siach <baruch@tkos.co.il>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
parent 02466db4
Loading
Loading
Loading
Loading
+0 −23
Original line number Diff line number Diff line
@@ -7,28 +7,5 @@ config BR2_PACKAGE_LIVE555

	  http://www.live555.com/liveMedia/

if BR2_PACKAGE_LIVE555

config BR2_PACKAGE_LIVE555_OPENRTSP
	bool "OpenRTSP"
	default y
	help
	  Live555 RTSP Client.

config BR2_PACKAGE_LIVE555_MEDIASERVER
	bool "live555MediaServer"
	default y
	help
	  RTSP Server. Supports numerous media formats such as H.264 and MPEG2.

config BR2_PACKAGE_LIVE555_MPEG2_INDEXER
	bool "MPEG2TransportStreamIndexer"
	default y
	help
	  MPEG2 Transport Stream Indexer. Provides indexes allowing 'trick play'
	  operation in the Live555MediaServer.

endif

comment "live555 needs a toolchain w/ C++"
	depends on !BR2_INSTALL_LIBSTDCPP
+1 −8
Original line number Diff line number Diff line
@@ -44,19 +44,12 @@ define LIVE555_BUILD_CMDS
	$(MAKE) -C $(@D) all
endef

LIVE555_FILES_TO_INSTALL-y =
LIVE555_FILES_TO_INSTALL-$(BR2_PACKAGE_LIVE555_OPENRTSP) += testProgs/openRTSP
LIVE555_FILES_TO_INSTALL-$(BR2_PACKAGE_LIVE555_MEDIASERVER) += mediaServer/live555MediaServer
LIVE555_FILES_TO_INSTALL-$(BR2_PACKAGE_LIVE555_MPEG2_INDEXER) += testProgs/MPEG2TransportStreamIndexer

define LIVE555_INSTALL_STAGING_CMDS
	$(MAKE) DESTDIR=$(STAGING_DIR) -C $(@D) install
endef

define LIVE555_INSTALL_TARGET_CMDS
	for i in $(LIVE555_FILES_TO_INSTALL-y); do \
		$(INSTALL) -D -m 0755 $(@D)/$$i $(TARGET_DIR)/usr/bin/`basename $$i` || exit 1; \
	done
	$(MAKE) DESTDIR=$(TARGET_DIR) PREFIX=/usr -C $(@D) install
endef

$(eval $(generic-package))