serdisplib: add package
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
This commit is contained in:
parent
b79d82043a
commit
bf033c622a
3 changed files with 121 additions and 0 deletions
76
libs/serdisplib/Makefile
Normal file
76
libs/serdisplib/Makefile
Normal file
|
@ -0,0 +1,76 @@
|
||||||
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
|
PKG_NAME:=serdisplib
|
||||||
|
PKG_VERSION:=2.01
|
||||||
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
|
PKG_SOURCE_URL:=@SF/serdisplib
|
||||||
|
PKG_HASH:=a0a4eb6339de33f694e8eec1731bbe31789493434f747998a8788c2d0e6c324b
|
||||||
|
PKG_LICENSE:=GPL-2.0
|
||||||
|
PLG_LICENSE_FILES:=COPYING
|
||||||
|
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
|
||||||
|
|
||||||
|
PKG_FIXUP:=libtool
|
||||||
|
|
||||||
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
|
CONFIGURE_ARGS += --enable-dynloading --disable-statictools
|
||||||
|
|
||||||
|
define Package/serdisplib
|
||||||
|
SECTION:=libs
|
||||||
|
CATEGORY:=Libraries
|
||||||
|
TITLE:=serdisplib
|
||||||
|
URL:=http://serdisplib.sourceforge.net/
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/serdisplib/description
|
||||||
|
serdisplib started as a library to drive serial displays with
|
||||||
|
built-in controllers. It can optionally dynamically link with
|
||||||
|
libusb-compat, libgd and libpthread, some features require having
|
||||||
|
those packages installed as well.
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/serdisplib-tools
|
||||||
|
SECTION:=utils
|
||||||
|
CATEGORY:=Utilities
|
||||||
|
TITLE:=serdisplib tools
|
||||||
|
URL:=http://serdisplib.sourceforge.net/
|
||||||
|
DEPENDS:=+serdisplib +libgd
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/serdisplib-tools/description
|
||||||
|
serdisplib started as a library to drive serial displays with
|
||||||
|
built-in controllers. This package contains tools for serdisplib:
|
||||||
|
* l4m132c_tool
|
||||||
|
* l4m320t_tool
|
||||||
|
* multidisplay
|
||||||
|
* sdcmegtron_tool
|
||||||
|
* touchscreen_tool
|
||||||
|
endef
|
||||||
|
|
||||||
|
TARGET_CFLAGS += $(FPIC)
|
||||||
|
|
||||||
|
define Build/InstallDev
|
||||||
|
$(INSTALL_DIR) $(1)/usr/include/serdisplib
|
||||||
|
$(CP) $(PKG_BUILD_DIR)/include/serdisplib/*.h $(1)/usr/include/serdisplib
|
||||||
|
$(INSTALL_DIR) $(1)/usr/lib
|
||||||
|
$(CP) $(PKG_BUILD_DIR)/lib/*.{a,so*} $(1)/usr/lib/
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/serdisplib/install
|
||||||
|
$(INSTALL_DIR) $(1)/usr/lib
|
||||||
|
$(CP) $(PKG_BUILD_DIR)/lib/*.so* $(1)/usr/lib/
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/serdisplib-tools/install
|
||||||
|
$(INSTALL_DIR) $(1)/usr/bin
|
||||||
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/l4m132c_tool $(1)/usr/bin
|
||||||
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/l4m320t_tool $(1)/usr/bin
|
||||||
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/multidisplay $(1)/usr/bin
|
||||||
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/sdcmegtron_tool $(1)/usr/bin
|
||||||
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/tools/touchscreen_tool $(1)/usr/bin
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call BuildPackage,serdisplib))
|
||||||
|
$(eval $(call BuildPackage,serdisplib-tools))
|
22
libs/serdisplib/patches/001-fix-static-libary-build.patch
Normal file
22
libs/serdisplib/patches/001-fix-static-libary-build.patch
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
Index: serdisplib-2.01/src/Makefile.in
|
||||||
|
===================================================================
|
||||||
|
--- serdisplib-2.01.orig/src/Makefile.in
|
||||||
|
+++ serdisplib-2.01/src/Makefile.in
|
||||||
|
@@ -28,7 +28,7 @@ includedir = @includedir@
|
||||||
|
datarootdir = @datarootdir@
|
||||||
|
|
||||||
|
CC=@CC@
|
||||||
|
-AR=@AR@ -r
|
||||||
|
+AR=@AR@
|
||||||
|
LN_S=@LN_S@
|
||||||
|
INSTALL=@INSTALL@
|
||||||
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||||
|
@@ -180,7 +180,7 @@ programs: $(PROGRAMS)
|
||||||
|
|
||||||
|
$(LIB_DIR)/$(LIB_STATIC): $(LIB_OBJECTS)
|
||||||
|
$(top_srcdir)/mkinstalldirs $(top_srcdir)/lib
|
||||||
|
- $(AR) $(LIB_DIR)/$(LIB_STATIC) $(LIB_OBJECTS)
|
||||||
|
+ $(AR) -r -- $(LIB_DIR)/$(LIB_STATIC) $(LIB_OBJECTS)
|
||||||
|
|
||||||
|
$(LIB_DIR)/$(LIB_SHARED): $(LIB_OBJECTS)
|
||||||
|
$(top_srcdir)/mkinstalldirs $(top_srcdir)/lib
|
23
libs/serdisplib/patches/002-allow-1bpp-framebuffer.patch
Normal file
23
libs/serdisplib/patches/002-allow-1bpp-framebuffer.patch
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
Index: serdisplib-2.01/src/serdisp_specific_framebuffer.c
|
||||||
|
===================================================================
|
||||||
|
--- serdisplib-2.01.orig/src/serdisp_specific_framebuffer.c
|
||||||
|
+++ serdisplib-2.01/src/serdisp_specific_framebuffer.c
|
||||||
|
@@ -306,13 +306,15 @@ serdisp_t* serdisp_framebuffer_setup(con
|
||||||
|
|
||||||
|
if (fb_success) {
|
||||||
|
/* check if colour mode is supported */
|
||||||
|
- if (! (vinfo.bits_per_pixel == 16 || vinfo.bits_per_pixel == 24 || vinfo.bits_per_pixel == 32) ) {
|
||||||
|
+ if (! (vinfo.bits_per_pixel == 1 ||vinfo.bits_per_pixel == 16 || vinfo.bits_per_pixel == 24 || vinfo.bits_per_pixel == 32) ) {
|
||||||
|
sd_error(SERDISP_ERUNTIME, "unsupported colour depth (%d)", vinfo.bits_per_pixel);
|
||||||
|
fb_success = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-
|
||||||
|
- dd->scrbuf_size = vinfo.xres * vinfo.yres * vinfo.bits_per_pixel/8;
|
||||||
|
+ if (vinfo.bits_per_pixel == 1)
|
||||||
|
+ dd->scrbuf_size = (vinfo.xres * vinfo.yres) / 8;
|
||||||
|
+ else
|
||||||
|
+ dd->scrbuf_size = vinfo.xres * vinfo.yres * vinfo.bits_per_pixel/8;
|
||||||
|
|
||||||
|
if (fb_success) {
|
||||||
|
/* map framebuffer device to memory */
|
Loading…
Reference in a new issue