Am 06.01.2010 um 20:24 schrieb Blue Swirl:
On Wed, Jan 6, 2010 at 6:51 PM, Andreas Färber
<andreas.faer...@web.de> wrote:
Am 04.01.2010 um 21:47 schrieb Blue Swirl:
On Sun, Jan 3, 2010 at 12:31 PM, Blue Swirl <blauwir...@gmail.com>
wrote:
2009/12/31 Andreas Färber <andreas.faer...@web.de>:
From: Andreas Färber <afaer...@opensolaris.org>
Juan has contributed a cool Makefile infrastructure that enables
us to
drop
static libraries completely:
Move shared obj-y definitions to Makefile.objs, prefixed
{common-,hw-,user-},
and link those object files directly into the executables.
Replace HWLIB by HWDIR, specifying only the directory.
Drop --whole-archive and ARLIBS in Makefiles and configure.
Drop GENERATED_HEADERS dependency in rules.mak, since this
rebuilds all
common objects after generating a target-specific header; add
dependency
rules to Makefile and Makefile.target instead.
v2:
- Don't try to include /config.mak for user emulators
- Changes to user object paths ("Quickfix for libuser.a drop")
were
obsoleted
by "user_only: compile everything with -fpie" (Kirill A.
Shutemov)
There is still one problem, tools need config-host.h but the
dependencies are not correct:
CC qemu-nbd.o
In file included from /src/qemu/qemu-nbd.c:19:
/src/qemu/qemu-common.h:32:25: error: config-host.h: No such file or
directory
Fix coming up. Basically, $(GENERATED_HEADERS) were previously used
on _all_
object files via rules.mak. That does not work when referencing
objects from
another Makefile, so the modelling needs to be done explicitly.
OK. Since there have been no objections, I'd like to apply this soon.
That would be very much appreciated.
I have not tested bsd-user. Could you please check that on your BSD
setup?
Thanks,
Andreas