package/vdr: new package

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Thomas: minor tweaks.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Bernd Kuhls 2016-08-06 09:41:58 +02:00 committed by Thomas Petazzoni
parent 26d2b410c0
commit 815e4f1a33
6 changed files with 191 additions and 0 deletions

View file

@ -1618,6 +1618,7 @@ endif
source "package/ushare/Config.in"
source "package/ussp-push/Config.in"
source "package/vde2/Config.in"
source "package/vdr/Config.in"
source "package/vnstat/Config.in"
source "package/vpnc/Config.in"
source "package/vsftpd/Config.in"

View file

@ -0,0 +1,55 @@
Fix compilation with uClibc
Ported from
https://github.com/stschake/buildroot-grasshopper/blob/master/package/torsmo/torsmo-0.18-uclibc-getloadavg.patch
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
diff -uwNr vdr-2.3.1.org/skinlcars.c vdr-2.3.1/skinlcars.c
--- vdr-2.3.1.org/skinlcars.c 2015-09-01 12:07:07.000000000 +0200
+++ vdr-2.3.1/skinlcars.c 2016-07-31 21:00:11.000000000 +0200
@@ -1099,6 +1099,44 @@
}
}
+/* uclibc and dietlibc do not have this junk -ReneR */
+#if defined (__UCLIBC__) || defined (__dietlibc__)
+static int getloadavg (double loadavg[], int nelem)
+{
+ int fd;
+
+ fd = open ("/proc/loadavg", O_RDONLY);
+ if (fd < 0)
+ return -1;
+ else
+ {
+ char buf[65], *p;
+ ssize_t nread;
+ int i;
+
+ nread = read (fd, buf, sizeof buf - 1);
+ close (fd);
+ if (nread <= 0)
+ return -1;
+ buf[nread - 1] = '\0';
+
+ if (nelem > 3)
+ nelem = 3;
+ p = buf;
+ for (i = 0; i < nelem; ++i)
+ {
+ char *endp;
+ loadavg[i] = strtod (p, &endp);
+ if (endp == p)
+ return -1;
+ p = endp;
+ }
+
+ return i;
+ }
+}
+#endif
+
void cSkinLCARSDisplayMenu::DrawLoad(void)
{
if (yb04) {

View file

@ -0,0 +1,40 @@
Fix compilation with libjpeg
Patch inspired by upstream board:
http://www.vdr-portal.de/board16-video-disk-recorder/board4-vdr-installation/p1189959-vdr-2-05-mit-libjpeg-9a-kommt-nicht-aus/#post1189959
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
diff -uNr vdr-2.3.1.org/tools.c vdr-2.3.1/tools.c
--- vdr-2.3.1.org/tools.c 2015-09-10 15:17:55.000000000 +0200
+++ vdr-2.3.1/tools.c 2016-08-01 06:37:44.000000000 +0200
@@ -1254,15 +1254,15 @@
}
else {
esyslog("ERROR: out of memory");
- return false;
+ return FALSE;
}
if (jcd->mem) {
cinfo->dest->next_output_byte = jcd->mem + Used;
cinfo->dest->free_in_buffer = jcd->size - Used;
- return true;
+ return TRUE;
}
}
- return false;
+ return FALSE;
}
static void JpegCompressTermDestination(j_compress_ptr cinfo)
@@ -1307,8 +1307,8 @@
cinfo.in_color_space = JCS_RGB;
jpeg_set_defaults(&cinfo);
- jpeg_set_quality(&cinfo, Quality, true);
- jpeg_start_compress(&cinfo, true);
+ jpeg_set_quality(&cinfo, Quality, TRUE);
+ jpeg_start_compress(&cinfo, TRUE);
int rs = Width * 3;
JSAMPROW rp[Height];

25
package/vdr/Config.in Normal file
View file

