rules: don't try to create missing include dirs
In
  commit ba78db44f6532d66a1e704bd44613e841baa2fc5
  Author: Daniel P. Berrange <berrange@redhat.com>
  Date:   Wed Jan 25 16:14:10 2017 +0000
  make: move top level dir to end of include search path
The dir $(BUILD_DIR)/$(@D) was added to the include
path. This would sometimes point to a non-existant
directory, if the sub-dir in question did not contain
any target-independant files (eg tcg/). To deal with
this the rules.mak attempted to create the directory.
While this was succesful, it also caused accidental
creation of files in the parent of the build dir.
e.g. when building common source files into target
specific output files.
Rather than trying to workaround this, just revert
the code that attempted to mkdir the missing include
directories. Instead just turn off the compiler warning
in question as the missing dir is expected & harmless
in general.
NB: you can clean up a build directory parent that has
been filled with empty directories by commit ba78db44f653
using this GNU find command in that parent directory:
  find audio backends block chardev crypto disas fsdev hw io linux-user \
    migration nbd net qapi qom replay slirp target ui util \
    -type d -empty -delete
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Tested-by: Alberto Garcia <berto@igalia.com>
[PMM: added note about how to clean up a polluted directory]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
			
			
This commit is contained in:
		
							parent
							
								
									7d2c6c9551
								
							
						
					
					
						commit
						ac7568bd3f
					
				
							
								
								
									
										2
									
								
								configure
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								configure
									
									
									
									
										vendored
									
									
								
							| @ -1474,7 +1474,7 @@ fi | ||||
| 
 | ||||
| gcc_flags="-Wold-style-declaration -Wold-style-definition -Wtype-limits" | ||||
| gcc_flags="-Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers $gcc_flags" | ||||
| gcc_flags="-Wmissing-include-dirs -Wempty-body -Wnested-externs $gcc_flags" | ||||
| gcc_flags="-Wno-missing-include-dirs -Wempty-body -Wnested-externs $gcc_flags" | ||||
| gcc_flags="-Wendif-labels -Wno-shift-negative-value $gcc_flags" | ||||
| gcc_flags="-Wno-initializer-overrides $gcc_flags" | ||||
| gcc_flags="-Wno-string-plus-int $gcc_flags" | ||||
|  | ||||
| @ -374,7 +374,6 @@ define unnest-vars | ||||
|                 $(eval $(o:%.mo=%$(DSOSUF)): module-common.o $($o-objs)), | ||||
|                 $(error $o added in $v but $o-objs is not set))) | ||||
|         $(shell mkdir -p ./ $(sort $(dir $($v)))) | ||||
|         $(shell cd $(BUILD_DIR) && mkdir -p ./ $(sort $(dir $($v)))) | ||||
|         # Include all the .d files | ||||
|         $(eval -include $(patsubst %.o,%.d,$(patsubst %.mo,%.d,$($v)))) | ||||
|         $(eval $v := $(filter-out %/,$($v)))) | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Daniel P. Berrange
						Daniel P. Berrange