@@ -219,8 +219,7 @@ CFLAGS = \
219219OUTPUTDIR = $(EXEOUTPUTDIR)
220220all:<%if(prebuild)%> __prebuild__<%endif%> $(OUTPUTDIR)$(NAME)$(EXE_EXT)<%if(postbuild)%> __postbuild__<%endif%>
221221
222- $(OUTPUTDIR)$(NAME)$(EXE_EXT): $(OBJFILES) $(RESOURCE)
223- @if not exist "$(OUTPUTDIR)" mkdir "$(OUTPUTDIR)"
222+ $(OUTPUTDIR)$(NAME)$(EXE_EXT): $(INTERMEDIATE) $(OUTPUTDIR) $(OBJFILES) $(RESOURCE)
224223<%if(prelink)%>
225224 <%eval(prelink)%>
226225<%endif%>
@@ -234,8 +233,7 @@ $(OUTPUTDIR)$(NAME)$(EXE_EXT): $(OBJFILES) $(RESOURCE)
234233OUTPUTDIR = <%if(dllout)%><%dllout%><%else%><%libout%><%endif%>\\
235234all:<%if(prebuild)%> __prebuild__<%endif%> $(OUTPUTDIR)$(NAME)$(DLL_EXT)<%if(postbuild)%> __postbuild__<%endif%>
236235
237- $(OUTPUTDIR)$(NAME)$(DLL_EXT): $(OBJFILES) $(RESOURCE)
238- @if not exist "$(OUTPUTDIR)" mkdir "$(OUTPUTDIR)"
236+ $(OUTPUTDIR)$(NAME)$(DLL_EXT): $(INTERMEDIATE) $(OUTPUTDIR) $(OBJFILES) $(RESOURCE)
239237<%if(prelink)%>
240238 <%eval(prelink)%>
241239<%endif%>
@@ -250,8 +248,7 @@ $(OUTPUTDIR)$(NAME)$(DLL_EXT): $(OBJFILES) $(RESOURCE)
250248OUTPUTDIR = <%libout%>\\
251249all:<%if(prebuild)%> __prebuild__<%endif%> $(OUTPUTDIR)$(NAME)$(LIB_EXT)<%if(postbuild)%> __postbuild__<%endif%>
252250
253- $(OUTPUTDIR)$(NAME)$(LIB_EXT): $(OBJFILES)
254- @if not exist "$(OUTPUTDIR)" mkdir "$(OUTPUTDIR)"
251+ $(OUTPUTDIR)$(NAME)$(LIB_EXT): $(INTERMEDIATE) $(OUTPUTDIR) $(OBJFILES)
255252 $(TLIB) $(LIBFLAGS) $(OUTPUTDIR)$(NAME)$(LIB_EXT) @&&!
256253+ $(**: = &^
257254+ )
@@ -315,45 +312,47 @@ all:<%if(prebuild)%> __prebuild__<%endif%> $(GENERATED_DIRTY)<%if(postbuild)%> _
315312generated: $(GENERATED_DIRTY)
316313 @-rem
317314
315+ $(INTERMEDIATE):
316+ @if not exist "$(INTERMEDIATE)" mkdir "$(INTERMEDIATE)"
317+
318+ <%if(exename || sharedname || staticname)%>
319+ $(OUTPUTDIR):
320+ @if not exist "$(OUTPUTDIR)" mkdir "$(OUTPUTDIR)"
321+ <%endif%>
322+
318323.path$(OBJ_EXT) = $(INTERMEDIATE)
319324
320325!ifdef PARALLEL_CFLAGS
321326.path.cpp = $(CPPDIR)
322327.cpp$(OBJ_EXT):
323- if not exist "$(INTERMEDIATE)" mkdir "$(INTERMEDIATE)"
324328 $(CC) $(PARALLEL_CFLAGS) $(DYN_FLAGS) $(STATIC_FLAGS) $(OCFLAGS) $(CG_CFLAGS) $(UC_CFLAGS) $(THREAD_FLAGS) $(CCFLAGS) $(CFLAGS) $(WARN_FLAGS) -output-dir $(@D) -c {$? }
325329
326330!else
327331.path.cpp = $(CPPDIR)
328332.cpp$(OBJ_EXT):
329- @if not exist "$(INTERMEDIATE)" mkdir "$(INTERMEDIATE)"
330- $(CC) $(DYN_FLAGS) $(STATIC_FLAGS) $(OCFLAGS) $(CG_CFLAGS) $(UC_CFLAGS) $(THREAD_FLAGS) $(CCFLAGS) $(CFLAGS) $(WARN_FLAGS) -c -o $(@D)\$(@F) $<
333+ (CC) $(DYN_FLAGS) $(STATIC_FLAGS) $(OCFLAGS) $(CG_CFLAGS) $(UC_CFLAGS) $(THREAD_FLAGS) $(CCFLAGS) $(CFLAGS) $(WARN_FLAGS) -c -o $(@D)\$(@F) $<
331334!endif
332335
333336.path.cxx = $(CPPDIR)
334337.cxx$(OBJ_EXT):
335- @if not exist "$(INTERMEDIATE)" mkdir "$(INTERMEDIATE)"
336- $(CC) $(DYN_FLAGS) $(STATIC_FLAGS) $(OCFLAGS) $(CG_CFLAGS) $(UC_CFLAGS) $(THREAD_FLAGS) $(CCFLAGS) $(CFLAGS) $(WARN_FLAGS) -c -o $(@D)\$(@F) $<
338+ $(CC) $(DYN_FLAGS) $(STATIC_FLAGS) $(OCFLAGS) $(CG_CFLAGS) $(UC_CFLAGS) $(THREAD_FLAGS) $(CCFLAGS) $(CFLAGS) $(WARN_FLAGS) -c -o $(@D)\$(@F) $<
337339
338340.path.cc = $(CPPDIR)
339341.cc$(OBJ_EXT):
340- @if not exist "$(INTERMEDIATE)" mkdir "$(INTERMEDIATE)"
341- $(CC) $(DYN_FLAGS) $(STATIC_FLAGS) $(OCFLAGS) $(CG_CFLAGS) $(UC_CFLAGS) $(THREAD_FLAGS) $(CCFLAGS) $(CFLAGS) $(WARN_FLAGS) -c -o $(@D)\$(@F) $<
342+ $(CC) $(DYN_FLAGS) $(STATIC_FLAGS) $(OCFLAGS) $(CG_CFLAGS) $(UC_CFLAGS) $(THREAD_FLAGS) $(CCFLAGS) $(CFLAGS) $(WARN_FLAGS) -c -o $(@D)\$(@F) $<
342343
343344.path.C = $(CPPDIR)
344345.C$(OBJ_EXT):
345- @if not exist "$(INTERMEDIATE)" mkdir "$(INTERMEDIATE)"
346- $(CC) $(DYN_FLAGS) $(STATIC_FLAGS) $(OCFLAGS) $(CG_CFLAGS) $(UC_CFLAGS) $(THREAD_FLAGS) $(CCFLAGS) $(CFLAGS) $(WARN_FLAGS) -c -o $(@D)\$(@F) $<
346+ $(CC) $(DYN_FLAGS) $(STATIC_FLAGS) $(OCFLAGS) $(CG_CFLAGS) $(UC_CFLAGS) $(THREAD_FLAGS) $(CCFLAGS) $(CFLAGS) $(WARN_FLAGS) -c -o $(@D)\$(@F) $<
347347
348348.path.c = $(CPPDIR)
349349.c$(OBJ_EXT):
350- @if not exist "$(INTERMEDIATE)" mkdir "$(INTERMEDIATE)"
351- $(CC) $(DYN_FLAGS) $(STATIC_FLAGS) $(OCFLAGS) $(CG_CFLAGS) $(UC_CFLAGS) $(THREAD_FLAGS) $(CCFLAGS) $(CFLAGS) $(WARN_FLAGS) -c -o $(@D)\$(@F) $<
350+ $(CC) $(DYN_FLAGS) $(STATIC_FLAGS) $(OCFLAGS) $(CG_CFLAGS) $(UC_CFLAGS) $(THREAD_FLAGS) $(CCFLAGS) $(CFLAGS) $(WARN_FLAGS) -c -o $(@D)\$(@F) $<
352351
353352<%foreach(source_files)%>
354353<%if(transdir(source_file) || flag_overrides(source_file, buildflags))%>
355- "$(INTERMEDIATE)\<%transdir(source_file)%><%basenoextension(source_file)%>$(OBJ_EXT)":
356- @ if not exist "$(INTERMEDIATE)\<%transdir(source_file)%>" mkdir "$(INTERMEDIATE)\<%transdir(source_file)%>"
354+ "$(INTERMEDIATE)\<%transdir(source_file)%><%basenoextension(source_file)%>$(OBJ_EXT)"
355+ if not exist "$(INTERMEDIATE)\<%transdir(source_file)%>" mkdir "$(INTERMEDIATE)\<%transdir(source_file)%>"
357356 $(CC) <%if(flag_overrides(source_file, buildflags))%><%flag_overrides(source_file, buildflags)%> <%endif%>$(DYN_FLAGS) $(STATIC_FLAGS) $(OCFLAGS) $(CG_CFLAGS) $(UC_CFLAGS) $(THREAD_FLAGS) $(CCFLAGS) $(CFLAGS) $(WARN_FLAGS) -c -o $(@D)\$(@F) <%source_file%>
358357<%endif%>
359358<%endfor%>
@@ -362,12 +361,12 @@ generated: $(GENERATED_DIRTY)
362361.path.res = $(INTERMEDIATE)
363362.path.rc = $(RESDIR)
364363.rc.res:
365- @ if not exist "$(INTERMEDIATE)" mkdir "$(INTERMEDIATE)"
366- $(RC) $(RC_FLAGS) -fo$@ $<
364+ if not exist "$(INTERMEDIATE)" mkdir "$(INTERMEDIATE)"
365+ $(RC) $(RC_FLAGS) -fo$@ $<
367366<%foreach(resource_files)%>
368367<%if(transdir(resource_file))%>
369368"$(INTERMEDIATE)\<%transdir(resource_file)%><%basenoextension(resource_file)%>.res":
370- @ if not exist "$(INTERMEDIATE)\<%transdir(resource_file)%>" mkdir "$(INTERMEDIATE)\<%transdir(resource_file)%>"
369+ if not exist "$(INTERMEDIATE)\<%transdir(resource_file)%>" mkdir "$(INTERMEDIATE)\<%transdir(resource_file)%>"
371370 $(RC) -fo$@ <%resource_file%>
372371<%endif%>
373372<%endfor%>
0 commit comments