From f5dba03447fa73da6e181ead7fb98c2b0a2fed41 Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Mon, 22 Jun 2020 15:08:46 +0200 Subject: [PATCH] Made the call to pkg_config configurable via the PKG_CONFIG macro, which is necessary for cross-building VDR --- CONTRIBUTORS | 1 + HISTORY | 5 +++++ Makefile | 16 +++++++++------- PLUGINS/src/epgtableid0/Makefile | 5 +++-- PLUGINS/src/hello/Makefile | 5 +++-- PLUGINS/src/osddemo/Makefile | 5 +++-- PLUGINS/src/pictures/Makefile | 5 +++-- PLUGINS/src/servicedemo/Makefile | 5 +++-- PLUGINS/src/skincurses/Makefile | 5 +++-- PLUGINS/src/status/Makefile | 5 +++-- PLUGINS/src/svdrpdemo/Makefile | 5 +++-- newplugin | 5 +++-- 12 files changed, 42 insertions(+), 25 deletions(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 5b9360cb..4b2ebf2a 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -2493,6 +2493,7 @@ Tobias Grimm for adding a missing dependency to the Makefile to avoid error messages in the clean-plugins target for adding optional verbose output to the libsi Makefile + for making the call to pkg_config configurable via the PKG_CONFIG macro Helge Lenz for reporting a bug in setting the 'Delta' parameter when calling the shutdown diff --git a/HISTORY b/HISTORY index 02348c84..47e4813a 100644 --- a/HISTORY +++ b/HISTORY @@ -9478,3 +9478,8 @@ Video Disk Recorder Revision History - Changed the country code in the generated ParentalRatingDescriptor from 'DEU' to '902' to make it valid for all countries (thanks to Helmut Binder). - Added optional verbose output to the libsi Makefile (thanks to Tobias Grimm). +- Made the call to pkg_config configurable via the PKG_CONFIG macro, which is necessary + for cross-building VDR (thanks to Tobias Grimm). Plugin authors may want to modify + their Makefiles accordingly by adding the line 'PKG_CONFIG ?= pkg-config' and + replacing every occurrence of 'pkg-config' with '$(PKG_CONFIG)', as can be seen in + the Makefiles of the plugins that come with the VDR source. diff --git a/Makefile b/Makefile index 087bf83f..93d061a8 100644 --- a/Makefile +++ b/Makefile @@ -4,12 +4,14 @@ # See the main source file 'vdr.c' for copyright information and # how to reach the author. # -# $Id: Makefile 4.8 2020/06/15 13:07:55 kls Exp $ +# $Id: Makefile 4.9 2020/06/22 15:08:46 kls Exp $ .DELETE_ON_ERROR: # Compiler flags: +PKG_CONFIG ?= pkg-config + CC ?= gcc CFLAGS ?= -g -O3 -Wall @@ -19,8 +21,8 @@ CXXFLAGS ?= -g -O3 -Wall -Werror=overloaded-virtual -Wno-parentheses CDEFINES = -D_GNU_SOURCE CDEFINES += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -LIBS = -ljpeg -lpthread -ldl -lcap -lrt $(shell pkg-config --libs freetype2 fontconfig) -INCLUDES ?= $(shell pkg-config --cflags freetype2 fontconfig) +LIBS = -ljpeg -lpthread -ldl -lcap -lrt $(shell $(PKG_CONFIG) --libs freetype2 fontconfig) +INCLUDES ?= $(shell $(PKG_CONFIG) --cflags freetype2 fontconfig) # Directories: @@ -107,14 +109,14 @@ ifdef VDR_USER DEFINES += -DVDR_USER=\"$(VDR_USER)\" endif ifdef BIDI -INCLUDES += $(shell pkg-config --cflags fribidi) +INCLUDES += $(shell $(PKG_CONFIG) --cflags fribidi) DEFINES += -DBIDI -LIBS += $(shell pkg-config --libs fribidi) +LIBS += $(shell $(PKG_CONFIG) --libs fribidi) endif ifdef SDNOTIFY -INCLUDES += $(shell pkg-config --silence-errors --cflags libsystemd-daemon || pkg-config --cflags libsystemd) +INCLUDES += $(shell $(PKG_CONFIG) --silence-errors --cflags libsystemd-daemon || $(PKG_CONFIG) --cflags libsystemd) DEFINES += -DSDNOTIFY -LIBS += $(shell pkg-config --silence-errors --libs libsystemd-daemon || pkg-config --libs libsystemd) +LIBS += $(shell $(PKG_CONFIG) --silence-errors --libs libsystemd-daemon || $(PKG_CONFIG) --libs libsystemd) endif LIRC_DEVICE ?= /var/run/lirc/lircd diff --git a/PLUGINS/src/epgtableid0/Makefile b/PLUGINS/src/epgtableid0/Makefile index ef7cc71f..f3ba5120 100644 --- a/PLUGINS/src/epgtableid0/Makefile +++ b/PLUGINS/src/epgtableid0/Makefile @@ -1,7 +1,7 @@ # # Makefile for a Video Disk Recorder plugin # -# $Id: Makefile 4.2 2017/05/29 08:30:00 kls Exp $ +# $Id: Makefile 4.3 2020/06/22 15:08:46 kls Exp $ # The official name of this plugin. # This name will be used in the '-P...' option of VDR to load the plugin. @@ -16,7 +16,8 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | awk '{ pri ### 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)) +PKG_CONFIG ?= pkg-config +PKGCFG = $(if $(VDRDIR),$(shell $(PKG_CONFIG) --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." $(PKG_CONFIG) --variable=$(1) vdr)) LIBDIR = $(call PKGCFG,libdir) PLGCFG = $(call PKGCFG,plgcfg) # diff --git a/PLUGINS/src/hello/Makefile b/PLUGINS/src/hello/Makefile index 5581c78c..eafe721b 100644 --- a/PLUGINS/src/hello/Makefile +++ b/PLUGINS/src/hello/Makefile @@ -1,7 +1,7 @@ # # Makefile for a Video Disk Recorder plugin # -# $Id: Makefile 4.2 2017/05/29 08:26:45 kls Exp $ +# $Id: Makefile 4.3 2020/06/22 15:08:46 kls Exp $ # The official name of this plugin. # This name will be used in the '-P...' option of VDR to load the plugin. @@ -16,7 +16,8 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | awk '{ pri ### 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)) +PKG_CONFIG ?= pkg-config +PKGCFG = $(if $(VDRDIR),$(shell $(PKG_CONFIG) --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." $(PKG_CONFIG) --variable=$(1) vdr)) LIBDIR = $(call PKGCFG,libdir) LOCDIR = $(call PKGCFG,locdir) PLGCFG = $(call PKGCFG,plgcfg) diff --git a/PLUGINS/src/osddemo/Makefile b/PLUGINS/src/osddemo/Makefile index 8deef83c..cb3b59a0 100644 --- a/PLUGINS/src/osddemo/Makefile +++ b/PLUGINS/src/osddemo/Makefile @@ -1,7 +1,7 @@ # # Makefile for a Video Disk Recorder plugin # -# $Id: Makefile 4.2 2017/05/29 08:30:08 kls Exp $ +# $Id: Makefile 4.3 2020/06/22 15:08:46 kls Exp $ # The official name of this plugin. # This name will be used in the '-P...' option of VDR to load the plugin. @@ -16,7 +16,8 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | awk '{ pri ### 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)) +PKG_CONFIG ?= pkg-config +PKGCFG = $(if $(VDRDIR),$(shell $(PKG_CONFIG) --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." $(PKG_CONFIG) --variable=$(1) vdr)) LIBDIR = $(call PKGCFG,libdir) PLGCFG = $(call PKGCFG,plgcfg) # diff --git a/PLUGINS/src/pictures/Makefile b/PLUGINS/src/pictures/Makefile index 1af0fff8..0da73850 100644 --- a/PLUGINS/src/pictures/Makefile +++ b/PLUGINS/src/pictures/Makefile @@ -1,7 +1,7 @@ # # Makefile for a Video Disk Recorder plugin # -# $Id: Makefile 4.2 2017/05/29 08:30:55 kls Exp $ +# $Id: Makefile 4.3 2020/06/22 15:08:46 kls Exp $ # The official name of this plugin. # This name will be used in the '-P...' option of VDR to load the plugin. @@ -16,7 +16,8 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | awk '{ pri ### 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)) +PKG_CONFIG ?= pkg-config +PKGCFG = $(if $(VDRDIR),$(shell $(PKG_CONFIG) --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." $(PKG_CONFIG) --variable=$(1) vdr)) LIBDIR = $(call PKGCFG,libdir) LOCDIR = $(call PKGCFG,locdir) PLGCFG = $(call PKGCFG,plgcfg) diff --git a/PLUGINS/src/servicedemo/Makefile b/PLUGINS/src/servicedemo/Makefile index bb8fb19d..7feee78f 100644 --- a/PLUGINS/src/servicedemo/Makefile +++ b/PLUGINS/src/servicedemo/Makefile @@ -1,7 +1,7 @@ # # Makefile for a Video Disk Recorder plugin # -# $Id: Makefile 4.2 2017/05/29 08:31:07 kls Exp $ +# $Id: Makefile 4.3 2020/06/22 15:08:46 kls Exp $ # The official name of this plugin. # This name will be used in the '-P...' option of VDR to load the plugin. @@ -17,7 +17,8 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN1).c | awk '{ pr ### 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)) +PKG_CONFIG ?= pkg-config +PKGCFG = $(if $(VDRDIR),$(shell $(PKG_CONFIG) --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." $(PKG_CONFIG) --variable=$(1) vdr)) LIBDIR = $(call PKGCFG,libdir) PLGCFG = $(call PKGCFG,plgcfg) # diff --git a/PLUGINS/src/skincurses/Makefile b/PLUGINS/src/skincurses/Makefile index 5d591fdb..85e98cd4 100644 --- a/PLUGINS/src/skincurses/Makefile +++ b/PLUGINS/src/skincurses/Makefile @@ -1,7 +1,7 @@ # # Makefile for a Video Disk Recorder plugin # -# $Id: Makefile 4.2 2017/05/29 08:31:02 kls Exp $ +# $Id: Makefile 4.3 2020/06/22 15:08:46 kls Exp $ # The official name of this plugin. # This name will be used in the '-P...' option of VDR to load the plugin. @@ -16,7 +16,8 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | awk '{ pri ### 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)) +PKG_CONFIG ?= pkg-config +PKGCFG = $(if $(VDRDIR),$(shell $(PKG_CONFIG) --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." $(PKG_CONFIG) --variable=$(1) vdr)) LIBDIR = $(call PKGCFG,libdir) LOCDIR = $(call PKGCFG,locdir) PLGCFG = $(call PKGCFG,plgcfg) diff --git a/PLUGINS/src/status/Makefile b/PLUGINS/src/status/Makefile index a97c5090..4d68c9b1 100644 --- a/PLUGINS/src/status/Makefile +++ b/PLUGINS/src/status/Makefile @@ -1,7 +1,7 @@ # # Makefile for a Video Disk Recorder plugin # -# $Id: Makefile 4.2 2017/05/29 08:30:32 kls Exp $ +# $Id: Makefile 4.3 2020/06/22 15:08:46 kls Exp $ # The official name of this plugin. # This name will be used in the '-P...' option of VDR to load the plugin. @@ -16,7 +16,8 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | awk '{ pri ### 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)) +PKG_CONFIG ?= pkg-config +PKGCFG = $(if $(VDRDIR),$(shell $(PKG_CONFIG) --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." $(PKG_CONFIG) --variable=$(1) vdr)) LIBDIR = $(call PKGCFG,libdir) PLGCFG = $(call PKGCFG,plgcfg) # diff --git a/PLUGINS/src/svdrpdemo/Makefile b/PLUGINS/src/svdrpdemo/Makefile index ed378cd0..8423c1c8 100644 --- a/PLUGINS/src/svdrpdemo/Makefile +++ b/PLUGINS/src/svdrpdemo/Makefile @@ -1,7 +1,7 @@ # # Makefile for a Video Disk Recorder plugin # -# $Id: Makefile 4.2 2017/05/29 08:30:42 kls Exp $ +# $Id: Makefile 4.3 2020/06/22 15:08:46 kls Exp $ # The official name of this plugin. # This name will be used in the '-P...' option of VDR to load the plugin. @@ -16,7 +16,8 @@ VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN).c | awk '{ pri ### 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)) +PKG_CONFIG ?= pkg-config +PKGCFG = $(if $(VDRDIR),$(shell $(PKG_CONFIG) --variable=$(1) $(VDRDIR)/vdr.pc),$(shell PKG_CONFIG_PATH="$$PKG_CONFIG_PATH:../../.." $(PKG_CONFIG) --variable=$(1) vdr)) LIBDIR = $(call PKGCFG,libdir) PLGCFG = $(call PKGCFG,plgcfg) # diff --git a/newplugin b/newplugin index 2e953938..e51d45cb 100755 --- a/newplugin +++ b/newplugin @@ -12,7 +12,7 @@ # See the main source file 'vdr.c' for copyright information and # how to reach the author. # -# $Id: newplugin 4.3 2017/05/29 08:55:21 kls Exp $ +# $Id: newplugin 4.4 2020/06/22 15:08:46 kls Exp $ $PLUGIN_NAME = $ARGV[0] || die "Usage: newplugin \n"; @@ -75,7 +75,8 @@ VERSION = \$(shell grep 'static const char \\*VERSION *=' \$(PLUGIN).c | awk '{ ### 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)) +PKG_CONFIG ?= pkg-config +PKGCFG = \$(if \$(VDRDIR),\$(shell $(PKG_CONFIG) --variable=\$(1) \$(VDRDIR)/vdr.pc),\$(shell PKG_CONFIG_PATH="\$\$PKG_CONFIG_PATH:../../.." $(PKG_CONFIG) --variable=\$(1) vdr)) LIBDIR = \$(call PKGCFG,libdir) LOCDIR = \$(call PKGCFG,locdir) PLGCFG = \$(call PKGCFG,plgcfg)