lcdproc is a nice client\server software to control your serial\usb lcd. there are also lot of different clients compatible with lcdproc daemon. here my makefile:
#
# Copyright (C) 2006 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
# $Id: Makefile 5624 2006-11-23 00:29:07Z nbd $
include $(TOPDIR)/rules.mk
PKG_NAME:=lcdproc
PKG_VERSION:=0.5.2
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@SF/lcdproc
PKG_CAT:=zcat
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
include $(INCLUDE_DIR)/package.mk
define Package/lcdproc
SECTION:=net
CATEGORY:=Network
MENU:=1
TITLE:=LCD display driver daemon
DESCRIPTION:=\
This is a server suite including drivers for all kinds of nifty \\\
LCD displays. The server supports several serial devices: Matrix \\\
Orbital, Crystal Fontz, Bayrad, LB216, LCDM001 (kernelconcepts.de), \\\
Wirz-SLI and PIC-an-LCD; and some devices connected to the LPT port: \\\
HD44780, STV5730, T6963, SED1520 and SED1330. As of 0.4.4 some USB \\\
displays are also supported by the drivers CFonz633, CwLnx, and USBLCD. \\\
Various clients are available that display things like CPU load, system \\\
load, memory usage, uptime, and a lot more. Custom clients can be \\\
written using the simple client-server protocol and provided example \\\
code.
URL:=http://www.lcdproc.org/
endef
define Package/lcdproc/conffiles
/etc/LCDd.conf
endef
define Build/Configure
$(call Build/Configure/Default, \
--enable-drivers=CFontz \
--enable-libusb \
)
endef
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \
DESTDIR="$(PKG_INSTALL_DIR)" \
all install
endef
define BuildPlugin
define Package/$(1)/install
$(INSTALL_DIR) $$(1)/usr/lib/lcdproc/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/lcdproc/$(2).so $$(1)/usr/lib/lcdproc/
endef
$$(eval $$(call BuildPackage,$(1)))
endef
define Package/lcdproc/install
$(INSTALL_DIR) $(1)/usr/sbin/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/LCDd $(1)/usr/sbin/
$(INSTALL_DIR) $(1)/etc
$(INSTALL_CONF) $(PKG_BUILD_DIR)/LCDd.conf $(1)/etc/
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) $(PKG_BUILD_DIR)/scripts/debian/lcdproc.init $(1)/etc/init.d/lcdproc
$(INSTALL_DIR) $(1)/usr/lib/lcdproc/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/lcdproc/CFontz.so $(1)/usr/lib/lcdproc/
$(INSTALL_DIR) $(1)/usr/bin/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/lcdproc $(1)/usr/bin/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/fortune.pl $(1)/usr/bin/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/iosock.pl $(1)/usr/bin/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/lcdexec $(1)/usr/bin/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/tail.pl $(1)/usr/bin/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/lcdmetar.pl $(1)/usr/bin/
endef
$(eval $(call BuildPackage,lcdproc))
my lcd is from crystalfontz, to compile a different driver change
define Build/Configure
$(call Build/Configure/Default, \
--enable-drivers=CFontz \
--enable-libusb \
)
endef
and enable a different driver. the same easy step to adapt install definition