Skip to content
  • Steve Sistare's avatar
    6fd87e74
    make: clean after distclean deletes source files · 6fd87e74
    Steve Sistare authored
    
    
    Run 'make distclean' in a tree, and GNUmakefile is removed.
    But, GNUmakefile is where we change directory to build.
    Run 'make distclean' or 'make clean' again, and Makefile applies
    the clean actions, such as this one, at the top level of the tree.
    For example, it removes the .d source files in 'meson/test cases/d/*/*.d'.
    
        find . \( -name '*.so' -o -name '*.dll' -o \
              -name '*.[oda]' -o -name '*.gcno' \) -type f \
            ! -path ./roms/edk2/ArmPkg/Library/GccLto/liblto-aarch64.a \
            ! -path ./roms/edk2/ArmPkg/Library/GccLto/liblto-arm.a \
            -exec rm {} +
    
    To fix, remove clean and distclean from UNCHECKED_GOALS, so those targets
    are "checked", meaning that configure must be run before make.  However,
    the check action does not trigger, because clean does not depend on
    config-host.mak, so change the action to simply throw an error.
    
    Signed-off-by: default avatarSteve Sistare <steven.sistare@oracle.com>
    Message-Id: <1681909700-94095-1-git-send-email-steven.sistare@oracle.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    6fd87e74
    make: clean after distclean deletes source files
    Steve Sistare authored
    
    
    Run 'make distclean' in a tree, and GNUmakefile is removed.
    But, GNUmakefile is where we change directory to build.
    Run 'make distclean' or 'make clean' again, and Makefile applies
    the clean actions, such as this one, at the top level of the tree.
    For example, it removes the .d source files in 'meson/test cases/d/*/*.d'.
    
        find . \( -name '*.so' -o -name '*.dll' -o \
              -name '*.[oda]' -o -name '*.gcno' \) -type f \
            ! -path ./roms/edk2/ArmPkg/Library/GccLto/liblto-aarch64.a \
            ! -path ./roms/edk2/ArmPkg/Library/GccLto/liblto-arm.a \
            -exec rm {} +
    
    To fix, remove clean and distclean from UNCHECKED_GOALS, so those targets
    are "checked", meaning that configure must be run before make.  However,
    the check action does not trigger, because clean does not depend on
    config-host.mak, so change the action to simply throw an error.
    
    Signed-off-by: default avatarSteve Sistare <steven.sistare@oracle.com>
    Message-Id: <1681909700-94095-1-git-send-email-steven.sistare@oracle.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
Loading