added my Recipes
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
SUMMARY = "OSCam: Open Source Conditional Access Module"
|
||||
HOMEPAGE = "http://www.streamboard.tv/oscam/"
|
||||
|
||||
LICENSE = "GPL-3.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
|
||||
|
||||
DEPENDS = "libusb1 openssl pcsc-lite"
|
||||
|
||||
SRC_URI = "svn://www.streamboard.tv/svn/oscam;module=trunk;protocol=http \
|
||||
"
|
||||
SRCREV = "11491"
|
||||
PV = "1.10+${SRCPV}"
|
||||
|
||||
S = "${WORKDIR}/trunk"
|
||||
|
||||
inherit cmake
|
||||
|
||||
EXTRA_OECMAKE = "-DDEFAULT_CS_CONFDIR=${sysconfdir} -DCMAKE_BUILD_TYPE=Debug"
|
||||
|
||||
@@ -0,0 +1,176 @@
|
||||
From 81f29b028473a3d8ac0aaeb126fc0336a98bb077 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Tue, 12 Nov 2019 11:03:16 -0800
|
||||
Subject: [PATCH] adjust for 64bit time_t
|
||||
|
||||
Break assumption about time_t being of certain size, and use intmax_t to
|
||||
print it where needed
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/cron.c | 4 ++--
|
||||
src/epggrab/module/psip.c | 2 +-
|
||||
src/epggrab/otamux.c | 2 +-
|
||||
src/parsers/parser_teletext.c | 2 +-
|
||||
src/tvheadend.h | 6 +-----
|
||||
src/webui/webui.c | 4 ++--
|
||||
6 files changed, 8 insertions(+), 12 deletions(-)
|
||||
|
||||
--- a/src/cron.c
|
||||
+++ b/src/cron.c
|
||||
@@ -329,9 +329,9 @@ cron_next ( cron_t *c, const time_t now,
|
||||
*ret = mktime(&tmp);
|
||||
if (*ret <= now) {
|
||||
#ifndef CRON_TEST
|
||||
- tvherror(LS_CRON, "invalid time, now %"PRItime_t", result %"PRItime_t, now, *ret);
|
||||
+ tvherror(LS_CRON, "invalid time, now %"PRItime_t", result %"PRItime_t, (intmax_t)now, (intmax_t)*ret);
|
||||
#else
|
||||
- printf("ERROR: invalid time, now %"PRItime_t", result %"PRItime_t"\n", now, *ret);
|
||||
+ printf("ERROR: invalid time, now %"PRItime_t", result %"PRItime_t"\n", (intmax_t)now, (intmax_t)*ret);
|
||||
#endif
|
||||
*ret = now + 600;
|
||||
}
|
||||
--- a/src/epggrab/module/psip.c
|
||||
+++ b/src/epggrab/module/psip.c
|
||||
@@ -223,14 +223,14 @@ _psip_eit_callback_channel
|
||||
|
||||
tvhtrace(LS_PSIP, " %03d: [%s] eventid 0x%04x at %"PRItime_t", duration %d, etmlocation %x, title: '%s' (%d bytes)",
|
||||
i, ch ? channel_get_name(ch, channel_blank_name) : "(null)",
|
||||
- eventid, start, length, etmlocation,
|
||||
+ eventid, (intmax_t)start, length, etmlocation,
|
||||
lang_str_get(title, NULL), titlelen);
|
||||
|
||||
save2 = changes2 = 0;
|
||||
|
||||
ebc = epg_broadcast_find_by_time(ch, mod, start, stop, 1, &save2, &changes2);
|
||||
tvhtrace(LS_PSIP, " eid=%5d, start=%"PRItime_t", stop=%"PRItime_t", ebc=%p",
|
||||
- eventid, start, stop, ebc);
|
||||
+ eventid, (intmax_t)start, (intmax_t)stop, ebc);
|
||||
if (!ebc) goto next;
|
||||
|
||||
save2 |= epg_broadcast_set_dvb_eid(ebc, eventid, &changes2);
|
||||
--- a/src/epggrab/otamux.c
|
||||
+++ b/src/epggrab/otamux.c
|
||||
@@ -719,7 +719,7 @@ epggrab_ota_start_cb ( void *p );
|
||||
static void
|
||||
epggrab_ota_next_arm( time_t next )
|
||||
{
|
||||
- tvhtrace(LS_EPGGRAB, "next ota start event in %li seconds", next - time(NULL));
|
||||
+ tvhtrace(LS_EPGGRAB, "next ota start event in %jd seconds", (intmax_t)(next - time(NULL)));
|
||||
gtimer_arm_absn(&epggrab_ota_start_timer, epggrab_ota_start_cb, NULL, next);
|
||||
dbus_emit_signal_s64("/epggrab/ota", "next", next);
|
||||
}
|
||||
--- a/src/parsers/parser_teletext.c
|
||||
+++ b/src/parsers/parser_teletext.c
|
||||
@@ -625,7 +625,7 @@ tt_construct_unix_time(uint8_t *buf)
|
||||
r[2] = mktime(&tm);
|
||||
|
||||
for(i = 0; i < 3; i++)
|
||||
- v[i] = labs(r[i] - t);
|
||||
+ v[i] = (time_t)llabs((long long)(r[i] - t));
|
||||
|
||||
if(v[0] < v[1] && v[0] < v[2])
|
||||
return r[0];
|
||||
--- a/src/tvheadend.h
|
||||
+++ b/src/tvheadend.h
|
||||
@@ -332,11 +332,7 @@ void tvh_qsort_r(void *base, size_t nmem
|
||||
# endif /* ULONG_MAX */
|
||||
#endif /* __WORDSIZE */
|
||||
|
||||
-#if __WORDSIZE == 32 && defined(PLATFORM_FREEBSD)
|
||||
-#define PRItime_t "d"
|
||||
-#else
|
||||
-#define PRItime_t "ld"
|
||||
-#endif
|
||||
+#define PRItime_t "jd"
|
||||
|
||||
/* transcoding */
|
||||
#define TVH_NAME_LEN 32
|
||||
--- a/src/webui/webui.c
|
||||
+++ b/src/webui/webui.c
|
||||
@@ -886,9 +886,9 @@ http_dvr_list_playlist(http_connection_t
|
||||
bandwidth = ((8*fsize) / (durration*1024.0));
|
||||
strftime(buf, sizeof(buf), "%FT%T%z", localtime_r(&(de->de_start), &tm));
|
||||
|
||||
- htsbuf_qprintf(hq, "#EXTINF:%"PRItime_t",%s\n", durration, lang_str_get(de->de_title, NULL));
|
||||
+ htsbuf_qprintf(hq, "#EXTINF:%"PRItime_t",%s\n", (intmax_t)durration, lang_str_get(de->de_title, NULL));
|
||||
|
||||
- htsbuf_qprintf(hq, "#EXT-X-TARGETDURATION:%"PRItime_t"\n", durration);
|
||||
+ htsbuf_qprintf(hq, "#EXT-X-TARGETDURATION:%"PRItime_t"\n", (intmax_t)durration);
|
||||
uuid = idnode_uuid_as_str(&de->de_id, ubuf);
|
||||
htsbuf_qprintf(hq, "#EXT-X-STREAM-INF:PROGRAM-ID=%s,BANDWIDTH=%d\n", uuid, bandwidth);
|
||||
htsbuf_qprintf(hq, "#EXT-X-PROGRAM-DATE-TIME:%s\n", buf);
|
||||
@@ -944,9 +944,9 @@ http_dvr_playlist(http_connection_t *hc,
|
||||
strftime(buf, sizeof(buf), "%FT%T%z", localtime_r(&(de->de_start), &tm));
|
||||
|
||||
htsbuf_append_str(hq, "#EXTM3U\n");
|
||||
- htsbuf_qprintf(hq, "#EXTINF:%"PRItime_t",%s\n", durration, lang_str_get(de->de_title, NULL));
|
||||
+ htsbuf_qprintf(hq, "#EXTINF:%"PRItime_t",%s\n", (intmax_t)durration, lang_str_get(de->de_title, NULL));
|
||||
|
||||
- htsbuf_qprintf(hq, "#EXT-X-TARGETDURATION:%"PRItime_t"\n", durration);
|
||||
+ htsbuf_qprintf(hq, "#EXT-X-TARGETDURATION:%"PRItime_t"\n", (intmax_t)durration);
|
||||
uuid = idnode_uuid_as_str(&de->de_id, ubuf);
|
||||
htsbuf_qprintf(hq, "#EXT-X-STREAM-INF:PROGRAM-ID=%s,BANDWIDTH=%d\n", uuid, bandwidth);
|
||||
htsbuf_qprintf(hq, "#EXT-X-PROGRAM-DATE-TIME:%s\n", buf);
|
||||
--- a/src/dvr/dvr_rec.c
|
||||
+++ b/src/dvr/dvr_rec.c
|
||||
@@ -723,7 +723,7 @@ static const char *
|
||||
dvr_sub_start(const char *id, const char *fmt, const void *aux, char *tmp, size_t tmplen)
|
||||
{
|
||||
char buf[16];
|
||||
- snprintf(buf, sizeof(buf), "%"PRItime_t, (time_t)dvr_entry_get_start_time((dvr_entry_t *)aux, 0));
|
||||
+ snprintf(buf, sizeof(buf), "%"PRItime_t, (intmax_t)dvr_entry_get_start_time((dvr_entry_t *)aux, 0));
|
||||
return dvr_do_prefix(id, fmt, buf, tmp, tmplen);
|
||||
}
|
||||
|
||||
@@ -747,7 +747,7 @@ static const char *
|
||||
dvr_sub_stop(const char *id, const char *fmt, const void *aux, char *tmp, size_t tmplen)
|
||||
{
|
||||
char buf[16];
|
||||
- snprintf(buf, sizeof(buf), "%"PRItime_t, (time_t)dvr_entry_get_stop_time((dvr_entry_t *)aux));
|
||||
+ snprintf(buf, sizeof(buf), "%"PRItime_t, (intmax_t)dvr_entry_get_stop_time((dvr_entry_t *)aux));
|
||||
return dvr_do_prefix(id, fmt, buf, tmp, tmplen);
|
||||
}
|
||||
|
||||
--- a/src/epggrab/module.c
|
||||
+++ b/src/epggrab/module.c
|
||||
@@ -582,7 +582,7 @@ static void _epggrab_socket_handler ( ep
|
||||
|
||||
/* Process */
|
||||
if ( data ) {
|
||||
- tvhinfo(mod->subsys, "%s: grab took %"PRItime_t" seconds", mod->id, tm2 - tm1);
|
||||
+ tvhinfo(mod->subsys, "%s: grab took %"PRItime_t" seconds", mod->id, (intmax_t)(tm2 - tm1));
|
||||
epggrab_module_parse(mod, data);
|
||||
|
||||
/* Failed */
|
||||
--- a/src/epggrab/module/opentv.c
|
||||
+++ b/src/epggrab/module/opentv.c
|
||||
@@ -497,7 +497,7 @@ opentv_parse_event_section_one
|
||||
1, &save, &changes);
|
||||
tvhdebug(LS_OPENTV, "find by time start %"PRItime_t " stop "
|
||||
"%"PRItime_t " ch %"PRId64" eid %d = %p",
|
||||
- ev.start, ev.stop, ch->ch_number, ev.eid, ebc);
|
||||
+ (intmax_t)ev.start, (intmax_t)ev.stop, ch->ch_number, ev.eid, ebc);
|
||||
save |= epg_broadcast_set_dvb_eid(ebc, ev.eid, &changes);
|
||||
} else {
|
||||
ebc = epg_broadcast_find_by_eid(ch, ev.eid);
|
||||
--- a/src/webui/simpleui.c
|
||||
+++ b/src/webui/simpleui.c
|
||||
@@ -556,12 +556,12 @@ page_status(http_connection_t *hc,
|
||||
"<title>%s</title>\n",
|
||||
a.tm_year + 1900, a.tm_mon + 1, a.tm_mday,
|
||||
a.tm_hour, a.tm_min,
|
||||
- de->de_start,
|
||||
- (time_t)dvr_entry_get_extra_time_pre(de),
|
||||
+ (intmax_t)de->de_start,
|
||||
+ (intmax_t)dvr_entry_get_extra_time_pre(de),
|
||||
b.tm_year+1900, b.tm_mon + 1, b.tm_mday,
|
||||
b.tm_hour, b.tm_min,
|
||||
- de->de_stop,
|
||||
- (time_t)dvr_entry_get_extra_time_post(de),
|
||||
+ (intmax_t)de->de_stop,
|
||||
+ (intmax_t)dvr_entry_get_extra_time_post(de),
|
||||
buf);
|
||||
|
||||
rstatus = val2str(de->de_sched_state, recstatustxt);
|
||||
@@ -0,0 +1,32 @@
|
||||
SUMMARY = "Tvheadend: TV streaming server and recorder"
|
||||
HOMEPAGE = "https://tvheadend.org/"
|
||||
|
||||
inherit autotools-brokensep gettext gitpkgv pkgconfig
|
||||
|
||||
DEPENDS = "avahi cmake-native dvb-apps libdvbcsa libpcre2 openssl uriparser zlib"
|
||||
|
||||
LICENSE = "GPL-3.0-or-later"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=9cae5acac2e9ee2fc3aec01ac88ce5db"
|
||||
|
||||
SRC_URI = "git://github.com/tvheadend/tvheadend.git;branch=master;protocol=https \
|
||||
file://0001-adjust-for-64bit-time_t.patch \
|
||||
"
|
||||
|
||||
SRCREV = "cc602833684953fc3e6f1c89d4f08f6dfef179e3"
|
||||
PV = "4.3+git${SRCPV}"
|
||||
PKGV = "4.3+git${GITPKGV}"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
EXTRA_OECONF += "--arch=${TARGET_ARCH} \
|
||||
--disable-hdhomerun_static \
|
||||
--disable-ffmpeg_static \
|
||||
--disable-libav \
|
||||
--python=python3 \
|
||||
--disable-dvbscan \
|
||||
"
|
||||
|
||||
EXTRA_OECONF:append:libc-musl = " --disable-execinfo"
|
||||
|
||||
EXTRA_OEMAKE = "CFLAGS_NO_WERROR=yes"
|
||||
CLEANBROKEN = "1"
|
||||
Reference in New Issue
Block a user