+++ /dev/null
---- a/plugin_netinfo.c
-+++ b/plugin_netinfo.c
-@@ -264,7 +264,7 @@ static void my_netmask_short(RESULT * re
- sin = get_netmask(arg1);
- if (NULL != sin) {
- logval = (long double) (get_netmask(arg1)->sin_addr.s_addr);
-- netlen = (int) rint(log2l(logval) / log2l(2.0));
-+ netlen = (int) rint(log2f(logval) / log2f(2.0));
- qprintf(value, sizeof(value), "/%d", netlen);
- } else {
- qprintf(value, sizeof(value), "/?");
+++ /dev/null
-diff -rupN --exclude=.svn --exclude='*.conf' --exclude='*.png' --exclude=Makefile.in --exclude=config.h.in --exclude=aclocal.m4 --exclude=autom4te.cache --exclude=ltmain.sh --exclude=libtool.m4 --exclude=ltoptions.m4 --exclude=ltsugar.m4 lcd4linux.orig/configure.in lcd4linux/configure.in
---- lcd4linux.orig/configure.in 2011-12-04 15:57:35.997025040 +0000
-+++ lcd4linux/configure.in 2011-12-04 15:59:23.887081508 +0000
-@@ -84,6 +84,9 @@ AC_CHECK_HEADERS(serdisplib/serdisp.h, [
- # check for st2205 libs
- AC_CHECK_HEADERS(st2205.h, [has_st2205="true"], [has_st2205="false"])
-
-+# check for dpf libs
-+AC_CHECK_HEADERS(dpf.h, [has_dpf="true"], [has_dpf="false"])
-+
- # check for vncserver libs
- AC_CHECK_HEADERS(rfb/rfb.h, [has_vncserverlib="true"], [has_vncserverlib="false"])
-
-diff -rupN --exclude=.svn --exclude='*.conf' --exclude='*.png' --exclude=Makefile.in --exclude=config.h.in --exclude=aclocal.m4 --exclude=autom4te.cache --exclude=ltmain.sh --exclude=libtool.m4 --exclude=ltoptions.m4 --exclude=ltsugar.m4 lcd4linux.orig/drivers.m4 lcd4linux/drivers.m4
---- lcd4linux.orig/drivers.m4 2011-12-04 15:57:35.947025812 +0000
-+++ lcd4linux/drivers.m4 2011-12-04 15:59:23.897079477 +0000
-@@ -32,7 +32,7 @@ AC_ARG_WITH(
- [ drivers may be excluded with 'all,!<driver>',]
- [ (try 'all,\!<driver>' if your shell complains...)]
- [ possible drivers are:]
-- [ ASTUSB, BeckmannEgle, BWCT, CrystalFontz, Curses, Cwlinux, D4D,]
-+ [ ASTUSB, BeckmannEgle, BWCT, CrystalFontz, Curses, Cwlinux, D4D, DPF]
- [ EA232Graphic, EFN, FW8888, G15, GLCD2USB, HD44780, HD44780-I2C,]
- [ IRLCD, LCD2USB, LCDLinux, LEDMatrix, LCDTerm, LPH7508, LUIse,]
- [ LW_ABP, M50530, MatrixOrbital, MatrixOrbitalGX, MilfordInstruments, MDM166A,]
-@@ -67,6 +67,7 @@ for driver in $drivers; do
- CURSES="yes"
- CWLINUX="yes"
- D4D="yes"
-+ DPF="yes"
- EA232graphic="yes"
- EFN="yes"
- FW8888="yes"
-@@ -133,6 +134,9 @@ for driver in $drivers; do
- D4D)
- D4D=$val
- ;;
-+ DPF)
-+ DPF=$val
-+ ;;
- EA232graphic)
- EA232graphic=$val
- ;;
-@@ -361,6 +365,17 @@ if test "$D4D" = "yes"; then
- AC_DEFINE(WITH_D4D,1,[D4D driver])
- fi
-
-+if test "$DPF" = "yes"; then
-+ if test "$has_dpf" = "true"; then
-+ GRAPHIC="yes"
-+ DRIVERS="$DRIVERS drv_dpf.o"
-+ DRVLIBS="$DRVLIBS -L/usr/local/lib -ldpf -lusb"
-+ AC_DEFINE(WITH_DPF,1,[DPF driver])
-+ else
-+ AC_MSG_WARN(dpf.h not found: DPF driver disabled)
-+ fi
-+fi
-+
- if test "$EA232graphic" = "yes"; then
- GRAPHIC="yes"
- SERIAL="yes"
-@@ -728,6 +743,7 @@ if test "$ST2205" = "yes"; then
- fi
- fi
-
-+
- if test "$T6963" = "yes"; then
- if test "$has_parport" = "true"; then
- GRAPHIC="yes"
-diff -rupN --exclude=.svn --exclude='*.conf' --exclude='*.png' --exclude=Makefile.in --exclude=config.h.in --exclude=aclocal.m4 --exclude=autom4te.cache --exclude=ltmain.sh --exclude=libtool.m4 --exclude=ltoptions.m4 --exclude=ltsugar.m4 lcd4linux.orig/drv.c lcd4linux/drv.c
---- lcd4linux.orig/drv.c 2011-12-04 15:57:39.747027340 +0000
-+++ lcd4linux/drv.c 2011-12-04 15:59:23.967078308 +0000
-@@ -54,6 +54,7 @@ extern DRIVER drv_Crystalfontz;
- extern DRIVER drv_Curses;
- extern DRIVER drv_Cwlinux;
- extern DRIVER drv_D4D;
-+extern DRIVER drv_DPF;
- extern DRIVER drv_EA232graphic;
- extern DRIVER drv_EFN;
- extern DRIVER drv_FW8888;
-@@ -127,6 +128,9 @@ DRIVER *Driver[] = {
- #ifdef WITH_D4D
- &drv_D4D,
- #endif
-+#ifdef WITH_DPF
-+ &drv_DPF,
-+#endif
- #ifdef WITH_EA232graphic
- &drv_EA232graphic,
- #endif
-diff -rupN --exclude=.svn --exclude='*.conf' --exclude='*.png' --exclude=Makefile.in --exclude=config.h.in --exclude=aclocal.m4 --exclude=autom4te.cache --exclude=ltmain.sh --exclude=libtool.m4 --exclude=ltoptions.m4 --exclude=ltsugar.m4 lcd4linux.orig/drv_dpf.c lcd4linux/drv_dpf.c
---- lcd4linux.orig/drv_dpf.c 1970-01-01 00:00:00.000000000 +0000
-+++ lcd4linux/drv_dpf.c 2011-12-04 15:59:23.987079550 +0000
-@@ -0,0 +1,284 @@
-+/* $Id: drv_dpf.c 980 2009-01-28 21:18:52Z michux $
-+ * $URL: https://ssl.bulix.org/svn/lcd4linux/trunk/drv_dpf.c $
-+ *
-+ * Very basic hacked picture frame driver. Uses external libdpf.
-+ * This is a first working approach for AX206 based DPFs. In future,
-+ * more DPFs might be covered by that library. Work in progress.
-+ *
-+ * See http://tech.section5.ch/news/?p=68 for more info.
-+ *
-+ * Copyright (C) 2008 Jeroen Domburg <picframe@spritesmods.com>
-+ * Modified from sample code by:
-+ * Copyright (C) 2005 Michael Reinelt <michael@reinelt.co.at>
-+ * Copyright (C) 2005, 2006, 2007 The LCD4Linux Team <lcd4linux-devel@users.sourceforge.net>
-+ * Mods by <hackfin@section5.ch>
-+ *
-+ * This file is part of LCD4Linux.
-+ *
-+ * LCD4Linux is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2, or (at your option)
-+ * any later version.
-+ *
-+ * LCD4Linux is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-+ *
-+ */
-+
-+/*
-+ *
-+ * exported fuctions:
-+ *
-+ * struct DRIVER drv_DPF
-+ *
-+ */
-+
-+#include "config.h"
-+
-+#include <stdlib.h>
-+#include <stdio.h>
-+#include <unistd.h>
-+#include <string.h>
-+#include <errno.h>
-+
-+#include "dpf.h"
-+
-+#include "debug.h"
-+#include "cfg.h"
-+#include "qprintf.h"
-+#include "udelay.h"
-+#include "plugin.h"
-+#include "widget.h"
-+#include "widget_text.h"
-+#include "widget_icon.h"
-+#include "widget_bar.h"
-+#include "drv.h"
-+
-+#include "drv_generic_graphic.h"
-+
-+static char Name[] = "DPF";
-+
-+static DPFContext *g_h;
-+
-+/* Display data */
-+static unsigned char *g_fb;
-+
-+static int drv_dpf_open(const char *section)
-+{
-+ int error;
-+ char *dev;
-+ int i;
-+ DPFValue val;
-+
-+ // Currently, the Port specification is unused.
-+
-+ dev = cfg_get(section, "Port", NULL);
-+ if (dev == NULL || *dev == '\0') {
-+ error("dpf: no '%s.Port' entry from %s", section, cfg_source());
-+ return -1;
-+ }
-+
-+ error = dpf_open(dev, &g_h);
-+ if (error < 0) {
-+ error("dpf: cannot open dpf device %s", dev);
-+ return -1;
-+ }
-+
-+ val.type = TYPE_INTEGER;
-+
-+ if (cfg_number(section, "Orientation", 0, 0, 3, &i) > 0) {
-+ val.value.integer = i;
-+ dpf_setproperty(g_h, PROPERTY_ORIENTATION, &val);
-+ }
-+
-+ if (cfg_number(section, "Backlight", 0, 0, 7, &i) > 0) {
-+ val.value.integer = i;
-+ dpf_setproperty(g_h, PROPERTY_BRIGHTNESS, &val);
-+ }
-+
-+ return 0;
-+}
-+
-+
-+static int drv_dpf_close(void)
-+{
-+ dpf_close(g_h);
-+
-+ return 0;
-+}
-+
-+#define _RGB565_0(p) \
-+ (( ((p.R) & 0xf8) ) | (((p.G) & 0xe0) >> 5))
-+#define _RGB565_1(p) \
-+ (( ((p.G) & 0x1c) << 3 ) | (((p.B) & 0xf8) >> 3))
-+
-+static void drv_dpf_blit(const int row, const int col, const int height,
-+ const int width)
-+{
-+ int r, c;
-+ short rect[4];
-+ unsigned long i;
-+ RGBA p;
-+ unsigned char *pix;
-+
-+ pix = g_fb;
-+ for (r = row; r < row + height; r++) {
-+ for (c = col; c < col + width; c++) {
-+ p = drv_generic_graphic_rgb(r, c);
-+ *pix++ = _RGB565_0(p);
-+ *pix++ = _RGB565_1(p);
-+ }
-+ }
-+ rect[0] = col; rect[1] = row;
-+ rect[2] = col + width; rect[3] = row + height;
-+ dpf_screen_blit(g_h, g_fb, rect);
-+}
-+
-+
-+/* start graphic display */
-+static int drv_dpf_start2(const char *section)
-+{
-+ char *s;
-+
-+ s = cfg_get(section, "Font", "6x8");
-+ if (s == NULL || *s == '\0') {
-+ error("%s: no '%s.Font' entry from %s", Name, section, cfg_source());
-+ return -1;
-+ }
-+
-+ XRES = -1;
-+ YRES = -1;
-+ if (sscanf(s, "%dx%d", &XRES, &YRES) != 2 || XRES < 1 || YRES < 1) {
-+ error("%s: bad Font '%s' from %s", Name, s, cfg_source());
-+ return -1;
-+ }
-+
-+ /* Fixme: provider other fonts someday... */
-+ if (XRES != 6 && YRES != 8) {
-+ error("%s: bad Font '%s' from %s (only 6x8 at the moment)",
-+ Name, s, cfg_source());
-+ return -1;
-+ }
-+
-+
-+ /* open communication with the display */
-+ if (drv_dpf_open(section) < 0) {
-+ return -1;
-+ }
-+
-+ /* you surely want to allocate a framebuffer or something... */
-+ g_fb = malloc(g_h->height * g_h->width * g_h->bpp);
-+
-+ /* set width/height from dpf firmware specs */
-+ DROWS = g_h->height;
-+ DCOLS = g_h->width;
-+
-+ return 0;
-+}
-+
-+/****************************************/
-+/*** plugins ***/
-+/****************************************/
-+
-+static void plugin_backlight(RESULT * result, RESULT * arg1)
-+{
-+ DPFValue val;
-+
-+ val.type = TYPE_INTEGER;
-+ val.value.integer = R2N(arg1);
-+ printf("Setting brightness...\n");
-+ dpf_setproperty(g_h, PROPERTY_BRIGHTNESS, &val);
-+ SetResult(&result, R_NUMBER, &val.value.integer);
-+}
-+
-+
-+/****************************************/
-+/*** widget callbacks ***/
-+/****************************************/
-+
-+
-+/* using drv_generic_text_draw(W) */
-+/* using drv_generic_text_icon_draw(W) */
-+/* using drv_generic_text_bar_draw(W) */
-+/* using drv_generic_gpio_draw(W) */
-+
-+
-+/****************************************/
-+/*** exported functions ***/
-+/****************************************/
-+
-+
-+/* list models */
-+int drv_dpf_list(void)
-+{
-+ printf("generic hacked photo frame");
-+ return 0;
-+}
-+
-+
-+/* initialize driver & display */
-+int drv_dpf_init2(const char *section, const int quiet)
-+{
-+ int ret;
-+
-+ /* real worker functions */
-+ drv_generic_graphic_real_blit = drv_dpf_blit;
-+
-+ /* start display */
-+ if ((ret = drv_dpf_start2(section)) != 0)
-+ return ret;
-+
-+ /* initialize generic graphic driver */
-+ if ((ret = drv_generic_graphic_init(section, Name)) != 0)
-+ return ret;
-+
-+ if (!quiet) {
-+ char buffer[40];
-+ qprintf(buffer, sizeof(buffer), "%s %dx%d", Name, DCOLS, DROWS);
-+ if (drv_generic_graphic_greet(buffer, NULL)) {
-+ sleep(3);
-+ drv_generic_graphic_clear();
-+ }
-+ }
-+
-+ /* register plugins */
-+ AddFunction("LCD::backlight", 1, plugin_backlight);
-+
-+ return 0;
-+}
-+
-+
-+/* close driver & display */
-+int drv_dpf_quit2(const int quiet)
-+{
-+ info("%s: shutting down.", Name);
-+
-+ /* clear display */
-+ drv_generic_graphic_clear();
-+
-+ /* say goodbye... */
-+ if (!quiet) {
-+ drv_generic_graphic_greet("goodbye!", NULL);
-+ }
-+
-+ drv_generic_graphic_quit();
-+
-+ debug("closing connection");
-+ drv_dpf_close();
-+
-+ return (0);
-+}
-+
-+
-+DRIVER drv_DPF = {
-+ .name = Name,
-+ .list = drv_dpf_list,
-+ .init = drv_dpf_init2,
-+ .quit = drv_dpf_quit2,
-+};
-diff -rupN --exclude=.svn --exclude='*.conf' --exclude='*.png' --exclude=Makefile.in --exclude=config.h.in --exclude=aclocal.m4 --exclude=autom4te.cache --exclude=ltmain.sh --exclude=libtool.m4 --exclude=ltoptions.m4 --exclude=ltsugar.m4 lcd4linux.orig/m4/lt~obsolete.m4 lcd4linux/m4/lt~obsolete.m4
---- lcd4linux.orig/m4/lt~obsolete.m4 1970-01-01 00:00:00.000000000 +0000
-+++ lcd4linux/m4/lt~obsolete.m4 2011-12-04 15:59:23.997082130 +0000
-@@ -0,0 +1,92 @@
-+# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
-+#
-+# Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc.
-+# Written by Scott James Remnant, 2004.
-+#
-+# This file is free software; the Free Software Foundation gives
-+# unlimited permission to copy and/or distribute it, with or without
-+# modifications, as long as this notice is preserved.
-+
-+# serial 4 lt~obsolete.m4
-+
-+# These exist entirely to fool aclocal when bootstrapping libtool.
-+#
-+# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
-+# which have later been changed to m4_define as they aren't part of the
-+# exported API, or moved to Autoconf or Automake where they belong.
-+#
-+# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
-+# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
-+# using a macro with the same name in our local m4/libtool.m4 it'll
-+# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
-+# and doesn't know about Autoconf macros at all.)
-+#
-+# So we provide this file, which has a silly filename so it's always
-+# included after everything else. This provides aclocal with the
-+# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
-+# because those macros already exist, or will be overwritten later.
-+# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
-+#
-+# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
-+# Yes, that means every name once taken will need to remain here until
-+# we give up compatibility with versions before 1.7, at which point
-+# we need to keep only those names which we still refer to.
-+
-+# This is to help aclocal find these macros, as it can't see m4_define.
-+AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
-+
-+m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
-+m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
-+m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
-+m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
-+m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
-+m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
-+m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
-+m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
-+m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
-+m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
-+m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
-+m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
-+m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
-+m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
-+m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
-+m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
-+m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
-+m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
-+m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
-+m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
-+m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
-+m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
-+m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
-+m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
-+m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
-+m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
-+m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
-+m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
-+m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
-+m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
-+m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
-+m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
-+m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
-+m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
-+m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
-+m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
-+m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
-+m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
-+m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
-+m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
-+m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
-+m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
-+m4_ifndef([AC_LIBTOOL_RC], [AC_DEFUN([AC_LIBTOOL_RC])])
-+m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
-+m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
-+m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
-+m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
-+m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
-+m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
-+m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
-+m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
-+m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
-+m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
-+m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
-+m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
-diff -rupN --exclude=.svn --exclude='*.conf' --exclude='*.png' --exclude=Makefile.in --exclude=config.h.in --exclude=aclocal.m4 --exclude=autom4te.cache --exclude=ltmain.sh --exclude=libtool.m4 --exclude=ltoptions.m4 --exclude=ltsugar.m4 lcd4linux.orig/m4/ltversion.m4 lcd4linux/m4/ltversion.m4
---- lcd4linux.orig/m4/ltversion.m4 1970-01-01 00:00:00.000000000 +0000
-+++ lcd4linux/m4/ltversion.m4 2011-12-04 15:59:24.007079943 +0000
-@@ -0,0 +1,23 @@
-+# ltversion.m4 -- version numbers -*- Autoconf -*-
-+#
-+# Copyright (C) 2004 Free Software Foundation, Inc.
-+# Written by Scott James Remnant, 2004
-+#
-+# This file is free software; the Free Software Foundation gives
-+# unlimited permission to copy and/or distribute it, with or without
-+# modifications, as long as this notice is preserved.
-+
-+# Generated from ltversion.in.
-+
-+# serial 3012 ltversion.m4
-+# This file is part of GNU Libtool
-+
-+m4_define([LT_PACKAGE_VERSION], [2.2.6])
-+m4_define([LT_PACKAGE_REVISION], [1.3012])
-+
-+AC_DEFUN([LTVERSION_VERSION],
-+[macro_version='2.2.6'
-+macro_revision='1.3012'
-+_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
-+_LT_DECL(, macro_revision, 0)
-+])
-diff -rupN --exclude=.svn --exclude='*.conf' --exclude='*.png' --exclude=Makefile.in --exclude=config.h.in --exclude=aclocal.m4 --exclude=autom4te.cache --exclude=ltmain.sh --exclude=libtool.m4 --exclude=ltoptions.m4 --exclude=ltsugar.m4 lcd4linux.orig/Makefile.am lcd4linux/Makefile.am
---- lcd4linux.orig/Makefile.am 2011-12-04 15:57:38.117026720 +0000
-+++ lcd4linux/Makefile.am 2011-12-04 15:59:24.057077772 +0000
-@@ -78,6 +78,7 @@ drv_Crystalfontz.c \
- drv_Curses.c \
- drv_Cwlinux.c \
- drv_D4D.c \
-+drv_dpf.c \
- drv_EA232graphic.c \
- drv_EFN.c \
- drv_FW8888.c \
+++ /dev/null
-diff -rupN --exclude=.deps --exclude=.svn --exclude='*.conf' --exclude='*.png' --exclude=Makefile.in --exclude=config.h.in --exclude=aclocal.m4 --exclude=autom4te.cache --exclude=ltmain.sh --exclude=libtool.m4 --exclude=ltoptions.m4 --exclude=ltsugar.m4 --exclude=ltversion.m4 --exclude='lt~obsolete.m4' --exclude=configure --exclude=Makefile --exclude=config.h --exclude=config.log --exclude=config.status --exclude=libdpf --exclude=stamp-h1 --exclude=svn_version.h --exclude=.cvsignore lcd4linux-svn1168/drivers.m4 lcd4linux/drivers.m4
---- lcd4linux-svn1168/drivers.m4 2012-01-14 20:03:27.316541947 +0000
-+++ lcd4linux/drivers.m4 2012-01-15 00:43:06.607565000 +0000
-@@ -369,7 +369,7 @@ if test "$DPF" = "yes"; then
- if test "$has_libdpf" = "true"; then
- GRAPHIC="yes"
- DRIVERS="$DRIVERS drv_dpf.o"
-- DRVLIBS="$DRVLIBS -Llibdpf -ldpf -lusb"
-+ DRVLIBS="$DRVLIBS -Llibdpf $DPF_LDFLAGS -ldpf -lusb"
- AC_DEFINE(WITH_DPF,1,[DPF driver])
- else
- AC_MSG_WARN(libdpf.h not found: DPF driver disabled)
-diff -rupN --exclude=.deps --exclude=.svn --exclude='*.conf' --exclude='*.png' --exclude=Makefile.in --exclude=config.h.in --exclude=aclocal.m4 --exclude=autom4te.cache --exclude=ltmain.sh --exclude=libtool.m4 --exclude=ltoptions.m4 --exclude=ltsugar.m4 --exclude=ltversion.m4 --exclude='lt~obsolete.m4' --exclude=configure --exclude=Makefile --exclude=config.h --exclude=config.log --exclude=config.status --exclude=libdpf --exclude=stamp-h1 --exclude=svn_version.h --exclude=.cvsignore lcd4linux-svn1168/drv_dpf.c lcd4linux/drv_dpf.c
---- lcd4linux-svn1168/drv_dpf.c 2012-01-14 20:03:29.155625357 +0000
-+++ lcd4linux/drv_dpf.c 2012-01-14 22:15:06.017475000 +0000
-@@ -72,6 +72,8 @@ static int drv_dpf_open(const char *sect
- {
- int error;
- char *dev;
-+ int i;
-+ DPFValue val;
-
- // Currently, the Port specification is unused.
-
-@@ -81,12 +83,24 @@ static int drv_dpf_open(const char *sect
- return -1;
- }
-
-- error = dpf_open(NULL, &g_h);
-+ error = dpf_open(dev, &g_h);
- if (error < 0) {
- error("dpf: cannot open dpf device %s", dev);
- return -1;
- }
-
-+ val.type = TYPE_INTEGER;
-+
-+ if (cfg_number(section, "Orientation", 0, 0, 3, &i) > 0) {
-+ val.value.integer = i;
-+ dpf_setproperty(g_h, PROPERTY_ORIENTATION, &val);
-+ }
-+
-+ if (cfg_number(section, "Backlight", 0, 0, 7, &i) > 0) {
-+ val.value.integer = i;
-+ dpf_setproperty(g_h, PROPERTY_BRIGHTNESS, &val);
-+ }
-+
- return 0;
- }
-
-@@ -171,6 +185,16 @@ static int drv_dpf_start2(const char *se
- /*** plugins ***/
- /****************************************/
-
-+void dpf_backlight(DPFContext *g_h, int bl_on)
-+{
-+ DPFValue val;
-+
-+ val.type = TYPE_INTEGER;
-+ val.value.integer = bl_on;
-+ printf("Setting brightness...\n");
-+ dpf_setproperty(g_h, PROPERTY_BRIGHTNESS, &val);
-+}
-+
- static void plugin_backlight(RESULT * result, RESULT * arg1)
- {
- int bl_on;
-diff -rupN --exclude=.deps --exclude=.svn --exclude='*.conf' --exclude='*.png' --exclude=Makefile.in --exclude=config.h.in --exclude=aclocal.m4 --exclude=autom4te.cache --exclude=ltmain.sh --exclude=libtool.m4 --exclude=ltoptions.m4 --exclude=ltsugar.m4 --exclude=ltversion.m4 --exclude='lt~obsolete.m4' --exclude=configure --exclude=Makefile --exclude=config.h --exclude=config.log --exclude=config.status --exclude=libdpf --exclude=stamp-h1 --exclude=svn_version.h --exclude=.cvsignore lcd4linux-svn1168/plugins.m4 lcd4linux/plugins.m4
---- lcd4linux-svn1168/plugins.m4 2012-01-14 20:03:29.075661548 +0000
-+++ lcd4linux/plugins.m4 2012-01-14 21:37:55.249333000 +0000
-@@ -539,7 +539,7 @@ if test "$PLUGIN_PYTHON" = "yes"; then
- if test "$with_python" != "yes"; then
- AC_MSG_WARN(python support not enabled: python plugin disabled (use --with-python to enable))
- else
-- if test -z "$python_path"; then
-+ if test -z "$PYTHON_CPPFLAGS"; then
- AC_MSG_WARN(python headers not found: python plugin disabled)
- else
- PLUGINS="$PLUGINS plugin_python.o"
+++ /dev/null
-diff -ruN '--exclude=.svn' lcd4linux-svn1179/drv_SamsungSPF.c lcd4linux/drv_SamsungSPF.c
---- lcd4linux-svn1179/drv_SamsungSPF.c 2012-02-26 22:17:04.000000000 +0100
-+++ lcd4linux/drv_SamsungSPF.c 2012-02-26 23:31:06.000000000 +0100
-@@ -52,6 +52,7 @@
-
- /* graphic display? */
- #include "drv_generic_graphic.h"
-+#include "jpeg_mem_dest.h"
-
- // Drivername for verbose output
- static char Name[] = "SamsungSPF";
-diff -ruN '--exclude=.svn' lcd4linux-svn1179/jpeg_mem_dest.h lcd4linux/jpeg_mem_dest.h
---- lcd4linux-svn1179/jpeg_mem_dest.h 1970-01-01 01:00:00.000000000 +0100
-+++ lcd4linux/jpeg_mem_dest.h 2012-02-26 23:30:06.000000000 +0100
-@@ -0,0 +1,112 @@
-+#define ERREXIT(cinfo,code) \
-+ ((cinfo)->err->msg_code = (code), \
-+ (*(cinfo)->err->error_exit) ((j_common_ptr) (cinfo)))
-+#define ERREXIT1(cinfo,code,p1) \
-+ ((cinfo)->err->msg_code = (code), \
-+ (cinfo)->err->msg_parm.i[0] = (p1), \
-+ (*(cinfo)->err->error_exit) ((j_common_ptr) (cinfo)))
-+
-+#define JERR_OUT_OF_MEMORY "Insufficient memory (case %d)"
-+#define JERR_BUFFER_SIZE "Buffer passed to JPEG library is too small"
-+
-+#define OUTPUT_BUF_SIZE 4096 /* choose an efficiently fwrite'able size */
-+
-+
-+/* Expanded data destination object for memory output */
-+
-+typedef struct {
-+ struct jpeg_destination_mgr pub; /* public fields */
-+
-+ unsigned char ** outbuffer; /* target buffer */
-+ unsigned long * outsize;
-+ unsigned char * newbuffer; /* newly allocated buffer */
-+ JOCTET * buffer; /* start of buffer */
-+ size_t bufsize;
-+} my_mem_destination_mgr;
-+
-+typedef my_mem_destination_mgr * my_mem_dest_ptr;
-+
-+
-+METHODDEF(void)
-+init_mem_destination (j_compress_ptr cinfo)
-+{
-+ /* no work necessary here */
-+}
-+
-+METHODDEF(boolean)
-+empty_mem_output_buffer (j_compress_ptr cinfo)
-+{
-+ size_t nextsize;
-+ JOCTET * nextbuffer;
-+ my_mem_dest_ptr dest = (my_mem_dest_ptr) cinfo->dest;
-+
-+ /* Try to allocate new buffer with double size */
-+ nextsize = dest->bufsize * 2;
-+ nextbuffer = (JOCTET *) malloc(nextsize);
-+
-+ if (nextbuffer == NULL)
-+ ERREXIT1(cinfo, JERR_OUT_OF_MEMORY, 10);
-+
-+ memcpy(nextbuffer, dest->buffer, dest->bufsize);
-+
-+ if (dest->newbuffer != NULL)
-+ free(dest->newbuffer);
-+
-+ dest->newbuffer = nextbuffer;
-+
-+ dest->pub.next_output_byte = nextbuffer + dest->bufsize;
-+ dest->pub.free_in_buffer = dest->bufsize;
-+
-+ dest->buffer = nextbuffer;
-+ dest->bufsize = nextsize;
-+
-+ return TRUE;
-+}
-+
-+METHODDEF(void)
-+term_mem_destination (j_compress_ptr cinfo)
-+{
-+ my_mem_dest_ptr dest = (my_mem_dest_ptr) cinfo->dest;
-+
-+ *dest->outbuffer = dest->buffer;
-+ *dest->outsize = dest->bufsize - dest->pub.free_in_buffer;
-+}
-+
-+GLOBAL(void)
-+jpeg_mem_dest (j_compress_ptr cinfo,
-+ unsigned char ** outbuffer, unsigned long * outsize)
-+{
-+ my_mem_dest_ptr dest;
-+
-+ if (outbuffer == NULL || outsize == NULL) /* sanity check */
-+ ERREXIT(cinfo, JERR_BUFFER_SIZE);
-+
-+ /* The destination object is made permanent so that multiple JPEG images
-+ * can be written to the same buffer without re-executing jpeg_mem_dest.
-+ */
-+ if (cinfo->dest == NULL) { /* first time for this JPEG object? */
-+ cinfo->dest = (struct jpeg_destination_mgr *)
-+ (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, JPOOL_PERMANENT,
-+ sizeof(my_mem_destination_mgr));
-+ }
-+
-+ dest = (my_mem_dest_ptr) cinfo->dest;
-+ dest->pub.init_destination = init_mem_destination;
-+ dest->pub.empty_output_buffer = empty_mem_output_buffer;
-+ dest->pub.term_destination = term_mem_destination;
-+ dest->outbuffer = outbuffer;
-+ dest->outsize = outsize;
-+ dest->newbuffer = NULL;
-+
-+ if (*outbuffer == NULL || *outsize == 0) {
-+ /* Allocate initial buffer */
-+ dest->newbuffer = *outbuffer = (unsigned char *) malloc(OUTPUT_BUF_SIZE);
-+ if (dest->newbuffer == NULL)
-+ ERREXIT1(cinfo, JERR_OUT_OF_MEMORY, 10);
-+ *outsize = OUTPUT_BUF_SIZE;
-+ }
-+
-+ dest->pub.next_output_byte = dest->buffer = *outbuffer;
-+ dest->pub.free_in_buffer = dest->bufsize = *outsize;
-+}
-+
+++ /dev/null
---- lcd4linux/drv_SamsungSPF.c 2016-04-21 22:58:57.753031858 +0200
-+++ lcd4linux/drv_SamsungSPF_work.c 2016-04-21 23:14:02.685002452 +0200
-@@ -90,6 +90,20 @@
- .xRes = 1024,
- .yRes = 600,
- },
-+ {
-+ .type = "SPF-87H",
-+ .vendorID = 0x04e8,
-+ .productID = {0x2033, 0x2034},
-+ .xRes = 800,
-+ .yRes = 480,
-+ },
-+ {
-+ .type = "SPF-87H(old)",
-+ .vendorID = 0x04e8,
-+ .productID = {0x2025, 0x2026},
-+ .xRes = 800,
-+ .yRes = 480,
-+ }
- };
-
- static int numFrames = sizeof(spfDevices) / sizeof(spfDevices[0]);
-@@ -280,6 +294,15 @@
- return -1;
- }
-
-+ //Keep SPF87h and friends in MiniMonitorMode
-+ char bytes[]={0x09, 0x04};
-+
-+ if ((ret = usb_control_msg(myDevHandle, 0xc0, 0x01, 0x0000, 0x0000, bytes, 0x02, 1000)) < 0)
-+ {
-+ error("%s: Error occurred while sending control_msg to device.", Name);
-+ error("%s: usb_control_msg returned: %d", Name, ret);
-+ };
-+
- return 0;
- }
-
+++ /dev/null
-diff -Naur lcd4linux/cfg.c lcd4linux/cfg.c
---- lcd4linux/cfg.c 2012-12-30 15:52:25.000000000 +0100
-+++ lcd4linux/cfg.c 2012-12-30 16:10:56.000000000 +0100
-@@ -481,7 +481,7 @@
- error("security error: '%s' is not a regular file", file);
- error = -1;
- }
-- if (stbuf.st_uid != uid || stbuf.st_gid != gid) {
-+/* if (stbuf.st_uid != uid || stbuf.st_gid != gid) {
- error("security error: owner and/or group of '%s' don't match", file);
- error = -1;
- }
-@@ -491,7 +491,7 @@
- error = -1;
- }
- #endif
-- return error;
-+*/ return error;
- }
-
-
+++ /dev/null
-...info:
-================================================================================================
-
-dies ist das neue "wittinobi-buildsystem-cs".
-es wurde gemacht, um weitestgehend eine "original-coolstream-firmware" zu erhalten.
-als erstes sollte man in der datei ".config" die einstellungen überprüfen, dann kanns auch schon losgehen.
-die benutzung ist auf eigene gefahr.
-
-
-
-
-
-...building crosstool-ng:
-================================================================================================
-
-:$ cd $HOME
-:$ mkdir coolstream
-:$ cd coolstream
-:$ git clone http://git.wittinobi.de/bs-cst-neutrino-hd.git bs-cst-neutrino-hd
-:$ cd bs-cst-neutrino-hd
-
-( >> download ordner erstellen: )
-( :$ mkdir $HOME/coolstream/bs-cst-neutrino-hd/download )
-( >> ...oder alternativ link auf download-archiv erzeugen z.b.: )
-( :$ ln -s /archiv/download download )
-
-:$ make crosstool
-
-( >> hilfreiche seiten: )
-( >> http://www.dbox2world.net/board293-coolstream-hd1/board314-coolstream-development/8064-arm-cross-compiler-toolchain/ )
-( >> http://www.dbox2world.net/board293-coolstream-hd1/board306-coolstream-hd1-support/board312-coolstream-hd1-howto-tutorial-anleitungen/8824-coolstream-svn-howto/ )
-( >> http://www.dbox2world.net/board293-coolstream-hd1/board314-coolstream-development/8802-coolstream-neutrino-buildsystem/index5.html )
-
-
-
-
-
-...building a wittinobi bootloader, kernel, tarball and flash-image:
-================================================================================================
-
-:$ cd $HOME
-:$ mkdir coolstream
-:$ cd coolstream
-:$ git clone http://git.wittinobi.de/bs-cst-neutrino-hd.git bs-cst-neutrino-hd
-:$ cd bs-cst-neutrino-hd
-
-( >> download ordner erstellen: )
-( :$ mkdir $HOME/coolstream/bs-cst-neutrino-hd/download )
-( >> ...oder alternativ link auf download-archiv erzeugen z.b.: )
-( :$ ln -s /archiv/download download )
-
-:$ make printenv
-:$ make wittinobi-init
-
-( >> diffs einspielen wenn vorhanden, z.b. neutrino-hd: )
-( :$ cd source )
-( :$ patch -p0 < neutrino-hd.diff )
-( :$ cd .. )
-
-:$ make wittinobi-all
-
-
-
-
-
-...building a wittinobi tarball and flash-image:
-================================================================================================
-
-:$ cd $HOME
-:$ mkdir coolstream
-:$ cd coolstream
-:$ git clone http://git.wittinobi.de/bs-cst-neutrino-hd.git bs-cst-neutrino-hd
-:$ cd bs-cst-neutrino-hd
-
-( >> download ordner erstellen: )
-( :$ mkdir $HOME/coolstream/bs-cst-neutrino-hd/download )
-( >> ...oder alternativ link auf download-archiv erzeugen z.b.: )
-( :$ ln -s /archiv/download download )
-
-:$ make printenv
-:$ make wittinobi-init
-
-( >> diffs einspielen wenn vorhanden, z.b. neutrino-hd: )
-( :$ cd source )
-( :$ patch -p0 < neutrino-hd.diff )
-( :$ cd .. )
-
-:$ make wittinobi-neutrino-flash
-
-
-
-
-
-...building a wittinobi tarball and flash-image step by step:
-================================================================================================
-
-:$ cd $HOME
-:$ mkdir coolstream
-:$ cd coolstream
-:$ git clone http://git.wittinobi.de/bs-cst-neutrino-hd.git bs-cst-neutrino-hd
-:$ cd bs-cst-neutrino-hd
-
-( >> download ordner erstellen: )
-( :$ mkdir $HOME/coolstream/bs-cst-neutrino-hd/download )
-( >> ...oder alternativ link auf download-archiv erzeugen z.b.: )
-( :$ ln -s /archiv/download download )
-
-:$ make printenv
-:$ make prerequisites
-:$ make bootstrap
-
-( >> diffs einspielen wenn vorhanden, z.b. neutrino-hd: )
-( :$ cd source )
-( :$ patch -p0 < neutrino-hd.diff )
-( :$ cd .. )
-
-:$ make neutrino
-:$ make links
-:$ make procps
-:$ make busybox
-:$ make e2fsprogs
-:$ make hotplug
-:$ make fbshot
-:$ make vsftpd
-:$ make tuxcom
-:$ make tuxcal
-:$ make getrc
-:$ make msgbox
-:$ make input
-:$ make shellexec
-:$ make cooliTSclimax
-:$ make rcsim
-:$ make skeleton
-:$ make rootfs
-:$ make flash
-
-
-
-
-
-...building a wittinobi filesystem:
-================================================================================================
-
-:$ cd $HOME
-:$ mkdir coolstream
-:$ cd coolstream
-:$ git clone http://git.wittinobi.de/bs-cst-neutrino-hd.git bs-cst-neutrino-hd
-:$ cd bs-cst-neutrino-hd
-
-( >> download ordner erstellen: )
-( :$ mkdir $HOME/coolstream/bs-cst-neutrino-hd/download )
-( >> ...oder alternativ link auf download-archiv erzeugen z.b.: )
-( :$ ln -s /archiv/download download )
-
-:$ make printenv
-:$ make wittinobi-init
-
-( >> diffs einspielen wenn vorhanden, z.b. neutrino-hd: )
-( :$ cd source )
-( :$ patch -p0 < neutrino-hd.diff )
-( :$ cd .. )
-
-:$ make wittinobi-neutrino
-
-
-
-
-
-...building a coolstream kernel:
-================================================================================================
-
-:$ cd $HOME
-:$ mkdir coolstream
-:$ cd coolstream
-:$ git clone http://git.wittinobi.de/bs-cst-neutrino-hd.git bs-cst-neutrino-hd
-:$ cd bs-cst-neutrino-hd
-
-( >> download ordner erstellen: )
-( :$ mkdir $HOME/coolstream/bs-cst-neutrino-hd/download )
-( >> ...oder alternativ link auf download-archiv erzeugen z.b.: )
-( :$ ln -s /archiv/download download )
-
-:$ make printenv
-:$ make wittinobi-init
-:$ make kernel
-
-
-
-
-
-...building a coolstream bootloader:
-================================================================================================
-
-:$ cd $HOME
-:$ mkdir coolstream
-:$ cd coolstream
-:$ git clone http://git.wittinobi.de/bs-cst-neutrino-hd.git bs-cst-neutrino-hd
-:$ cd bs-cst-neutrino-hd
-
-( >> download ordner erstellen: )
-( :$ mkdir $HOME/coolstream/bs-cst-neutrino-hd/download )
-( >> ...oder alternativ link auf download-archiv erzeugen z.b.: )
-( :$ ln -s /archiv/download download )
-
-:$ make printenv
-:$ make wittinobi-init
-:$ make bootloader
+++ /dev/null
-...packages that need to be installed for building:
-================================================================================================
-
-this was tested on a minimal installation of Debian 6.0.8 amd64, other
-distributions will have similar package names.
-a few more packages are pulled in by dependencies, you'll need them as well.
-
-
-
-
-
-...check tools:
-================================================================================================
-
-:$ cd $HOME
-:$ mkdir coolstream
-:$ cd coolstream
-:$ git clone http://git.wittinobi.de/bs-cst-neutrino-hd.git bs-cst-neutrino-hd
-:$ cd bs-cst-neutrino-hd
-:$ make checktool
-
-
-
-
-
-...install tools:
-================================================================================================
-
-:$ apt-get install git make subversion patch gcc bison flex texinfo automake libtool libncurses5-dev build-essential ncurses-dev gettext pkg-config libgmp3-dev expat python-dev libvorbis-dev texlive help2man
+++ /dev/null
-###########################################################################################
-### PART 1 # SYSTEM #######################################################################
-###########################################################################################
-
-# set BOXMODEL to specify the STB type you want to build for
-# possible values are tank, trinity, link, zee2, zee and neo
-# please select also link for trinity duo
-# and neo for neo-twin, neo2, hd1 and bse as well
-# For Armboxes you can set hd51 and bre2ze4k
-# if you don't specify a value or something is misspelled
-# the default value neo will be used
-#
-BOXMODEL = neo
-
-#DEBUG = yes
-
-# if you want to use your precompiled toolchain, define CROSS_DIR:
-# this will skip the building of our own compiler/glibc combination!
-# if CROSS_DIR is not defined, you must first build your toolchain with "make crosstool"!
-# CROSS_DIR=/opt/cross
-
-
-# if /usr/share/libtool/config/config.guess does not supply a valid
-# build type, specify it here. THIS IS A WORKAROUND. Use with caution.
-# BUILD=x86_64-unknown-linux-gnu
-
-# choose one of the following neutrino-hd-port versions:
-# NEUTRINO_HD_PORT=neutrino-hd-master (coolstream master port)
-# NEUTRINO_HD_PORT=neutrino-hd-pumoviebouquets (coolstream pu/moviebouquets port)
-NEUTRINO_HD_PORT=neutrino-hd-master
-
-# choose one of the following coolstream kernel versions:
-# Nevis
-CST_KERNEL_VERSION=2.6.34.13
-# Apollo / Kronos
-# CST_KERNEL_VERSION=3.10.70
-# CST_KERNEL_VERSION=3.10.93
-
-
-# !ADVANCED!
-# if you know what you're doing you can set a specific driver directoy,
-# kernel version and branch (but you have to make sure that all entries matches)
-#
-# DRIVER_DIR=apollo-3.x
-# KBRANCH=cst_3.10
-# KBRANCH=cst_3.10.93
-
-# choose one of the following coolstream driver versions:
-# CST_DRIVER_VERSION=master
-# CST_DRIVER_VERSION=test
-CST_DRIVER_VERSION=master
-
-# choose one of the following coolstream ffmpeg versions:
-# CST_FFMPEG_VERSION=ffmpeg-head
-# CST_FFMPEG_VERSION=ffmpeg-3.3
-CST_FFMPEG_VERSION=ffmpeg-3.3
-
-# chosse one of the following library-stb-hal; default: libstb_hal_tuxbox
-# LIB_HAL_SOURCE=libstb_hal_tuxbox
-# LIB_HAL_SOURCE=libstb_hal_ddt
-
-###########################################################################################
-### SYSTEMTOOLS
-###########################################################################################
-
-# if you want to build hd-idle (optional), define HD_IDLE=yes:
-HD_IDLE=no
-
-
-###########################################################################################
-### PART 2 # APPLICATIONS # OPTIONAL ######################################################
-###########################################################################################
-
-# if you want to build lcd4linux (optional), define LCD4LINUX=yes:
-# LCD4LINUX=yes
-# LCD4LINUX=no
-LCD4LINUX=no
-
-# if you want to build inadyn (optional), define INADYN=yes:
-# INADYN=yes
-# INADYN=no
-INADYN=no
-
-# if you want to build djmount (optional), define DJMOUNT=yes:
-# DJMOUNT=yes
-# DJMOUNT=no
-DJMOUNT=no
-
-# if you want to build ushare (optional), define USHARE=yes:
-# USHARE=yes
-# USHARE=no
-USHARE=no
-
-# if you want to build xupnpd (optional), define XUPNPD=yes:
-# XUPNPD=yes
-# XUPNPD=no
-XUPNPD=no
-
-# if you want to build autofs (optional), define AUTOMOUNT=yes:
-# AUTOMOUNT=yes
-# AUTOMOUNT=no
-AUTOMOUNT=no
-
-# if you want to build unfsd (optional), define UNFSD=yes:
-# UNFSD=yes
-# UNFSD=no
-UNFSD=no
-
-###########################################################################################
-###########################################################################################
-
-
-
-
-
-###########################################################################################
-### PART 3 # MULTIMEDIA # OPTIONAL ########################################################
-###########################################################################################
-
-# if you want to build multimedia (optional), define MULTIMEDIA=yes:
-# MULTIMEDIA=yes
-# MULTIMEDIA=no
-MULTIMEDIA=no
-
-###########################################################################################
-### Customize
-###########################################################################################
-
-# Choose your own SKEL_ROOT_DIR (optional), define SKEL_ROOT_DIR=path_to_my_skel-root-dir
-# SKEL_ROOT_DIR=
-
-# Choose your own PLUGIN_DIR (optional)
-# PLUGIN_PATH=
-
-# Choose your own PLUGIN_ARCHIVE_DIR (optional)
-# PLUGIN_ARCHIVE_DIR=
-
-# choose if you want to use WIFI (optional, define WIFI=yes/no
-WIFI=no
-
-
-###########################################################################################
-### PART 4 # PLUGINS # OPTIONAL ###########################################################
-###########################################################################################
-
-# if you want to build BASICS1 (optional), define BASICS1=yes/no
-# getrc, msgbox, input, shellexec
-BASICS1=no
-
-# if you want to build BASICS2 (optional), define BASICS2=yes/no
-# tuxcom, tuxcal, tuxmail, blockads, logomask, logoview
-BASICS2=no
-
-# if you want to build BASICS3 (optional), define BASICS3=yes/no
-# rcsim, sdparm, libfx2
-BASICS3=no
-
-# if you want to build TUXWETTER (optional), define TUXWETTER=yes/no
-TUXWETTER=no
-
-# if you want to build LINKS (optional), define LINKS=yes/no
-LINKS=no
-
-# if you want to build cooliTSclimax (optional), define COOLITSCLIMAX=yes/no
-COOLITSCLIMAX=no
-
-# if you want to build charts (optional), define CHARTS=yes/no
-# liga_nat, boerse, rssnews, tanken, wetter, formel1
-CHARTS=no
-
-# if you want to build games (optional), define GAMES=yes/no
-GAMES=no
-
-###########################################################################################
-###########################################################################################
$(MAKE) && \
$(TOUCH)
-$(D)/lcd4linux: $(D)/libusb_compat $(D)/libgd2 | $(TARGETPREFIX)
+$(D)/lcd4linux: $(D)/libusb_compat $(D)/libgd2 $(ARCHIVE)/lcd4linux-git-$(LCD4LINUX_VER).tar.bz2 | $(TARGETPREFIX)
$(START_BUILD)
tar -C $(BUILD_TMP) -xf $(BASE_DIR)/archive-sources/lcd4linux/dpflib.tar.gz
cd $(BUILD_TMP)/dpflib/dpflib && \
cp -f $(BUILD_TMP)/dpflib/dpflib/sglib.h $(TARGETPREFIX)/include
cp -f $(BUILD_TMP)/dpflib/include/* $(TARGETPREFIX)/include
cp -f $(BUILD_TMP)/dpflib/dpflib/libdpf.a $(TARGETPREFIX)/lib
- cd $(BUILD_TMP) && \
- git clone git://git.webhop.me/pub/lcd4linux.git lcd4linux && \
- cd $(BUILD_TMP)/lcd4linux && \
- ./vcs_version.sh && \
+ set -e; cd $(BUILD_TMP)
+ $(REMOVE)/lcd4linux-git-$(LCD4LINUX_VER)
+ $(UNTAR)/lcd4linux-git-$(LCD4LINUX_VER).tar.bz2;
+ set -e; cd $(BUILD_TMP)/lcd4linux-git-$(LCD4LINUX_VER) && \
+ echo "#define VCS_VERSION \"svn1203-git-$(LCD4LINUX_VER)\"" > vcs_version.h && \
mkdir -p libdpf && \
cp -f $(BUILD_TMP)/dpflib/dpflib/libdpf.a libdpf/ && \
mkdir -p m4 && \
autoreconf -fi && \
$(BUILDENV) ./configure \
- --build=$(BUILD) \
- --host=$(TARGET) \
- --libdir=$(TARGETPREFIX)/lib \
- --includedir=$(TARGETPREFIX)/include \
- --oldincludedir=$(TARGETPREFIX)/include \
- --bindir=$(TARGETPREFIX)/var/bin \
- --prefix= \
- --mandir=/.remove \
- --docdir=/.remove \
- --infodir=/.remove \
- --with-drivers='DPF,SamsungSPF' \
- --with-plugins='all,!dbus,!mpris_dbus,!asterisk,!isdn,!pop3,!ppp,!seti,!huawei,!imon,!kvv,!sample,!w1retap,!wireless,!xmms,!gps,!mpd,!mysql,!qnaplog' \
- --without-ncurses && \
- $(MAKE) all && \
- $(TARGET)-strip lcd4linux && \
- $(MAKE) install
+ --build=$(BUILD) \
+ --host=$(TARGET) \
+ --bindir=/var/bin \
+ --prefix= \
+ --mandir=/.remove \
+ --docdir=/.remove \
+ --infodir=/.remove \
+ --with-drivers='DPF,SamsungSPF,PNG' \
+ --with-plugins='all,!apm,!asterisk,!dbus,!dvb,!gps,!hddtemp,!huawei,!imon,!isdn,!kvv,!mpd,!mpris_dbus,!mysql,!pop3,!ppp,!python,!qnaplog,!raspi,!sample,!seti,!w1retap,!wireless,!xmms' \
+ --without-ncurses \
+ ; \
+ $(MAKE) all; \
+ $(MAKE) install DESTDIR=$(TARGETPREFIX)
+ $(TARGET)-strip $(TARGETPREFIX)/var/bin/lcd4linux
$(REMOVE)/dpflib
- $(REMOVE)/lcd4linux
+ $(REMOVE)/lcd4linux-git-$(LCD4LINUX_VER)
$(TOUCH)
$(D)/mjpg-streamer: $(ARCHIVE)/mjpg-streamer-r63.tar.gz | $(TARGETPREFIX)
$(ARCHIVE)/libdvdcss-$(LIBDVDCSS_VER).tar.bz2:
$(WGET) https://download.videolan.org/pub/libdvdcss/$(LIBDVDCSS_VER)/libdvdcss-$(LIBDVDCSS_VER).tar.bz2
-$(ARCHIVE)/gd-$(GD_VER).tar.gz:
- $(WGET) ftp://ftp.uni-duisburg.de/Graphics/gd-$(GD_VER).tar.gz
+$(ARCHIVE)/libgd-$(GD_VER).tar.gz:
+ $(WGET) https://github.com/libgd/libgd/releases/download/gd-$(GD_VER)/libgd-$(GD_VER).tar.gz
$(ARCHIVE)/gettext-$(GETTEXT_VER).tar.xz:
$(WGET) http://ftp.gnu.org/pub/gnu/gettext/gettext-$(GETTEXT_VER).tar.xz
$(ARCHIVE)/libdvbsi++-$(LIBDVBSI_GIT).tar.bz2: | $(HOSTPREFIX)/bin/get-git-archive.sh
get-git-archive.sh git://git.opendreambox.org/git/obi/libdvbsi++.git $(LIBDVBSI_GIT) $(notdir $@) $(ARCHIVE)
+$(ARCHIVE)/lcd4linux-git-$(LCD4LINUX_VER).tar.bz2: | $(HOSTPREFIX)/bin/get-git-archive.sh
+ get-git-archive.sh https://github.com/TangoCash/lcd4linux.git $(LCD4LINUX_VER) $(notdir $@) $(ARCHIVE)
+
$(ARCHIVE)/dvdreadfs.tar.bz2: | $(HOSTPREFIX)/bin/get-git-archive.sh
get-git-archive.sh git@github.com:markschultz/dvdreadfs.git master $(notdir $@) $(ARCHIVE)
$(ARCHIVE)/libusb-$(LIBUSB_VER).tar.bz2:
$(WGET) http://downloads.sourceforge.net/project/libusb/libusb-1.0/libusb-$(LIBUSB_VER)/libusb-$(LIBUSB_VER).tar.bz2
-$(ARCHIVE)/libusb-compat-$(LIBUSB_COMP_VER).tar.bz2:
- $(WGET) http://downloads.sourceforge.net/project/libusb/libusb-compat-0.1/libusb-compat-$(LIBUSB_COMP_VER)/libusb-compat-$(LIBUSB_COMP_VER).tar.bz2
+$(ARCHIVE)/libusb-compat-$(LIBUSB_COMPAT_VER).tar.bz2:
+ $(WGET) http://downloads.sourceforge.net/project/libusb/libusb-compat-0.1/libusb-compat-$(LIBUSB_COMPAT_VER)/libusb-compat-$(LIBUSB_COMPAT_VER).tar.bz2
$(ARCHIVE)/libexif-$(LIBEXIF_VER).tar.gz:
$(WGET) https://sourceforge.net/projects/libexif/files/libexif/$(LIBEXIF_VER)/libexif-$(LIBEXIF_VER).tar.gz
$(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/libusb-1.0.pc
$(TOUCH)
-$(D)/libusb_compat: $(ARCHIVE)/libusb-compat-$(LIBUSB_COMP_VER).tar.bz2 $(D)/libusb | $(TARGETPREFIX)
+$(D)/libusb_compat: $(ARCHIVE)/libusb-compat-$(LIBUSB_COMPAT_VER).tar.bz2 $(D)/libusb | $(TARGETPREFIX)
$(START_BUILD)
- $(UNTAR)/libusb-compat-$(LIBUSB_COMP_VER).tar.bz2
- pushd $(BUILD_TMP)/libusb-compat-$(LIBUSB_COMP_VER) && \
- $(CONFIGURE) --prefix= --build=$(BUILD) --host=$(TARGET) && \
- $(MAKE) && \
- $(MAKE) install DESTDIR=$(TARGETPREFIX) && \
- $(REMOVE)/libusb-compat-$(LIBUSB_COMP_VER)
- rm -rf $(TARGETPREFIX)/bin/libusb-config
+ $(REMOVE)/libusb-compat-$(LIBUSB_COMPAT_VER)
+ $(UNTAR)/libusb-compat-$(LIBUSB_COMPAT_VER).tar.bz2
+ set -e; cd $(BUILD_TMP)/libusb-compat-$(LIBUSB_COMPAT_VER); \
+ $(CONFIGURE) \
+ --prefix= \
+ --disable-log \
+ --disable-debug-log \
+ --disable-examples-build \
+ ; \
+ $(MAKE) ; \
+ $(MAKE) install DESTDIR=$(TARGETPREFIX)
+ rm -f $(TARGETPREFIX)/bin/libusb-config
$(REWRITE_LIBTOOL)/libusb.la
$(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/libusb.pc
+ $(REMOVE)/libusb-compat-$(LIBUSB_COMPAT_VER)
$(TOUCH)
-ifeq ($(PLATFORM), $(filter $(PLATFORM), apollo kronos))
- LIBICONV = $(D)/libiconv
- WITH_ICONV = --with-libiconv-prefix=$(TARGETPREFIX)
-endif
-$(D)/libgd2: $(D)/zlib $(D)/libpng $(D)/libjpeg $(D)/freetype $(LIBICONV) $(ARCHIVE)/gd-$(GD_VER).tar.gz | $(TARGETPREFIX)
+$(D)/libgd2: $(D)/zlib $(D)/libpng $(D)/libjpeg $(D)/freetype $(ARCHIVE)/libgd-$(GD_VER).tar.gz | $(TARGETPREFIX)
$(START_BUILD)
- $(UNTAR)/gd-$(GD_VER).tar.gz
- pushd $(BUILD_TMP)/gd-$(GD_VER) && \
- sed -i 's@if (!png_check_sig (sig, 8)) { /* bad signature */@if (png_sig_cmp(sig, 0, 8) != 0) { /* bad signature */@' gd_png.c && \
- sed -i 's@libpng12@libpng15@' configure && \
- sed -i 's@LIBPNG12@LIBPNG15@' configure && \
- sed -i 's@libpng12@libpng15@' configure.ac && \
- sed -i 's@png12@png15@' configure.ac && \
- sed -i 's@LIBPNG12@LIBPNG15@' configure.ac && \
- sed -i 's@LIBPNG12@LIBPNG15@' Makefile.in && \
- sed -i 's@LIBPNG12@LIBPNG15@' config/Makefile.in && \
- sed -i 's@LIBPNG12@LIBPNG15@' test/Makefile.in && \
- chmod +w configure && \
- chmod +w aclocal.m4 && \
- $(BUILDENV) \
- ./configure \
+ $(REMOVE)/libgd-$(GD_VER)
+ $(UNTAR)/libgd-$(GD_VER).tar.gz
+ set -e; cd $(BUILD_TMP)/libgd-$(GD_VER); \
+ $(CONFIGURE) \
--prefix= \
- --build=$(BUILD) \
- --host=$(TARGET) \
--bindir=/.remove \
- --with-png=$(TARGETPREFIX)/include/libpng15 \
- --with-jpeg=$(TARGETPREFIX)/include \
- --with-freetype=$(TARGETPREFIX)/include/freetype2 \
+ --without-fontconfig \
+ --without-xpm \
--without-x \
- $(WITH_ICONV) && \
- autoreconf -fi && \
- $(MAKE) && \
+ ; \
+ $(MAKE); \
$(MAKE) install DESTDIR=$(TARGETPREFIX)
- $(REMOVE)/gd-$(GD_VER)
$(REWRITE_LIBTOOL)/libgd.la
+ $(REWRITE_PKGCONF) $(PKG_CONFIG_PATH)/gdlib.pc
+ $(REMOVE)/libgd-$(GD_VER)
$(TOUCH)
$(D)/libpcap: $(ARCHIVE)/libpcap-1.1.1.tar.gz | $(TARGETPREFIX)
DROPBEAR_VER=2018.76
# libgd2; an open source code library for the dynamic creation of images
-GD_VER = 2.0.35
+GD_VER = 2.2.5
# GDB, the GNU Project debugger, allows you to see what is going on `inside' another program while it executes
GDB_VER=8.0.1
# libjpeg-turbo; a derivative of libjpeg for x86 and x86-64 processors which uses SIMD instructions (MMX, SSE2, etc.) to accelerate baseline JPEG compression and decompression
JPEG_TURBO_VER = 1.5.3
+# lcd4linux mod TangoCash
+LCD4LINUX_VER = 1d27830
+
# libass is a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format.
LIBASS_VER=0.14.0
LIBUSB_VER = 1.0.21
#libusb-compat; a replacement/wrapper for libusb-0.1
-LIBUSB_COMP_VER = 0.1.4
+LIBUSB_COMPAT_VER = 0.1.5
# rtmpdump is a toolkit for RTMP streams. All forms of RTMP are supported,
# including rtmp://, rtmpt://, rtmpe://, rtmpte://, and rtmps://.