Skip to content
  • Peter Crosthwaite's avatar
    6b4ad3b2
    Makefile.target: set master BUILD_DIR · 6b4ad3b2
    Peter Crosthwaite authored
    
    
    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
    
    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 <kraxel@redhat.com>
    Signed-off-by: default avatarPeter Crosthwaite <crosthwaite.peter@gmail.com>
    Message-Id: <1432618686-16077-1-git-send-email-crosthwaite.peter@gmail.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    6b4ad3b2
    Makefile.target: set master BUILD_DIR
    Peter Crosthwaite authored
    
    
    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
    
    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 <kraxel@redhat.com>
    Signed-off-by: default avatarPeter Crosthwaite <crosthwaite.peter@gmail.com>
    Message-Id: <1432618686-16077-1-git-send-email-crosthwaite.peter@gmail.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
Loading