Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 4 Oct 2012 10:22:03 -0700
From:      "Simon J. Gerraty" <sjg@juniper.net>
To:        Garrett Cooper <yanegomi@gmail.com>
Cc:        freebsd-hackers@freebsd.org, freebsd-arch@freebsd.org
Subject:   Re: Fwd: [CFT/RFC]: refactor bsd.prog.mk to understand multiple programs instead of a singular program
Message-ID:  <20121004172204.0518958093@chaos.jnpr.net>
In-Reply-To: <CAGH67wQffjVHqFw_eN=mfeg-Ac2Z6XBT5Hv72ev0kjjx7YH7SA@mail.gmail.com>
References:  <CAGH67wRkOmy7rWLkxXnT2155PuSQpwOMyu7dTAKeO1WW2dju7g@mail.gmail.com> <201210020750.23358.jhb@freebsd.org> <CAGH67wTM1VDrpu7rS=VE1G_kVEOHhS4-OCy5FX_6eDGmiNTA8A@mail.gmail.com> <201210021037.27762.jhb@freebsd.org> <CAGH67wQffjVHqFw_eN=mfeg-Ac2Z6XBT5Hv72ev0kjjx7YH7SA@mail.gmail.com>

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

On Thu, 4 Oct 2012 09:42:29 -0700, Garrett Cooper writes:
>I'd like to know what all is
>being contributed back from Juniper in terms of tests, ATF integration
>into the build system (which I've given back to marcel@/gnn@, but

We aim to contribute build improvments, and integration of ATF was part
of that.  We had planned on doing the ATF import etc, but didn't want to
re-invent wheels by trying to make it work without bmake.
Or making a dog's breakfast out of bsd.*.mk

Speaking of which, the initial commit (which should happen "real soon now"
;-) is a minimal set of changes to allow buildworld etc using bmake and
allow folk who want to, to install bmake as make - as discussed at the
last devsummit in Cambridge.

Anyway, back to ATF, as mentioned earlier in this thread, I use
atf.test.mk in our build rather than netbsd's bsd.test.mk, and 
we put all the test makefiles in a tests/ subdir of the lib or prog in
question.  This has important ramifications when it comes to wanting to
build the tree in meta mode and have unit-tests build and run as an
integral part of the build (or at least the option of doing that).

As for meta mode, there is a projects/bmake branch which is a bit out of
sync with head, but which I think has meta mode enabled (my internal
mirror of it does ;-).  It isn't ready for prime-time yet, a lot of the
stuff in local.sys.mk there needs to migrate to sys.mk or similar, but
that should probably wait until bmake is the default make, and there is
also the need for more discussion here.
But with a couple of env variables set, people should be able to play
with it, to see what we are talking about.

The next steps will focus on being able to have bmake the default -
which means dealing with ports.  I've a "patch", that's air-quotes,
because I don't think a patch will suffice for a large moving target,
rather its a script to run against a ports tree.  Once the ports folk
are happy that a bmake flavored ports tree can be built and used ok on
an older base system, the final cutover can be planned.

Hope that helps
--sjg



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