diff --git a/.pc/.quilt_patches b/.pc/.quilt_patches
new file mode 100644
index 0000000..6857a8d
--- /dev/null
+++ b/.pc/.quilt_patches
@@ -0,0 +1 @@
+debian/patches
diff --git a/.pc/.quilt_series b/.pc/.quilt_series
new file mode 100644
index 0000000..c206706
--- /dev/null
+++ b/.pc/.quilt_series
@@ -0,0 +1 @@
+series
diff --git a/.pc/.version b/.pc/.version
new file mode 100644
index 0000000..0cfbf08
--- /dev/null
+++ b/.pc/.version
@@ -0,0 +1 @@
+2
diff --git a/.pc/applied-patches b/.pc/applied-patches
new file mode 100644
index 0000000..24cd223
--- /dev/null
+++ b/.pc/applied-patches
@@ -0,0 +1,3 @@
+disable-po-update.patch
+cppflags.patch
+cross.patch
diff --git a/.pc/cppflags.patch/Makefile b/.pc/cppflags.patch/Makefile
new file mode 100644
index 0000000..80d668e
--- /dev/null
+++ b/.pc/cppflags.patch/Makefile
@@ -0,0 +1,509 @@
+#
+# Makefile for a Video Disk Recorder plugin
+#
+# See the main source file 'xineliboutput.c' for copyright information and
+# how to reach the author.
+#
+# $Id$
+#
+
+# The official name of this plugin.
+# This name will be used in the '-P...' option of VDR to load the plugin.
+# By default the main source file also carries this name.
+
+PLUGIN = xineliboutput
+
+_default: all
+
+# Keep VDR Makefile happy - it requires $(LIBDIR)/.$(APIVERSION) somewhere in this file ...
+
+# check for Apple Darwin
+ARCH_APPLE_DARWIN = no
+ifeq ($(shell gcc -dumpmachine | grep -q 'apple-darwin' && echo "1" || echo "0"), 1)
+ ARCH_APPLE_DARWIN = yes
+endif
+
+#
+# Override configuration here or in ../../../Make.config
+#
+
+#NOSIGNAL_IMAGE_FILE=/usr/share/vdr/xineliboutput/nosignal.mpv
+#STARTUP_IMAGE_FILE=/usr/share/vdr/xineliboutput/logodisplay.mpv
+XINELIBOUTPUT_CONFIGURE_OPTS =
+
+
+###
+### The version number of this plugin (taken from the main source file):
+###
+
+VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | cut -d'"' -f2)
+
+
+###
+### The C++ compiler and options:
+###
+
+CXX ?= g++
+CC ?= gcc
+OPTFLAGS ?=
+
+ifeq ($(ARCH_APPLE_DARWIN), yes)
+ CXXFLAGS ?= -O3 -pipe -Wall -Woverloaded-virtual -fPIC -g -fno-common -bundle -flat_namespace -undefined suppress
+ CFLAGS ?= -O3 -pipe -Wall -fPIC -g -fno-common -bundle -flat_namespace -undefined suppress
+ LDFLAGS_SO ?= -fvisibility=hidden
+else
+ CXXFLAGS ?= -O3 -pipe -Wall -Woverloaded-virtual -fPIC -g
+ CFLAGS ?= -O3 -pipe -Wall -fPIC -g
+ LDFLAGS_SO ?= -fvisibility=hidden
+ LDFLAGS_SO += -shared
+endif
+
+###
+### The directory environment:
+###
+
+# Use package data if installed...otherwise assume we're under the VDR source directory:
+PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." pkg-config --variable=$(1) vdr))
+BINDIR = $(call PKGCFG,bindir)
+LIBDIR = $(call PKGCFG,libdir)
+LOCDIR = $(call PKGCFG,locdir)
+PLGCFG = $(call PKGCFG,plgcfg)
+VIDEODIR = $(call PKGCFG,videodir)
+
+TMPDIR ?= /tmp
+
+INSTALL ?= install
+
+###
+### Allow user defined options to overwrite defaults:
+###
+
+-include Make.config
+
+ifeq ($(strip $(BINDIR)),)
+ BINDIR = /usr/bin
+endif
+
+###
+### check for VDR
+###
+
+APIVERSION = $(call PKGCFG,apiversion)
+
+VDR_TREE = no
+ifeq ($(strip $(APIVERSION)),)
+ $(warning ********************************************************)
+ $(warning VDR not detected ! VDR plugins will not be compiled. )
+ $(warning ********************************************************)
+ CONFIGURE_OPTS += --disable-vdr
+else
+ export CFLAGS = $(call PKGCFG,cflags)
+ export CXXFLAGS = $(call PKGCFG,cxxflags)
+
+ ifeq ($(VDRDIR),)
+ $(warning Building outside VDR source tree)
+ else
+ $(warning Building inside VDR source tree)
+ VDR_TREE = yes
+ endif
+endif
+
+CFLAGS += -Wextra -Wno-unused-parameter -Wmissing-prototypes -Wimplicit-function-declaration -Wshadow
+CXXFLAGS += -Wextra -Wno-unused-parameter
+
+### Allow user defined options to overwrite defaults:
+-include $(PLGCFG)
+
+#
+# Silent rules falback
+#
+ifndef Q
+ifdef VERBOSE
+Q =
+else
+Q = @
+endif
+export Q
+endif
+
+###
+### run configure script
+###
+
+config.mak: Makefile configure
+ @echo Running configure
+ @sh configure --cc="$(CC)" --cxx="$(CXX)" $(CONFIGURE_OPTS) $(XINELIBOUTPUT_CONFIGURE_OPTS)
+-include config.mak
+
+###
+### The name of the distribution archive:
+###
+
+ARCHIVE = $(PLUGIN)-$(VERSION)
+PACKAGE = vdr-$(ARCHIVE)
+
+
+###
+### The name of executable and libraries
+###
+
+VDRPLUGIN = libvdr-$(PLUGIN).so.$(APIVERSION)
+VDRPLUGIN_SXFE = lib$(PLUGIN)-sxfe.so.$(VERSION)
+VDRPLUGIN_FBFE = lib$(PLUGIN)-fbfe.so.$(VERSION)
+VDRPLUGIN_WLFE = lib$(PLUGIN)-wlfe.so.$(VERSION)
+VDRSXFE = vdr-sxfe
+VDRFBFE = vdr-fbfe
+VDRWLFE = vdr-wlfe
+XINEINPUTVDR = xineplug_inp_xvdr.so
+XINEPOSTAUTOCROP = xineplug_post_autocrop.so
+XINEPOSTSWSCALE = xineplug_post_swscale.so
+XINEPOSTAUDIOCHANNEL = xineplug_post_audiochannel.so
+
+###
+### which programs and libs to build
+###
+
+TARGETS_VDR =
+TARGETS_FE =
+TARGETS_XINE =
+ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ TARGETS_VDR += $(VDRPLUGIN)
+endif
+ifeq ($(XINELIBOUTPUT_XINEPLUGIN), yes)
+ TARGETS_XINE += $(XINEINPUTVDR) $(XINEPOSTAUTOCROP) $(XINEPOSTSWSCALE) $(XINEPOSTAUDIOCHANNEL)
+endif
+ifeq ($(XINELIBOUTPUT_X11), yes)
+ TARGETS_FE += $(VDRSXFE)
+ ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ TARGETS_VDR += $(VDRPLUGIN_SXFE)
+ endif
+endif
+ifeq ($(XINELIBOUTPUT_FB), yes)
+ TARGETS_FE += $(VDRFBFE)
+ ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ TARGETS_VDR += $(VDRPLUGIN_FBFE)
+ endif
+endif
+ifeq ($(XINELIBOUTPUT_WAYLAND), yes)
+ TARGETS_FE += $(VDRWLFE)
+ ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ TARGETS_VDR += $(VDRPLUGIN_WLFE)
+ endif
+endif
+
+
+###
+### Includes and Defines (add further entries here):
+###
+
+ifeq ($(ARCH_APPLE_DARWIN), yes)
+ INCLUDES += -I/sw/include
+ LIBDIRS += -L/sw/lib
+ LIBS += $(LIBDIRS)
+else
+ LIBS += -lrt
+endif
+
+DEFINES += -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"$(PLUGIN)"' \
+ -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 \
+ -DVIDEODIR='"$(VIDEODIR)"' -DXINELIBOUTPUT_VERSION='"$(VERSION)"'
+
+ifdef NOSIGNAL_IMAGE_FILE
+ DEFINES += -DNOSIGNAL_IMAGE_FILE='"$(NOSIGNAL_IMAGE_FILE)"'
+endif
+ifdef STARTUP_IMAGE_FILE
+ DEFINES += -DSTARTUP_IMAGE_FILE='"$(STARTUP_IMAGE_FILE)"'
+endif
+
+DEFINES += $(EXTRA_DEFINES)
+
+###
+### The object files (add further files here):
+###
+
+# VDR plugin
+ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+OBJS = $(PLUGIN).o device.o frontend.o osd.o config.o menu.o setup_menu.o \
+ menuitems.o media_player.o equalizer.o \
+ frontend_local.o frontend_svr.o tools/avahi.o \
+ tools/cxsocket.o tools/udp_pes_scheduler.o \
+ tools/backgroundwriter.o tools/playlist.o tools/http.o \
+ tools/time_pts.o tools.o \
+ tools/metainfo_menu.o logdefs.o tools/rle.o \
+ tools/sys_cap.o tools/sap.o tools/sdp.o
+OBJS_MPG = black_720x576.o nosignal_720x576.o vdrlogo_720x576.o
+endif
+
+# frontends
+OBJS_FE_SO = xine_frontend.o logdefs.o \
+ xine/post.o xine/vo_hook.o xine/vo_osdscaler.o xine/vo_osdreorder.o xine/vo_lastpts.o \
+ xine/vo_frameoutput.o \
+ tools/rle.o
+OBJS_FE = $(OBJS_FE_SO) \
+ xine_frontend_main.o \
+ xine_frontend_lirc.o xine_frontend_kbd.o xine_frontend_cec.o \
+ tools/vdrdiscovery.o
+OBJS_SXFE_SO = xine_sxfe_frontend.o $(OBJS_FE_SO)
+OBJS_SXFE = xine_sxfe_frontend.o $(OBJS_FE)
+OBJS_FBFE_SO = xine_fbfe_frontend.o $(OBJS_FE_SO)
+OBJS_FBFE = xine_fbfe_frontend.o $(OBJS_FE)
+OBJS_WLFE_SO = xine_wlfe_frontend.o $(OBJS_FE_SO)
+OBJS_WLFE = xine_wlfe_frontend.o $(OBJS_FE)
+
+ifneq ($(HAVE_DBUS_GLIB_1), no)
+OBJS_SXFE += tools/gnome_screensaver.o
+OBJS_SXFE_SO += tools/gnome_screensaver.o
+endif
+
+# xine plugins
+OBJS_XINEINPUTVDR = xine_input_vdr.o xine/demux_xvdr.o \
+ xine/ts2es.o xine/demux_xvdr_tsdata.o \
+ xine/adjustable_scr.o xine/xvdr_metronom.o xine/osd_manager.o \
+ tools/rle.o tools/ts.o tools/pes.o tools/mpeg.o tools/h264.o tools/h265.o \
+ tools/vdrdiscovery.o
+
+OBJS_XINE = $(OBJS_XINEINPUTVDR) xine_post_autocrop.o xine_post_swscale.o xine_post_audiochannel.o
+
+###
+### Implicit rules:
+###
+
+%.o: %.c
+ @echo CXX $@
+ $(Q)$(CXX) $(CXXFLAGS) -c $(DEFINES) $(INCLUDES) $(CFLAGS_VDR) -o $@ $<
+
+
+###
+### Dependencies:
+###
+
+MAKEDEP = $(CXX) -MM -MG
+DEPFILE = .dependencies
+$(DEPFILE): Makefile config.mak
+ @rm -f $@
+ @for i in $(OBJS:%.o=%.c) $(OBJS_SXFE:%.o=%.c) $(OBJS_FBFE:%.o=%.c) $(OBJS_WLFE:%.o=%.c) $(OBJS_XINE:%.o=%.c) ; do \
+ $(MAKEDEP) $(CXXFLAGS) $(DEFINES) $(INCLUDES) -MT "`dirname $$i`/`basename $$i .c`.o" $$i >>$@ ; \
+ done
+
+-include $(DEPFILE)
+
+DEFINES += -Wall
+
+
+###
+### Rules:
+###
+
+mpg2c: mpg2c.c
+ @echo CCLD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS) mpg2c.c -o $@
+
+# data
+black_720x576.c: mpg2c black_720x576.mpg
+ @echo GEN $@
+ $(Q)./mpg2c black black_720x576.mpg black_720x576.c
+nosignal_720x576.c: mpg2c nosignal_720x576.mpg
+ @echo GEN $@
+ $(Q)./mpg2c nosignal nosignal_720x576.mpg nosignal_720x576.c
+vdrlogo_720x576.c: mpg2c vdrlogo_720x576.mpg
+ @echo GEN $@
+ $(Q)./mpg2c vdrlogo vdrlogo_720x576.mpg vdrlogo_720x576.c
+
+# C code (xine plugins and frontends)
+
+xine_input_vdr.o: nosignal_720x576.c
+
+$(sort $(OBJS_SXFE) $(OBJS_FBFE) $(OBJS_WLFE) $(OBJS_XINE)): %.o: %.c
+ @echo CC $@
+ $(Q)$(CC) $(CFLAGS) -c $(DEFINES) $(INCLUDES) $(CFLAGS_X11) $(CFLAGS_WAYLAND) $(CFLAGS_AVUTIL) $(OPTFLAGS) -o $@ $<
+
+### Internationalization (I18N):
+PODIR = po
+ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+I18Npo = $(wildcard $(PODIR)/*.po)
+I18Nmo = $(addsuffix .mo, $(foreach file, $(I18Npo), $(basename $(file))))
+I18Nmsgs = $(addprefix $(DESTDIR)$(LOCDIR)/, $(addsuffix /LC_MESSAGES/vdr-$(PLUGIN).mo, $(notdir $(foreach file, $(I18Npo), $(basename $(file))))))
+I18Npot = $(PODIR)/$(PLUGIN).pot
+
+%.mo: %.po
+ @echo MO $@
+ $(Q)msgfmt -c -o $@ $<
+
+$(I18Npot): $(wildcard *.c)
+ @echo GT $@
+ $(Q)xgettext -C -cTRANSLATORS --no-wrap --no-location -k -ktr -ktrNOOP --package-name=vdr-$(PLUGIN) --package-version=$(VERSION) --msgid-bugs-address='<phintuka@users.sourceforge.net>' -o $@ `ls $^`
+
+#%.po: $(I18Npot)
+# @echo PO $@
+# $(Q)msgmerge -U --no-wrap --no-location --backup=none -q -N $@ $<
+# @touch $@
+
+$(I18Nmsgs): $(DESTDIR)$(LOCDIR)/%/LC_MESSAGES/vdr-$(PLUGIN).mo: $(PODIR)/%.mo
+ @echo INSTALL $^
+ @install -D -m644 $< $@
+endif
+
+.PHONY: i18n
+i18n: $(I18Nmo) $(I18Npot)
+
+install-i18n: $(I18Nmsgs)
+
+###
+### targets
+###
+
+XINELIBOUTPUT_INSTALL_MSG = \
+ $(warning *********************** xineliboutput ***************************) \
+ $(warning Xine plugins and frontends will not be installed automatically. ) \
+ $(warning To install files execute "make install" in ) \
+ $(warning $(shell echo `pwd`)) \
+ $(warning *****************************************************************)
+
+install : XINELIBOUTPUT_INSTALL_MSG =
+
+.PHONY: all
+all: config $(TARGETS_VDR) frontends i18n
+
+frontends: config $(TARGETS_FE) $(TARGETS_XINE)
+ $(XINELIBOUTPUT_INSTALL_MSG)
+
+config: config.mak
+
+.PHONY: config
+
+.PHONY: frontends install dist clean
+
+#
+# VDR plugin
+#
+
+$(VDRPLUGIN): $(OBJS) $(OBJS_MPG)
+ @echo LD $@
+ $(Q)$(CXX) $(CXXFLAGS) $(LDFLAGS_SO) $(LDFLAGS) -shared $(OBJS) $(OBJS_MPG) $(LIBS) $(LIBS_VDR) -o $@
+ifeq ($(VDR_TREE), yes)
+ $(INSTALL) $@ $(LIBDIR)/
+endif
+
+install-lib: $(TARGETS_VDR)
+ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ @echo INSTALL $^
+ @mkdir -p $(DESTDIR)$(LIBDIR)
+ install -D $^ $(DESTDIR)$(LIBDIR)/
+endif
+
+install: install-lib install-i18n
+
+#
+# vdr-sxfe
+#
+
+$(VDRPLUGIN_SXFE): $(OBJS_SXFE_SO)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $(OBJS_SXFE_SO) $(LIBS_X11) $(LIBS_XINE) $(LIBS_JPEG) -o $@
+ifeq ($(VDR_TREE), yes)
+ $(INSTALL) $@ $(LIBDIR)/
+endif
+$(VDRSXFE): $(OBJS_SXFE)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_SXFE) $(LIBS_X11) $(LIBS_XINE) $(LIBS_JPEG) $(LIBS_CEC) $(LIBS_PTHREAD) -o $@
+
+#
+# vdr-wlfe
+#
+
+$(VDRPLUGIN_WLFE): $(OBJS_WLFE_SO)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $(OBJS_WLFE_SO) $(LIBS_WAYLAND) $(LIBS_XINE) $(LIBS_JPEG) -o $@
+ifeq ($(VDR_TREE), yes)
+ $(INSTALL) $@ $(LIBDIR)/
+endif
+$(VDRWLFE): $(OBJS_WLFE)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_WLFE) $(LIBS_WAYLAND) $(LIBS_XINE) $(LIBS_JPEG) $(LIBS_CEC) $(LIBS_PTHREAD) -o $@
+
+#
+# vdr-fbfe
+#
+
+$(VDRPLUGIN_FBFE): $(OBJS_FBFE_SO)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $(OBJS_FBFE_SO) $(LIBS_XINE) $(LIBS_JPEG) -o $@
+ifeq ($(VDR_TREE), yes)
+ $(INSTALL) $@ $(LIBDIR)/
+endif
+$(VDRFBFE): $(OBJS_FBFE)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_FBFE) $(LIBS_XINE) $(LIBS_JPEG) $(LIBS_CEC) $(LIBS_PTHREAD) -o $@
+
+#
+# xine plugins
+#
+
+$(XINEINPUTVDR): $(OBJS_XINEINPUTVDR)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $(OBJS_XINEINPUTVDR) $(LIBS_XINE) $(LIBS_AVUTIL) $(LIBS_PTHREAD) -o $@
+$(XINEPOSTAUTOCROP): xine_post_autocrop.o
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $< -o $@ $(LIBS_XINE)
+$(XINEPOSTSWSCALE): xine_post_swscale.o
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $< -o $@ $(LIBS_XINE)
+$(XINEPOSTAUDIOCHANNEL): xine_post_audiochannel.o
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $< -o $@ $(LIBS_XINE)
+
+#
+# install
+#
+
+install: all
+ifeq ($(XINELIBOUTPUT_XINEPLUGIN), yes)
+ @mkdir -p $(DESTDIR)$(XINEPLUGINDIR)/post
+ @echo INSTALL $(DESTDIR)$(XINEPLUGINDIR)/$(XINEINPUTVDR)
+ @-rm -rf $(DESTDIR)$(XINEPLUGINDIR)/$(XINEINPUTVDR)
+ @$(INSTALL) -m 0644 $(XINEINPUTVDR) $(DESTDIR)$(XINEPLUGINDIR)/$(XINEINPUTVDR)
+ @echo INSTALL $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUTOCROP)
+ @-rm -rf $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUTOCROP)
+ @$(INSTALL) -m 0644 $(XINEPOSTAUTOCROP) $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUTOCROP)
+ @echo INSTALL $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTSWSCALE)
+ @-rm -rf $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTSWSCALE)
+ @$(INSTALL) -m 0644 $(XINEPOSTSWSCALE) $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTSWSCALE)
+ @echo INSTALL $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUDIOCHANNEL)
+ @-rm -rf $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUDIOCHANNEL)
+ @$(INSTALL) -m 0644 $(XINEPOSTAUDIOCHANNEL) $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUDIOCHANNEL)
+endif
+ifeq ($(XINELIBOUTPUT_FB), yes)
+ @echo INSTALL $(DESTDIR)$(BINDIR)/vdr-fbfe
+ @mkdir -p $(DESTDIR)$(BINDIR)
+ @-rm -rf $(DESTDIR)$(BINDIR)/vdr-fbfe
+ @$(INSTALL) -m 0755 vdr-fbfe $(DESTDIR)$(BINDIR)/vdr-fbfe
+endif
+ifeq ($(XINELIBOUTPUT_X11), yes)
+ @echo INSTALL $(DESTDIR)$(BINDIR)/vdr-sxfe
+ @mkdir -p $(DESTDIR)$(BINDIR)
+ @-rm -rf $(DESTDIR)$(BINDIR)/vdr-sxfe
+ @$(INSTALL) -m 0755 vdr-sxfe $(DESTDIR)$(BINDIR)/vdr-sxfe
+endif
+ifeq ($(XINELIBOUTPUT_WAYLAND), yes)
+ @echo Installing $(DESTDIR)$(BINDIR)/vdr-wlfe
+ @mkdir -p $(DESTDIR)$(BINDIR)
+ @-rm -rf $(DESTDIR)$(BINDIR)/vdr-wlfe
+ @$(INSTALL) -m 0755 vdr-wlfe $(DESTDIR)$(BINDIR)/vdr-wlfe
+endif
+
+dist: $(I18Npo) clean
+ @-rm -rf $(TMPDIR)/$(ARCHIVE)
+ @mkdir $(TMPDIR)/$(ARCHIVE)
+ @cp -a * $(TMPDIR)/$(ARCHIVE)
+ @tar czf $(PACKAGE).tgz --exclude=CVS -C $(TMPDIR) $(ARCHIVE)
+ @-rm -rf $(TMPDIR)/$(ARCHIVE)
+ @echo Distribution package created as $(PACKAGE).tgz
+
+
+clean:
+ @-rm -f $(DEPFILE) *.so* *.o *.tgz core* *~ *.flc *.bak \
+ tools/*.o tools/*~ tools/*.flc xine/*.o xine/*~ \
+ xine/*.flc $(VDR_FBFE) $(VDR_WLFE) $(VDR_SXFE) mpg2c black_720x576.c \
+ nosignal_720x576.c vdrlogo_720x576.c vdr-sxfe vdr-fbfe vdr-wlfe \
+ features.h config.mak configure.log
+ @-rm -f $(PODIR)/*.mo $(PODIR)/*.pot
diff --git a/.pc/cross.patch/Makefile b/.pc/cross.patch/Makefile
new file mode 100644
index 0000000..3ab61c5
--- /dev/null
+++ b/.pc/cross.patch/Makefile
@@ -0,0 +1,509 @@
+#
+# Makefile for a Video Disk Recorder plugin
+#
+# See the main source file 'xineliboutput.c' for copyright information and
+# how to reach the author.
+#
+# $Id$
+#
+
+# The official name of this plugin.
+# This name will be used in the '-P...' option of VDR to load the plugin.
+# By default the main source file also carries this name.
+
+PLUGIN = xineliboutput
+
+_default: all
+
+# Keep VDR Makefile happy - it requires $(LIBDIR)/.$(APIVERSION) somewhere in this file ...
+
+# check for Apple Darwin
+ARCH_APPLE_DARWIN = no
+ifeq ($(shell gcc -dumpmachine | grep -q 'apple-darwin' && echo "1" || echo "0"), 1)
+ ARCH_APPLE_DARWIN = yes
+endif
+
+#
+# Override configuration here or in ../../../Make.config
+#
+
+#NOSIGNAL_IMAGE_FILE=/usr/share/vdr/xineliboutput/nosignal.mpv
+#STARTUP_IMAGE_FILE=/usr/share/vdr/xineliboutput/logodisplay.mpv
+XINELIBOUTPUT_CONFIGURE_OPTS =
+
+
+###
+### The version number of this plugin (taken from the main source file):
+###
+
+VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | cut -d'"' -f2)
+
+
+###
+### The C++ compiler and options:
+###
+
+CXX ?= g++
+CC ?= gcc
+OPTFLAGS ?=
+
+ifeq ($(ARCH_APPLE_DARWIN), yes)
+ CXXFLAGS ?= -O3 -pipe -Wall -Woverloaded-virtual -fPIC -g -fno-common -bundle -flat_namespace -undefined suppress
+ CFLAGS ?= -O3 -pipe -Wall -fPIC -g -fno-common -bundle -flat_namespace -undefined suppress
+ LDFLAGS_SO ?= -fvisibility=hidden
+else
+ CXXFLAGS ?= -O3 -pipe -Wall -Woverloaded-virtual -fPIC -g
+ CFLAGS ?= -O3 -pipe -Wall -fPIC -g
+ LDFLAGS_SO ?= -fvisibility=hidden
+ LDFLAGS_SO += -shared
+endif
+
+###
+### The directory environment:
+###
+
+# Use package data if installed...otherwise assume we're under the VDR source directory:
+PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." pkg-config --variable=$(1) vdr))
+BINDIR = $(call PKGCFG,bindir)
+LIBDIR = $(call PKGCFG,libdir)
+LOCDIR = $(call PKGCFG,locdir)
+PLGCFG = $(call PKGCFG,plgcfg)
+VIDEODIR = $(call PKGCFG,videodir)
+
+TMPDIR ?= /tmp
+
+INSTALL ?= install
+
+###
+### Allow user defined options to overwrite defaults:
+###
+
+-include Make.config
+
+ifeq ($(strip $(BINDIR)),)
+ BINDIR = /usr/bin
+endif
+
+###
+### check for VDR
+###
+
+APIVERSION = $(call PKGCFG,apiversion)
+
+VDR_TREE = no
+ifeq ($(strip $(APIVERSION)),)
+ $(warning ********************************************************)
+ $(warning VDR not detected ! VDR plugins will not be compiled. )
+ $(warning ********************************************************)
+ CONFIGURE_OPTS += --disable-vdr
+else
+ export CFLAGS = $(call PKGCFG,cflags)
+ export CXXFLAGS = $(call PKGCFG,cxxflags)
+
+ ifeq ($(VDRDIR),)
+ $(warning Building outside VDR source tree)
+ else
+ $(warning Building inside VDR source tree)
+ VDR_TREE = yes
+ endif
+endif
+
+CFLAGS += -Wextra -Wno-unused-parameter -Wmissing-prototypes -Wimplicit-function-declaration -Wshadow
+CXXFLAGS += -Wextra -Wno-unused-parameter
+
+### Allow user defined options to overwrite defaults:
+-include $(PLGCFG)
+
+#
+# Silent rules falback
+#
+ifndef Q
+ifdef VERBOSE
+Q =
+else
+Q = @
+endif
+export Q
+endif
+
+###
+### run configure script
+###
+
+config.mak: Makefile configure
+ @echo Running configure
+ @sh configure --cc="$(CC)" --cxx="$(CXX)" $(CONFIGURE_OPTS) $(XINELIBOUTPUT_CONFIGURE_OPTS)
+-include config.mak
+
+###
+### The name of the distribution archive:
+###
+
+ARCHIVE = $(PLUGIN)-$(VERSION)
+PACKAGE = vdr-$(ARCHIVE)
+
+
+###
+### The name of executable and libraries
+###
+
+VDRPLUGIN = libvdr-$(PLUGIN).so.$(APIVERSION)
+VDRPLUGIN_SXFE = lib$(PLUGIN)-sxfe.so.$(VERSION)
+VDRPLUGIN_FBFE = lib$(PLUGIN)-fbfe.so.$(VERSION)
+VDRPLUGIN_WLFE = lib$(PLUGIN)-wlfe.so.$(VERSION)
+VDRSXFE = vdr-sxfe
+VDRFBFE = vdr-fbfe
+VDRWLFE = vdr-wlfe
+XINEINPUTVDR = xineplug_inp_xvdr.so
+XINEPOSTAUTOCROP = xineplug_post_autocrop.so
+XINEPOSTSWSCALE = xineplug_post_swscale.so
+XINEPOSTAUDIOCHANNEL = xineplug_post_audiochannel.so
+
+###
+### which programs and libs to build
+###
+
+TARGETS_VDR =
+TARGETS_FE =
+TARGETS_XINE =
+ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ TARGETS_VDR += $(VDRPLUGIN)
+endif
+ifeq ($(XINELIBOUTPUT_XINEPLUGIN), yes)
+ TARGETS_XINE += $(XINEINPUTVDR) $(XINEPOSTAUTOCROP) $(XINEPOSTSWSCALE) $(XINEPOSTAUDIOCHANNEL)
+endif
+ifeq ($(XINELIBOUTPUT_X11), yes)
+ TARGETS_FE += $(VDRSXFE)
+ ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ TARGETS_VDR += $(VDRPLUGIN_SXFE)
+ endif
+endif
+ifeq ($(XINELIBOUTPUT_FB), yes)
+ TARGETS_FE += $(VDRFBFE)
+ ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ TARGETS_VDR += $(VDRPLUGIN_FBFE)
+ endif
+endif
+ifeq ($(XINELIBOUTPUT_WAYLAND), yes)
+ TARGETS_FE += $(VDRWLFE)
+ ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ TARGETS_VDR += $(VDRPLUGIN_WLFE)
+ endif
+endif
+
+
+###
+### Includes and Defines (add further entries here):
+###
+
+ifeq ($(ARCH_APPLE_DARWIN), yes)
+ INCLUDES += -I/sw/include
+ LIBDIRS += -L/sw/lib
+ LIBS += $(LIBDIRS)
+else
+ LIBS += -lrt
+endif
+
+DEFINES += -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"$(PLUGIN)"' \
+ -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 \
+ -DVIDEODIR='"$(VIDEODIR)"' -DXINELIBOUTPUT_VERSION='"$(VERSION)"'
+
+ifdef NOSIGNAL_IMAGE_FILE
+ DEFINES += -DNOSIGNAL_IMAGE_FILE='"$(NOSIGNAL_IMAGE_FILE)"'
+endif
+ifdef STARTUP_IMAGE_FILE
+ DEFINES += -DSTARTUP_IMAGE_FILE='"$(STARTUP_IMAGE_FILE)"'
+endif
+
+DEFINES += $(EXTRA_DEFINES)
+
+###
+### The object files (add further files here):
+###
+
+# VDR plugin
+ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+OBJS = $(PLUGIN).o device.o frontend.o osd.o config.o menu.o setup_menu.o \
+ menuitems.o media_player.o equalizer.o \
+ frontend_local.o frontend_svr.o tools/avahi.o \
+ tools/cxsocket.o tools/udp_pes_scheduler.o \
+ tools/backgroundwriter.o tools/playlist.o tools/http.o \
+ tools/time_pts.o tools.o \
+ tools/metainfo_menu.o logdefs.o tools/rle.o \
+ tools/sys_cap.o tools/sap.o tools/sdp.o
+OBJS_MPG = black_720x576.o nosignal_720x576.o vdrlogo_720x576.o
+endif
+
+# frontends
+OBJS_FE_SO = xine_frontend.o logdefs.o \
+ xine/post.o xine/vo_hook.o xine/vo_osdscaler.o xine/vo_osdreorder.o xine/vo_lastpts.o \
+ xine/vo_frameoutput.o \
+ tools/rle.o
+OBJS_FE = $(OBJS_FE_SO) \
+ xine_frontend_main.o \
+ xine_frontend_lirc.o xine_frontend_kbd.o xine_frontend_cec.o \
+ tools/vdrdiscovery.o
+OBJS_SXFE_SO = xine_sxfe_frontend.o $(OBJS_FE_SO)
+OBJS_SXFE = xine_sxfe_frontend.o $(OBJS_FE)
+OBJS_FBFE_SO = xine_fbfe_frontend.o $(OBJS_FE_SO)
+OBJS_FBFE = xine_fbfe_frontend.o $(OBJS_FE)
+OBJS_WLFE_SO = xine_wlfe_frontend.o $(OBJS_FE_SO)
+OBJS_WLFE = xine_wlfe_frontend.o $(OBJS_FE)
+
+ifneq ($(HAVE_DBUS_GLIB_1), no)
+OBJS_SXFE += tools/gnome_screensaver.o
+OBJS_SXFE_SO += tools/gnome_screensaver.o
+endif
+
+# xine plugins
+OBJS_XINEINPUTVDR = xine_input_vdr.o xine/demux_xvdr.o \
+ xine/ts2es.o xine/demux_xvdr_tsdata.o \
+ xine/adjustable_scr.o xine/xvdr_metronom.o xine/osd_manager.o \
+ tools/rle.o tools/ts.o tools/pes.o tools/mpeg.o tools/h264.o tools/h265.o \
+ tools/vdrdiscovery.o
+
+OBJS_XINE = $(OBJS_XINEINPUTVDR) xine_post_autocrop.o xine_post_swscale.o xine_post_audiochannel.o
+
+###
+### Implicit rules:
+###
+
+%.o: %.c
+ @echo CXX $@
+ $(Q)$(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(DEFINES) $(INCLUDES) $(CFLAGS_VDR) -o $@ $<
+
+
+###
+### Dependencies:
+###
+
+MAKEDEP = $(CXX) -MM -MG
+DEPFILE = .dependencies
+$(DEPFILE): Makefile config.mak
+ @rm -f $@
+ @for i in $(OBJS:%.o=%.c) $(OBJS_SXFE:%.o=%.c) $(OBJS_FBFE:%.o=%.c) $(OBJS_WLFE:%.o=%.c) $(OBJS_XINE:%.o=%.c) ; do \
+ $(MAKEDEP) $(CPPFLAGS) $(CXXFLAGS) $(DEFINES) $(INCLUDES) -MT "`dirname $$i`/`basename $$i .c`.o" $$i >>$@ ; \
+ done
+
+-include $(DEPFILE)
+
+DEFINES += -Wall
+
+
+###
+### Rules:
+###
+
+mpg2c: mpg2c.c
+ @echo CCLD $@
+ $(Q)$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) mpg2c.c -o $@
+
+# data
+black_720x576.c: mpg2c black_720x576.mpg
+ @echo GEN $@
+ $(Q)./mpg2c black black_720x576.mpg black_720x576.c
+nosignal_720x576.c: mpg2c nosignal_720x576.mpg
+ @echo GEN $@
+ $(Q)./mpg2c nosignal nosignal_720x576.mpg nosignal_720x576.c
+vdrlogo_720x576.c: mpg2c vdrlogo_720x576.mpg
+ @echo GEN $@
+ $(Q)./mpg2c vdrlogo vdrlogo_720x576.mpg vdrlogo_720x576.c
+
+# C code (xine plugins and frontends)
+
+xine_input_vdr.o: nosignal_720x576.c
+
+$(sort $(OBJS_SXFE) $(OBJS_FBFE) $(OBJS_WLFE) $(OBJS_XINE)): %.o: %.c
+ @echo CC $@
+ $(Q)$(CC) $(CPPFLAGS) $(CFLAGS) -c $(DEFINES) $(INCLUDES) $(CFLAGS_X11) $(CFLAGS_WAYLAND) $(CFLAGS_AVUTIL) $(OPTFLAGS) -o $@ $<
+
+### Internationalization (I18N):
+PODIR = po
+ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+I18Npo = $(wildcard $(PODIR)/*.po)
+I18Nmo = $(addsuffix .mo, $(foreach file, $(I18Npo), $(basename $(file))))
+I18Nmsgs = $(addprefix $(DESTDIR)$(LOCDIR)/, $(addsuffix /LC_MESSAGES/vdr-$(PLUGIN).mo, $(notdir $(foreach file, $(I18Npo), $(basename $(file))))))
+I18Npot = $(PODIR)/$(PLUGIN).pot
+
+%.mo: %.po
+ @echo MO $@
+ $(Q)msgfmt -c -o $@ $<
+
+$(I18Npot): $(wildcard *.c)
+ @echo GT $@
+ $(Q)xgettext -C -cTRANSLATORS --no-wrap --no-location -k -ktr -ktrNOOP --package-name=vdr-$(PLUGIN) --package-version=$(VERSION) --msgid-bugs-address='<phintuka@users.sourceforge.net>' -o $@ `ls $^`
+
+#%.po: $(I18Npot)
+# @echo PO $@
+# $(Q)msgmerge -U --no-wrap --no-location --backup=none -q -N $@ $<
+# @touch $@
+
+$(I18Nmsgs): $(DESTDIR)$(LOCDIR)/%/LC_MESSAGES/vdr-$(PLUGIN).mo: $(PODIR)/%.mo
+ @echo INSTALL $^
+ @install -D -m644 $< $@
+endif
+
+.PHONY: i18n
+i18n: $(I18Nmo) $(I18Npot)
+
+install-i18n: $(I18Nmsgs)
+
+###
+### targets
+###
+
+XINELIBOUTPUT_INSTALL_MSG = \
+ $(warning *********************** xineliboutput ***************************) \
+ $(warning Xine plugins and frontends will not be installed automatically. ) \
+ $(warning To install files execute "make install" in ) \
+ $(warning $(shell echo `pwd`)) \
+ $(warning *****************************************************************)
+
+install : XINELIBOUTPUT_INSTALL_MSG =
+
+.PHONY: all
+all: config $(TARGETS_VDR) frontends i18n
+
+frontends: config $(TARGETS_FE) $(TARGETS_XINE)
+ $(XINELIBOUTPUT_INSTALL_MSG)
+
+config: config.mak
+
+.PHONY: config
+
+.PHONY: frontends install dist clean
+
+#
+# VDR plugin
+#
+
+$(VDRPLUGIN): $(OBJS) $(OBJS_MPG)
+ @echo LD $@
+ $(Q)$(CXX) $(CXXFLAGS) $(LDFLAGS_SO) $(LDFLAGS) -shared $(OBJS) $(OBJS_MPG) $(LIBS) $(LIBS_VDR) -o $@
+ifeq ($(VDR_TREE), yes)
+ $(INSTALL) $@ $(LIBDIR)/
+endif
+
+install-lib: $(TARGETS_VDR)
+ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ @echo INSTALL $^
+ @mkdir -p $(DESTDIR)$(LIBDIR)
+ install -D $^ $(DESTDIR)$(LIBDIR)/
+endif
+
+install: install-lib install-i18n
+
+#
+# vdr-sxfe
+#
+
+$(VDRPLUGIN_SXFE): $(OBJS_SXFE_SO)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $(OBJS_SXFE_SO) $(LIBS_X11) $(LIBS_XINE) $(LIBS_JPEG) -o $@
+ifeq ($(VDR_TREE), yes)
+ $(INSTALL) $@ $(LIBDIR)/
+endif
+$(VDRSXFE): $(OBJS_SXFE)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_SXFE) $(LIBS_X11) $(LIBS_XINE) $(LIBS_JPEG) $(LIBS_CEC) $(LIBS_PTHREAD) -o $@
+
+#
+# vdr-wlfe
+#
+
+$(VDRPLUGIN_WLFE): $(OBJS_WLFE_SO)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $(OBJS_WLFE_SO) $(LIBS_WAYLAND) $(LIBS_XINE) $(LIBS_JPEG) -o $@
+ifeq ($(VDR_TREE), yes)
+ $(INSTALL) $@ $(LIBDIR)/
+endif
+$(VDRWLFE): $(OBJS_WLFE)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_WLFE) $(LIBS_WAYLAND) $(LIBS_XINE) $(LIBS_JPEG) $(LIBS_CEC) $(LIBS_PTHREAD) -o $@
+
+#
+# vdr-fbfe
+#
+
+$(VDRPLUGIN_FBFE): $(OBJS_FBFE_SO)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $(OBJS_FBFE_SO) $(LIBS_XINE) $(LIBS_JPEG) -o $@
+ifeq ($(VDR_TREE), yes)
+ $(INSTALL) $@ $(LIBDIR)/
+endif
+$(VDRFBFE): $(OBJS_FBFE)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_FBFE) $(LIBS_XINE) $(LIBS_JPEG) $(LIBS_CEC) $(LIBS_PTHREAD) -o $@
+
+#
+# xine plugins
+#
+
+$(XINEINPUTVDR): $(OBJS_XINEINPUTVDR)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $(OBJS_XINEINPUTVDR) $(LIBS_XINE) $(LIBS_AVUTIL) $(LIBS_PTHREAD) -o $@
+$(XINEPOSTAUTOCROP): xine_post_autocrop.o
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $< -o $@ $(LIBS_XINE)
+$(XINEPOSTSWSCALE): xine_post_swscale.o
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $< -o $@ $(LIBS_XINE)
+$(XINEPOSTAUDIOCHANNEL): xine_post_audiochannel.o
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $< -o $@ $(LIBS_XINE)
+
+#
+# install
+#
+
+install: all
+ifeq ($(XINELIBOUTPUT_XINEPLUGIN), yes)
+ @mkdir -p $(DESTDIR)$(XINEPLUGINDIR)/post
+ @echo INSTALL $(DESTDIR)$(XINEPLUGINDIR)/$(XINEINPUTVDR)
+ @-rm -rf $(DESTDIR)$(XINEPLUGINDIR)/$(XINEINPUTVDR)
+ @$(INSTALL) -m 0644 $(XINEINPUTVDR) $(DESTDIR)$(XINEPLUGINDIR)/$(XINEINPUTVDR)
+ @echo INSTALL $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUTOCROP)
+ @-rm -rf $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUTOCROP)
+ @$(INSTALL) -m 0644 $(XINEPOSTAUTOCROP) $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUTOCROP)
+ @echo INSTALL $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTSWSCALE)
+ @-rm -rf $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTSWSCALE)
+ @$(INSTALL) -m 0644 $(XINEPOSTSWSCALE) $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTSWSCALE)
+ @echo INSTALL $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUDIOCHANNEL)
+ @-rm -rf $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUDIOCHANNEL)
+ @$(INSTALL) -m 0644 $(XINEPOSTAUDIOCHANNEL) $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUDIOCHANNEL)
+endif
+ifeq ($(XINELIBOUTPUT_FB), yes)
+ @echo INSTALL $(DESTDIR)$(BINDIR)/vdr-fbfe
+ @mkdir -p $(DESTDIR)$(BINDIR)
+ @-rm -rf $(DESTDIR)$(BINDIR)/vdr-fbfe
+ @$(INSTALL) -m 0755 vdr-fbfe $(DESTDIR)$(BINDIR)/vdr-fbfe
+endif
+ifeq ($(XINELIBOUTPUT_X11), yes)
+ @echo INSTALL $(DESTDIR)$(BINDIR)/vdr-sxfe
+ @mkdir -p $(DESTDIR)$(BINDIR)
+ @-rm -rf $(DESTDIR)$(BINDIR)/vdr-sxfe
+ @$(INSTALL) -m 0755 vdr-sxfe $(DESTDIR)$(BINDIR)/vdr-sxfe
+endif
+ifeq ($(XINELIBOUTPUT_WAYLAND), yes)
+ @echo Installing $(DESTDIR)$(BINDIR)/vdr-wlfe
+ @mkdir -p $(DESTDIR)$(BINDIR)
+ @-rm -rf $(DESTDIR)$(BINDIR)/vdr-wlfe
+ @$(INSTALL) -m 0755 vdr-wlfe $(DESTDIR)$(BINDIR)/vdr-wlfe
+endif
+
+dist: $(I18Npo) clean
+ @-rm -rf $(TMPDIR)/$(ARCHIVE)
+ @mkdir $(TMPDIR)/$(ARCHIVE)
+ @cp -a * $(TMPDIR)/$(ARCHIVE)
+ @tar czf $(PACKAGE).tgz --exclude=CVS -C $(TMPDIR) $(ARCHIVE)
+ @-rm -rf $(TMPDIR)/$(ARCHIVE)
+ @echo Distribution package created as $(PACKAGE).tgz
+
+
+clean:
+ @-rm -f $(DEPFILE) *.so* *.o *.tgz core* *~ *.flc *.bak \
+ tools/*.o tools/*~ tools/*.flc xine/*.o xine/*~ \
+ xine/*.flc $(VDR_FBFE) $(VDR_WLFE) $(VDR_SXFE) mpg2c black_720x576.c \
+ nosignal_720x576.c vdrlogo_720x576.c vdr-sxfe vdr-fbfe vdr-wlfe \
+ features.h config.mak configure.log
+ @-rm -f $(PODIR)/*.mo $(PODIR)/*.pot
diff --git a/.pc/cross.patch/configure b/.pc/cross.patch/configure
new file mode 100755
index 0000000..53eb983
--- /dev/null
+++ b/.pc/cross.patch/configure
@@ -0,0 +1,532 @@
+#!/bin/sh
+#
+# vdr-xinelibout configure script
+#
+# Copyright (c) Petri Hintukainen 2008
+#
+# See the main source file 'xineliboutput.c' for copyright information and
+# how to reach the author.
+#
+# * $Id$
+#
+
+PKG_CONFIG="pkg-config"
+makefile="config.mak"
+header="features.h"
+logfile="configure.log"
+debug=no
+
+CC="cc"
+CXX="g++"
+CFLAGS=""
+
+#
+# tools
+#
+
+toupper(){
+ echo "$@" | tr abcdefghijklmnopqrstuvwxyz.- ABCDEFGHIJKLMNOPQRSTUVWXYZ__
+}
+
+die(){
+ log "$@"
+ exit 1
+}
+
+log(){
+ echo "$@"
+ echo "$@" >> $logfile
+}
+
+logdbg(){
+ [ x$debug = xyes ] && log "$@" || echo "$@" >> $logfile
+}
+
+not_in_list(){
+ key=$1
+ shift
+ for item in $*; do
+ test $key = $item && return 1
+ done
+ return 0
+}
+
+add_flag(){
+ eval not_in_list $flag \$$flags_list || return 1
+ logdbg "adding $flag to $flags_list"
+ eval $flags_list=\"\$${flags_list} ${flag}\"
+}
+
+add_flags(){
+ flags_list=$1
+ shift
+ for flag in $*; do
+ add_flag $flags_list $flag
+ done
+}
+
+#
+# enable/disable
+#
+
+set_opt(){
+ eval HAVE_$(toupper $1)=$2
+}
+
+set_opts(){
+ optvalue=$1
+ shift
+ for optname in $*; do
+ set_opt $optname $optvalue
+ done
+}
+
+enable(){
+ set_opts yes $*
+}
+
+disable(){
+ set_opts no $*
+}
+
+enabled(){
+ ucfeature=$(toupper $1)
+ eval test "x\$HAVE_${ucfeature}" = "xyes"
+}
+
+disabled(){
+ ucfeature=$(toupper $1)
+ eval test "x\$HAVE_${ucfeature}" = "xno"
+}
+
+#
+# compile/link tests
+#
+
+generate_test_c(){
+ hdrname="$1"
+ subsys="$2"
+ func="$3"
+ if test x"$subsys" = xX11 ; then
+ cat <<EOF >testhdr.c
+#include <X11/Xlib.h>
+#include <$hdrname>
+int main(int c, char **v) {
+ $func;
+ return 0;
+}
+EOF
+ else
+ cat <<EOF >testhdr.c
+#include <stdio.h>
+#include <$hdrname>
+int main(int c, char **v) {
+ $func;
+}
+EOF
+ fi
+}
+
+test_library_c(){
+
+ log -n "Checking for $libname ... "
+ generate_test_c "$hdr" "$subsys" "$func"
+ $CC -g testhdr.c -o testhdr $CFLAGS $inc $lib >> $logfile 2>&1
+ err=$?
+
+ if test $err = 0; then
+ log "yes"
+ add_flags LIBS_$subsys $lib
+ add_flags CFLAGS_$subsys $inc
+ else
+ log "no"
+ logdbg "--------"
+ logdbg "/* $CC -g testhdr.c -o testhdr $CFLAGS $inc $lib */"
+ logdbg `cat testhdr.c`
+ logdbg "--------"
+ fi
+
+ rm -f testhdr.c testhdr
+ return $err
+}
+
+test_header(){
+ hdr="$1"
+ func="$2"
+ log -n "Checking for $hdr ... "
+ generate_test_c "$hdr" "" "$func"
+ $CC -g testhdr.c -o testhdr $CFLAGS >> $logfile 2>&1
+ err=$?
+ if test $err = 0; then
+ log "yes"
+ enable $hdrname
+ else
+ log "no"
+ logdbg "--------"
+ logdbg "/* $CC -g testhdr.c -o testhdr $CFLAGS */"
+ logdbg `cat testhdr.c`
+ logdbg "--------"
+ fi
+}
+
+#
+# pkg-config tests
+#
+
+test_pkgconfig(){
+ disabled pkgconfig && return 1
+ log -n "Checking for $PKG_CONFIG ... "
+ disable pkgconfig
+ $PKG_CONFIG --version>/dev/null && enable pkgconfig
+ log $HAVE_PKGCONFIG
+}
+
+test_library_pc(){
+ subsys="$1"
+ libname="$2"
+
+ log -n "Checking for pkg-config $libname ... "
+ if $PKG_CONFIG --exists $libname; then
+ if $PKG_CONFIG --libs $libname >/dev/null; then
+ add_flags LIBS_$subsys \
+ `pkg-config --libs-only-L $libname` \
+ `pkg-config --libs-only-l $libname`
+ add_flags CFLAGS_$subsys `pkg-config --cflags-only-I $libname`
+ log "yes"
+ return 0
+ fi
+ fi
+ log "no"
+ return 1
+}
+
+#
+# generic test
+#
+
+test_library(){
+ subsys="$1"
+ libname="$2"
+ hdr="$3"
+ lib="$4"
+ func="$5"
+ inc="$6"
+ feature=$(toupper $libname)
+
+ # do not test if disabled from command-line
+ if disabled $feature; then
+ log "Not checking for $libname"
+ disable $feature
+ return 1
+ fi
+
+ disable $feature
+
+ # try pkg-config first
+ if enabled pkgconfig; then
+ test_library_pc "$subsys" "$libname" && enable "$feature"
+ fi
+
+ # compile/link test as fallback
+ if disabled $feature; then
+ test_library_c "$subsys" "$libname" "$hdr" "$lib" "$func" "$inc" && enable $feature
+ fi
+}
+
+#
+# configurable features
+#
+
+SUBSYSTEMS="
+ x11
+ wayland
+ fb
+ vdr
+ libxine
+"
+FEATURES="
+ stdatomic_h
+ $SUBSYSTEMS
+ libextractor
+ libavutil
+ libjpeg
+ dbus_glib_1
+ xshm
+ xdpms
+ xinerama
+ xrandr
+ xrender
+ xshape
+ opengl
+ glx
+ pthread
+ dlfcn
+ i18n
+ libcap
+ libbluray
+ libcec
+ mce-dbus-names
+ avahi-client
+"
+
+# set defaults
+
+enable wayland x11 vdr fb xine i18n libcec
+
+# clear log file
+
+rm -f $logfile
+
+#
+# Parse command-line arguments
+#
+
+show_help(){
+ echo "Usage: configure [options]"
+ echo "Options: [defaults in brackets after descriptions]"
+ echo
+ echo " --help print this message"
+ echo " --enable-x11 build X11 frontend (vdr-sxfe) [yes]"
+ echo " --enable-wayland build Wayland frontend (vdr-wlfe) [yes]"
+ echo " --enable-fb build framebuffer frontend (vdr-fbfe) [yes]"
+ echo " --enable-vdr build VDR plugin [yes]"
+ echo " --enable-libxine build xine plugins [yes]"
+ echo
+ echo " --disable-libextractor disable libextractor support (media file metainfo) [no]"
+ echo " --disable-libbluray disable libbluray support (BluRay metainfo) [no]"
+ echo " --disable-libcec disable libcec support (HDMI-CEC remote control) [no]"
+ echo " --disable-libjpeg disable libjpeg support [no]"
+ echo " --disable-dbus-glib-1 disable dbus-glib support [no]"
+ echo " --disable-xshm disable XShm support [no]"
+ echo " --disable-xdpms disable Xdpms support [no]"
+ echo " --disable-xinerama disable Xinerama support [no]"
+ echo " --disable-xrandr disable Xrandr support [no]"
+ echo " --disable-xrender disable Xrender support (HUD OSD) [no]"
+ echo " --disable-xshape disable Xshape support (non-transparent HUD OSD without composite manager) [no]"
+ echo " --disable-opengl disable OpenGL support (transparent HUD OSD without composite manager) [no]"
+ echo " --disable-i18n disable i18n support [no]"
+ echo " --disable-libcap disable libcap support [no]"
+ echo " --disable-avahi-client disable avahi support [no]"
+ echo
+ echo " --debug debug configure script"
+ echo " --disable-pkgconfig do not use pkg-config"
+ echo " --cc=CC select C compiler"
+ echo " --cxx=CXX select C++ compiler"
+ echo " --add-cflags=FLAGS add compiler flags"
+}
+
+for opt do
+ optval="${opt#*=}"
+ logdbg "Command line: $opt [$optval]"
+ case "$opt" in
+ --help)
+ show_help && die
+ ;;
+ --debug)
+ debug=yes
+ logdbg "Debug mode"
+ ;;
+ --cc=?*)
+ CC=$optval
+ logdbg "C compiler: $CC"
+ ;;
+ --cxx=?*)
+ CXX=$optval
+ logdbg "C++ compiler: $CXX"
+ ;;
+ --add-cflags=?*)
+ CFLAGS="$CFLAGS $optval"
+ logdbg "CFLAGS: $CFLAGS"
+ ;;
+ --disable-pkgconfig)
+ disable pkgconfig
+ logdbg "Disabled pkg-config"
+ ;;
+ --enable-?*|--disable-?*)
+ eval `echo "$opt" | sed 's/--/action=/;s/-/ option=/;s/-/_/g'`
+ logdbg " $action $option"
+ not_in_list $option $FEATURES && die "unknown option $opt"
+ eval $action \${option}
+ ;;
+ -*)
+ die "unknown option $opt"
+ ;;
+ esac
+done
+
+#
+# maintain deps
+#
+
+check_deps(){
+ disabled libxine && disable wayland x11 fb libavutil libjpeg libcec
+ disabled x11 && disable dbus-glib-1 xshm xrandr xrender xshape opengl xdpms xinerama
+ disabled vdr && disable libextractor libcap libbluray avahi-client
+ disabled dlfcn && disable opengl
+ disabled pthread && disable opengl
+ disabled glx && disable opengl
+ disabled xrender && disable xshape xshm
+ disabled wayland-client && disable wayland
+}
+
+check_deps
+
+#
+# Run the tests
+#
+
+test_pkgconfig
+
+test_header "stdatomic.h" "atomic_int foo, bar = ATOMIC_VAR_INIT(-1); int b; atomic_init(&b,0); atomic_store(&foo, 0); foo += bar"
+
+# fake test that should fail
+[ $debug = yes ] && \
+ test_library X11 do_error "none.h" "-lnolib"
+
+test_library VDR libextractor "extractor.h" "-lextractor" "EXTRACTOR_getKeywords(0,0)"
+test_library VDR libcap "sys/capability.h" "-lcap" "cap_get_proc()"
+test_library VDR libbluray "libbluray/bluray.h" "-lbluray" "bd_get_disc_info(0)"
+test_library VDR avahi-client "avahi-client/publish.h" "-lavahi-common -lavahi-client" "avahi_client_new"
+test_library XINE libxine "xine.h" "-lxine" "xine_init(0)"
+test_library DLFCN dlfcn "dlfcn.h" "-ldl" "dlopen(0,0)"
+test_library X11 libm "math.h" "-lm" "floor(0)"
+
+if enabled libxine; then
+
+ log -n "Checking for xine plugin directory ..."
+ if enabled pkgconfig && $PKG_CONFIG libxine --atleast-version 1.1.17; then
+ XINEPLUGINDIR=`$PKG_CONFIG libxine --variable=plugindir`
+ else
+ XINEPLUGINDIR=`xine-config --plugindir`
+ fi
+ log " $XINEPLUGINDIR"
+
+ test_library AVUTIL libavutil "libavutil/mem.h" "-lavutil" "av_mallocz(1)"
+ test_library JPEG libjpeg "jpeglib.h" "-ljpeg" "jpeg_create_compress(0)"
+ test_library X11 x11 "X11/X.h" "-lX11" "XInitThreads()"
+ if enabled wayland; then
+ test_library WAYLAND wayland-client "wayland-client.h" "-lwayland-client" "wl_display_connect(0)"
+ test_library WAYLAND wayland-cursor "wayland-cursor.h" "-lwayland-cursor" "wl_cursor_theme_load(0,0,0)"
+ fi
+ test_library PTHREAD pthread "pthread.h" "-lpthread" "pthread_create(0,0,0,0)"
+
+ if enabled libcec; then
+ test_library CEC libcec "libcec/cecc.h" "-lcec" "libcec_initialise(0)"
+ if disabled libcec; then
+ # try libcec < 3.0.0
+ enable libcec
+ test_library CEC libcec "libcec/cecc.h" "-lcec" "cec_initialise(0)"
+ fi
+ fi
+
+ if enabled x11; then
+ test_library X11 xext "X11/extensions/Xext.h" "-lXext" ""
+ test_library X11 xshm "X11/extensions/XShm.h" "-lXext" "XShmQueryExtension(0)"
+ test_library X11 xrandr "X11/extensions/Xrandr.h" "-lXrandr" "XRRGetScreenInfo(0,0)"
+ test_library X11 xrender "X11/extensions/Xrender.h" "-lXrender" "XRenderQueryFormats(0)"
+ test_library X11 xshape "X11/extensions/shape.h" "-lXext" "XShapeQueryExtension(0,0,0)"
+ test_library X11 xdpms "X11/extensions/dpms.h" "-lXext" "DPMSDisable(0)"
+ test_library X11 xinerama "X11/extensions/Xinerama.h" "-lXinerama" "XineramaQueryScreens(0,0)"
+ test_library X11 opengl "GL/gl.h" "-lGL -lGLU" "glTexCoord2f(0.0,0.0)"
+ test_library X11 glx "GL/glx.h" "-lGLX" "glXQueryVersion(0,0,0)"
+ test_library X11 dbus-glib-1 \
+ "dbus/dbus-glib.h" \
+ "-ldbus-glib-1 -lgobject-2.0 -lglib-2.0" \
+ "dbus_g_bus_get(0,0)" \
+ "-I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib/glib-2.0/include"
+ enabled dbus-glib-1 && test_library X11 mce-dbus-names "mce/dbus-names.h" "" ""
+ fi
+fi
+
+check_deps
+
+# need -lm for ceil/floor in HUD OSD
+enabled xrender && add_flags "LIBS_X11" "-lm"
+# need -ldl and -lpthread with opengl
+enabled opengl && add_flags "LIBS_X11" $LIBS_DLFCN $LIBS_PTHREAD
+# need -ldl for dlopen() in vdr plugin
+enabled vdr && add_flags "LIBS_VDR" $LIBS_DLFCN
+
+#
+# Print results
+#
+
+log
+log "Enabled features:"
+for feature in $FEATURES; do
+ enabled $feature && log " $feature"
+done
+log "Disabled features:"
+for feature in $FEATURES; do
+ enabled $feature || log " $feature"
+done
+log
+
+#
+# create features.h
+#
+
+log "Creating $header ..."
+
+cat <<EOF >$header
+/* Automatically generated by configure - do not modify! */
+
+#ifndef XINELIBOUTPUT_FEATURES_H
+#define XINELIBOUTPUT_FEATURES_H
+
+EOF
+
+for feature in $FEATURES; do
+ enabled $feature &&
+ echo "#define HAVE_$(toupper $feature) 1">>$header || \
+ echo "#undef HAVE_$(toupper $feature)">>$header
+done
+
+echo "" >> $header
+echo "#endif /* XINELIBOUTPUT_FEATURES_H */" >> $header
+
+#
+# create config.mak
+#
+
+log "Creating $makefile ..."
+
+echo "# Automatically generated by configure - do not modify!" > $makefile
+echo >> $makefile
+
+# subsystems
+echo "XINELIBOUTPUT_VDRPLUGIN=$HAVE_VDR" >> $makefile
+echo "XINELIBOUTPUT_XINEPLUGIN=$HAVE_LIBXINE" >> $makefile
+echo "XINELIBOUTPUT_X11=$HAVE_X11" >> $makefile
+echo "XINELIBOUTPUT_FB=$HAVE_FB" >> $makefile
+echo "XINELIBOUTPUT_WAYLAND=$HAVE_WAYLAND_CLIENT" >> $makefile
+echo >> $makefile
+
+# features
+for feature in $FEATURES; do
+ feature="`toupper $feature`"
+ enabled $feature &&
+ echo "HAVE_$feature=yes">>$makefile ||
+ echo "HAVE_$feature=no">>$makefile
+done
+echo >> $makefile
+
+# xine plugin dir
+enabled libxine && echo "XINEPLUGINDIR=$XINEPLUGINDIR" >> $makefile && echo >> $makefile
+
+# cc/ld flags
+echo "CC = $CC">>$makefile
+echo "CXX = $CXX">>$makefile
+echo "CFLAGS_XINE += $CFLAGS_XINE">>$makefile
+echo "CFLAGS_VDR += $CFLAGS_VDR">>$makefile
+echo "CFLAGS_X11 += $CFLAGS_X11">>$makefile
+echo "CFLAGS_WAYLAND += $CFLAGS_WAYLAND">>$makefile
+echo "CFLAGS_AVUTIL += $CFLAGS_AVUTIL">>$makefile
+echo "LIBS_XINE += $LIBS_XINE">>$makefile
+echo "LIBS_JPEG += $LIBS_JPEG">>$makefile
+echo "LIBS_AVUTIL += $LIBS_AVUTIL">>$makefile
+echo "LIBS_PTHREAD += $LIBS_PTHREAD">>$makefile
+echo "LIBS_VDR += $LIBS_VDR">>$makefile
+echo "LIBS_X11 += $LIBS_X11">>$makefile
+echo "LIBS_WAYLAND+= $LIBS_WAYLAND">>$makefile
+echo "LIBS_CEC += $LIBS_CEC">>$makefile
diff --git a/.pc/disable-po-update.patch/Makefile b/.pc/disable-po-update.patch/Makefile
new file mode 100644
index 0000000..5cf4150
--- /dev/null
+++ b/.pc/disable-po-update.patch/Makefile
@@ -0,0 +1,509 @@
+#
+# Makefile for a Video Disk Recorder plugin
+#
+# See the main source file 'xineliboutput.c' for copyright information and
+# how to reach the author.
+#
+# $Id$
+#
+
+# The official name of this plugin.
+# This name will be used in the '-P...' option of VDR to load the plugin.
+# By default the main source file also carries this name.
+
+PLUGIN = xineliboutput
+
+_default: all
+
+# Keep VDR Makefile happy - it requires $(LIBDIR)/.$(APIVERSION) somewhere in this file ...
+
+# check for Apple Darwin
+ARCH_APPLE_DARWIN = no
+ifeq ($(shell gcc -dumpmachine | grep -q 'apple-darwin' && echo "1" || echo "0"), 1)
+ ARCH_APPLE_DARWIN = yes
+endif
+
+#
+# Override configuration here or in ../../../Make.config
+#
+
+#NOSIGNAL_IMAGE_FILE=/usr/share/vdr/xineliboutput/nosignal.mpv
+#STARTUP_IMAGE_FILE=/usr/share/vdr/xineliboutput/logodisplay.mpv
+XINELIBOUTPUT_CONFIGURE_OPTS =
+
+
+###
+### The version number of this plugin (taken from the main source file):
+###
+
+VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | cut -d'"' -f2)
+
+
+###
+### The C++ compiler and options:
+###
+
+CXX ?= g++
+CC ?= gcc
+OPTFLAGS ?=
+
+ifeq ($(ARCH_APPLE_DARWIN), yes)
+ CXXFLAGS ?= -O3 -pipe -Wall -Woverloaded-virtual -fPIC -g -fno-common -bundle -flat_namespace -undefined suppress
+ CFLAGS ?= -O3 -pipe -Wall -fPIC -g -fno-common -bundle -flat_namespace -undefined suppress
+ LDFLAGS_SO ?= -fvisibility=hidden
+else
+ CXXFLAGS ?= -O3 -pipe -Wall -Woverloaded-virtual -fPIC -g
+ CFLAGS ?= -O3 -pipe -Wall -fPIC -g
+ LDFLAGS_SO ?= -fvisibility=hidden
+ LDFLAGS_SO += -shared
+endif
+
+###
+### The directory environment:
+###
+
+# Use package data if installed...otherwise assume we're under the VDR source directory:
+PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." pkg-config --variable=$(1) vdr))
+BINDIR = $(call PKGCFG,bindir)
+LIBDIR = $(call PKGCFG,libdir)
+LOCDIR = $(call PKGCFG,locdir)
+PLGCFG = $(call PKGCFG,plgcfg)
+VIDEODIR = $(call PKGCFG,videodir)
+
+TMPDIR ?= /tmp
+
+INSTALL ?= install
+
+###
+### Allow user defined options to overwrite defaults:
+###
+
+-include Make.config
+
+ifeq ($(strip $(BINDIR)),)
+ BINDIR = /usr/bin
+endif
+
+###
+### check for VDR
+###
+
+APIVERSION = $(call PKGCFG,apiversion)
+
+VDR_TREE = no
+ifeq ($(strip $(APIVERSION)),)
+ $(warning ********************************************************)
+ $(warning VDR not detected ! VDR plugins will not be compiled. )
+ $(warning ********************************************************)
+ CONFIGURE_OPTS += --disable-vdr
+else
+ export CFLAGS = $(call PKGCFG,cflags)
+ export CXXFLAGS = $(call PKGCFG,cxxflags)
+
+ ifeq ($(VDRDIR),)
+ $(warning Building outside VDR source tree)
+ else
+ $(warning Building inside VDR source tree)
+ VDR_TREE = yes
+ endif
+endif
+
+CFLAGS += -Wextra -Wno-unused-parameter -Wmissing-prototypes -Wimplicit-function-declaration -Wshadow
+CXXFLAGS += -Wextra -Wno-unused-parameter
+
+### Allow user defined options to overwrite defaults:
+-include $(PLGCFG)
+
+#
+# Silent rules falback
+#
+ifndef Q
+ifdef VERBOSE
+Q =
+else
+Q = @
+endif
+export Q
+endif
+
+###
+### run configure script
+###
+
+config.mak: Makefile configure
+ @echo Running configure
+ @sh configure --cc="$(CC)" --cxx="$(CXX)" $(CONFIGURE_OPTS) $(XINELIBOUTPUT_CONFIGURE_OPTS)
+-include config.mak
+
+###
+### The name of the distribution archive:
+###
+
+ARCHIVE = $(PLUGIN)-$(VERSION)
+PACKAGE = vdr-$(ARCHIVE)
+
+
+###
+### The name of executable and libraries
+###
+
+VDRPLUGIN = libvdr-$(PLUGIN).so.$(APIVERSION)
+VDRPLUGIN_SXFE = lib$(PLUGIN)-sxfe.so.$(VERSION)
+VDRPLUGIN_FBFE = lib$(PLUGIN)-fbfe.so.$(VERSION)
+VDRPLUGIN_WLFE = lib$(PLUGIN)-wlfe.so.$(VERSION)
+VDRSXFE = vdr-sxfe
+VDRFBFE = vdr-fbfe
+VDRWLFE = vdr-wlfe
+XINEINPUTVDR = xineplug_inp_xvdr.so
+XINEPOSTAUTOCROP = xineplug_post_autocrop.so
+XINEPOSTSWSCALE = xineplug_post_swscale.so
+XINEPOSTAUDIOCHANNEL = xineplug_post_audiochannel.so
+
+###
+### which programs and libs to build
+###
+
+TARGETS_VDR =
+TARGETS_FE =
+TARGETS_XINE =
+ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ TARGETS_VDR += $(VDRPLUGIN)
+endif
+ifeq ($(XINELIBOUTPUT_XINEPLUGIN), yes)
+ TARGETS_XINE += $(XINEINPUTVDR) $(XINEPOSTAUTOCROP) $(XINEPOSTSWSCALE) $(XINEPOSTAUDIOCHANNEL)
+endif
+ifeq ($(XINELIBOUTPUT_X11), yes)
+ TARGETS_FE += $(VDRSXFE)
+ ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ TARGETS_VDR += $(VDRPLUGIN_SXFE)
+ endif
+endif
+ifeq ($(XINELIBOUTPUT_FB), yes)
+ TARGETS_FE += $(VDRFBFE)
+ ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ TARGETS_VDR += $(VDRPLUGIN_FBFE)
+ endif
+endif
+ifeq ($(XINELIBOUTPUT_WAYLAND), yes)
+ TARGETS_FE += $(VDRWLFE)
+ ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ TARGETS_VDR += $(VDRPLUGIN_WLFE)
+ endif
+endif
+
+
+###
+### Includes and Defines (add further entries here):
+###
+
+ifeq ($(ARCH_APPLE_DARWIN), yes)
+ INCLUDES += -I/sw/include
+ LIBDIRS += -L/sw/lib
+ LIBS += $(LIBDIRS)
+else
+ LIBS += -lrt
+endif
+
+DEFINES += -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"$(PLUGIN)"' \
+ -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 \
+ -DVIDEODIR='"$(VIDEODIR)"' -DXINELIBOUTPUT_VERSION='"$(VERSION)"'
+
+ifdef NOSIGNAL_IMAGE_FILE
+ DEFINES += -DNOSIGNAL_IMAGE_FILE='"$(NOSIGNAL_IMAGE_FILE)"'
+endif
+ifdef STARTUP_IMAGE_FILE
+ DEFINES += -DSTARTUP_IMAGE_FILE='"$(STARTUP_IMAGE_FILE)"'
+endif
+
+DEFINES += $(EXTRA_DEFINES)
+
+###
+### The object files (add further files here):
+###
+
+# VDR plugin
+ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+OBJS = $(PLUGIN).o device.o frontend.o osd.o config.o menu.o setup_menu.o \
+ menuitems.o media_player.o equalizer.o \
+ frontend_local.o frontend_svr.o tools/avahi.o \
+ tools/cxsocket.o tools/udp_pes_scheduler.o \
+ tools/backgroundwriter.o tools/playlist.o tools/http.o \
+ tools/time_pts.o tools.o \
+ tools/metainfo_menu.o logdefs.o tools/rle.o \
+ tools/sys_cap.o tools/sap.o tools/sdp.o
+OBJS_MPG = black_720x576.o nosignal_720x576.o vdrlogo_720x576.o
+endif
+
+# frontends
+OBJS_FE_SO = xine_frontend.o logdefs.o \
+ xine/post.o xine/vo_hook.o xine/vo_osdscaler.o xine/vo_osdreorder.o xine/vo_lastpts.o \
+ xine/vo_frameoutput.o \
+ tools/rle.o
+OBJS_FE = $(OBJS_FE_SO) \
+ xine_frontend_main.o \
+ xine_frontend_lirc.o xine_frontend_kbd.o xine_frontend_cec.o \
+ tools/vdrdiscovery.o
+OBJS_SXFE_SO = xine_sxfe_frontend.o $(OBJS_FE_SO)
+OBJS_SXFE = xine_sxfe_frontend.o $(OBJS_FE)
+OBJS_FBFE_SO = xine_fbfe_frontend.o $(OBJS_FE_SO)
+OBJS_FBFE = xine_fbfe_frontend.o $(OBJS_FE)
+OBJS_WLFE_SO = xine_wlfe_frontend.o $(OBJS_FE_SO)
+OBJS_WLFE = xine_wlfe_frontend.o $(OBJS_FE)
+
+ifneq ($(HAVE_DBUS_GLIB_1), no)
+OBJS_SXFE += tools/gnome_screensaver.o
+OBJS_SXFE_SO += tools/gnome_screensaver.o
+endif
+
+# xine plugins
+OBJS_XINEINPUTVDR = xine_input_vdr.o xine/demux_xvdr.o \
+ xine/ts2es.o xine/demux_xvdr_tsdata.o \
+ xine/adjustable_scr.o xine/xvdr_metronom.o xine/osd_manager.o \
+ tools/rle.o tools/ts.o tools/pes.o tools/mpeg.o tools/h264.o tools/h265.o \
+ tools/vdrdiscovery.o
+
+OBJS_XINE = $(OBJS_XINEINPUTVDR) xine_post_autocrop.o xine_post_swscale.o xine_post_audiochannel.o
+
+###
+### Implicit rules:
+###
+
+%.o: %.c
+ @echo CXX $@
+ $(Q)$(CXX) $(CXXFLAGS) -c $(DEFINES) $(INCLUDES) $(CFLAGS_VDR) -o $@ $<
+
+
+###
+### Dependencies:
+###
+
+MAKEDEP = $(CXX) -MM -MG
+DEPFILE = .dependencies
+$(DEPFILE): Makefile config.mak
+ @rm -f $@
+ @for i in $(OBJS:%.o=%.c) $(OBJS_SXFE:%.o=%.c) $(OBJS_FBFE:%.o=%.c) $(OBJS_WLFE:%.o=%.c) $(OBJS_XINE:%.o=%.c) ; do \
+ $(MAKEDEP) $(CXXFLAGS) $(DEFINES) $(INCLUDES) -MT "`dirname $$i`/`basename $$i .c`.o" $$i >>$@ ; \
+ done
+
+-include $(DEPFILE)
+
+DEFINES += -Wall
+
+
+###
+### Rules:
+###
+
+mpg2c: mpg2c.c
+ @echo CCLD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS) mpg2c.c -o $@
+
+# data
+black_720x576.c: mpg2c black_720x576.mpg
+ @echo GEN $@
+ $(Q)./mpg2c black black_720x576.mpg black_720x576.c
+nosignal_720x576.c: mpg2c nosignal_720x576.mpg
+ @echo GEN $@
+ $(Q)./mpg2c nosignal nosignal_720x576.mpg nosignal_720x576.c
+vdrlogo_720x576.c: mpg2c vdrlogo_720x576.mpg
+ @echo GEN $@
+ $(Q)./mpg2c vdrlogo vdrlogo_720x576.mpg vdrlogo_720x576.c
+
+# C code (xine plugins and frontends)
+
+xine_input_vdr.o: nosignal_720x576.c
+
+$(sort $(OBJS_SXFE) $(OBJS_FBFE) $(OBJS_WLFE) $(OBJS_XINE)): %.o: %.c
+ @echo CC $@
+ $(Q)$(CC) $(CFLAGS) -c $(DEFINES) $(INCLUDES) $(CFLAGS_X11) $(CFLAGS_WAYLAND) $(CFLAGS_AVUTIL) $(OPTFLAGS) -o $@ $<
+
+### Internationalization (I18N):
+PODIR = po
+ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+I18Npo = $(wildcard $(PODIR)/*.po)
+I18Nmo = $(addsuffix .mo, $(foreach file, $(I18Npo), $(basename $(file))))
+I18Nmsgs = $(addprefix $(DESTDIR)$(LOCDIR)/, $(addsuffix /LC_MESSAGES/vdr-$(PLUGIN).mo, $(notdir $(foreach file, $(I18Npo), $(basename $(file))))))
+I18Npot = $(PODIR)/$(PLUGIN).pot
+
+%.mo: %.po
+ @echo MO $@
+ $(Q)msgfmt -c -o $@ $<
+
+$(I18Npot): $(wildcard *.c)
+ @echo GT $@
+ $(Q)xgettext -C -cTRANSLATORS --no-wrap --no-location -k -ktr -ktrNOOP --package-name=vdr-$(PLUGIN) --package-version=$(VERSION) --msgid-bugs-address='<phintuka@users.sourceforge.net>' -o $@ `ls $^`
+
+%.po: $(I18Npot)
+ @echo PO $@
+ $(Q)msgmerge -U --no-wrap --no-location --backup=none -q -N $@ $<
+ @touch $@
+
+$(I18Nmsgs): $(DESTDIR)$(LOCDIR)/%/LC_MESSAGES/vdr-$(PLUGIN).mo: $(PODIR)/%.mo
+ @echo INSTALL $^
+ @install -D -m644 $< $@
+endif
+
+.PHONY: i18n
+i18n: $(I18Nmo) $(I18Npot)
+
+install-i18n: $(I18Nmsgs)
+
+###
+### targets
+###
+
+XINELIBOUTPUT_INSTALL_MSG = \
+ $(warning *********************** xineliboutput ***************************) \
+ $(warning Xine plugins and frontends will not be installed automatically. ) \
+ $(warning To install files execute "make install" in ) \
+ $(warning $(shell echo `pwd`)) \
+ $(warning *****************************************************************)
+
+install : XINELIBOUTPUT_INSTALL_MSG =
+
+.PHONY: all
+all: config $(TARGETS_VDR) frontends i18n
+
+frontends: config $(TARGETS_FE) $(TARGETS_XINE)
+ $(XINELIBOUTPUT_INSTALL_MSG)
+
+config: config.mak
+
+.PHONY: config
+
+.PHONY: frontends install dist clean
+
+#
+# VDR plugin
+#
+
+$(VDRPLUGIN): $(OBJS) $(OBJS_MPG)
+ @echo LD $@
+ $(Q)$(CXX) $(CXXFLAGS) $(LDFLAGS_SO) $(LDFLAGS) -shared $(OBJS) $(OBJS_MPG) $(LIBS) $(LIBS_VDR) -o $@
+ifeq ($(VDR_TREE), yes)
+ $(INSTALL) $@ $(LIBDIR)/
+endif
+
+install-lib: $(TARGETS_VDR)
+ifeq ($(XINELIBOUTPUT_VDRPLUGIN), yes)
+ @echo INSTALL $^
+ @mkdir -p $(DESTDIR)$(LIBDIR)
+ install -D $^ $(DESTDIR)$(LIBDIR)/
+endif
+
+install: install-lib install-i18n
+
+#
+# vdr-sxfe
+#
+
+$(VDRPLUGIN_SXFE): $(OBJS_SXFE_SO)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $(OBJS_SXFE_SO) $(LIBS_X11) $(LIBS_XINE) $(LIBS_JPEG) -o $@
+ifeq ($(VDR_TREE), yes)
+ $(INSTALL) $@ $(LIBDIR)/
+endif
+$(VDRSXFE): $(OBJS_SXFE)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_SXFE) $(LIBS_X11) $(LIBS_XINE) $(LIBS_JPEG) $(LIBS_CEC) $(LIBS_PTHREAD) -o $@
+
+#
+# vdr-wlfe
+#
+
+$(VDRPLUGIN_WLFE): $(OBJS_WLFE_SO)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $(OBJS_WLFE_SO) $(LIBS_WAYLAND) $(LIBS_XINE) $(LIBS_JPEG) -o $@
+ifeq ($(VDR_TREE), yes)
+ $(INSTALL) $@ $(LIBDIR)/
+endif
+$(VDRWLFE): $(OBJS_WLFE)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_WLFE) $(LIBS_WAYLAND) $(LIBS_XINE) $(LIBS_JPEG) $(LIBS_CEC) $(LIBS_PTHREAD) -o $@
+
+#
+# vdr-fbfe
+#
+
+$(VDRPLUGIN_FBFE): $(OBJS_FBFE_SO)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $(OBJS_FBFE_SO) $(LIBS_XINE) $(LIBS_JPEG) -o $@
+ifeq ($(VDR_TREE), yes)
+ $(INSTALL) $@ $(LIBDIR)/
+endif
+$(VDRFBFE): $(OBJS_FBFE)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_FBFE) $(LIBS_XINE) $(LIBS_JPEG) $(LIBS_CEC) $(LIBS_PTHREAD) -o $@
+
+#
+# xine plugins
+#
+
+$(XINEINPUTVDR): $(OBJS_XINEINPUTVDR)
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $(OBJS_XINEINPUTVDR) $(LIBS_XINE) $(LIBS_AVUTIL) $(LIBS_PTHREAD) -o $@
+$(XINEPOSTAUTOCROP): xine_post_autocrop.o
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $< -o $@ $(LIBS_XINE)
+$(XINEPOSTSWSCALE): xine_post_swscale.o
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $< -o $@ $(LIBS_XINE)
+$(XINEPOSTAUDIOCHANNEL): xine_post_audiochannel.o
+ @echo LD $@
+ $(Q)$(CC) $(CFLAGS) $(LDFLAGS_SO) $(LDFLAGS) $< -o $@ $(LIBS_XINE)
+
+#
+# install
+#
+
+install: all
+ifeq ($(XINELIBOUTPUT_XINEPLUGIN), yes)
+ @mkdir -p $(DESTDIR)$(XINEPLUGINDIR)/post
+ @echo INSTALL $(DESTDIR)$(XINEPLUGINDIR)/$(XINEINPUTVDR)
+ @-rm -rf $(DESTDIR)$(XINEPLUGINDIR)/$(XINEINPUTVDR)
+ @$(INSTALL) -m 0644 $(XINEINPUTVDR) $(DESTDIR)$(XINEPLUGINDIR)/$(XINEINPUTVDR)
+ @echo INSTALL $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUTOCROP)
+ @-rm -rf $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUTOCROP)
+ @$(INSTALL) -m 0644 $(XINEPOSTAUTOCROP) $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUTOCROP)
+ @echo INSTALL $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTSWSCALE)
+ @-rm -rf $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTSWSCALE)
+ @$(INSTALL) -m 0644 $(XINEPOSTSWSCALE) $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTSWSCALE)
+ @echo INSTALL $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUDIOCHANNEL)
+ @-rm -rf $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUDIOCHANNEL)
+ @$(INSTALL) -m 0644 $(XINEPOSTAUDIOCHANNEL) $(DESTDIR)$(XINEPLUGINDIR)/post/$(XINEPOSTAUDIOCHANNEL)
+endif
+ifeq ($(XINELIBOUTPUT_FB), yes)
+ @echo INSTALL $(DESTDIR)$(BINDIR)/vdr-fbfe
+ @mkdir -p $(DESTDIR)$(BINDIR)
+ @-rm -rf $(DESTDIR)$(BINDIR)/vdr-fbfe
+ @$(INSTALL) -m 0755 vdr-fbfe $(DESTDIR)$(BINDIR)/vdr-fbfe
+endif
+ifeq ($(XINELIBOUTPUT_X11), yes)
+ @echo INSTALL $(DESTDIR)$(BINDIR)/vdr-sxfe
+ @mkdir -p $(DESTDIR)$(BINDIR)
+ @-rm -rf $(DESTDIR)$(BINDIR)/vdr-sxfe
+ @$(INSTALL) -m 0755 vdr-sxfe $(DESTDIR)$(BINDIR)/vdr-sxfe
+endif
+ifeq ($(XINELIBOUTPUT_WAYLAND), yes)
+ @echo Installing $(DESTDIR)$(BINDIR)/vdr-wlfe
+ @mkdir -p $(DESTDIR)$(BINDIR)
+ @-rm -rf $(DESTDIR)$(BINDIR)/vdr-wlfe
+ @$(INSTALL) -m 0755 vdr-wlfe $(DESTDIR)$(BINDIR)/vdr-wlfe
+endif
+
+dist: $(I18Npo) clean
+ @-rm -rf $(TMPDIR)/$(ARCHIVE)
+ @mkdir $(TMPDIR)/$(ARCHIVE)
+ @cp -a * $(TMPDIR)/$(ARCHIVE)
+ @tar czf $(PACKAGE).tgz --exclude=CVS -C $(TMPDIR) $(ARCHIVE)
+ @-rm -rf $(TMPDIR)/$(ARCHIVE)
+ @echo Distribution package created as $(PACKAGE).tgz
+
+
+clean:
+ @-rm -f $(DEPFILE) *.so* *.o *.tgz core* *~ *.flc *.bak \
+ tools/*.o tools/*~ tools/*.flc xine/*.o xine/*~ \
+ xine/*.flc $(VDR_FBFE) $(VDR_WLFE) $(VDR_SXFE) mpg2c black_720x576.c \
+ nosignal_720x576.c vdrlogo_720x576.c vdr-sxfe vdr-fbfe vdr-wlfe \
+ features.h config.mak configure.log
+ @-rm -f $(PODIR)/*.mo $(PODIR)/*.pot
diff --git a/Makefile b/Makefile
index 5cf4150..23b1dc8 100644
--- a/Makefile
+++ b/Makefile
@@ -45,6 +45,8 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | cut -d'"'
CXX ?= g++
CC ?= gcc
+PKG_CONFIG ?= pkg-config
+CC_FOR_BUILD ?= gcc
OPTFLAGS ?=
ifeq ($(ARCH_APPLE_DARWIN), yes)
@@ -63,7 +65,7 @@ endif
###
# Use package data if installed...otherwise assume we're under the VDR source directory:
-PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." pkg-config --variable=$(1) vdr))
+PKGCFG = $(if $(VDRDIR),$(shell $(PKG_CONFIG) --variable=$(1) $(VDRDIR)/vdr.pc),$(shell $(PKG_CONFIG) --variable=$(1) vdr))
BINDIR = $(call PKGCFG,bindir)
LIBDIR = $(call PKGCFG,libdir)
LOCDIR = $(call PKGCFG,locdir)
@@ -270,7 +272,7 @@ OBJS_XINE = $(OBJS_XINEINPUTVDR) xine_post_autocrop.o xine_post_swscale.o xine_p
%.o: %.c
@echo CXX $@
- $(Q)$(CXX) $(CXXFLAGS) -c $(DEFINES) $(INCLUDES) $(CFLAGS_VDR) -o $@ $<
+ $(Q)$(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $(DEFINES) $(INCLUDES) $(CFLAGS_VDR) -o $@ $<
###
@@ -282,7 +284,7 @@ DEPFILE = .dependencies
$(DEPFILE): Makefile config.mak
@rm -f $@
@for i in $(OBJS:%.o=%.c) $(OBJS_SXFE:%.o=%.c) $(OBJS_FBFE:%.o=%.c) $(OBJS_WLFE:%.o=%.c) $(OBJS_XINE:%.o=%.c) ; do \
- $(MAKEDEP) $(CXXFLAGS) $(DEFINES) $(INCLUDES) -MT "`dirname $$i`/`basename $$i .c`.o" $$i >>$@ ; \
+ $(MAKEDEP) $(CPPFLAGS) $(CXXFLAGS) $(DEFINES) $(INCLUDES) -MT "`dirname $$i`/`basename $$i .c`.o" $$i >>$@ ; \
done
-include $(DEPFILE)
@@ -296,7 +298,7 @@ DEFINES += -Wall
mpg2c: mpg2c.c
@echo CCLD $@
- $(Q)$(CC) $(CFLAGS) $(LDFLAGS) mpg2c.c -o $@
+ $(Q)$(CC_FOR_BUILD) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) mpg2c.c -o $@
# data
black_720x576.c: mpg2c black_720x576.mpg
@@ -315,7 +317,7 @@ xine_input_vdr.o: nosignal_720x576.c
$(sort $(OBJS_SXFE) $(OBJS_FBFE) $(OBJS_WLFE) $(OBJS_XINE)): %.o: %.c
@echo CC $@
- $(Q)$(CC) $(CFLAGS) -c $(DEFINES) $(INCLUDES) $(CFLAGS_X11) $(CFLAGS_WAYLAND) $(CFLAGS_AVUTIL) $(OPTFLAGS) -o $@ $<
+ $(Q)$(CC) $(CPPFLAGS) $(CFLAGS) -c $(DEFINES) $(INCLUDES) $(CFLAGS_X11) $(CFLAGS_WAYLAND) $(CFLAGS_AVUTIL) $(OPTFLAGS) -o $@ $<
### Internationalization (I18N):
PODIR = po
@@ -333,10 +335,10 @@ $(I18Npot): $(wildcard *.c)
@echo GT $@
$(Q)xgettext -C -cTRANSLATORS --no-wrap --no-location -k -ktr -ktrNOOP --package-name=vdr-$(PLUGIN) --package-version=$(VERSION) --msgid-bugs-address='<phintuka@users.sourceforge.net>' -o $@ `ls $^`
-%.po: $(I18Npot)
- @echo PO $@
- $(Q)msgmerge -U --no-wrap --no-location --backup=none -q -N $@ $<
- @touch $@
+#%.po: $(I18Npot)
+# @echo PO $@
+# $(Q)msgmerge -U --no-wrap --no-location --backup=none -q -N $@ $<
+# @touch $@
$(I18Nmsgs): $(DESTDIR)$(LOCDIR)/%/LC_MESSAGES/vdr-$(PLUGIN).mo: $(PODIR)/%.mo
@echo INSTALL $^
diff --git a/configure b/configure
index 53eb983..7b99b13 100755
--- a/configure
+++ b/configure
@@ -189,9 +189,9 @@ test_library_pc(){
if $PKG_CONFIG --exists $libname; then
if $PKG_CONFIG --libs $libname >/dev/null; then
add_flags LIBS_$subsys \
- `pkg-config --libs-only-L $libname` \
- `pkg-config --libs-only-l $libname`
- add_flags CFLAGS_$subsys `pkg-config --cflags-only-I $libname`
+ `$PKG_CONFIG --libs-only-L $libname` \
+ `$PKG_CONFIG --libs-only-l $libname`
+ add_flags CFLAGS_$subsys `$PKG_CONFIG --cflags-only-I $libname`
log "yes"
return 0
fi
@@ -312,6 +312,7 @@ show_help(){
echo " --disable-pkgconfig do not use pkg-config"
echo " --cc=CC select C compiler"
echo " --cxx=CXX select C++ compiler"
+ echo " --pkg-config=PKG-CONFIG select the pkg-config executable"
echo " --add-cflags=FLAGS add compiler flags"
}
@@ -334,6 +335,10 @@ for opt do
CXX=$optval
logdbg "C++ compiler: $CXX"
;;
+ --pkg-config=?*)
+ PKG_CONFIG=$optval
+ logdbg "pkg-config: $PKG_CONFIG"
+ ;;
--add-cflags=?*)
CFLAGS="$CFLAGS $optval"
logdbg "CFLAGS: $CFLAGS"
@@ -517,6 +522,7 @@ enabled libxine && echo "XINEPLUGINDIR=$XINEPLUGINDIR" >> $makefile && echo >> $
# cc/ld flags
echo "CC = $CC">>$makefile
echo "CXX = $CXX">>$makefile
+echo "PKG_CONFIG = $PKG_CONFIG">>$makefile
echo "CFLAGS_XINE += $CFLAGS_XINE">>$makefile
echo "CFLAGS_VDR += $CFLAGS_VDR">>$makefile
echo "CFLAGS_X11 += $CFLAGS_X11">>$makefile
diff --git a/debian/changelog b/debian/changelog
index ee4c24a..1578f5e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,24 @@
+vdr-plugin-xineliboutput (2.2.0+git20211212-2.2) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * Add missing Breaks/Replaces for correction of xineliboutput-fbfe desktop
+ icon. Closes: #1034915
+
+ -- Andreas Metzler <ametzler@debian.org> Thu, 18 May 2023 13:40:36 +0200
+
+vdr-plugin-xineliboutput (2.2.0+git20211212-2.1) unstable; urgency=medium
+
+ [ Helmut Grohne ]
+ * Fix FTCBFS: (Closes: #1003760)
+ + Add --pkg-config flag to configure.
+ + Pass all build tools to configure.
+ + Build mpg2c.c with the build architecture compiler.
+
+ [ Tobias Grimm ]
+ * Fix installation of desktop icons
+
+ -- Tobias Grimm <etobi@debian.org> Tue, 25 Jan 2022 19:06:50 +0100
+
vdr-plugin-xineliboutput (2.2.0+git20211212-2) unstable; urgency=medium
[ Tobias Grimm ]
diff --git a/debian/control b/debian/control
index 9deaa4b..476def8 100644
--- a/debian/control
+++ b/debian/control
@@ -54,6 +54,8 @@ Description: Local Waylend frontend for the xineliboutput plugin
Package: xineliboutput-fbfe
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, libxine2-xvdr (= ${binary:Version}), libxine2-console
+Breaks: xineliboutput-sxfe (<< 2.2.0+git20211212-2.1)
+Replaces: xineliboutput-sxfe (<< 2.2.0+git20211212-2.1)
Description: Remote Framebuffer frontend for vdr-plugin-xineliboutput
This frambuffer remote frontend plays back streams provided by
vdr-plugin-xineliboutput.
diff --git a/debian/patches/cross.patch b/debian/patches/cross.patch
new file mode 100644
index 0000000..c33e647
--- /dev/null
+++ b/debian/patches/cross.patch
@@ -0,0 +1,71 @@
+--- vdr-plugin-xineliboutput-2.2.0+git20211212.orig/configure
++++ vdr-plugin-xineliboutput-2.2.0+git20211212/configure
+@@ -189,9 +189,9 @@
+ if $PKG_CONFIG --exists $libname; then
+ if $PKG_CONFIG --libs $libname >/dev/null; then
+ add_flags LIBS_$subsys \
+- `pkg-config --libs-only-L $libname` \
+- `pkg-config --libs-only-l $libname`
+- add_flags CFLAGS_$subsys `pkg-config --cflags-only-I $libname`
++ `$PKG_CONFIG --libs-only-L $libname` \
++ `$PKG_CONFIG --libs-only-l $libname`
++ add_flags CFLAGS_$subsys `$PKG_CONFIG --cflags-only-I $libname`
+ log "yes"
+ return 0
+ fi
+@@ -312,6 +312,7 @@
+ echo " --disable-pkgconfig do not use pkg-config"
+ echo " --cc=CC select C compiler"
+ echo " --cxx=CXX select C++ compiler"
++ echo " --pkg-config=PKG-CONFIG select the pkg-config executable"
+ echo " --add-cflags=FLAGS add compiler flags"
+ }
+
+@@ -334,6 +335,10 @@
+ CXX=$optval
+ logdbg "C++ compiler: $CXX"
+ ;;
++ --pkg-config=?*)
++ PKG_CONFIG=$optval
++ logdbg "pkg-config: $PKG_CONFIG"
++ ;;
+ --add-cflags=?*)
+ CFLAGS="$CFLAGS $optval"
+ logdbg "CFLAGS: $CFLAGS"
+@@ -517,6 +522,7 @@
+ # cc/ld flags
+ echo "CC = $CC">>$makefile
+ echo "CXX = $CXX">>$makefile
++echo "PKG_CONFIG = $PKG_CONFIG">>$makefile
+ echo "CFLAGS_XINE += $CFLAGS_XINE">>$makefile
+ echo "CFLAGS_VDR += $CFLAGS_VDR">>$makefile
+ echo "CFLAGS_X11 += $CFLAGS_X11">>$makefile
+--- vdr-plugin-xineliboutput-2.2.0+git20211212.orig/Makefile
++++ vdr-plugin-xineliboutput-2.2.0+git20211212/Makefile
+@@ -45,6 +45,8 @@
+
+ CXX ?= g++
+ CC ?= gcc
++PKG_CONFIG ?= pkg-config
++CC_FOR_BUILD ?= gcc
+ OPTFLAGS ?=
+
+ ifeq ($(ARCH_APPLE_DARWIN), yes)
+@@ -63,7 +65,7 @@
+ ###
+
+ # Use package data if installed...otherwise assume we're under the VDR source directory:
+-PKGCFG = $(if $(VDRDIR),$(shell pkg-config --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." pkg-config --variable=$(1) vdr))
++PKGCFG = $(if $(VDRDIR),$(shell $(PKG_CONFIG) --variable=$(1) $(VDRDIR)/vdr.pc),$(shell $(PKG_CONFIG) --variable=$(1) vdr))
+ BINDIR = $(call PKGCFG,bindir)
+ LIBDIR = $(call PKGCFG,libdir)
+ LOCDIR = $(call PKGCFG,locdir)
+@@ -296,7 +298,7 @@
+
+ mpg2c: mpg2c.c
+ @echo CCLD $@
+- $(Q)$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) mpg2c.c -o $@
++ $(Q)$(CC_FOR_BUILD) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) mpg2c.c -o $@
+
+ # data
+ black_720x576.c: mpg2c black_720x576.mpg
diff --git a/debian/patches/series b/debian/patches/series
index cebe540..24cd223 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,2 +1,3 @@
disable-po-update.patch
cppflags.patch
+cross.patch
diff --git a/debian/rules b/debian/rules
index b7d1eb5..9f12a98 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,5 +1,7 @@
#!/usr/bin/make -f
+include /usr/share/dpkg/buildtools.mk
+
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
@@ -11,7 +13,7 @@ endif
dh $@ --with vdrplugin
override_dh_auto_configure:
- ./configure --disable-dbus-glib-1
+ ./configure --disable-dbus-glib-1 '--cc=$(CC)' '--cxx=$(CXX)' '--pkg-config=$(PKG_CONFIG)'
override_dh_auto_build:
dh_auto_build -- all $(MAKE_OPTIONS)
@@ -31,8 +33,8 @@ override_dh_gencontrol:
override_dh_auto_install:
dh_auto_install -- $(MAKE_OPTIONS)
install -m 644 -D debian/icon.svg debian/xineliboutput-sxfe/usr/share/icons/xineliboutput-sxfe.svg
- install -m 644 -D debian/icon.svg debian/xineliboutput-sxfe/usr/share/icons/xineliboutput-fbfe.svg
- install -m 644 -D debian/icon.svg debian/xineliboutput-sxfe/usr/share/icons/xineliboutput-wlfe.svg
+ install -m 644 -D debian/icon.svg debian/xineliboutput-fbfe/usr/share/icons/xineliboutput-fbfe.svg
+ install -m 644 -D debian/icon.svg debian/xineliboutput-wlfe/usr/share/icons/xineliboutput-wlfe.svg
override_dh_strip:
dh_strip --dbgsym-migration='vdr-plugin-xineliboutput-dbg (<< 2.1.0+git20190511-1~)'