This is the mail archive of the
archer@sourceware.org
mailing list for the Archer project.
Re: Merging lessons
- From: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- To: Rick Moseley <rmoseley at redhat dot com>
- Cc: Project Archer <archer at sourceware dot org>
- Date: Fri, 16 Jan 2009 16:22:03 +0100
- Subject: Re: Merging lessons
- References: <496F90F1.8090501@redhat.com>
Hi,
On Thu, 15 Jan 2009 20:39:29 +0100, Rick Moseley wrote:
> I'm sure Jan has some more experience and I hope he will add to what I have
> written here.
(a1) Run the testsuite on all the supported arches. Do not run the testsuite
on shared boxes as the GDB testsuite can (could) crash both ptrace and
utrace kernels. Also run the testsuite on the right kernel version as at
least threads debugging support differs on older kernels. Do not use
KVM. As a summary do not use Koji / any build farms for the testsuite.
(a2) Even during development I use for ./configure many options from:
http://cvs.jankratochvil.net/viewcvs/nethome/bin/errs1?rev=HEAD
IIRC suggested by Tom: --enable-targets=all
(our change could break a target not being build on our host)
-lmcheck (memory corruption checking cheap enough for daily use)
-Wp,-D_FORTIFY_SOURCE=2 -fstack-protector (rpmbuilt-like runtime checks)
(a3) During larger rebase do not try to save time by hoping it will build out
of the box on any of the arches. Each arch will require at least one
minor fixup by hand anyway.
(a4) Try to easily drop the patches which got imported to the base sourcetree
but be sure to not to drop something not imported there. Not each patch
has a testcase as occasionally it is too difficult to make it. In Fedora
I put the backported patches to an single file which one can easily drop,
"gdb-6.X-upstream.patch", but in fact many patches get checked in the
branched sources before being accepted for the base sourcetree and later
they get accepted there in a modified/different form. I am not aware of
any universal foolproof approach, one needs to know+track the patches.
(a5) Run even the biarch (-m32/-m64) and/or PIE (-fPIE) testsuite/testcases.
I will not write more about it as it is not 100% working for me so far.
Regards,
Jan