From owner-freebsd-current Sat Nov 11 22:29:44 1995 Return-Path: owner-current Received: (from root@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id WAA25459 for current-outgoing; Sat, 11 Nov 1995 22:29:44 -0800 Received: from DATAPLEX.NET (SHARK.DATAPLEX.NET [199.183.109.241]) by freefall.freebsd.org (8.6.12/8.6.6) with ESMTP id WAA25453 for ; Sat, 11 Nov 1995 22:29:42 -0800 Received: from [199.183.109.242] by DATAPLEX.NET with SMTP (MailShare 1.0fc5); Sun, 12 Nov 1995 00:19:37 -0600 X-Sender: rkw@shark.dataplex.net Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Sun, 12 Nov 1995 00:19:35 -0600 To: Mark Valentine From: rkw@dataplex.net (Richard Wackerbarth) Subject: Getting to the root of building Makefiles Cc: current@FreeBSD.org, root@deadline.snafu.de Sender: owner-current@FreeBSD.org Precedence: bulk Mark Valentine writes: >One way to help make source trees self-sufficient might be to start every >Makefile with something like: > > TOP = ../.. > > .MAKEFLAGS: -I${TOP}/share/mk > >(where the ../.. varies according to the position in the source tree). Generally on the right line of thinking ... Only you cannot always use ../.. to get back to the correct top of the tree. If I merge multiple trees with symbolic links, then I cannot follow the tree up to get to the root of MY tree. The other problem with this approach is that it is some inconvenience to move a sub tree. For example, if we wished to merge the gnu tree with the usr.bin tree, or conversely, if we wished to split a collection out of the tree and place in its own alternate tree. My approach would be to establish a ROOT and reference the MAKEFLAGS relative to that root. After all, we need the same facility for the includes, etc. ---- Richard Wackerbarth rkw@dataplex.net