[ANNOUNCE] VDR developer version 1.3.48
Commit Message
Oliver Endriss wrote:
> Klaus Schmidinger wrote:
>> VDR developer version 1.3.48 is now available at
>> ...
>> - Simplified the 'grep|awk|sed' command to retrieve the VDR/APIVERSION to a single
>> 'sed' call.
>
> (1) My sed does not accept lines like this:
> | sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$/\1/; p }' config.h
> | sed: -e expression #1, char 47: Extra characters after command
>
> This works:
> | sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$/\1/p; }' config.h
> | 1.3.47
>
> (2) The newplugin script is broken:
> - references VDRVERSION, not APIVERSION
> - '\' must be escaped
> - sed problem as above
Just to make sure I don't make any stupid last minute error
here's the complete change that resulted from this.
Maybe somebody finds the time to look over this...
Klaus
Comments
Klaus Schmidinger wrote:
> Just to make sure I don't make any stupid last minute error
> here's the complete change that resulted from this.
> Maybe somebody finds the time to look over this...
I gave everything a test run, seems to work. GNU-sed 4.1.2. Out of
curiosity, I've tried solaris 5.6 sed of 1997 and AIX 5.2 sed, and they
accepted it too.
Cheers,
Udo
Klaus Schmidinger wrote:
> Oliver Endriss wrote:
>> Klaus Schmidinger wrote:
>>> VDR developer version 1.3.48 is now available at
>>> ...
>>> - Simplified the 'grep|awk|sed' command to retrieve the
>>> VDR/APIVERSION to a single
>>> 'sed' call.
>>
>> (1) My sed does not accept lines like this:
>> | sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$/\1/; p }' config.h
>> | sed: -e expression #1, char 47: Extra characters after command
>>
>> This works:
>> | sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$/\1/p; }' config.h
>> | 1.3.47
>>
>> (2) The newplugin script is broken:
>> - references VDRVERSION, not APIVERSION
>> - '\' must be escaped
>> - sed problem as above
>
> Just to make sure I don't make any stupid last minute error
> here's the complete change that resulted from this.
> Maybe somebody finds the time to look over this...
>
> Klaus
>
Im trying to test this from the console and I seem to have a problem with the
following command (using sed-4.1.4-7 from debian sid):
"sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' config.h"
This returns nothing.
"sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$/\1/; p }' config.h"
This returns:
1.3.48
Is that right? Removing one of the "$" seems to fix it..
BR.
>>
>
> Im trying to test this from the console and I seem to have a problem with the
> following command (using sed-4.1.4-7 from debian sid):
>
> "sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' config.h"
>
> This returns nothing.
>
> "sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$/\1/; p }' config.h"
>
> This returns:
>
> 1.3.48
>
> Is that right? Removing one of the "$" seems to fix it..
>
Sorry, I meant to say this command returns nothing:
sed -ne '/define VDRVERSION/s/^.*"\(.*\)".*$$/\1/p' config.h
and this command works:
sed -ne '/define VDRVERSION/s/^.*"\(.*\)".*$/\1/p' config.h
BR.
C.Y.M wrote:
> Klaus Schmidinger wrote:
>> Oliver Endriss wrote:
>>> Klaus Schmidinger wrote:
>>>> VDR developer version 1.3.48 is now available at
>>>> ...
>>>> - Simplified the 'grep|awk|sed' command to retrieve the
>>>> VDR/APIVERSION to a single
>>>> 'sed' call.
>>> (1) My sed does not accept lines like this:
>>> | sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$/\1/; p }' config.h
>>> | sed: -e expression #1, char 47: Extra characters after command
>>>
>>> This works:
>>> | sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$/\1/p; }' config.h
>>> | 1.3.47
>>>
>>> (2) The newplugin script is broken:
>>> - references VDRVERSION, not APIVERSION
>>> - '\' must be escaped
>>> - sed problem as above
>> Just to make sure I don't make any stupid last minute error
>> here's the complete change that resulted from this.
>> Maybe somebody finds the time to look over this...
>>
>> Klaus
>>
>
> Im trying to test this from the console and I seem to have a problem with the
> following command (using sed-4.1.4-7 from debian sid):
>
> "sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' config.h"
>
> This returns nothing.
>
> "sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$/\1/; p }' config.h"
>
> This returns:
>
> 1.3.48
>
> Is that right? Removing one of the "$" seems to fix it..
That's all right. The '$' needs to be doubled in the Makefile.
Klaus
On Tue, Apr 25, 2006 at 11:49:29PM -0700, C.Y.M wrote:
> Klaus Schmidinger wrote:
> > Oliver Endriss wrote:
> >> Klaus Schmidinger wrote:
> >>> VDR developer version 1.3.48 is now available at
> >>> ...
> >>> - Simplified the 'grep|awk|sed' command to retrieve the
> >>> VDR/APIVERSION to a single
> >>> 'sed' call.
> >>
> >> (1) My sed does not accept lines like this:
> >> | sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$/\1/; p }' config.h
> >> | sed: -e expression #1, char 47: Extra characters after command
> >>
> >> This works:
> >> | sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$/\1/p; }' config.h
> >> | 1.3.47
> >>
> >> (2) The newplugin script is broken:
> >> - references VDRVERSION, not APIVERSION
> >> - '\' must be escaped
> >> - sed problem as above
> >
> > Just to make sure I don't make any stupid last minute error
> > here's the complete change that resulted from this.
> > Maybe somebody finds the time to look over this...
> >
> > Klaus
> >
>
> Im trying to test this from the console and I seem to have a problem with the
> following command (using sed-4.1.4-7 from debian sid):
>
> "sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' config.h"
>
> This returns nothing.
>
> "sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$/\1/; p }' config.h"
>
> This returns:
>
> 1.3.48
>
> Is that right? Removing one of the "$" seems to fix it..
Hmm ... within Makefiles the first $ is readed by the make program
and if there is no second $ you'll get the make variable $/ ...
Werner
@@ -81,8 +81,8 @@
# The version numbers of VDR and the plugin API (taken from VDR's "config.h"):
-VDRVERSION = $(shell sed -ne '/define VDRVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' config.h)
-APIVERSION = $(shell sed -ne '/define APIVERSION/ { s/^.*"\(.*\)".*$$/\1/; p }' config.h)
+VDRVERSION = $(shell sed -ne '/define VDRVERSION/s/^.*"\(.*\)".*$$/\1/p' config.h)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' config.h)
ifdef VFAT
# for people who want their video directory on a VFAT partition
@@ -30,7 +30,7 @@
### 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)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
### The name of the distribution archive:
@@ -30,7 +30,7 @@
### 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)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
### The name of the distribution archive:
@@ -31,7 +31,7 @@
### 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)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
### The name of the distribution archive:
@@ -30,7 +30,7 @@
### 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)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
### The name of the distribution archive:
@@ -30,7 +30,7 @@
### 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)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
### The name of the distribution archive:
@@ -30,7 +30,7 @@
### 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)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
### The name of the distribution archive:
@@ -30,7 +30,7 @@
### 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)
+APIVERSION = $(shell sed -ne '/define APIVERSION/s/^.*"\(.*\)".*$$/\1/p' $(VDRDIR)/config.h)
### The name of the distribution archive:
@@ -85,7 +85,7 @@
### The version number of VDR's plugin API (taken from VDR's "config.h"):
-APIVERSION = \$(shell sed -ne '/define VDRVERSION/ { s/^.*"\(.*\)".*\$\$/\\1/; p }' \$(VDRDIR)/config.h)
+APIVERSION = \$(shell sed -ne '/define APIVERSION/s/^.*"\\(.*\\)".*\$\$/\\1/p' \$(VDRDIR)/config.h)
### The name of the distribution archive:
@@ -4652,3 +4652,7 @@
2006-04-24: Version 1.4.0
- Fixed initializing 'noapiv' in the Makefile (reported by Ronny Kornexl).
+- Fixed extracting APIVERSION to work with older versions of 'sed' (reported by
+ Oliver Endriss; thanks also to Udo Richter for a shorter version of the 'sed'
+ expression).
+- Fixed broken APIVERSION extraction line in 'newplugin' (thanks to Oliver Endriss).
@@ -614,6 +614,8 @@
display in the ST:TNG skin's channel display
for suggesting to make CharArray::DataOwnData::assign() in 'libsi' more robust
against invalid data
+ for reporting a problem in extracting APIVERSION with older versions of 'sed'
+ for fixing broken APIVERSION extraction line in 'newplugin'
Reinhard Walter Buchner <rw.buchner@freenet.de>
for adding some satellites to 'sources.conf'
@@ -1412,6 +1414,7 @@
--help or --version option
for suggesting to add a warning about plugins that don't honor APIVERSION in their
Makefile
+ for providing a shorter version of the 'sed' expression for extracting APIVERSION
Sven Kreiensen <svenk@kammer.uni-hannover.de>
for his help in keeping 'channels.conf.terr' up to date