Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 12 Dec 2001 11:11:39 -0600
From:      Nathan Ahlstrom <nrahlstr@winternet.com>
To:        The Anarcat <anarcat@anarcat.dyndns.org>
Cc:        Libh <freebsd-libh@FreeBSD.ORG>
Subject:   Re: Damn Make! (was: Re: MAKEOBJDIR)
Message-ID:  <20011212111139.C9600@winternet.com>
In-Reply-To: <20011212163933.GB65834@shall.anarcat.dyndns.org>; from anarcat@anarcat.dyndns.org on Wed, Dec 12, 2001 at 11:39:33AM -0500
References:  <20011212163933.GB65834@shall.anarcat.dyndns.org>

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

What about this patch?

Index: Makefile
===================================================================
RCS file: /home/libh/cvs/libh/Makefile,v
retrieving revision 1.5
diff -u -r1.5 Makefile
--- Makefile    2001/09/20 21:21:55     1.5
+++ Makefile    2001/12/12 17:08:52
@@ -2,4 +2,25 @@
 
 SUBDIR= compile
 
+SETENV?=       /usr/bin/env
+
+# fullbuild target makes the 4 compile/ directories
+fullbuild:
+       ${MAKE} all 
+       ${MAKE} all NOQT=yes
+       ${MAKE} all NOTVISION=yes
+       ${MAKE} all NOQT=yes NOTVISION=yes
+
+text+graphics:
+       ${MAKE} all
+
+text:
+       ${MAKE} all NOQT=yes
+
+graphics:
+       ${MAKE} all NOTVISION=yes
+
+none:
+       ${MAKE} all NOQT=yes NOTVISION=yes
+
 .include <bsd.subdir.mk>


The Anarcat <anarcat@anarcat.dyndns.org> wrote:
> Arrgghhh!!
> 
> I can't make this work at all.
> 
> I tried to hack the libh/Makefile in the following way:
> 
> Index: Makefile
> ===================================================================
> RCS file: /home/libh/cvs/libh/Makefile,v
> retrieving revision 1.5
> diff -u -r1.5 Makefile
> --- Makefile    2001/09/20 21:21:55     1.5
> +++ Makefile    2001/12/12 16:28:33
> @@ -1,5 +1,37 @@
>  # $FreeBSD: libh/Makefile,v 1.5 2001/09/20 21:21:55 alex Exp $
>  
> -SUBDIR= compile
> +SUBDIR=        lib bin
>  
> -.include <bsd.subdir.mk>
> +SETENV?=       /usr/bin/env
> +MAKEENV=       MAKEOBJDIR=${.CURDIR}/compile/${UITYPE}
> +
> +# fullbuild target makes the 4 compile/ directories
> +fullbuild:
> +       @echo "Building all Hui types (text+graphics, text, graphics and none)"
> +       @echo "To avoid this, use the \"all\" target which defaults to a \"text+                               graphics\" build"
> +       @echo "Build started on "`date`
> +
> +       @echo "--------------------------------------------------------------"
> +       @echo ">> Building for text+graphics"
> +       @echo "--------------------------------------------------------------"
> +       ${MAKE} all 
> +       @echo "--------------------------------------------------------------"
> +       @echo ">> Building without Qt (graphics)"
> +       @echo "--------------------------------------------------------------"
> +       ${MAKE} all NOQT=yes
> +       @echo "--------------------------------------------------------------"
> +       @echo ">> Building without TVision (text)"
> +       @echo "--------------------------------------------------------------"
> +       ${MAKE} all NOTVISION=yes
> +       @echo "--------------------------------------------------------------"
> +       @echo ">> Building libh without TVision and Qt (none)"
> +       @echo "--------------------------------------------------------------"
> +       ${MAKE} all NOQT=yes NOTVISION=yes
> +       @echo ">> Build finished on " `date`
> +
> +all build install clean:
> +.for _SUBDIR in ${SUBDIR}
> +       cd ${_SUBDIR} && ${SETENV} ${MAKEENV} ${MAKE} $@
> +.endfor
> +
> +.include "Makefile.uitype"
> 
> But now, this doesn't work at all!!
> 
> anarcat@shall[~/libh]% make
> Building all Hui types (text+graphics, text, graphics and none)
> To avoid this, use the "all" target which defaults to a "text+graphics"
> build
> Build started on Mer 12 déc 2001 11:32:11 EST
> --------------------------------------------------------------
> >> Building for text+graphics
> --------------------------------------------------------------
> make all
> make: don't know how to make all. Stop
> *** Error code 2
> 
> Stop in /u/anarcat/libh.
> 
> Ridiculous!!!
> 
> Make all *works*. But not as expected:
> 
> anarcat@shall[~/libh]% make all
> cd lib && /usr/bin/env MAKEOBJDIR=/u/anarcat/libh/compile/text+graphics make all
> /usr/bin/env  make -f ../Makefile.inc1 BSUBDIR=lib/common all
> Warning: Object directory not changed from original /u/anarcat/libh/compile/text+graphics
> c++  -g -fpic -DPIC -I/usr/local/include/tcl8.3 -I/u/anarcat/libh/compile/text+graphics/../../include  -c /u/anarcat/libh/compile/text+graphics/../../lib/common/Pointer.cc -o Pointer.o
> 
> In the same idea, make all in lib does not do this at all either!!!
> 
> anarcat@shall[~/libh]% cd lib && /usr/bin/env MAKEOBJDIR=/u/anarcat/libh/compile/text+graphics make all
> ===> hui
> ===> disk
> 
> I feel there are 2 parallel dimensions here: one where everything makes
> sense and follows logic, and the make(1) one. :)
> 
> What am I missing?
> 
> BTW, I have been able to make this work properly before, I swear. It's
> just by abusive editing that I scrapped something I shouldn't have had
> scrapped.
> 
> This is simply mad.
> 
> A.



-- 
Nathan Ahlstrom / nra@NetBSD.org / nra@FreeBSD.org / GPG: 0x67BC9D19

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




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