[vdr] [PATCH] make vdr more patch friendly

Matthias Schwarzott zzam at gmx.de
Fri Jul 1 22:37:23 CEST 2005


Hi!

While including vdr into gentoo I found a lot of patches colliding at the same 
places in vdr.
The places where this occurs mostly are:
* config.h, members of cSetup
* config.c, things in global space like new methods of cSetup
* config.c, init of member variables of cSetup
* config.c, store of member variables of cSetup
* config.c, parse/read of member-variables of cSetup
* i18n.c, definition of new i18ns

The solution I propse is:

In each of these places add a context for diff (perhaps like this):

/*
 * Place for patches to insert functions/members to cSetup - Begin
 */
/*
 * Place for patches to insert functions/members to cSetup - End
 */

Attached is a patch to add these contexts at the places mentioned above.


Now, if a patch wants to add some new members to cSetup these should be 
inserted between these two (three lines long) comments. The patch must also 
reproduce the context from above.

Example: If patch a wants to add a variable a_active to cSetup this should 
result in that patch:

  /*
   * Place for patches to insert functions/members to cSetup - Begin
   */
+ // added by patch a
+ int a_active;
+ /*
+  * Place for patches to insert functions/members to cSetup - End
+  */
+ /*
+  * Place for patches to insert functions/members to cSetup - Begin
+  */
  /*
   * Place for patches to insert functions/members to cSetup - End
   */

This will reproduce the context and the next patch can also be applied without 
problems.

That has the following advantages:
1. The patch will be independent of other patches adding variables at the same 
place, as long as they also uses that technique.
2. The patch will nevertheless be garantueed to hit the right place, as the 
occurence of this context is unique.

Greetings
  Matthias
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vdr-1.3.27-prepare-collision-free.diff
Type: text/x-diff
Size: 2554 bytes
Desc: not available
Url : http://www.linuxtv.org/pipermail/vdr/attachments/20050701/4965fbe6/vdr-1.3.27-prepare-collision-free.bin


More information about the vdr mailing list