lede-packages-rs

git clone git://archive.git.mtrnord.blog/MTRNord/lede-packages-rs.git
Log | Files | Refs | README | LICENSE

Makefile (6734B)


      1 #
      2 # Copyright (C) 2007-2015 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:=lcd4linux
     11 PKG_REV:=1203
     12 PKG_VERSION:=r$(PKG_REV)
     13 PKG_RELEASE:=3
     14 
     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)
     19 PKG_SOURCE_PROTO:=svn
     20 
     21 LCD4LINUX_DRIVERS:= \
     22 	ASTUSB \
     23 	BeckmannEgle \
     24 	BWCT \
     25 	CrystalFontz \
     26 	Curses \
     27 	Cwlinux \
     28 	D4D \
     29 	DPF \
     30 	EA232graphic \
     31 	EFN \
     32 	FutabaVFD \
     33 	FW8888 \
     34 	G15 \
     35 	GLCD2USB \
     36 	IRLCD \
     37 	$(if $(CONFIG_BROKEN),HD44780) \
     38 	$(if $(CONFIG_BROKEN),HD44780-I2C) \
     39 	LCD2USB \
     40 	$(if $(CONFIG_BROKEN),LCDLinux) \
     41 	LCDTerm \
     42 	LEDMatrix \
     43 	LPH7508 \
     44 	$(if $(CONFIG_BROKEN),LUIse) \
     45 	LW_ABP \
     46 	M50530 \
     47 	MatrixOrbital \
     48 	MatrixOrbitalGX \
     49 	MilfordInstruments \
     50 	Newhaven \
     51 	Noritake \
     52 	NULL \
     53 	Pertelian \
     54 	PHAnderson \
     55 	PICGraphic \
     56 	picoLCD \
     57 	picoLCDGraphic \
     58 	PNG \
     59 	PPM \
     60 	$(if $(CONFIG_TARGET_rb532),RouterBoard) \
     61 	$(if $(CONFIG_BROKEN),SamsungSPF) \
     62 	ShuttleVFD \
     63 	SimpleLCD \
     64 	st2205 \
     65 	T6963 \
     66 	TeakLCM \
     67 	$(if $(CONFIG_TARGET_ar71xx),TEW673GRU) \
     68 	Trefon \
     69 	USBHUB \
     70 	USBLCD \
     71 	VNC \
     72 	WincorNixdorf \
     73 #	ULA200 \
     74 #	X11 \
     75 
     76 LCD4LINUX_PLUGINS:= \
     77 	apm \
     78 	asterisk \
     79 	button_exec \
     80 	cpuinfo \
     81 	dbus \
     82 	diskstats \
     83 	dvb \
     84 	event \
     85 	exec \
     86 	fifo \
     87 	file \
     88 	gps \
     89 	hddtemp \
     90 	huawei \
     91 	i2c_sensors \
     92 	iconv \
     93 	imon \
     94 	isdn \
     95 	kvv \
     96 	loadavg \
     97 	netdev \
     98 	netinfo \
     99 	meminfo \
    100 	mpd \
    101 	mpris_dbus \
    102 	mysql \
    103 	netdev \
    104 	pop3 \
    105 	ppp \
    106 	proc_stat \
    107 	qnaplog \
    108 	seti \
    109 	statfs \
    110 	uname \
    111 	uptime \
    112 	w1retap \
    113 	$(if $(CONFIG_BROKEN),wireless) \
    114 	xmms \
    115 #	python \
    116 
    117 PKG_FIXUP:=autoreconf
    118 PKG_INSTALL:=1
    119 
    120 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
    121 
    122 PKG_BUILD_DEPENDS:= \
    123 	libdbus \
    124 	libgd \
    125 	libmpdclient \
    126 	libmysqlclient \
    127 	libncurses \
    128 	libnmeap \
    129 	libsqlite3 \
    130 	ppp \
    131 #	libftdi \
    132 #	libX11 \
    133 #	python \
    134 
    135 PKG_CONFIG_DEPENDS:= \
    136 	$(patsubst %,CONFIG_LCD4LINUX_CUSTOM_DRIVER_%,$(LCD4LINUX_DRIVERS)) \
    137 	$(patsubst %,CONFIG_LCD4LINUX_CUSTOM_PLUGIN_%,$(LCD4LINUX_PLUGINS)) \
    138 
    139 include $(INCLUDE_DIR)/package.mk
    140 include $(INCLUDE_DIR)/nls.mk
    141 
    142 define Package/lcd4linux/Default
    143   SECTION:=utils
    144   CATEGORY:=Utilities
    145   PKG_MAINTAINER:=Jonathan McCrohan <jmccrohan@gmail.com>
    146   TITLE:=LCD display utility
    147   URL:=http://lcd4linux.bulix.org/
    148 endef
    149 
    150 define Package/lcd4linux/Default/description
    151  LCD4Linux is a small program that grabs information from the kernel and
    152  some subsystems and displays it on an external liquid crystal display.
    153 endef
    154 
    155 
    156 define Package/lcd4linux-custom
    157 $(call Package/lcd4linux/Default)
    158   DEPENDS:= \
    159 	+LCD4LINUX_CUSTOM_NEEDS_libdbus:libdbus \
    160 	+LCD4LINUX_CUSTOM_NEEDS_libgd:libgd \
    161 	$(if $(ICONV_FULL),+LCD4LINUX_CUSTOM_NEEDS_libiconv:libiconv-full) \
    162 	+LCD4LINUX_CUSTOM_NEEDS_libjpeg:libjpeg \
    163 	+LCD4LINUX_CUSTOM_NEEDS_libmpdclient:libmpdclient \
    164 	+LCD4LINUX_CUSTOM_NEEDS_libmysqlclient:libmysqlclient \
    165 	+LCD4LINUX_CUSTOM_NEEDS_libncurses:libncurses \
    166 	+LCD4LINUX_CUSTOM_NEEDS_libsqlite3:libsqlite3 \
    167 	+LCD4LINUX_CUSTOM_NEEDS_libusb:libusb-compat \
    168 #	+LCD4LINUX_CUSTOM_NEEDS_libftdi:libftdi \
    169 #	+LCD4LINUX_CUSTOM_NEEDS_libX11:libX11 \
    170 #	+LCD4LINUX_CUSTOM_NEEDS_python:python
    171   MENU:=1
    172   PROVIDES:=lcd4linux
    173   VARIANT=custom
    174 endef
    175 
    176 define Package/lcd4linux-custom/config
    177 	source "$(SOURCE)/Config.in"
    178 endef
    179 
    180 define Package/lcd4linux-custom/description
    181 $(call Package/lcd4linux/Default/description)
    182  .
    183  This package contains a customized version of LCD4Linux.
    184 endef
    185 
    186 
    187 define Package/lcd4linux-full
    188 $(call Package/lcd4linux/Default)
    189   DEPENDS:= @DEVEL \
    190 	+libdbus \
    191 	+libgd \
    192 	$(if $(ICONV_FULL),+libiconv-full) \
    193 	+libmpdclient \
    194 	+libmysqlclient \
    195 	+libncurses \
    196 	+libsqlite3 \
    197 	+libusb-compat \
    198 #	+libftdi \
    199 #	+libX11 \
    200 #	+python
    201   PROVIDES:=lcd4linux
    202   VARIANT=full
    203 endef
    204 
    205 define Package/lcd4linux-full/description
    206 $(call Package/lcd4linux/Default/description)
    207  .
    208  This package contains a version of LCD4Linux built with all supported
    209  drivers and plugins.
    210 endef
    211 
    212 
    213 CONFIGURE_ARGS+= \
    214 	--disable-rpath \
    215 
    216 EXTRA_LDFLAGS+= -Wl,-rpath-link,$(STAGING_DIR)/usr/lib
    217 
    218 ifeq ($(BUILD_VARIANT),custom)
    219 
    220   LCD4LINUX_CUSTOM_DRIVERS:= $(strip $(foreach c, $(LCD4LINUX_DRIVERS), \
    221     $(if $(CONFIG_LCD4LINUX_CUSTOM_DRIVER_$(c)),$(c),) \
    222  ))
    223   ifeq ($(LCD4LINUX_CUSTOM_DRIVERS),)
    224     LCD4LINUX_CUSTOM_DRIVERS:=Sample
    225   endif
    226 
    227   LCD4LINUX_CUSTOM_PLUGINS:= $(strip $(foreach c, $(LCD4LINUX_PLUGINS), \
    228     $(if $(CONFIG_LCD4LINUX_CUSTOM_PLUGIN_$(c)),$(c)) \
    229   ))
    230   ifeq ($(LCD4LINUX_CUSTOM_PLUGINS),)
    231     LCD4LINUX_CUSTOM_PLUGINS:=sample
    232   endif
    233 
    234   CONFIGURE_ARGS+= \
    235 	--with-drivers="$(LCD4LINUX_CUSTOM_DRIVERS)" \
    236 	--with-plugins="$(LCD4LINUX_CUSTOM_PLUGINS)" \
    237 
    238   ifneq ($(CONFIG_LCD4LINUX_CUSTOM_NEEDS_libiconv),)
    239     CONFIGURE_ARGS+= --with-libiconv-prefix="$(ICONV_PREFIX)"
    240   else
    241     CONFIGURE_ARGS+= --without-libiconv-prefix
    242   endif
    243 
    244   ifneq ($(CONFIG_LCD4LINUX_CUSTOM_NEEDS_libmysqlclient),)
    245     EXTRA_LDFLAGS+= -L$(STAGING_DIR)/usr/lib/mysql
    246   endif
    247 
    248 #  ifneq ($(CONFIG_LCD4LINUX_CUSTOM_NEEDS_python),)
    249 #    CONFIGURE_ARGS+= --with-python
    250 #  else
    251     CONFIGURE_ARGS+= --without-python
    252 #  endif
    253 
    254 #  ifneq ($(CONFIG_LCD4LINUX_CUSTOM_NEEDS_libX11),)
    255 #    CONFIGURE_ARGS+= --with-x
    256 #  else
    257     CONFIGURE_ARGS+= --without-x
    258 #  endif
    259 
    260 endif
    261 
    262 ifeq ($(BUILD_VARIANT),full)
    263 
    264   LCD4LINUX_FULL_DRIVERS:= $(strip $(foreach c, $(LCD4LINUX_DRIVERS), \
    265     $(c) \
    266   ))
    267 
    268   LCD4LINUX_FULL_PLUGINS:= $(strip $(foreach c, $(LCD4LINUX_PLUGINS), \
    269     $(c) \
    270   ))
    271 
    272   CONFIGURE_ARGS+= \
    273 	--with-drivers="$(LCD4LINUX_FULL_DRIVERS)" \
    274 	--with-plugins="$(LCD4LINUX_FULL_PLUGINS)" \
    275 	--with-libiconv-prefix="$(ICONV_PREFIX)" \
    276 	--without-python \
    277 	--without-x \
    278 
    279   EXTRA_LDFLAGS+= -L$(STAGING_DIR)/usr/lib/mysql
    280 
    281 endif
    282 
    283 
    284 define Package/lcd4linux/conffiles
    285 /etc/lcd4linux.conf
    286 endef
    287 
    288 define Package/lcd4linux/install
    289 	$(INSTALL_DIR) $(1)/usr/bin
    290 	$(CP) $(PKG_INSTALL_DIR)/usr/bin/lcd4linux $(1)/usr/bin/
    291 	$(INSTALL_DIR) $(1)/etc
    292 	$(INSTALL_CONF) $(PKG_BUILD_DIR)/lcd4linux.conf.sample $(1)/etc/lcd4linux.conf
    293 	$(INSTALL_DIR) $(1)/etc/init.d
    294 	$(INSTALL_BIN) ./files/lcd4linux.init $(1)/etc/init.d/lcd4linux
    295 	$(SED) "s|^\(Display 'GLCD2USB'\)|#\1|g" \
    296 	    -e "s|^\(Layout 'TestLayer'\)|#\1|g" \
    297 	    -e "s|^#\(Display 'Image'\)|\1|g" \
    298 	    -e "s|^#\(Layout 'Default'\)|\1|g" \
    299 	     $(1)/etc/lcd4linux.conf
    300 endef
    301 
    302 Package/lcd4linux-custom/conffiles = $(Package/lcd4linux/conffiles)
    303 Package/lcd4linux-custom/install = $(Package/lcd4linux/install)
    304 
    305 Package/lcd4linux-full/conffiles = $(Package/lcd4linux/conffiles)
    306 Package/lcd4linux-full/install = $(Package/lcd4linux/install)
    307 
    308 $(eval $(call BuildPackage,lcd4linux-custom))
    309 $(eval $(call BuildPackage,lcd4linux-full))