@ -0,0 +1,25 @@
config BR2_PACKAGE_VDR
bool "vdr"
depends on BR2_INSTALL_LIBSTDCPP
depends on !BR2_STATIC_LIBS
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
depends on !BR2_TOOLCHAIN_USES_MUSL # _nl_msg_cat_cntr
depends on BR2_USE_MMU # fork()
depends on BR2_USE_WCHAR
select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT
select BR2_PACKAGE_FONTCONFIG
select BR2_PACKAGE_FREETYPE
select BR2_PACKAGE_JPEG
select BR2_PACKAGE_LIBCAP
select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
help
This project describes how to build your own digital
satellite receiver and Video Disk Recorder.
http://www.tvdr.de
comment "vdr needs a glibc or uClibc toolchain w/ C++, dynamic library, NPTL, wchar"
depends on BR2_USE_MMU
depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || \
!BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
BR2_TOOLCHAIN_USES_MUSL || !BR2_USE_WCHAR

4
package/vdr/vdr.hash Normal file
View file

@ -0,0 +1,4 @@
# From https://www.linuxtv.org/pipermail/vdr/2015-September/028872.html
md5 391c2ed60e2f7d24563fe3ed5854bc4f vdr-2.3.1.tar.bz2
# Locally computed
sha256 456d3f0ceb699b92ebeaf9ff4c0c68979724d10b01a89d5250133e6f4c262fa7 vdr-2.3.1.tar.bz2

66
package/vdr/vdr.mk Normal file
View file

@ -0,0 +1,66 @@
################################################################################
#
# vdr
#
################################################################################
VDR_VERSION = 2.3.1
VDR_SOURCE = vdr-$(VDR_VERSION).tar.bz2
VDR_SITE = ftp://ftp.tvdr.de/vdr/Developer
VDR_LICENSE = GPLv2+
VDR_LICENSE_FILES = COPYING
VDR_INSTALL_STAGING = YES
VDR_DEPENDENCIES = \
freetype \
fontconfig \
jpeg \
libcap
VDR_INCLUDE_DIRS = -I$(STAGING_DIR)/usr/include/freetype2
VDR_MAKE_FLAGS = \
NO_KBD=yes \
PLUGINLIBDIR=/usr/lib/vdr \
PREFIX=/usr \
VIDEODIR=/var/lib/vdr
ifeq ($(BR2_NEEDS_GETTEXT),y)
VDR_DEPENDENCIES += gettext
VDR_LDFLAGS += -lintl
endif
ifeq ($(BR2_PACKAGE_LIBFRIBIDI),y)
VDR_DEPENDENCIES += libfribidi
VDR_INCLUDE_DIRS += -I$(STAGING_DIR)/usr/include/fribidi
VDR_LDFLAGS += -lfribidi
VDR_MAKE_FLAGS += BIDI=1
endif
ifeq ($(BR2_PACKAGE_LIBICONV),y)
VDR_DEPENDENCIES += libiconv
VDR_LDFLAGS += -liconv
endif
VDR_MAKE_ENV = \
INCLUDES="$(VDR_INCLUDE_DIRS)" \
LDFLAGS="$(VDR_LDFLAGS)" \
$(VDR_MAKE_FLAGS)
define VDR_BUILD_CMDS
$(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) $(VDR_MAKE_ENV) \
vdr vdr.pc include-dir
endef
define VDR_INSTALL_STAGING_CMDS
$(MAKE1) $(TARGET_CONFIGURE_OPTS) -C $(@D) $(VDR_MAKE_ENV) \
DESTDIR=$(STAGING_DIR) \
install-dirs install-bin install-conf install-includes \
install-pc
endef
define VDR_INSTALL_TARGET_CMDS
$(MAKE1) $(TARGET_CONFIGURE_OPTS) -C $(@D) $(VDR_MAKE_ENV) \
DESTDIR=$(TARGET_DIR) \
install-dirs install-bin install-conf
endef
$(eval $(generic-package))