From owner-freebsd-current Tue Feb 26 5:31:17 2002 Delivered-To: freebsd-current@freebsd.org Received: from mao.stokely.org (mao.stokely.org [65.84.64.228]) by hub.freebsd.org (Postfix) with ESMTP id A9FFD37B402; Tue, 26 Feb 2002 05:30:55 -0800 (PST) Received: by mao.stokely.org (Postfix, from userid 2074) id 6B9EE4B65D; Tue, 26 Feb 2002 05:30:50 -0800 (PST) Date: Tue, 26 Feb 2002 05:30:50 -0800 From: murray@stokely.org To: Makoto Matsushita Cc: current@freebsd.org, murray@freebsd.org Subject: Re: FreeBSD/i386 "make release" breakage Message-ID: <20020226133050.GB7863@freebsdmall.com> References: <20020225132729N.matusita@jp.FreeBSD.org> <20020226183922A.matusita@jp.FreeBSD.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20020226183922A.matusita@jp.FreeBSD.org> User-Agent: Mutt/1.3.25i X-GPG-Key-ID: 1024D/0E451F7D X-GPG-Key-Fingerprint: E2CA 411D DD44 53FD BB4B 3CB5 B4D7 10A2 0E45 1F7D Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Tue, Feb 26, 2002 at 06:39:22PM +0900, Makoto Matsushita wrote: > Note that new dhclient requires some libraries which are *not* > installed to /usr/lib (libdhcp, libres, libomapi, and libdst). Installing them to /usr/lib wouldn't help for the crunched case anyway. > I have tried a quick hack to solve this; here is a patch to boot_crunch.conf. I tried a different approach and I was able to build a properly brunched dhclient. However, src/release/Makefile tries to rebuild all of the object files so my near-fix still falls over when building a release. There are several possible ways to solve this problem : 1. Use the existing boot_crunch.conf, but fix crunchgen(1) to recurse into subdirectories to find object files. This would require significant changes to the way that crunchgen currently works. 2. Use the existing boot_crunch.conf, but move sbin/dhclient/* back to a single top-level Makefile. This does not work at the moment, because the objects in each subdirectory are built with different command line options to conditionally compile different parts of the header files. 3. Add an explicit OBJ list in the top level dhclient Makefile wrapped in a .ifdef (RELEASE_CRUNCH). This works well to build a crunched dhclient binary, however, src/release/Makefile tries to rebuild all of the objects individually, and gets confused when asked to rebuild 'client/clparse.o' from the top level, for example. src/release/Makefile could be changed to fix this. I'm currently looking into #2 and #3, as well as working with Ted Lemon from the ISC to fix some symbol pollution that this whole mess has exposed. Any other ideas? - Murray To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message