mbox

[PULL,v3,00/29] per-directory Makefile.objs snippets, limit vpath (ab)use

Message ID 1339054814-20939-1-git-send-email-pbonzini@redhat.com
State New
Headers show

Pull-request

git://github.com/bonzini/qemu.git nested-makefiles-3

Message

Paolo Bonzini June 7, 2012, 7:39 a.m. UTC
The following changes since commit 349417004a0f7cf5518a998dca755cd06f6c212b:

  Merge remote-tracking branch 'qmp/queue/qmp' into staging (2012-06-06 20:57:56 +0800)

are available in the git repository at:


  git://github.com/bonzini/qemu.git nested-makefiles-3

for you to fetch changes up to 2dee8d54c62abb0a46578ad21cc25782b83e3773:

  build: do not create directories at configure time (2012-06-07 09:21:20 +0200)

Wen, please give a look at patches 7-9.  I think they are not controversial,
but an Acked-by would be nice.

Thanks!

Paolo

v2->v3: included patch from Anthony, added fixes for new dump mechanism

----------------------------------------------------------------
Anthony Liguori (1):
      configure: ensure directory exists when creating symlink

Paolo Bonzini (28):
      build: remove trace-nested-y
      build: do not sprinkle around GENERATED_HEADERS dependencies
      build: add rules for nesting
      build: move *-user/ objects to nested Makefile.objs
      build: move obj-TARGET-y variables to nested Makefile.objs
      build: move libobj-y variable to nested Makefile.objs
      dump: do not compile dump.o for user-mode emulation
      dump: change cpu_get_note_size to return ssize_t
      dump: remove dumping stuff from cpu-all.h
      build: move other target-*/ objects to nested Makefile.objs
      build: move rules for nesting to Makefile.objs
      build: adapt qom/Makefile and move it to Makefile.objs
      build: move block/ objects to nested Makefile.objs
      build: move net/ objects to nested Makefile.objs
      build: move fsdev/ objects to nested Makefile.objs
      build: move ui/ objects to nested Makefile.objs
      build: move audio/ objects to nested Makefile.objs
      build: move slirp/ objects to nested Makefile.objs
      build: move qapi/ objects to nested Makefile.objs
      build: move qga/ objects to nested Makefile.objs
      build: move target-independent hw/ objects to nested Makefile.objs
      build: convert libhw to nested Makefile.objs
      build: move per-target hw/ objects to nested Makefile.objs
      build: move device tree to per-target Makefile.objs
      build: libcacard Makefile cleanups
      build: limit usage of vpath
      build: compile oslib-obj-y once
      build: do not create directories at configure time

 Makefile                                     |   32 ++-
 Makefile.hw                                  |    7 +-
 Makefile.objs                                |  317 ++++--------------------
 Makefile.target                              |  344 ++++----------------------
 audio/Makefile.objs                          |   14 ++
 block/Makefile.objs                          |   11 +
 bsd-user/Makefile.objs                       |    2 +
 configure                                    |   58 ++---
 cpu-all.h                                    |   70 ------
 dump-stub.c                                  |   77 ++++++
 dump.c                                       |   20 +-
 dump.h                                       |   12 +
 fsdev/Makefile.objs                          |    9 +
 hw/9pfs/Makefile.objs                        |    9 +
 hw/Makefile.objs                             |  165 ++++++++++++
 hw/alpha/Makefile.objs                       |    4 +
 hw/arm/Makefile.objs                         |   40 +++
 hw/cris/Makefile.objs                        |   13 +
 hw/i386/Makefile.objs                        |   13 +
 hw/ide/Makefile.objs                         |   10 +
 hw/lm32/Makefile.objs                        |   23 ++
 hw/m68k/Makefile.objs                        |    4 +
 hw/microblaze/Makefile.objs                  |   14 ++
 hw/mips/Makefile.objs                        |    6 +
 hw/ppc/Makefile.objs                         |   32 +++
 hw/s390x/Makefile.objs                       |    3 +
 hw/sh4/Makefile.objs                         |    5 +
 hw/sparc/Makefile.objs                       |    8 +
 hw/sparc64/Makefile.objs                     |    4 +
 hw/usb/Makefile.objs                         |   13 +
 hw/xtensa/Makefile.objs                      |    5 +
 libcacard/Makefile                           |   17 +-
 linux-user/Makefile.objs                     |    7 +
 linux-user/arm/nwfpe/Makefile.objs           |    2 +
 memory_mapping-stub.c                        |   33 +++
 memory_mapping.c                             |    3 -
 memory_mapping.h                             |   16 +-
 net/Makefile.objs                            |   12 +
 qapi/Makefile.objs                           |    3 +
 qga/Makefile.objs                            |    3 +
 qom/Makefile                                 |    2 -
 qom/Makefile.objs                            |    4 +
 rules.mak                                    |   40 +++
 slirp/Makefile.objs                          |    3 +
 target-alpha/Makefile.objs                   |    3 +
 target-arm/Makefile.objs                     |    6 +
 arm-semi.c => target-arm/arm-semi.c          |    0
 target-cris/Makefile.objs                    |    4 +
 target-i386/Makefile.objs                    |    7 +
 target-i386/arch_dump.c                      |    2 +-
 target-i386/arch_memory_mapping.c            |    1 +
 ioport-user.c => target-i386/ioport-user.c   |    0
 target-lm32/Makefile.objs                    |    4 +
 target-m68k/Makefile.objs                    |    5 +
 m68k-semi.c => target-m68k/m68k-semi.c       |    0
 target-microblaze/Makefile.objs              |    4 +
 target-mips/Makefile.objs                    |    4 +
 target-ppc/Makefile.objs                     |    6 +
 target-s390x/Makefile.objs                   |    5 +
 target-sh4/Makefile.objs                     |    4 +
 target-sparc/Makefile.objs                   |    8 +
 target-unicore32/Makefile.objs               |    4 +
 target-xtensa/Makefile.objs                  |    8 +
 xtensa-semi.c => target-xtensa/xtensa-semi.c |    0
 tests/Makefile                               |    1 -
 ui/Makefile.objs                             |   18 ++
 66 files changed, 842 insertions(+), 741 deletions(-)
 create mode 100644 audio/Makefile.objs
 create mode 100644 block/Makefile.objs
 create mode 100644 bsd-user/Makefile.objs
 create mode 100644 dump-stub.c
 create mode 100644 fsdev/Makefile.objs
 create mode 100644 hw/9pfs/Makefile.objs
 create mode 100644 hw/Makefile.objs
 create mode 100644 hw/alpha/Makefile.objs
 create mode 100644 hw/arm/Makefile.objs
 create mode 100644 hw/cris/Makefile.objs
 create mode 100644 hw/i386/Makefile.objs
 create mode 100644 hw/ide/Makefile.objs
 create mode 100644 hw/lm32/Makefile.objs
 create mode 100644 hw/m68k/Makefile.objs
 create mode 100644 hw/microblaze/Makefile.objs
 create mode 100644 hw/mips/Makefile.objs
 create mode 100644 hw/ppc/Makefile.objs
 create mode 100644 hw/s390x/Makefile.objs
 create mode 100644 hw/sh4/Makefile.objs
 create mode 100644 hw/sparc/Makefile.objs
 create mode 100644 hw/sparc64/Makefile.objs
 create mode 100644 hw/usb/Makefile.objs
 create mode 100644 hw/xtensa/Makefile.objs
 create mode 100644 linux-user/Makefile.objs
 create mode 100644 linux-user/arm/nwfpe/Makefile.objs
 create mode 100644 memory_mapping-stub.c
 create mode 100644 net/Makefile.objs
 create mode 100644 qapi/Makefile.objs
 create mode 100644 qga/Makefile.objs
 delete mode 100644 qom/Makefile
 create mode 100644 qom/Makefile.objs
 create mode 100644 slirp/Makefile.objs
 create mode 100644 target-alpha/Makefile.objs
 create mode 100644 target-arm/Makefile.objs
 rename arm-semi.c => target-arm/arm-semi.c (100%)
 create mode 100644 target-cris/Makefile.objs
 create mode 100644 target-i386/Makefile.objs
 rename ioport-user.c => target-i386/ioport-user.c (100%)
 create mode 100644 target-lm32/Makefile.objs
 create mode 100644 target-m68k/Makefile.objs
 rename m68k-semi.c => target-m68k/m68k-semi.c (100%)
 create mode 100644 target-microblaze/Makefile.objs
 create mode 100644 target-mips/Makefile.objs
 create mode 100644 target-ppc/Makefile.objs
 create mode 100644 target-s390x/Makefile.objs
 create mode 100644 target-sh4/Makefile.objs
 create mode 100644 target-sparc/Makefile.objs
 create mode 100644 target-unicore32/Makefile.objs
 create mode 100644 target-xtensa/Makefile.objs
 rename xtensa-semi.c => target-xtensa/xtensa-semi.c (100%)
 create mode 100644 ui/Makefile.objs

