buildrootschalter/package/libv4l/libv4l.mk
Thomas Petazzoni 947b57da19 libv4l: decode-tm6000 requires libv4l2util
The decode-tm6000 utility cannot build without the libv4l2util. If
this library is not available, the build breaks with:

decode_tm6000.o: In function `read_stream':
decode_tm6000.c:(.text+0x220): undefined reference to `v4l2_rcvbuf'
decode_tm6000.o: In function `main':
decode_tm6000.c:(.text+0x37c): undefined reference to `v4l2_open'
decode_tm6000.c:(.text+0x3cc): undefined reference to `v4l2_gettryset_fmt_cap'
decode_tm6000.c:(.text+0x424): undefined reference to `v4l2_getset_freq'
decode_tm6000.c:(.text+0x47c): undefined reference to `v4l2_mmap_bufs'
decode_tm6000.c:(.text+0x4a0): undefined reference to `v4l2_start_streaming'

See

 http://autobuild.buildroot.org/results/207ed74d5e816309ef0dc82ecc8112b51788fdf6/build-end.log

We fix this by adding util/libv4l2util to the list of directories to
build when decode-tm6000 is enabled. The only other user of
libv4l2util is another utility called qv4l2, for which Buildroot has
no Config.in option, so we only handle the case of decode-tm6000 at
the moment.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-10-14 20:52:42 +02:00

44 lines
1.3 KiB
Makefile

#############################################################
#
# libv4l
#
#############################################################
LIBV4L_VERSION = 0.8.9
LIBV4L_SOURCE = v4l-utils-$(LIBV4L_VERSION).tar.bz2
LIBV4L_SITE = http://linuxtv.org/downloads/v4l-utils/
LIBV4L_INSTALL_STAGING = YES
LIBV4L_MAKE_OPTS = PREFIX=/usr
LIBV4L_DEPENDENCIES = jpeg
LIBV4L_DIRS_y += lib
LIBV4L_DIRS_$(BR2_PACKAGE_LIBV4L_DECODE_TM6000) += utils/libv4l2util utils/decode_tm6000
LIBV4L_DIRS_$(BR2_PACKAGE_LIBV4L_IR_KEYTABLE) += utils/keytable
LIBV4L_DIRS_$(BR2_PACKAGE_LIBV4L_V4L2_COMPLIANCE) += utils/v4l2-compliance
LIBV4L_DIRS_$(BR2_PACKAGE_LIBV4L_V4L2_CTL) += utils/v4l2-ctl
LIBV4L_DIRS_$(BR2_PACKAGE_LIBV4L_V4L2_DBG) += utils/v4l2-dbg
ifeq ($(BR2_PREFER_STATIC_LIB),y)
LIBV4L_MAKE_OPTS += LINKTYPE=static
endif
define LIBV4L_BUILD_CMDS
for i in $(LIBV4L_DIRS_y); do \
$(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D)/$$i \
$(LIBV4L_MAKE_OPTS) || exit 1 ; done
endef
define LIBV4L_INSTALL_STAGING_CMDS
for i in $(LIBV4L_DIRS_y); do \
$(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D)/$$i \
DESTDIR=$(STAGING_DIR) $(LIBV4L_MAKE_OPTS) install || exit 1; done
endef
define LIBV4L_INSTALL_TARGET_CMDS
for i in $(LIBV4L_DIRS_y); do \
$(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D)/$$i \
DESTDIR=$(TARGET_DIR) $(LIBV4L_MAKE_OPTS) install || exit 1; done
endef
$(eval $(generic-package))