[package] owfs: add missing dependency on librpc (#9426)
[openwrt/svn-archive/archive.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.8p4
12 PKG_RELEASE:=2
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
15 PKG_SOURCE_URL:=@SF/$(PKG_NAME)
16 PKG_MD5SUM:=beccd8765184b2abea0a3f28dc466ea3
17
18 PKG_FIXUP:=libtool
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 +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 DEPENDS:= +USE_UCLIBC:librpc
104 TITLE:=OWFS - shell utilities
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 --disable-rpath \
172 --enable-zero \
173 --disable-parport \
174 --disable-ownfsd \
175 --disable-ownet \
176 --disable-owpython \
177 --disable-libow-perl \
178 --disable-owphp \
179 --disable-owtcl \
180 --disable-owside \
181 --disable-swig \
182
183 CONFIGURE_VARS += \
184 LDFLAGS="$(TARGET_LDFLAGS) -Wl,-rpath-link=$(STAGING_DIR)/usr/lib -Wl,-rpath-link=$(TOOLCHAIN_DIR)/usr/lib" \
185 lt_cv_sys_lib_dlsearch_path_spec="$(STAGING_DIR)/lib $(STAGING_DIR)/usr/lib" \
186 lt_cv_sys_lib_search_path_spec="$(STAGING_DIR)/lib $(STAGING_DIR)/usr/lib" \
187 shrext_cmds=".so" \
188
189 define Build/Compile
190 $(MAKE) -C $(PKG_BUILD_DIR) \
191 CC="$(TARGET_CC)" \
192 DESTDIR="$(PKG_INSTALL_DIR)" \
193 HOST_CPU="$(PKGARCH)" \
194 all install
195 endef
196
197 define Build/InstallDev
198 $(INSTALL_DIR) $(STAGING_DIR)/usr/include
199 $(CP) $(PKG_INSTALL_DIR)/usr/include/ow{capi,fs_config}.h $(STAGING_DIR)/usr/include/
200 $(INSTALL_DIR) $(STAGING_DIR)/usr/lib
201 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libow{,capi}*.so* $(STAGING_DIR)/usr/lib/
202 endef
203
204 define Package/owfs/install
205 $(INSTALL_DIR) $(1)/usr/bin
206 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owfs $(1)/usr/bin/
207 endef
208
209 define Package/owshell/install
210 $(INSTALL_DIR) $(1)/usr/bin
211 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owget $(1)/usr/bin/
212 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owread $(1)/usr/bin/
213 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owwrite $(1)/usr/bin/
214 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owdir $(1)/usr/bin/
215 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owpresent $(1)/usr/bin/
216 endef
217
218
219 define Package/owserver/install
220 $(INSTALL_DIR) $(1)/usr/bin
221 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owserver $(1)/usr/bin/
222 endef
223
224 define Package/owhttpd/install
225 $(INSTALL_DIR) $(1)/usr/bin
226 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owhttpd $(1)/usr/bin/
227 endef
228
229 define Package/owftpd/install
230 $(INSTALL_DIR) $(1)/usr/bin
231 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/owftpd $(1)/usr/bin/
232 endef
233
234
235 define Package/libow/install
236 $(INSTALL_DIR) $(1)/usr/lib
237 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libow-*.so.* $(1)/usr/lib/
238 endef
239
240 define Package/libow-capi/install
241 $(INSTALL_DIR) $(1)/usr/lib
242 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libowcapi-*.so.* $(1)/usr/lib/
243 endef
244
245
246 $(eval $(call BuildPackage,owfs))
247 $(eval $(call BuildPackage,owshell))
248
249 $(eval $(call BuildPackage,owserver))
250 $(eval $(call BuildPackage,owhttpd))
251 $(eval $(call BuildPackage,owftpd))
252
253 $(eval $(call BuildPackage,libow))
254 $(eval $(call BuildPackage,libow-capi))