Comments

Andreas Färber June 7, 2012, 12:31 p.m. UTC | #1
Am 07.06.2012 09:39, schrieb Paolo Bonzini:
> The following changes since commit 349417004a0f7cf5518a998dca755cd06f6c212b:
> 
>   Merge remote-tracking branch 'qmp/queue/qmp' into staging (2012-06-06 20:57:56 +0800)
> 
> are available in the git repository at:
> 
> 
>   git://github.com/bonzini/qemu.git nested-makefiles-3
> 
> for you to fetch changes up to 2dee8d54c62abb0a46578ad21cc25782b83e3773:
> 
>   build: do not create directories at configure time (2012-06-07 09:21:20 +0200)
> 
> Wen, please give a look at patches 7-9.  I think they are not controversial,
> but an Acked-by would be nice.
> 
> Thanks!
> 
> Paolo
> 
> v2->v3: included patch from Anthony, added fixes for new dump mechanism

A question: How nice does this play with `make clean`ing the old places
the objects were built in an existing checkout? Did you test that?

Andreas
Anthony Liguori June 7, 2012, 12:47 p.m. UTC | #2
On 06/07/2012 08:31 PM, Andreas Färber wrote:
> Am 07.06.2012 09:39, schrieb Paolo Bonzini:
>> The following changes since commit 349417004a0f7cf5518a998dca755cd06f6c212b:
>>
>>    Merge remote-tracking branch 'qmp/queue/qmp' into staging (2012-06-06 20:57:56 +0800)
>>
>> are available in the git repository at:
>>
>>
>>    git://github.com/bonzini/qemu.git nested-makefiles-3
>>
>> for you to fetch changes up to 2dee8d54c62abb0a46578ad21cc25782b83e3773:
>>
>>    build: do not create directories at configure time (2012-06-07 09:21:20 +0200)
>>
>> Wen, please give a look at patches 7-9.  I think they are not controversial,
>> but an Acked-by would be nice.
>>
>> Thanks!
>>
>> Paolo
>>
>> v2->v3: included patch from Anthony, added fixes for new dump mechanism
>
> A question: How nice does this play with `make clean`ing the old places
> the objects were built in an existing checkout? Did you test that?

