Merge pull request #4898 from br101/horst
[feed/packages.git] / libs / libv4l / Makefile
1 #
2 # Copyright (C) 2009-2015 OpenWrt.org
3 # Copyright (C) 2009 David Cooper <dave@kupesoft.com>
4 #
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
7 #
8
9 include $(TOPDIR)/rules.mk
10
11 PKG_NAME:=v4l-utils
12 PKG_VERSION:=1.10.0
13 PKG_RELEASE:=1
14
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
16 PKG_SOURCE_URL:=http://www.linuxtv.org/downloads/v4l-utils
17 PKG_HASH:=78ead27ee58a701d7c6342303cf4520bdd4a2b88a7813bc99a0b389307e4336b
18
19 PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>
20
21 PKG_LICENSE:=GPL-2.0 LGPL-2.1
22 PKG_LICENSE_FILES:=COPYING COPYING.libv4l
23
24 PKG_USE_MIPS16:=0
25 PKG_FIXUP:=autoreconf
26 PKG_INSTALL:=1
27
28 PKG_BUILD_DEPENDS:=argp-standalone
29
30 include $(INCLUDE_DIR)/uclibc++.mk
31 include $(INCLUDE_DIR)/package.mk
32 include $(INCLUDE_DIR)/nls.mk
33
34 define Package/libv4l/Default
35 TITLE:=Video 4 Linux
36 URL:=http://www.linuxtv.org/
37 endef
38
39 define Package/libv4l/Default/description
40 libv4l is a collection of libraries which adds a thin abstraction layer on
41 top of video4linux2 devices. The purpose of this (thin) layer is to make it
42 easy for application writers to support a wide variety of devices without
43 having to write separate code for different devices in the same class. libv4l
44 consists of 3 different libraries: libv4lconvert, libv4l1 and libv4l2.
45
46 libv4l1 offers the (deprecated) v4l1 API on top of v4l2 devices, independent
47 of the drivers for those devices supporting v4l1 compatibility (which many
48 v4l2 drivers do not).
49
50 libv4l2 offers the v4l2 API on top of v4l2 devices, while adding for the
51 application transparent libv4lconvert conversion where necessary.
52 endef
53
54 define Package/libv4l
55 $(call Package/libv4l/Default)
56 SECTION:=libs
57 CATEGORY:=Libraries
58 TITLE+= wrapper libraries
59 DEPENDS := +libpthread +librt $(ICONV_DEPENDS)
60 endef
61
62 define Package/libv4l/description
63 $(call Package/libv4l/Default/description)
64 endef
65
66 define Package/v4l-utils
67 $(call Package/libv4l/Default)
68 SECTION:=utils
69 CATEGORY:=Utilities
70 TITLE+= utilities
71 DEPENDS := +libv4l $(CXX_DEPENDS) $(ICONV_DEPENDS)
72 endef
73
74 define Package/v4l-utils/description
75 $(call Package/libv4l/Default/description)
76 This package contains the video4linux utilities.
77 endef
78
79 TARGET_CFLAGS += $(FPIC)
80 TARGET_LDFLAGS += -largp
81
82 CONFIGURE_ARGS+= \
83 --disable-doxygen-doc \
84 --disable-libdvbv5 \
85 --disable-qv4l2 \
86 --without-jpeg \
87
88 define Build/InstallDev
89 $(INSTALL_DIR) $(1)/usr/include
90 $(CP) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include/
91 $(INSTALL_DIR) $(1)/usr/lib
92 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libv4l{1,2,convert}.{a,so*} $(1)/usr/lib/
93 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
94 $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libv4l{1,2,convert}.pc $(1)/usr/lib/pkgconfig/
95 endef
96
97 define Package/libv4l/install
98 $(INSTALL_DIR) $(1)/usr/lib
99 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libv4l{1,2,convert}.so.* $(1)/usr/lib/
100 $(INSTALL_DIR) $(1)/usr/lib/libv4l
101 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libv4l/v4l{1compat,2convert}.so $(1)/usr/lib/libv4l/
102 endef
103
104 define Package/v4l-utils/install
105 $(INSTALL_DIR) $(1)/etc
106 $(CP) $(PKG_INSTALL_DIR)/etc/rc_maps.cfg $(1)/etc/
107 $(CP) $(PKG_INSTALL_DIR)/etc/rc_keymaps $(1)/etc/
108 $(INSTALL_DIR) $(1)/usr/bin
109 $(CP) $(PKG_INSTALL_DIR)/usr/bin/{cx18,ivtv}-ctl $(1)/usr/bin/
110 $(CP) $(PKG_INSTALL_DIR)/usr/bin/decode_tm6000 $(1)/usr/bin/
111 $(CP) $(PKG_INSTALL_DIR)/usr/bin/ir-keytable $(1)/usr/bin/
112 $(CP) $(PKG_INSTALL_DIR)/usr/bin/v4l2-{compliance,ctl,sysfs-path} $(1)/usr/bin/
113 endef
114
115 $(eval $(call BuildPackage,libv4l))
116 $(eval $(call BuildPackage,v4l-utils))