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>
