[prev in list] [next in list] [prev in thread] [next in thread] 

List:       freebsd-hackers
Subject:    Re: Deterministic builds?
From:       Ulrich =?utf-8?B?U3DDtnJsZWlu?= <uqs () spoerlein ! net>
Date:       2010-10-22 10:01:34
Message-ID: 20101022100134.GL19295 () acme ! spoerlein ! net
[Download RAW message or body]

On Thu, 21.10.2010 at 21:50:26 +0200, Erik Cederstrand wrote:
> Den 21/10/2010 kl. 19.57 skrev Ulrich Spörlein:
> > On Mon, 11.10.2010 at 11:35:42 +0200, Erik Cederstrand wrote:
> > > I'm beginning to think that it should at least be optional. Removing e.g. build \
> > > times, mtimes and path to OBJDIR or SRCDIR might not make everyone happy.
> > 
> > The problem with making it optional is, that we already have enough
> > flags and knobs. No need in adding more.
> > 
> > Besides, why would people want to know the date of the build? Far more
> > important is the date and state of the source for the time of build. So
> > you might want to replace ${BUILDATE} with ${SRCDATE} somehow (time of
> > last commit?).
> > 
> > Otherwise, please go for it. It would be nice if two people compiling
> > GENERIC for the same source-base would get identical binaries.
> 
> It goes without saying that I agree with you on this. But it seems the feature will \
> require fairly invasive changes to a standard FreeBSD, e.g. changing standard ar \
> behavior, and building kernels and some other tools without debugging symbols. I'm \
> not experienced enough to determine if this is fine with the majority of users, but \
> hiding the changes under a knob would at least let the feature prove itself and put \
> off bikeshedding for a while. If the project works out, we can discuss changing the \
> default. 
> I'm still not sure what to do with debugging symbols. Currently absolute paths to \
> source files are used. I would like to change that to absolute paths , i.e. \
> usr.bin/ar/ar.c. That might even be beneficial if someone is debugging the binary \
> on a system that doesn't have the source tree located in \
> /some/obscure/directory/src. It's my understanding that gdb uses the path to look \
> up source code related to stack traces etc. It seems gdb can handle relative paths, \
> but I have no idea if it actually works, or if it's a nuisance to use compared to \
> absolute paths. Any hints?

Why do you make this a requirement? Of course it's usually easier to
build different releases from different source directories, but I think
requiring the following conditions are fine:

1. If you build a specific svn revision,
2. sitting in /usr/src with
3. the default make.conf (ie., no special flags, no frobbing of OBJDIR)
4. at different times

then you get the same binaries.

Let's start with an achievable, not-so-intrusive goal, right? :)

Uli
_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic