From owner-freebsd-libh Fri Dec 21 10: 2: 2 2001 Delivered-To: freebsd-libh@freebsd.org Received: from tomts13-srv.bellnexxia.net (tomts13.bellnexxia.net [209.226.175.34]) by hub.freebsd.org (Postfix) with ESMTP id 7727337B507 for ; Fri, 21 Dec 2001 10:01:24 -0800 (PST) Received: from khan.anarcat.dyndns.org ([65.94.189.35]) by tomts13-srv.bellnexxia.net (InterMail vM.4.01.03.16 201-229-121-116-20010115) with ESMTP id <20011221180123.MMBN14868.tomts13-srv.bellnexxia.net@khan.anarcat.dyndns.org> for ; Fri, 21 Dec 2001 13:01:23 -0500 Received: from shall.anarcat.dyndns.org (shall.anarcat.dyndns.org [192.168.0.1]) by khan.anarcat.dyndns.org (Postfix) with ESMTP id D47571B21 for ; Fri, 21 Dec 2001 13:01:19 -0500 (EST) Received: by shall.anarcat.dyndns.org (Postfix, from userid 1000) id 9F78520ACD; Fri, 21 Dec 2001 13:00:54 -0500 (EST) Date: Fri, 21 Dec 2001 13:00:52 -0500 From: The Anarcat To: Libh Subject: Re: HEADS UP: breakage in lib/tcl Message-ID: <20011221180050.GA30704@shall.anarcat.dyndns.org> Mail-Followup-To: The Anarcat , Libh References: <20011220224431.GB686@shall.anarcat.dyndns.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="FL5UXtIhxfXey3p5" Content-Disposition: inline In-Reply-To: <20011220224431.GB686@shall.anarcat.dyndns.org> User-Agent: Mutt/1.3.24i Sender: owner-freebsd-libh@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG --FL5UXtIhxfXey3p5 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu Dec 20, 2001 at 05:44:31PM -0500, The Anarcat wrote: > Oups. >=20 > I broke the build in lib/tcl with the latest Makefiles commit. I'll have > to think about this. I'll probably come up with a fix tonight. >=20 > Feel free to back out the change if needs be. I'll post another heads up > when I'll come up with a fix. Ok. It seems this is another one I cannot figure out. The problem is that lib/tcl requires to build a lib with 2 sources in particular: SRCS=3D LibHTclInit_$(HSYSTEM).cc \ TclLanguageInterface.cc where HSYSTEM is (say) hui. Now, for a reason I do not understand, make(1) can't find those sources if they're not in OBJDIR. Everything works fine for every other instance of lib/*. Why does it fail in lib/tcl is beyond me. It fails with: anarcat@shall[/usr/ports/misc/libh/work/libh/lib/tcl]% env MAKEOBJDIR=3D../= ../compile/text+graphics/ make make: don't know how to make LibHTclInit_hui.cc. Stop *** Error code 2 Stop in /usr/ports/misc/libh/work/libh/lib/tcl. anarcat@shall[/usr/ports/misc/libh/work/libh/lib/tcl]%=20 lib/sysinstall/Makefile (eg) should fail the same way with something similar, since the Makefiles structure are almost the same! Why is it doing this??? [grumble-grumble-think-think-test-test] I think I know why. These SRCS are defined in Makefile.inc1 which is called by the Makefile for each different values of HSYSTEM. In other words, if you do: env ... make -f Makefile.inc HSYSTEM=3Dhui , it will DTRT. So I am currently testing a fix that would be something like: Index: Makefile =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /home/libh/cvs/libh/lib/tcl/Makefile,v retrieving revision 1.21 diff -u -r1.21 Makefile --- Makefile 2001/09/20 23:32:23 1.21 +++ Makefile 2001/12/21 17:44:32 @@ -4,6 +4,6 @@ =20 all install clean cleandir cleandepend: @for HSYSTEM in hui file common disk sysinstall; do \ - ${MAKE} -f $S/lib/tcl/Makefile.inc1 S=3D$S VPATH=3D$(VPATH)= \ - HSYSTEM=3D$$HSYSTEM $@ ;\ + (cd $(.CURDIR) && \ + ${MAKE} -f Makefile.inc1 S=3D$S HSYSTEM=3D$$HSYSTEM $@) ;\ done So that the makefile would "return" to lib/tcl before calling make again. This is because the makefile runs its target in .OBJDIR (which is compile/UITYPE) and therefore sets an odd environment for Makefile.inc1. I think cd $(.CURDIR) will fix that. I'll run a full build test before committing though. :) Anyways, the problem is that I think that backing out the changes requires a repo-surgery. I brilliantly removed files in compile/ that need to be brought back from the dead in order to fix this mess. I hope these diffs will fix everything. There might be some other places where it will break though, since lib/tcl is probably not the only place where recursive make calls are done... :) A. --FL5UXtIhxfXey3p5 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (FreeBSD) Comment: For info see http://www.gnupg.org iEYEARECAAYFAjwjeNAACgkQttcWHAnWiGfNJACeL2vQUJvBk0s2CtamdhHbQ50f RhMAoIDR6Ve04ZSCLdWxvcVnyGaPv4n2 =DCiS -----END PGP SIGNATURE----- --FL5UXtIhxfXey3p5-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-libh" in the body of the message