51dc0104f26e49ae623425b4617bfb9654ea408f
[packages.git] / utils / i2c-tools / Makefile
1 #
2 # Copyright (C) 2007-2013 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9 include $(INCLUDE_DIR)/kernel.mk
10
11 PKG_NAME:=i2c-tools
12 PKG_VERSION:=2013-09-19
13 PKG_RELEASE:=1
14
15 PKG_SOURCE_PROTO:=svn
16 PKG_SOURCE_URL:=http://lm-sensors.org/svn/i2c-tools/trunk
17 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
18 PKG_SOURCE_VERSION:=r6199
19 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
20
21 PKG_BUILD_PARALLEL:=1
22 PKG_BUILD_DEPENDS:=PACKAGE_python-smbus:python
23
24 include $(INCLUDE_DIR)/package.mk
25 $(call include_mk, python-package.mk)
26
27 define Package/i2c/Default
28   URL:=http://lm-sensors.org/wiki/I2CTools
29   TITLE:=I2C
30 endef
31
32 define Package/libi2c
33   $(call Package/i2c/Default)
34   SECTION:=libs
35   CATEGORY:=Libraries
36   TITLE+=library
37 endef
38
39 define Package/i2c-tools
40   $(call Package/i2c/Default)
41   SECTION:=utils
42   CATEGORY:=Utilities
43   TITLE+=tools for Linux
44   DEPENDS:=+libi2c
45 endef
46
47 define Package/python-smbus
48   $(call Package/i2c/Default)
49   SUBMENU:=Python
50   SECTION:=lang
51   CATEGORY:=Languages
52   TITLE:=Python bindings for the SMBUS
53   DEPENDS:=+PACKAGE_python-smbus:python-mini +i2c-tools
54 endef
55
56 define Package/i2c-tools/description
57  This package contains an heterogeneous set of I2C tools for Linux. These tools
58  were originally part of the lm-sensors package.
59 endef
60
61 define Package/python-smbus/description
62  This package contain the python bindings for Linux SMBus access through i2c-dev.
63 endef
64
65 TARGET_CPPFLAGS += -I$(PKG_BUILD_DIR)/include
66
67 ifdef CONFIG_PACKAGE_python-smbus
68   define Build/Compile/python-smbus
69         $(if $(Build/Compile/PyMod),,@echo Python packaging code not found.; false)
70         $(call Build/Compile/PyMod,./py-smbus/, \
71                 install --prefix="$(PKG_INSTALL_DIR)/usr", \
72         )
73   endef
74 endif
75
76 define Build/Compile
77         $(MAKE) -C $(PKG_BUILD_DIR) \
78                 LINUX="$(LINUX_DIR)" \
79                 CC="$(TARGET_CC)" \
80                 STAGING_DIR="$(STAGING_DIR)" \
81                 LDFLAGS="$(TARGET_LDFLAGS)"
82         $(Build/Compile/python-smbus)
83 endef
84
85 define Build/InstallDev
86         $(INSTALL_DIR) $(1)/usr/lib
87         $(CP) $(PKG_BUILD_DIR)/lib/libi2c.so* $(1)/usr/lib/
88 endef
89
90 define Package/libi2c/install
91         $(INSTALL_DIR) $(1)/usr/lib
92         $(CP) $(PKG_BUILD_DIR)/lib/libi2c.so* $(1)/usr/lib/
93 endef
94
95 define Package/i2c-tools/install
96         $(INSTALL_DIR) $(1)/usr/sbin
97         $(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/i2cdetect $(1)/usr/sbin/
98         $(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/i2cdump $(1)/usr/sbin/
99         $(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/i2cset $(1)/usr/sbin/
100         $(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/i2cget $(1)/usr/sbin/
101 endef
102
103 define PyPackage/python-smbus/filespec
104 +|$(PYTHON_PKG_DIR)/smbus.so
105 endef
106
107 $(eval $(call BuildPackage,libi2c))
108 $(eval $(call BuildPackage,i2c-tools))
109 $(eval $(call PyPackage,python-smbus))
110 $(eval $(call BuildPackage,python-smbus))