Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 31 Mar 1998 20:05:02 -0800 (PST)
From:      Simon Shapiro <shimon@simon-shapiro.org>
To:        Chuck Robey <chuckr@glue.umd.edu>
Cc:        "Jordan K. Hubbard" <jkh@time.cdrom.com>, freebsd-ports@FreeBSD.ORG
Subject:   Re: Yest one more: devel/crosssco
Message-ID:  <XFMail.980331200502.shimon@simon-shapiro.org>
In-Reply-To: <Pine.BSF.3.96.980331215602.12625K-100000@localhost>

next in thread | previous in thread | raw e-mail | index | archive | help

On 01-Apr-98 Chuck Robey wrote:
> On Tue, 31 Mar 1998, Simon Shapiro wrote:
> 
>> When I grew up, a program that dumps core was considered broken.
> 
> Simon, I didn't say it was broken because it didn't dump core, I said
> your environment was broken for _building new ports_.  You could expect
> far greater reliability if you only used packages, and didn't build on
> your system.

I am not looking for ``stability''.  I was looking to build the ports.
My evaluation is (and you do not have to agree) that this process is
fragile, at places self-contradictory, and not anywhere near where make
world, or make release are.  I'll recommend to my client to not count on
building their packages directory at this time, but purchase/download it.

..

> Well, I don't want to flog a dead horse, but ask people who port a lot,
> just how much care they have to take, so they don't pollute their
> environment.

Not an argument here.

> Another case in point:  I used to have a link, /usr/X11 to /usr/X11R6.
> Things that worked just dandy on my system would break on other folks
> systems.  I had to take that link out, else I wouldn't be aware of
> things that were broken in a port build.  I just couldn't allow my
> system to be polluted.
> 
> Heck, half the ports in the system will break, if you make one fairly
> common error (not making real sure you cleaned out the port completely
> before doing an additional test build).  That's an embarrassing one
> which most of us have done once.  If that happens, the port isn't
> broken, your build environment is.  Systems that make use of the GNU
> configure scripts (and that's a great number) have to be aware of
> environment.

I really appreciate these explanations.  I do understand them, even know
about many of them.

Here is my point, though.  I take Jordan's advise, install a clean machine,
setup cvsup on it, and checkout /usr/src.  I can, without mutatation, for
many, many cycles, do make world and get the system upgraded cleanly.  I
can do make release and get the core install images built.  As long as I
did not sabotage my system (by damaging some /usr/include files) this
process will work.  Even substantial damage can be tolerated.  A good case
in point is ``make release''.  It really depends very little on anything
else and builds itself cleanly.  It is not perfect, it takes lots of time,
etc.  But, within reasonable care, it builds correctly day after day.  If
not, then 9 out of ten (in my mad environment here) it builds correctly.

The ports, for good, bad, or indifferent reasons, cannot do that.  The
moment you declare two packages to be mutually exclusive, you declared the
ports to be broken.  Look at the src tree again.  If I told Jordan that he
cannot even compile the DPT driver, unless the AHC driver is removed from
the source tree, he'll throw me out of his office.  And yet, I received
more than one mail in this thread telling me how building package A will
render the build of package B useless.  Building, mind you, not running -
building.

As I said, I really do not care for myself.  I have done complex and messy
ports.  I have writen complex code.  I can live with it.  It would help if
these dependencies and side-effects were documented.  If maintainers simply
had a full tree where they build, 95% of these dependencies would be
discovered.  I am willing to make a machine available to any ``registered''
FreeBSD maintainer, with a full build environment on it, so they can test
for these interactions.  They will have to remotely login, as my paycheck
cannot cover shipping a machine per maintaier.  Especially when it does not
show up on time.  BTW, this concept of build-on-a-messy-machine, i
introduced into the Debian project some years ago.


Simon


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.980331200502.shimon>