On 26/05/2015 07:38, Peter Crosthwaite wrote: > make can be invoked in the individual build dirs to build an individual > target or just a single file of a target. e.g. > > touch translate-all.c > make -C microblazeel-softmmu translate-all.o
Out of curiosity, why not use "make subdir-microblazeel-softmmu" instead? Paolo > There is however a small bug when using the pixman submodule. > config-host.mak will ref BUILD_DIR for the pixman -I CFLAGS: > > grep BUILD_DIR config-host.mak > QEMU_CFLAGS=-I$(SRC_PATH)/pixman/pixman -I$(BUILD_DIR)/pixman/pixman ... > > This causes a build failure as -I/pixman/pixman (BUILD_DIR=="") will > not be found. > > BUILD_DIR is usually set by the top level Makefile. Just lazy-set it in > Makefile.target to the parent directory. > > Granted, this will not work if the pixman submodule is not prebuilt, > but it at least means you can do incremental partial builds once you > have done your initial full build (or attempt) from the top level. > > The next step would be refactor make infrastructure to rebuild pixman > on a submake like the one above. > > Cc: Gerd Hoffmann <kra...@redhat.com> > Signed-off-by: Peter Crosthwaite <crosthwaite.pe...@gmail.com> > --- > Pixman is the only config-host.mak user of BUILD dir so maybe there is > a pixman specific solution out there too? > --- > Makefile.target | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/Makefile.target b/Makefile.target > index 3e861c8..ec5b92c 100644 > --- a/Makefile.target > +++ b/Makefile.target > @@ -1,5 +1,7 @@ > # -*- Mode: makefile -*- > > +BUILD_DIR?=$(CURDIR)/.. > + > include ../config-host.mak > include config-target.mak > include config-devices.mak >