I did.  Seemed to work for me but YMMV.

Regards,

Anthony Liguori

>
> Andreas
>
Paolo Bonzini June 7, 2012, 2:14 p.m. UTC | #3
Il 07/06/2012 14:47, Anthony Liguori ha scritto:
>>>
>>>
>>> v2->v3: included patch from Anthony, added fixes for new dump mechanism
>>
>> A question: How nice does this play with `make clean`ing the old places
>> the objects were built in an existing checkout? Did you test that?
> 
> I did.  Seemed to work for me but YMMV.

Make clean uses *.o so it works nicely.

Paolo
Anthony Liguori June 8, 2012, 1:59 p.m. UTC | #4
On 06/07/2012 03:39 PM, Paolo Bonzini wrote:
> The following changes since commit 349417004a0f7cf5518a998dca755cd06f6c212b:
>
>    Merge remote-tracking branch 'qmp/queue/qmp' into staging (2012-06-06 20:57:56 +0800)
>
> are available in the git repository at:

Pulled.  Thanks.

Regards,

Anthony Liguori

>
>
>    git://github.com/bonzini/qemu.git nested-makefiles-3
>
> for you to fetch changes up to 2dee8d54c62abb0a46578ad21cc25782b83e3773:
>
>    build: do not create directories at configure time (2012-06-07 09:21:20 +0200)
>
> Wen, please give a look at patches 7-9.  I think they are not controversial,
> but an Acked-by would be nice.
>
> Thanks!
>
> Paolo
>
> v2->v3: included patch from Anthony, added fixes for new dump mechanism
>
> ----------------------------------------------------------------
> Anthony Liguori (1):
>        configure: ensure directory exists when creating symlink
>
> Paolo Bonzini (28):
>        build: remove trace-nested-y
>        build: do not sprinkle around GENERATED_HEADERS dependencies
>        build: add rules for nesting
>        build: move *-user/ objects to nested Makefile.objs
>        build: move obj-TARGET-y variables to nested Makefile.objs
>        build: move libobj-y variable to nested Makefile.objs
>        dump: do not compile dump.o for user-mode emulation
>        dump: change cpu_get_note_size to return ssize_t
>        dump: remove dumping stuff from cpu-all.h
>        build: move other target-*/ objects to nested Makefile.objs
>        build: move rules for nesting to Makefile.objs
>        build: adapt qom/Makefile and move it to Makefile.objs
>        build: move block/ objects to nested Makefile.objs
>        build: move net/ objects to nested Makefile.objs
>        build: move fsdev/ objects to nested Makefile.objs
>        build: move ui/ objects to nested Makefile.objs
>        build: move audio/ objects to nested Makefile.objs
>        build: move slirp/ objects to nested Makefile.objs
>        build: move qapi/ objects to nested Makefile.objs
>        build: move qga/ objects to nested Makefile.objs
>        build: move target-independent hw/ objects to nested Makefile.objs
>        build: convert libhw to nested Makefile.objs
>        build: move per-target hw/ objects to nested Makefile.objs
>        build: move device tree to per-target Makefile.objs
>        build: libcacard Makefile cleanups
>        build: limit usage of vpath
>        build: compile oslib-obj-y once
>        build: do not create directories at configure time
>
>   Makefile                                     |   32 ++-
>   Makefile.hw                                  |    7 +-
>   Makefile.objs                                |  317 ++++--------------------
>   Makefile.target                              |  344 ++++----------------------
>   audio/Makefile.objs                          |   14 ++
>   block/Makefile.objs                          |   11 +
>   bsd-user/Makefile.objs                       |    2 +
>   configure                                    |   58 ++---
>   cpu-all.h                                    |   70 ------
>   dump-stub.c                                  |   77 ++++++
>   dump.c                                       |   20 +-
>   dump.h                                       |   12 +
>   fsdev/Makefile.objs                          |    9 +
>   hw/9pfs/Makefile.objs                        |    9 +
>   hw/Makefile.objs                             |  165 ++++++++++++
>   hw/alpha/Makefile.objs                       |    4 +
>   hw/arm/Makefile.objs                         |   40 +++
>   hw/cris/Makefile.objs                        |   13 +
>   hw/i386/Makefile.objs                        |   13 +
>   hw/ide/Makefile.objs                         |   10 +
>   hw/lm32/Makefile.objs                        |   23 ++
>   hw/m68k/Makefile.objs                        |    4 +
>   hw/microblaze/Makefile.objs                  |   14 ++
>   hw/mips/Makefile.objs                        |    6 +
>   hw/ppc/Makefile.objs                         |   32 +++
>   hw/s390x/Makefile.objs                       |    3 +
>   hw/sh4/Makefile.objs                         |    5 +
>   hw/sparc/Makefile.objs                       |    8 +
>   hw/sparc64/Makefile.objs                     |    4 +
>   hw/usb/Makefile.objs                         |   13 +
>   hw/xtensa/Makefile.objs                      |    5 +
>   libcacard/Makefile                           |   17 +-
>   linux-user/Makefile.objs                     |    7 +
>   linux-user/arm/nwfpe/Makefile.objs           |    2 +
>   memory_mapping-stub.c                        |   33 +++
>   memory_mapping.c                             |    3 -
>   memory_mapping.h                             |   16 +-
>   net/Makefile.objs                            |   12 +
>   qapi/Makefile.objs                           |    3 +
>   qga/Makefile.objs                            |    3 +
>   qom/Makefile                                 |    2 -
>   qom/Makefile.objs                            |    4 +
>   rules.mak                                    |   40 +++
>   slirp/Makefile.objs                          |    3 +
>   target-alpha/Makefile.objs                   |    3 +
>   target-arm/Makefile.objs                     |    6 +
>   arm-semi.c =>  target-arm/arm-semi.c          |    0
>   target-cris/Makefile.objs                    |    4 +
>   target-i386/Makefile.objs                    |    7 +
>   target-i386/arch_dump.c                      |    2 +-
>   target-i386/arch_memory_mapping.c            |    1 +
>   ioport-user.c =>  target-i386/ioport-user.c   |    0
>   target-lm32/Makefile.objs                    |    4 +
>   target-m68k/Makefile.objs                    |    5 +
>   m68k-semi.c =>  target-m68k/m68k-semi.c       |    0
>   target-microblaze/Makefile.objs              |    4 +
>   target-mips/Makefile.objs                    |    4 +
>   target-ppc/Makefile.objs                     |    6 +
>   target-s390x/Makefile.objs                   |    5 +
>   target-sh4/Makefile.objs                     |    4 +
>   target-sparc/Makefile.objs                   |    8 +
>   target-unicore32/Makefile.objs               |    4 +
>   target-xtensa/Makefile.objs                  |    8 +
>   xtensa-semi.c =>  target-xtensa/xtensa-semi.c |    0
>   tests/Makefile                               |    1 -
>   ui/Makefile.objs                             |   18 ++
>   66 files changed, 842 insertions(+), 741 deletions(-)
>   create mode 100644 audio/Makefile.objs
>   create mode 100644 block/Makefile.objs
>   create mode 100644 bsd-user/Makefile.objs
>   create mode 100644 dump-stub.c
>   create mode 100644 fsdev/Makefile.objs
>   create mode 100644 hw/9pfs/Makefile.objs
>   create mode 100644 hw/Makefile.objs
>   create mode 100644 hw/alpha/Makefile.objs
>   create mode 100644 hw/arm/Makefile.objs
>   create mode 100644 hw/cris/Makefile.objs
>   create mode 100644 hw/i386/Makefile.objs
>   create mode 100644 hw/ide/Makefile.objs
>   create mode 100644 hw/lm32/Makefile.objs
>   create mode 100644 hw/m68k/Makefile.objs
>   create mode 100644 hw/microblaze/Makefile.objs
>   create mode 100644 hw/mips/Makefile.objs
>   create mode 100644 hw/ppc/Makefile.objs
>   create mode 100644 hw/s390x/Makefile.objs
>   create mode 100644 hw/sh4/Makefile.objs
>   create mode 100644 hw/sparc/Makefile.objs
>   create mode 100644 hw/sparc64/Makefile.objs
>   create mode 100644 hw/usb/Makefile.objs
>   create mode 100644 hw/xtensa/Makefile.objs
>   create mode 100644 linux-user/Makefile.objs
>   create mode 100644 linux-user/arm/nwfpe/Makefile.objs
>   create mode 100644 memory_mapping-stub.c
>   create mode 100644 net/Makefile.objs
>   create mode 100644 qapi/Makefile.objs
>   create mode 100644 qga/Makefile.objs
>   delete mode 100644 qom/Makefile
>   create mode 100644 qom/Makefile.objs
>   create mode 100644 slirp/Makefile.objs
>   create mode 100644 target-alpha/Makefile.objs
>   create mode 100644 target-arm/Makefile.objs
>   rename arm-semi.c =>  target-arm/arm-semi.c (100%)
>   create mode 100644 target-cris/Makefile.objs
>   create mode 100644 target-i386/Makefile.objs
>   rename ioport-user.c =>  target-i386/ioport-user.c (100%)
>   create mode 100644 target-lm32/Makefile.objs
>   create mode 100644 target-m68k/Makefile.objs
>   rename m68k-semi.c =>  target-m68k/m68k-semi.c (100%)
>   create mode 100644 target-microblaze/Makefile.objs
>   create mode 100644 target-mips/Makefile.objs
>   create mode 100644 target-ppc/Makefile.objs
>   create mode 100644 target-s390x/Makefile.objs
>   create mode 100644 target-sh4/Makefile.objs
>   create mode 100644 target-sparc/Makefile.objs
>   create mode 100644 target-unicore32/Makefile.objs
>   create mode 100644 target-xtensa/Makefile.objs
>   rename xtensa-semi.c =>  target-xtensa/xtensa-semi.c (100%)
>   create mode 100644 ui/Makefile.objs