common/makefiles/NativeCompilation.gmk

changeset 738
0c540b1505e3
parent 725
03e60e87d92a
child 839
174a54ce39c4
child 854
22c6f0b7e2b5
child 971
584dc2e95e04
equal deleted inserted replaced
737:c961c8972485 738:0c540b1505e3
106 endif 106 endif
107 # The Visual Studio compiler lacks a feature for generating make dependencies, but by 107 # The Visual Studio compiler lacks a feature for generating make dependencies, but by
108 # setting -showIncludes, all included files are printed. These are filtered out and 108 # setting -showIncludes, all included files are printed. These are filtered out and
109 # parsed into make dependences. 109 # parsed into make dependences.
110 ifeq ($(COMPILER_TYPE),CL) 110 ifeq ($(COMPILER_TYPE),CL)
111 $$($1_$2_COMP) $$($1_$2_FLAGS) -showIncludes $$($1_$2_DEBUG_OUT_FLAGS) $(CC_OUT_OPTION)$$($1_$2_OBJ) $2 | $(TEE) $$($1_$2_DEP).raw | $(GREP) -v "^Note: including file:" 111 ($$($1_$2_COMP) $$($1_$2_FLAGS) -showIncludes $$($1_$2_DEBUG_OUT_FLAGS) \
112 $(CC_OUT_OPTION)$$($1_$2_OBJ) $2 ; echo $$$$? > $$($1_$2_DEP).exitvalue) \
113 | $(TEE) $$($1_$2_DEP).raw | $(GREP) -v "^Note: including file:" \
114 && exit `cat $$($1_$2_DEP).exitvalue`
115 $(RM) $$($1_$2_DEP).exitvalue
112 ($(ECHO) $$@: \\ \ 116 ($(ECHO) $$@: \\ \
113 && $(SED) -e '/^Note: including file:/!d' \ 117 && $(SED) -e '/^Note: including file:/!d' \
114 -e 's|Note: including file: *||' \ 118 -e 's|Note: including file: *||' \
115 -e 's|\\|/|g' \ 119 -e 's|\\|/|g' \
116 -e 's|^\([a-zA-Z]\):|/cygdrive/\1|g' \ 120 -e 's|^\([a-zA-Z]\):|/cygdrive/\1|g' \

mercurial