VDR version 1.4.1 is now available at
ftp://ftp.cadsoft.de/vdr/vdr-1.4.1.tar.bz2
A 'diff' against the previous version is available at
ftp://ftp.cadsoft.de/vdr/Developer/vdr-1.4.0-1.4.1.diff
A summary of all the major changes since the last stable version can be found at
http://www.cadsoft.de/vdr/download.htm
This version is source compatible with the previous version, so plugins only need to be recompiled.
Thanks to the many people who have contributed in the making, testing and debugging of this new version of VDR.
Have fun!
Klaus
Hello,
in case anyone is interested:
www.schnapsleichen.de/vdr-1.4.0-3-1.4.1.diff
S.
Klaus Schmidinger wrote:
VDR version 1.4.1 is now available at
ftp://ftp.cadsoft.de/vdr/vdr-1.4.1.tar.bz2
No changelog? At least HISTORY has one:
The changes since version 1.4.0-3:
- Changed the log messages when grabbing an image from 'isyslog()' to 'dsyslog()' so that they can be suppressed in normal operation mode to avoid clogging the log file in case this function is used frequently (suggested by Helmut Auer).
Not much, but at least noteworthy. ;)
Cheers,
Udo
Hi, there is still something fishy with fPIC handling. It works as expected as long as you don't define CXXFLAGS yourself, ie. unpacking distribution, make; make plugins is OK. But If I set flags in Make.conf, the -fPIc doesn't get added for plugins, and I can't seem to make this happen by patching (I don't know much about Makefile syntax) other than adding -fPIC directly into the %.o: %.c rule line in each plugin's Makefile.
So maybe you want to take a look at this again?
Prakash Punnoor wrote:
But If I set flags in Make.conf, the -fPIc doesn't get added for plugins, and I can't seem to make this happen by patching (I don't know much about Makefile syntax) other than adding -fPIC directly into the %.o: %.c rule line in each plugin's Makefile.
This is a fundamental problem, since Make.config is used for VDR core *and* plugins. There is currently no mechanism to set CXXFLAGS for plugins differently than for core VDR.
Probably the easiest way is to add -fPIC to Make.config anyway, even if core VDR doesn't need it. Enforcing the -fPIC flag even if it is not part of CXXFLAGS is not the way to go, you cannot expect every compiler to understand it.
Implementing something like PLUGINCXXFLAGS for plugins would do the job, but since you'll never get all plugins to support it, its not the final solution either.
Another good solution would be to do a conditional part in Make.config, like this: --- Make.config.template 2006-05-28 15:08:29.687375000 +0200 +++ Make.config.template 2006-06-11 17:50:14.467000000 +0200 @@ -16,6 +16,11 @@ CXX = g++ CXXFLAGS = -g -O2 -Wall -Woverloaded-virtual
+ifdef PLUGIN +CFLAGS += -fPIC +CXXFLAGS += -fPIC +endif + ### The directory environment:
#DVBDIR = /usr/src/v4l-dvb/linux
The existence of the PLUGIN makefile variable should work for almost all plugins. Another way would be to set some marker variable at the beginning of the VDR Makefile, or to move the VDRVERSION declaration in front of the -include statement. (but of course for core VDR only, not for plugin makefiles)
Cheers,
Udo
Udo Richter wrote:
Prakash Punnoor wrote:
But If I set flags in Make.conf, the -fPIc doesn't get added for plugins, and I can't seem to make this happen by patching (I don't know much about Makefile syntax) other than adding -fPIC directly into the %.o: %.c rule line in each plugin's Makefile.
This is a fundamental problem, since Make.config is used for VDR core *and* plugins. There is currently no mechanism to set CXXFLAGS for plugins differently than for core VDR.
Probably the easiest way is to add -fPIC to Make.config anyway, even if core VDR doesn't need it. Enforcing the -fPIC flag even if it is not part of CXXFLAGS is not the way to go, you cannot expect every compiler to understand it.
Implementing something like PLUGINCXXFLAGS for plugins would do the job, but since you'll never get all plugins to support it, its not the final solution either.
Another good solution would be to do a conditional part in Make.config, like this: --- Make.config.template 2006-05-28 15:08:29.687375000 +0200 +++ Make.config.template 2006-06-11 17:50:14.467000000 +0200 @@ -16,6 +16,11 @@ CXX = g++ CXXFLAGS = -g -O2 -Wall -Woverloaded-virtual
+ifdef PLUGIN +CFLAGS += -fPIC +CXXFLAGS += -fPIC +endif
### The directory environment:
#DVBDIR = /usr/src/v4l-dvb/linux
The existence of the PLUGIN makefile variable should work for almost all plugins. Another way would be to set some marker variable at the beginning of the VDR Makefile, or to move the VDRVERSION declaration in front of the -include statement. (but of course for core VDR only, not for plugin makefiles)
Maybe it would have been better to leave the -fPIC thing as it has been for so long - as it is now, plugins will actually be compiled _without_ it, which is probably a lot worse than compiling the main program _with_ it...
Klaus
Am Sonntag Juni 11 2006 23:36 schrieb Klaus Schmidinger:
Udo Richter wrote:
[...]
Another good solution would be to do a conditional part in Make.config, like this: --- Make.config.template 2006-05-28 15:08:29.687375000 +0200 +++ Make.config.template 2006-06-11 17:50:14.467000000 +0200 @@ -16,6 +16,11 @@ CXX = g++ CXXFLAGS = -g -O2 -Wall -Woverloaded-virtual
+ifdef PLUGIN +CFLAGS += -fPIC +CXXFLAGS += -fPIC +endif
### The directory environment:
#DVBDIR = /usr/src/v4l-dvb/linux
[...]
Maybe it would have been better to leave the -fPIC thing as it has been for so long - as it is now, plugins will actually be compiled _without_ it, which is probably a lot worse than compiling the main program _with_ it...
Just to note: Udo's patch works fine here. :-)
Klaus Schmidinger wrote:
VDR version 1.4.1 is now available at
ftp://ftp.cadsoft.de/vdr/vdr-1.4.1.tar.bz2
I have updated the SUSE Linux packages at http://software.opensuse.org/download/vdr/
cu Ludwig
Hi,
I suggest following small patch, as valgrind complains otherwise in combination with softdevice:
--- ringbuffer.c.old 2006-06-15 22:36:33.000000000 +0200 +++ ringbuffer.c 2006-06-15 22:19:11.000000000 +0200 @@ -157,6 +157,7 @@ description = Description ? strdup(Description) : NULL; tail = head = margin = Margin; buffer = NULL; + gotten = 0; if (Size > 1) { // 'Size - 1' must not be 0! if (Margin <= Size / 2) { buffer = MALLOC(uchar, Size);
Cheers,