From owner-freebsd-ports Tue Mar 31 19:56:09 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id TAA01976 for freebsd-ports-outgoing; Tue, 31 Mar 1998 19:56:09 -0800 (PST) (envelope-from owner-freebsd-ports@FreeBSD.ORG) Received: from sendero.simon-shapiro.org (sendero-fddi.Simon-Shapiro.ORG [206.190.148.2]) by hub.freebsd.org (8.8.8/8.8.8) with SMTP id TAA01943 for ; Tue, 31 Mar 1998 19:56:03 -0800 (PST) (envelope-from shimon@simon-shapiro.org) Received: (qmail 18851 invoked from network); 1 Apr 1998 04:05:03 -0000 Received: from localhost.simon-shapiro.org (HELO sendero-fxp0.simon-shapiro.org) (@127.0.0.1) by localhost.simon-shapiro.org with SMTP; 1 Apr 1998 04:05:03 -0000 Message-ID: X-Mailer: XFMail 1.3-alpha-032398 [p0] on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: Date: Tue, 31 Mar 1998 20:05:02 -0800 (PST) Reply-To: shimon@simon-shapiro.org Organization: The Simon Shapiro Foundation From: Simon Shapiro To: Chuck Robey Subject: Re: Yest one more: devel/crosssco Cc: "Jordan K. Hubbard" , freebsd-ports@FreeBSD.ORG Sender: owner-freebsd-ports@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org 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