Thanks, applied.
On Wed, Jan 6, 2010 at 7:24 PM, Andreas Färber
<address@hidden> wrote:
From: Andreas Färber<address@hidden>
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)
v3:
- Fix dependency modelling for tools
- Remove comment on GENERATED_HEADERS obsoleted by this patch
Signed-off-by: Andreas Färber<address@hidden>
Cc: Blue Swirl<address@hidden>
Cc: Palle Lyckegaard<address@hidden>
Cc: Ben Taylor<address@hidden>
Cc: Juan Quintela<address@hidden>
Cc: Kirill A. Shutemov<address@hidden>
Cc: Paolo Bonzini<address@hidden>
---
Makefile | 138 +++++-------------------------------------------
Makefile.hw | 33 +-----------
Makefile.objs | 155
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
Makefile.target | 33 +++++++++---
Makefile.user | 9 +---
configure | 34 +------------
rules.mak | 4 +-
7 files changed, 202 insertions(+), 204 deletions(-)
create mode 100644 Makefile.objs