mirror of
https://github.com/vdr-projects/vdr.git
synced 2025-03-01 10:50:46 +00:00
- Added --remove-destination to the 'cp' command for binaries in the Makefiles of the plugins (thanks to Rolf Ahrenberg). - The 'skincurses' plugin now adjusts the size of the OSD to the size of the console window. - Fixed deleting expired VPS timers (under certain conditions a timer could have been deleted before it even started recording). - Updated the Hungarian language texts (thanks to Istvan Koenigsberger and Guido Josten). - Fixed handling video directory updates in case the timestamp of the .update file is in the future (thanks to Petri Hintukainen).
88 lines
2.1 KiB
Makefile
88 lines
2.1 KiB
Makefile
#
|
|
# Makefile for a Video Disk Recorder plugin
|
|
#
|
|
# $Id: Makefile 1.8 2006/09/09 12:38:35 kls Exp $
|
|
|
|
# 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 = servicedemo # dummy name for Make.config
|
|
PLUGIN1 = svccli
|
|
PLUGIN2 = svcsvr
|
|
|
|
### The version number of this plugin (taken from the main source file):
|
|
|
|
VERSION = $(shell grep 'static const char \*VERSION *=' $(PLUGIN1).c | awk '{ print $$6 }' | sed -e 's/[";]//g')
|
|
|
|
### The C++ compiler and options:
|
|
|
|
CXX ?= g++
|
|
CXXFLAGS ?= -fPIC -g -O2 -Wall -Woverloaded-virtual
|
|
|
|
### The directory environment:
|
|
|
|
VDRDIR = ../../..
|
|
LIBDIR = ../../lib
|
|
TMPDIR = /tmp
|
|
|
|
### Allow user defined options to overwrite defaults:
|
|
|
|
-include $(VDRDIR)/Make.config
|
|
|
|
### The version number of VDR's plugin API (taken from VDR's "config.h"):
|
|
|
|
APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
|
|
|
|
### The name of the distribution archive:
|
|
|
|
ARCHIVE = svcintf-$(VERSION)
|
|
PACKAGE = vdr-$(ARCHIVE)
|
|
|
|
### Includes and Defines (add further entries here):
|
|
|
|
INCLUDES += -I$(VDRDIR)/include
|
|
|
|
DEFINES += -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
|
|
|
|
### The object files (add further files here):
|
|
|
|
OBJS = $(PLUGIN1).o $(PLUGIN2).o
|
|
|
|
### Implicit rules:
|
|
|
|
%.o: %.c
|
|
$(CXX) $(CXXFLAGS) -c $(DEFINES) $(INCLUDES) $<
|
|
|
|
# Dependencies:
|
|
|
|
MAKEDEP = g++ -MM -MG
|
|
DEPFILE = .dependencies
|
|
$(DEPFILE): Makefile
|
|
@$(MAKEDEP) $(DEFINES) $(INCLUDES) $(OBJS:%.o=%.c) > $@
|
|
|
|
-include $(DEPFILE)
|
|
|
|
### Targets:
|
|
|
|
all: libvdr-$(PLUGIN1).so libvdr-$(PLUGIN2).so
|
|
|
|
libvdr-$(PLUGIN1).so: $(PLUGIN1).o
|
|
$(CXX) $(CXXFLAGS) -shared $(PLUGIN1).o -o $@
|
|
@cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
|
|
|
|
libvdr-$(PLUGIN2).so: $(PLUGIN2).o
|
|
$(CXX) $(CXXFLAGS) -shared $(PLUGIN2).o -o $@
|
|
@cp --remove-destination $@ $(LIBDIR)/$@.$(APIVERSION)
|
|
|
|
dist: clean
|
|
@-rm -rf $(TMPDIR)/$(ARCHIVE)
|
|
@mkdir $(TMPDIR)/$(ARCHIVE)
|
|
@cp -a * $(TMPDIR)/$(ARCHIVE)
|
|
@tar czf $(PACKAGE).tgz -C $(TMPDIR) $(ARCHIVE)
|
|
@-rm -rf $(TMPDIR)/$(ARCHIVE)
|
|
@echo Distribution package created as $(PACKAGE).tgz
|
|
|
|
clean:
|
|
@-rm -f $(OBJS) $(DEPFILE) *.so *.tgz core* *~
|