summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--HACKING27
2 files changed, 27 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 584b8e7..1581dfe 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-12-04 Jan Schmidt <thaytan@mad.scientist.com>
+
+ * HACKING:
+ Update the hacking info with information about how to prepare
+ your quilt setup to hack on the ffmpeg checkout
+
2006-11-27 Jan Schmidt <thaytan@mad.scientist.com>
* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_open),
diff --git a/HACKING b/HACKING
index fecea5e..da13515 100644
--- a/HACKING
+++ b/HACKING
@@ -19,15 +19,15 @@ of a given day.
On head, the following things have been commited on top of this:
* patches/, which is a directory with a set of patches, and a series file
listing the order, as generated by quilt
-* .pc/, which is a tree of files that quilt uses to keep control of its state.
- It contains a list of applied patches, and one directory per patch,
- containing a tree of hardlinked files that were added to the patchset, and
- a .pc file listing all files part of the patchset.
* the result of having all these patches commited (ie, quilt push -a) to the
ffmpeg tree.
-Both the actually patched CVS ffmpeg code as well as the .pc dir need to be
-commited to CVS so the state of quilt wrt. the source is in sync.
+The patched CVS ffmpeg code needs to be commited to CVS so that a checkout
+gives the patched code
+
+The Quilt state .pc hidden directory must NOT be committed to CVS, because
+having CVS subdirs inside it confuses the hell out of quilt and causes it to
+start storing diffs against CVS Entries files, and all hell breaks loose
THE WARNING
-----------
@@ -60,6 +60,21 @@ THE WAY
probably made a mistake. To manage the state correctly, it is vital that
none of the files are unknown to CVS.
+FIRST TIME:
+ - The quilt state is kept in a hidden dir in the gst-libs/ext/ffmpeg dir,
+ but this hidden dir can't be kept in CVS because it confuses patch. Hence
+ when you get a clean gst-ffmpeg checkout you have an ffmpeg tree with
+ patches applied, but no quilt metadata to modify it with.
+
+ - You need to create the quilt metadata in your checkout:
+ 1) Unroll the quilt patches. In gst-libs/ext/ffmpeg, run:
+
+ tac patches/series | while read p; do patch -p1 -R < "patches/$p"; done
+
+ 2) Now, push all the patches to quilt and it will apply them, but now with
+ the appropriate stored metadata:
+
+ quilt push -a
- if you want to add a file to a patchset, you need to:
- be in the right patchset