2 # Copyright (C) 2007-2009 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR)/rules.mk
12 PKG_VERSION:=r$(PKG_REV)
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
16 PKG_SOURCE_URL:=https://ssl.bulix.org/svn/lcd4linux/trunk/
17 PKG_SOURCE_SUBDIR:=lcd4linux-$(PKG_VERSION)
18 PKG_SOURCE_VERSION:=$(PKG_REV)
23 include $(INCLUDE_DIR)/package.mk
25 define Package/lcd4linux
29 TITLE:=LCD display utility
30 URL:=http://lcd4linux.bulix.org/
34 define Package/lcd4linux/config
36 depends on PACKAGE_lcd4linux
37 source "$(SOURCE)/Config.in"
41 define Package/lcd4linux/description
42 LCD4Linux is a small program that grabs information from the kernel and
43 some subsystems and displays it on an external liquid crystal display.
46 define Package/lcd4linux/conffiles
130 LCD4LINUX_CONFIGURE_DRIVERS:= \
131 $(foreach c, $(LCD4LINUX_DRIVERS), \
132 $(if $(CONFIG_LCD4LINUX_DRV_$(c)),$(c),) \
135 LCD4LINUX_CONFIGURE_PLUGINS:= \
136 $(foreach c, $(LCD4LINUX_PLUGINS), \
137 $(if $(CONFIG_LCD4LINUX_PLUGIN_$(c)),$(c),) \
140 ifneq ($(CONFIG_LCD4LINUX_DRV_PNG),)
141 PKG_BUILD_DEPENDS += libgd
144 ifneq ($(CONFIG_LCD4LINUX_DRV_PPM),)
145 PKG_BUILD_DEPENDS += libgd
148 ifneq ($(CONFIG_LCD4LINUX_DRV_G15),)
149 PKG_BUILD_DEPENDS += libgd
152 ifneq ($(CONFIG_LCD4LINUX_DRV_LPH7508),)
153 PKG_BUILD_DEPENDS += libgd
156 ifneq ($(CONFIG_LCD4LINUX_DRV_LUIse),)
157 PKG_BUILD_DEPENDS += libgd
160 ifneq ($(CONFIG_LCD4LINUX_DRV_Noritake),)
161 PKG_BUILD_DEPENDS += libgd
164 ifneq ($(CONFIG_LCD4LINUX_DRV_serdisplib),)
165 PKG_BUILD_DEPENDS += libgd, serdisplib
168 ifneq ($(CONFIG_LCD4LINUX_DRV_st2205),)
169 PKG_BUILD_DEPENDS += libgd, st2205tool
172 ifneq ($(CONFIG_LCD4LINUX_DRV_T6963),)
173 PKG_BUILD_DEPENDS += libgd
176 ifneq ($(CONFIG_LCD4LINUX_DRV_Curses),)
177 PKG_BUILD_DEPENDS += libncurses
180 ifneq ($(CONFIG_LCD4LINUX_DRV_VNC),)
181 PKG_BUILD_DEPENDS += libvncserver
184 ifneq ($(CONFIG_LCD4LINUX_DRV_X11),)
185 PKG_BUILD_DEPENDS += libgd, libX11
188 ifneq ($(CONFIG_LCD4LINUX_PLUGIN_gps),)
189 PKG_BUILD_DEPENDS += libnmeap
192 ifneq ($(CONFIG_LCD4LINUX_PLUGIN_iconv),)
193 PKG_BUILD_DEPENDS += libiconv
196 ifneq ($(CONFIG_LCD4LINUX_PLUGIN_mysql),)
197 PKG_BUILD_DEPENDS += libmysqlclient
200 # XXX: lcd4linux needs at least one driver and one plugin, if none are selected, build'em all
201 ifeq ($(strip $(LCD4LINUX_CONFIGURE_DRIVERS)),)
202 LCD4LINUX_CONFIGURE_DRIVERS:=all
204 ifeq ($(strip $(LCD4LINUX_CONFIGURE_PLUGINS)),)
205 LCD4LINUX_CONFIGURE_PLUGINS:=all
208 ## TODO PYTHON PLUGIN, DEPENDS on ver >= '2.1.0'
211 EXTRA_CFLAGS+= $(TARGET_CPPFLAGS) -I$(STAGING_DIR)/usr/lib/libiconv/include
212 EXTRA_LDFLAGS+= $(TARGET_LDFLAGS) -Wl,-rpath-link,$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/usr/lib/libiconv/lib
214 TARGET_CONFIGURE_OPTS+=\
215 CC="$(TARGET_CC) $(EXTRA_CFLAGS) $(EXTRA_LDFLAGS)"
221 --with-drivers="$(strip $(LCD4LINUX_CONFIGURE_DRIVERS))" \
222 --with-plugins="$(strip $(LCD4LINUX_CONFIGURE_PLUGINS))" \
226 $(MAKE) -C $(PKG_BUILD_DIR) DESTDIR="$(PKG_INSTALL_DIR)" all install
229 define Package/lcd4linux/install
230 $(INSTALL_DIR) $(1)/usr/bin
231 $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_NAME) $(1)/usr/bin/
232 $(INSTALL_DIR) $(1)/etc
233 $(INSTALL_CONF) ./files/$(PKG_NAME).conf $(1)/etc/$(PKG_NAME).conf
234 $(INSTALL_DIR) $(1)/etc/init.d
235 $(INSTALL_BIN) ./files/$(PKG_NAME).init $(1)/etc/init.d/$(PKG_NAME)
238 $(eval $(call BuildPackage,lcd4linux))