dmidecode: moved to github
[packages.git] / utils / owfs / Makefile
1 #
2 # Copyright (C) 2008-2011 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
10 PKG_NAME:=owfs
11 PKG_VERSION:=2.8p13
12 PKG_RELEASE:=1
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
15 PKG_SOURCE_URL:=@SF/$(PKG_NAME)
16 PKG_MD5SUM:=cc3e2542aed41c753bffca13f2a0a84e
17
18 PKG_FIXUP:=autoreconf
19 PKG_INSTALL:=1
20
21 include $(INCLUDE_DIR)/package.mk
22
23 #
24 # templates
25 #
26
27 define Package/$(PKG_NAME)/Default
28   TITLE:=OWFS (1-Wire File System)
29   URL:=http://owfs.sourceforge.net/
30   SECTION:=net
31   CATEGORY:=Network
32   SUBMENU:=Filesystem
33 endef
34
35 define Package/$(PKG_NAME)/Default/description
36   OWFS is a suite of programs that designed to make the 1-wire bus and its
37   devices easily accessible. The underlying priciple is to create a virtual
38   filesystem, with the unique ID being the directory, and the individual
39   properties of the device are represented as simple files that can be read
40   and written.
41
42   Details of the individual slave or master design are hidden behind a
43   consistent interface. The goal is to provide an easy set of tools for a
44   software designer to create monitoring or control applications. There are
45   some performance enhancements in the implementation, including data caching,
46   parallel access to bus masters, and aggregation of device communication.
47   Still the fundemental goal has been ease of use, flexibility and correctness
48   rather than speed.
49 endef
50
51 define Package/owfs/Server
52   $(call Package/owfs/Default)
53   DEPENDS:=+libow +libpthread
54 endef
55
56 define Package/owfs/Library
57   $(call Package/owfs/Default)
58   SECTION:=libs
59   CATEGORY:=Libraries
60 endef
61
62 define Package/owfs/Utility
63   $(call Package/owfs/Default)
64   SECTION:=utils
65   CATEGORY:=Utilities
66   DEPENDS:=+libow
67 endef
68
69 #
70 # shared libraries
71 #
72
73 define Package/libow
74   $(call Package/owfs/Library)
75   DEPENDS:=+libusb-compat +libpthread
76   TITLE:=OWFS - common shared library
77 endef
78
79 define Package/libow/description
80   $(call Package/$(PKG_NAME)/Default/description)
81
82   This package contains the OWFS library.
83 endef
84
85 define Package/libow-capi
86   $(call Package/owfs/Library)
87   DEPENDS:=+libow
88   TITLE:=OWFS - C-API library
89 endef
90
91 define Package/libow-capi/description
92   $(call Package/$(PKG_NAME)/Default/description)
93
94   This package contains the OWFS C-API library.
95 endef
96
97 #
98 # utilities
99 #
100
101 define Package/owshell
102   $(call Package/owfs/Utility)
103   TITLE:=OWFS - shell utilities
104   DEPENDS+= +USE_UCLIBC:librpc
105 endef
106
107 define Package/owshell/description
108   $(call Package/$(PKG_NAME)/Default/description)
109
110   This package contains the OWFS shell utilities.
111 endef
112
113 define Package/owfs
114   $(call Package/owfs/Utility)
115   # libfuse depends on kmod-fuse, no need to declare dependency
116   DEPENDS+= +libfuse +fuse-utils
117   TITLE:=OWFS - fuse file system
118 endef
119
120 define Package/owfs/description
121   $(call Package/$(PKG_NAME)/Default/description)
122
123   This package contains the OWFS fuse filesystem.
124 endef
125
126 #
127 # network daemons
128 #
129
130 define Package/owhttpd
131   $(call Package/owfs/Server)
132   TITLE:=OWFS - http server
133 endef
134
135 define Package/owhttpd/description
136   $(call Package/$(PKG_NAME)/Default/description)
137
138   This package contains the OWFS http server.
139 endef
140
141 define Package/owftpd
142   $(call Package/owfs/Server)
143   TITLE:=OWFS - ftp server
144 endef
145
146 define Package/owftpd/description
147   $(call Package/$(PKG_NAME)/Default/description)
148
149   This package contains the OWFS ftp server.
150 endef
151
152 define Package/owserver
153   $(call Package/owfs/Server)
154   TITLE:=OWFS - network server
155 endef
156
157 define Package/owserver/description
158   $(call Package/$(PKG_NAME)/Default/description)
159
160   This package contains the OWFS network server.
161 endef
162
163 CONFIGURE_ARGS += \
164         --enable-owftpd \
165         --enable-owserver \
166         --enable-owhttpd \
167         --enable-owfs \
168         --with-fuseinclude="$(STAGING_DIR)/usr/include" \
169         --with-fuselib="$(STAGING_DIR)/usr/lib" \
170         --enable-shared \
171         --enable-zero \
172         --disable-parport \
173         --disable-ownet \
174         --disable-owpython \
175         --disable-owphp \
176         --disable-owtcl \
177         --disable-swig \
178
179 CONFIGURE_VARS += \
180         LDFLAGS="$(TARGET_LDFLAGS) -Wl,-rpath-link=$(STAGING_DIR)/usr/lib -Wl,-rpath-link=$(TOOLCHAIN_DIR)/usr/lib" \
181         lt_cv_sys_lib_dlsearch_path_spec="$(STAGING_DIR)/lib $(STAGING_DIR)/usr/lib" \
182         lt_cv_sys_lib_search_path_spec="$(STAGING_DIR)/lib $(STAGING_DIR)/usr/lib" \
183         shrext_cmds=".so" \
184
185 MAKE_FLAGS += \
186         CC="$(TARGET_CC)" \
187         HOST_CPU="$(PKGARCH)"
188
189 define Build/InstallDev
190         $(INSTALL_DIR) $(STAGING_DIR)/usr/include
191         $(CP)   $(PKG_INSTALL_DIR)/usr/include/ow{capi,fs_config}.h $(STAGING_DIR)/usr/include/
192         $(INSTALL_DIR) $(STAGING_DIR)/usr/lib
193         $(CP)   $(PKG_INSTALL_DIR)/usr/lib/libow{,capi}*.so* $(STAGING_DIR)/usr/lib/
194 endef
195
196 define Package/owfs/install
197         $(INSTALL_DIR) $(1)/usr/bin
198         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owfs $(1)/usr/bin/
199 endef
200
201 define Package/owshell/install
202         $(INSTALL_DIR) $(1)/usr/bin
203         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owget $(1)/usr/bin/
204         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owread $(1)/usr/bin/
205         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owwrite $(1)/usr/bin/
206         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owdir $(1)/usr/bin/
207         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owpresent $(1)/usr/bin/
208 endef
209
210
211 define Package/owserver/install
212         $(INSTALL_DIR) $(1)/usr/bin
213         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owserver $(1)/usr/bin/
214 endef
215
216 define Package/owhttpd/install
217         $(INSTALL_DIR) $(1)/usr/bin
218         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owhttpd $(1)/usr/bin/
219 endef
220
221 define Package/owftpd/install
222         $(INSTALL_DIR) $(1)/usr/bin
223         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owftpd $(1)/usr/bin/
224 endef
225
226
227 define Package/libow/install
228         $(INSTALL_DIR) $(1)/usr/lib
229         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libow-*.so.* $(1)/usr/lib/
230 endef
231
232 define Package/libow-capi/install
233         $(INSTALL_DIR) $(1)/usr/lib
234         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libowcapi-*.so.* $(1)/usr/lib/
235 endef
236
237
238 $(eval $(call BuildPackage,owfs))
239 $(eval $(call BuildPackage,owshell))
240
241 $(eval $(call BuildPackage,owserver))
242 $(eval $(call BuildPackage,owhttpd))
243 $(eval $(call BuildPackage,owftpd))
244
245 $(eval $(call BuildPackage,libow))
246 $(eval $(call BuildPackage,libow-capi))