[PATCH v1 0/5] v4l-utils build on buildroot with no-MMU devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



In order to pass V4L2 compliancy tests on STM32 devices -which are MMU less-,
compliancy utilities -at least v4l2-compliance and cec-compliance- have to be built.
Unfortunately the support of shared libraries (dlopen()) and fork() is a must
have in v4l-utils.
This have been fixed by:
- revisiting --disable-libv4l to --disable-dyn-libv4l; first naming
  suggests that libv4l will not be built which is not the case
  (only the dynamic support of libv4l is disabled in this case)
- for the sake of coherency, configure.ac variables USE_V4L2_CTL & USE_V4L2_COMPLIANCE
  have been changed to USE_V4L2_CTL_LIBV4L & USE_V4L2_COMPLIANCE_LIBV4L
  for the same reason.
- adding an option --disable-libv4l to really not build libv4l
  - libraries which require dlopen() and libv4lconvert which
    require fork(). For the sake of simplicity, the entire lib/ folder
    is not built with this option.
  - The contrib/ folder is also not built in that case because of its dependency
    on libv4l/libv4lconvert libraries.
  - The utility rds-ctl is also not built for the same reason.
  - configure.ac is also fixed to not trig error on dlopen() missing, further
    test on "enable_shared" will automatically disable the build of libv4l
    and items which have libv4l has dependency.
- fix configure.ac to allow build of v4l-utils utilities with uclinux.


This have been tested on buildroot build system with following patch
to let throw build even if no MMU and no shared libraries support
(those patches will be upstreamed on buildroot side):
package/libv4l/Config.in
config BR2_PACKAGE_LIBV4L
	bool "libv4l"
	depends on BR2_TOOLCHAIN_HAS_THREADS
-	depends on BR2_USE_MMU # fork()
-	depends on !BR2_STATIC_LIBS # dlopen()

config BR2_PACKAGE_LIBV4L_UTILS
	bool "v4l-utils tools"
-	depends on BR2_ENABLE_LOCALE


===========
= history =
===========
version 1:
  - Initial submission


Hugues Fruchet (5):
  configure.ac: fix wrong summary if --disable-v4l2-ctl-stream-to
  configure.ac: revisit v4l2-ctl/compliance using libv4l variable naming
  configure.ac: revisit --disable-libv4l to --disable-dyn-libv4l
  configure.ac: add --disable-libv4l option
  configure.ac: fix build of v4l-utils on uclinux

 Makefile.am                       | 11 +++++++++--
 configure.ac                      | 33 +++++++++++++++++++++------------
 lib/libv4l1/Makefile.am           |  2 +-
 lib/libv4l2/Makefile.am           |  2 +-
 lib/libv4l2rds/Makefile.am        |  2 +-
 lib/libv4lconvert/Makefile.am     |  2 +-
 utils/Makefile.am                 |  6 +++++-
 utils/v4l2-compliance/Makefile.am |  4 ++++
 utils/v4l2-ctl/Makefile.am        |  4 ++++
 9 files changed, 47 insertions(+), 19 deletions(-)

-- 
1.9.1




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux