[glibmm] NMake Makefiles: Remove rules on build directory creation



commit f0ae466ed1f8eff20b9555610bf2f76f4d798077
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Fri May 27 10:23:27 2022 +0800

    NMake Makefiles: Remove rules on build directory creation
    
    Instead, create them using plain 'md' commands if they don't exist prior to
    compiling the sources, if applicable.
    
    Should speed up builds a bit.

 MSVC_NMake/build-rules-msvc.mak | 14 ++++++++++----
 MSVC_NMake/generate-msvc.mak    | 12 ------------
 2 files changed, 10 insertions(+), 16 deletions(-)
---
diff --git a/MSVC_NMake/build-rules-msvc.mak b/MSVC_NMake/build-rules-msvc.mak
index 20640d79..728438ca 100644
--- a/MSVC_NMake/build-rules-msvc.mak
+++ b/MSVC_NMake/build-rules-msvc.mak
@@ -19,17 +19,19 @@ $<
 <<
 
 {..\glib\glibmm\}.cc{vs$(VSVER)\$(CFG)\$(PLAT)\glibmm\}.obj::
+       @if not exist vs$(VSVER)\$(CFG)\$(PLAT)\glibmm\ md vs$(VSVER)\$(CFG)\$(PLAT)\glibmm
        $(CXX) $(LIBGLIBMM_CFLAGS) $(CFLAGS_NOGL) /Fovs$(VSVER)\$(CFG)\$(PLAT)\glibmm\ 
/Fdvs$(VSVER)\$(CFG)\$(PLAT)\glibmm\ /c @<<
 $<
 <<
 
 {..\untracked\glib\glibmm\}.cc{vs$(VSVER)\$(CFG)\$(PLAT)\glibmm\}.obj::
+       @if not exist vs$(VSVER)\$(CFG)\$(PLAT)\glibmm\ md vs$(VSVER)\$(CFG)\$(PLAT)\glibmm
        $(CXX) $(LIBGLIBMM_CFLAGS) $(CFLAGS_NOGL) /Fovs$(VSVER)\$(CFG)\$(PLAT)\glibmm\ 
/Fdvs$(VSVER)\$(CFG)\$(PLAT)\glibmm\ /c @<<
 $<
 <<
 
 {..\glib\src\}.cc.m4{vs$(VSVER)\$(CFG)\$(PLAT)\glibmm\}.obj:
-       @if not exist $(@D)\ $(MAKE) /f Makefile.vc CFG=$(CFG) $(@D)
+       @if not exist $(@D)\ md $(@D)
        @for %%s in ($(<D)\*.cc.m4 $(<D)\*.h.m4) do @if not exist ..\glib\glibmm\%%~ns if not exist 
..\untracked\glib\glibmm\%%~ns if not exist $(@D)\%%~ns $(M4) -I$(<D:\=/) %%s $(<D:\=/)/template.macros.m4 > 
$(@D)\%%~ns
        @if exist $(@D)\$(<B) $(CXX) $(LIBGLIBMM_CFLAGS) $(CFLAGS_NOGL) /Fo$(@D)\ /Fd$(@D)\ /c $(@D)\$(<B)
        @if exist ..\untracked\glib\glibmm\$(<B) $(CXX) $(LIBGLIBMM_CFLAGS) $(CFLAGS_NOGL) /Fo$(@D)\ 
/Fd$(@D)\ /c ..\untracked\glib\glibmm\$(<B)
@@ -48,11 +50,13 @@ $<
 <<
 
 {..\gio\giomm\}.cc{vs$(VSVER)\$(CFG)\$(PLAT)\giomm\}.obj::
+       if not exist vs$(VSVER)\$(CFG)\$(PLAT)\giomm\ md vs$(VSVER)\$(CFG)\$(PLAT)\giomm
        $(CXX) $(LIBGIOMM_CFLAGS) $(CFLAGS_NOGL) /Fovs$(VSVER)\$(CFG)\$(PLAT)\giomm\ 
/Fdvs$(VSVER)\$(CFG)\$(PLAT)\giomm\ /c @<<
 $<
 <<
 
 {..\untracked\gio\giomm\}.cc{vs$(VSVER)\$(CFG)\$(PLAT)\giomm\}.obj::
+       if not exist vs$(VSVER)\$(CFG)\$(PLAT)\giomm\ md vs$(VSVER)\$(CFG)\$(PLAT)\giomm
        $(CXX) $(LIBGIOMM_CFLAGS) $(CFLAGS_NOGL) /Fovs$(VSVER)\$(CFG)\$(PLAT)\giomm\ 
/Fdvs$(VSVER)\$(CFG)\$(PLAT)\giomm\ /c @<<
 $<
 <<
@@ -65,15 +69,17 @@ $<
        @if exist ..\gio\giomm\$(<B).cc $(CXX) $(LIBGIOMM_CFLAGS) $(CFLAGS_NOGL) /Fo$(@D)\ /Fd$(@D)\ /c 
$(@D)\$(<B).cc
 
 {..\tools\extra_defs_gen\}.cc{vs$(VSVER)\$(CFG)\$(PLAT)\glib-extra-defs-gen\}.obj::
-       @if not exist vs$(VSVER)\$(CFG)\$(PLAT)\glib-extra-defs-gen\ $(MAKE) /f Makefile.vc CFG=$(CFG) 
vs$(VSVER)\$(CFG)\$(PLAT)\glib-extra-defs-gen
+       @if not exist vs$(VSVER)\$(CFG)\$(PLAT)\glib-extra-defs-gen\ md 
vs$(VSVER)\$(CFG)\$(PLAT)\glib-extra-defs-gen
        $(CXX) $(GLIBMM_BASE_CFLAGS) /DGLIBMM_GEN_EXTRA_DEFS_BUILD $(GLIBMM_EXTRA_INCLUDES) $(CFLAGS_NOGL) 
/Fovs$(VSVER)\$(CFG)\$(PLAT)\glib-extra-defs-gen\ /Fdvs$(VSVER)\$(CFG)\$(PLAT)\glib-extra-defs-gen\ /c @<<
 $<
 <<
 
 {.\glibmm\}.rc{vs$(VSVER)\$(CFG)\$(PLAT)\glibmm\}.res:
+       @if not exist vs$(VSVER)\$(CFG)\$(PLAT)\glibmm\ md vs$(VSVER)\$(CFG)\$(PLAT)\glibmm
        rc /fo$@ $<
 
 {.\giomm\}.rc{vs$(VSVER)\$(CFG)\$(PLAT)\giomm\}.res:
+       @if not exist vs$(VSVER)\$(CFG)\$(PLAT)\giomm\ md vs$(VSVER)\$(CFG)\$(PLAT)\giomm
        rc /fo$@ $<
 
 vs$(VSVER)\$(CFG)\$(PLAT)\glib-extra-defs-gen\generate_extra_defs.obj:  
..\tools\extra_defs_gen\generate_extra_defs.cc  ..\tools\extra_defs_gen\generate_extra_defs.h
@@ -96,13 +102,13 @@ $**
 # $(dependent_objects)
 # <<
 #      @-if exist $@.manifest mt /manifest $@.manifest /outputresource:$@;2
-$(GLIBMM_DLL): vs$(VSVER)\$(CFG)\$(PLAT)\glibmm $(glibmm_OBJS)
+$(GLIBMM_DLL): $(glibmm_OBJS)
        link /DLL $(LDFLAGS_NOLTCG) $(GOBJECT_LIBS) $(LIBSIGC_LIB) /implib:$(GLIBMM_LIB) -out:$@ @<<
 $(glibmm_OBJS)
 <<
 
        @-if exist $@.manifest mt /manifest $@.manifest /outputresource:$@;2
-$(GIOMM_DLL): vs$(VSVER)\$(CFG)\$(PLAT)\giomm $(GLIBMM_LIB) $(giomm_OBJS)
+$(GIOMM_DLL): $(GLIBMM_LIB) $(giomm_OBJS)
        link /DLL $(LDFLAGS_NOLTCG) $(GLIBMM_LIB) $(GIO_LIBS) $(LIBSIGC_LIB) /implib:$(GIOMM_LIB) -out:$@ @<<
 $(giomm_OBJS)
 <<
diff --git a/MSVC_NMake/generate-msvc.mak b/MSVC_NMake/generate-msvc.mak
index ca38d204..844e358e 100644
--- a/MSVC_NMake/generate-msvc.mak
+++ b/MSVC_NMake/generate-msvc.mak
@@ -3,18 +3,6 @@
 # Items in here should not need to be edited unless
 # one is maintaining the NMake build files.
 
-# Create the build directories
-vs$(VSVER)\$(CFG)\$(PLAT)\glibmm       \
-vs$(VSVER)\$(CFG)\$(PLAT)\glibmm\private       \
-vs$(VSVER)\$(CFG)\$(PLAT)\giomm        \
-vs$(VSVER)\$(CFG)\$(PLAT)\giomm\private        \
-vs$(VSVER)\$(CFG)\$(PLAT)\glibmm-ex    \
-vs$(VSVER)\$(CFG)\$(PLAT)\giomm-ex     \
-vs$(VSVER)\$(CFG)\$(PLAT)\glibmm-tests \
-vs$(VSVER)\$(CFG)\$(PLAT)\giomm-tests  \
-vs$(VSVER)\$(CFG)\$(PLAT)\glib-extra-defs-gen:
-       @-md $@
-
 # Compile schema for giomm settings example
 vs$(VSVER)\$(CFG)\$(PLAT)\gschema.compiled: ..\examples\settings\org.gtkmm.demo.gschema.xml
        $(GLIB_COMPILE_SCHEMAS) --targetdir=$(@D) $(**D)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]