win32: Support (re-)generating gdkenumtypes.[c|h]

Add support in the NMake Makefiles used by the Visual Studio builds to generate
the enumeration sources in gdk/ in its own build directory.
This commit is contained in:
Chun-wei Fan 2021-12-21 17:30:03 +08:00
parent caa1c0e4e5
commit 74d43defc5
2 changed files with 33 additions and 0 deletions

View File

@ -33,6 +33,23 @@
NULL=
# For GDK enumeration sources
!include ..\gdk\gdk-pub-headers.mak
!if [call create-lists.bat header gdk_headers.mak GDK_PUBLIC_HEADERS]
!endif
!if [for %f in ($(gdk_public_h_sources) $(deprecated_h_sources)) do @call create-lists.bat file gdk_headers.mak ../gdk/%f]
!endif
!if [call create-lists.bat footer gdk_headers.mak]
!endif
!include gdk_headers.mak
!if [del /f /q gdk_headers.mak]
!endif
# For GDK resources
!if [call create-lists.bat header resources_sources.mak GDK_RESOURCES]

View File

@ -36,6 +36,8 @@ GDK_GENERATED_SOURCES = \
..\gdk\gdkmarshalers.c \
..\gdk\gdkresources.h \
..\gdk\gdkresources.c \
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gdk-3\gdk\gdkenumtypes.c \
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gdk-3\gdk\gdkenumtypes.h
generate-base-sources: \
..\config.h \
@ -74,6 +76,17 @@ generate-base-sources: \
@echo Copying $@...
@copy $** $@
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gdk-3\gdk\gdkenumtypes.c: ..\gdk\gdkenumtypes.c.template $(GDK_PUBLIC_HEADERS)
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gdk-3\gdk\gdkenumtypes.h: ..\gdk\gdkenumtypes.h.template $(GDK_PUBLIC_HEADERS)
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gdk-3\gdk\gdkenumtypes.c \
.\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gdk-3\gdk\gdkenumtypes.h:
@echo Generating $@...
@if not exist $(@D)\ md $(@D)
@cd ..\gdk
@$(PYTHON) $(GLIB_MKENUMS) --template $(@F).template $(gdk_public_h_sources) $(deprecated_h_sources) > ..\win32\$@
@cd ..\win32
..\gdk\gdkversionmacros.h: ..\gdk\gdkversionmacros.h.in
@echo Generating $@...
@$(PYTHON) gen-gdkversionmacros-h.py --version=$(GTK_VERSION)
@ -218,6 +231,8 @@ clean:
@-del /f /q ..\gtk\gtkdbusgenerated.h
@-del /f /q ..\gtk\libgtk3.manifest
@-del /f /q ..\gtk\gtk-win32.rc
@-del /f /q .\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gdk-3\gdk\gdkenumtypes.c
@-del /f /q .\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gdk-3\gdk\gdkenumtypes.h
@-del /f /q ..\gdk\gdkresources.c
@-del /f /q ..\gdk\gdkresources.h
@-del /f /q ..\gdk\gdk.gresource.xml
@ -229,4 +244,5 @@ clean:
@if exist ..\gdk-$(GDK_OLD_CFG)-$(GDK_DEL_CONFIG)-build del ..\gdk-$(GDK_OLD_CFG)-$(GDK_DEL_CONFIG)-build
@if exist ..\gdk-$(GDK_OLD_CFG)-$(GDK_CONFIG)-build del ..\gdk-$(GDK_OLD_CFG)-$(GDK_CONFIG)-build
@if exist ..\gdk-$(CFG)-$(GDK_DEL_CONFIG)-build del ..\gdk-$(CFG)-$(GDK_DEL_CONFIG)-build
@-rd .\vs$(VSVER)\$(CFG)\$(PLAT)\obj\gdk-3\gdk
@-del /f /q ..\config.h