-#
-# Copyright (C) 2006 OpenWrt.org
+#
+# Copyright (C) 2007-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
-# $Id$
include $(TOPDIR)/rules.mk
PKG_NAME:=lcd4linux
-PKG_VERSION:=0.10.0+cvs20051015
-PKG_RELEASE:=1
+PKG_REV:=1116
+PKG_VERSION:=r$(PKG_REV)
+PKG_RELEASE:=2
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_SOURCE_URL:=https://ssl.bulix.org/svn/lcd4linux/trunk/
+PKG_SOURCE_SUBDIR:=lcd4linux-$(PKG_VERSION)
+PKG_SOURCE_VERSION:=$(PKG_REV)
+PKG_SOURCE_PROTO:=svn
-PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).orig.tar.gz
-PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/l/lcd4linux/ \
- http://ftp.de.debian.org/debian/pool/main/l/lcd4linux/
-PKG_MD5SUM:=5b5ac629be4bb5c29104fb8f6b7fa444
-PKG_CAT:=zcat
+PKG_FIXUP:=libtool
+PKG_INSTALL:=1
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION).orig
+PKG_BUILD_DEPENDS:= \
+ libdbus \
+ libgd \
+ libiconv \
+ libmysqlclient \
+ libncurses \
+ libnmeap \
+ libsqlite3 \
+ libvncserver \
+ ppp \
+ serdisplib \
+ st2205tool \
+# libftdi \
+# libmpdclient \
+# libX11 \
+# python \
include $(INCLUDE_DIR)/package.mk
define Package/lcd4linux
SECTION:=utils
CATEGORY:=Utilities
- DEPENDS:=+libncurses
+ DEPENDS:= \
+ +LCD4LINUX_NEEDS_libdbus:libdbus \
+ +LCD4LINUX_NEEDS_libgd:libgd \
+ +LCD4LINUX_NEEDS_libiconv:libiconv \
+ +LCD4LINUX_NEEDS_libmysqlclient:libmysqlclient \
+ +LCD4LINUX_NEEDS_libncurses:libncurses \
+ +LCD4LINUX_NEEDS_libnmeap:libnmeap \
+ +LCD4LINUX_NEEDS_libsqlite3:libsqlite3 \
+ +LCD4LINUX_NEEDS_libusb:libusb \
+ +LCD4LINUX_NEEDS_libvncserver:libvncserver \
+ +LCD4LINUX_NEEDS_serdisplib:serdisplib \
+ +LCD4LINUX_NEEDS_st2205tool:st2205tool \
+# +LCD4LINUX_NEEDS_libftdi:libftdi \
+# +LCD4LINUX_NEEDS_libmpdclient:libmpdclient \
+# +LCD4LINUX_NEEDS_libX11:libX11 \
+# +LCD4LINUX_NEEDS_python:python
TITLE:=LCD display utility
- DESCRIPTION:=\
- LCD4Linux is a small program that grabs information from the kernel and \\\
- some subsystems and displays it on an external liquid crystal display.
URL:=http://lcd4linux.bulix.org/
+ MENU:=1
endef
-# commas are interpreted by the $(call ...) macro, so define an intermediate variable holding our drivers spec
-PKG_CONFIGURE_DRIVERS:=all,!PNG,!RouterBoard,!X11
-
-define Build/Configure
- (cd $(PKG_BUILD_DIR); touch \
- configure.in \
- aclocal.m4 \
- Makefile.in \
- configure \
- stamp-h.in \
- config.h.in \
- );
- $(call Build/Configure/Default, \
- --without-x \
- --with-drivers="$(PKG_CONFIGURE_DRIVERS)" \
- --with-plugins=wireless \
- )
+define Package/lcd4linux/config
+ menu "Configuration"
+ depends on PACKAGE_lcd4linux
+ source "$(SOURCE)/Config.in"
+ endmenu
+endef
+
+define Package/lcd4linux/description
+ LCD4Linux is a small program that grabs information from the kernel and
+ some subsystems and displays it on an external liquid crystal display.
endef
-define Build/Compile
- $(MAKE) -C $(PKG_BUILD_DIR)
+define Package/lcd4linux/conffiles
+/etc/lcd4linux.conf
endef
+LCD4LINUX_DRIVERS:= \
+ BeckmannEgle \
+ BWCT \
+ CrystalFontz \
+ Curses \
+ Cwlinux \
+ D4D \
+ EA232graphic \
+ G15 \
+ GLCD2USB \
+ IRLCD \
+ HD44780 \
+ HD44780-I2C \
+ LCD2USB \
+ LCDLinux \
+ LCDTerm \
+ LEDMatrix \
+ LPH7508 \
+ LUIse \
+ LW_ABP \
+ M50530 \
+ MatrixOrbital \
+ MatrixOrbitalGX \
+ MilfordInstruments \
+ Noritake \
+ NULL \
+ Pertelian \
+ PHAnderson \
+ PICGraphic \
+ picoLCD \
+ picoLCDGraphic \
+ PNG \
+ PPM \
+ RouterBoard \
+ serdisplib \
+ ShuttleVFD \
+ SimpleLCD \
+ st2205 \
+ T6963 \
+ Trefon \
+ ULA200 \
+ USBHUB \
+ USBLCD \
+ VNC \
+ WincorNixdorf \
+ X11 \
+
+LCD4LINUX_PLUGINS:= \
+ apm \
+ asterisk \
+ button_exec \
+ cpuinfo \
+ dbus \
+ diskstats \
+ dvb \
+ event \
+ exec \
+ fifo \
+ file \
+ gps \
+ hddtemp \
+ huawei \
+ i2c_sensors \
+ iconv \
+ imon \
+ isdn \
+ kvv \
+ loadavg \
+ netdev \
+ netinfo \
+ meminfo \
+ mpd \
+ mpris_dbus \
+ mysql \
+ netdev \
+ pop3 \
+ ppp \
+ proc_stat \
+ python \
+ qnaplog \
+ seti \
+ statfs \
+ uname \
+ uptime \
+ w1retap \
+ wireless \
+ xmms \
+
+LCD4LINUX_CONFIGURE_DRIVERS:= \
+ $(foreach c, $(LCD4LINUX_DRIVERS), \
+ $(if $(CONFIG_LCD4LINUX_DRV_$(c)),$(c),) \
+ )
+
+LCD4LINUX_CONFIGURE_PLUGINS:= \
+ $(foreach c, $(LCD4LINUX_PLUGINS), \
+ $(if $(CONFIG_LCD4LINUX_PLUGIN_$(c)),$(c),) \
+ )
+
+ifeq ($(CONFIG_LCD4LINUX_HAS_AT_LEAST_ONE_DRIVER),)
+ LCD4LINUX_CONFIGURE_DRIVERS:=Sample
+endif
+
+ifeq ($(CONFIG_LCD4LINUX_HAS_AT_LEAST_ONE_PLUGIN),)
+ LCD4LINUX_CONFIGURE_PLUGINS:=sample
+endif
+
+CONFIGURE_ARGS+= \
+ --disable-rpath \
+ --with-drivers="$(strip $(LCD4LINUX_CONFIGURE_DRIVERS))" \
+ --with-plugins="$(strip $(LCD4LINUX_CONFIGURE_PLUGINS))" \
+
+EXTRA_LDFLAGS+= -Wl,-rpath-link,$(STAGING_DIR)/usr/lib
+
+ifneq ($(CONFIG_LCD4LINUX_NEEDS_libiconv),)
+ CONFIGURE_ARGS+= \
+ --with-libiconv-prefix="$(STAGING_DIR)/usr/lib/libiconv"
+else
+ CONFIGURE_ARGS+= \
+ --without-libiconv-prefix
+endif
+
+ifneq ($(CONFIG_LCD4LINUX_NEEDS_libmysqlclient),)
+ EXTRA_LDFLAGS+= -L$(STAGING_DIR)/usr/lib/mysql
+endif
+
+ifneq ($(CONFIG_LCD4LINUX_NEEDS_python),)
+ CONFIGURE_ARGS+= --with-python
+else
+ CONFIGURE_ARGS+= --without-python
+endif
+
+ifneq ($(CONFIG_LCD4LINUX_NEEDS_libX11),)
+ CONFIGURE_ARGS+= --with-x
+else
+ CONFIGURE_ARGS+= --without-x
+endif
+
+
define Package/lcd4linux/install
$(INSTALL_DIR) $(1)/usr/bin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/lcd4linux $(1)/usr/bin/
+ $(CP) $(PKG_INSTALL_DIR)/usr/bin/lcd4linux $(1)/usr/bin/
+ $(INSTALL_DIR) $(1)/etc
+ $(INSTALL_CONF) ./files/lcd4linux.conf $(1)/etc/
+ $(INSTALL_DIR) $(1)/etc/init.d
+ $(INSTALL_BIN) ./files/lcd4linux.init $(1)/etc/init.d/lcd4linux
endef
$(eval $(call BuildPackage,lcd4linux))