harfbuzz/win32/Makefile.vc
Chun-wei Fan b90fb83ea6 Visual Studio builds: Fix Introspection when UCDN enabled
The sources in src/hb-ucdn and not included correctly into the NMake
Makefiles, as we need their explicit relative location as we pass all the
sources we used into the introspection scanner.  This was not an issue
before as we excluded the UCDN sources in the build when we enabled
introspection (meaning GLib is enabled), but since we default on using
UCDN on all builds unless explicitly disabled, we need to deal with this.

This did not affect builds using UCDN without introspection due to the use
of NMake batch rules.

Fix this by creating a NMake Makefile module on-the-fly with the correct
subdir info, and using that list in there instead.
2017-03-22 23:03:49 +02:00

68 lines
1.8 KiB
Makefile

# NMake Makefile for building HarfBuzz as a DLL on Windows
# The items below this line should not be changed, unless one is maintaining
# the NMake Makefiles. Customizations can be done in the following NMake Makefile
# portions (please see comments in the these files to see what can be customized):
#
# detectenv-msvc.mak
# config-msvc.mak
!include detectenv-msvc.mak
# Include the Makefile portions with the source listings
!include ..\src\Makefile.sources
!include ..\src\hb-ucdn\Makefile.sources
!include ..\util\Makefile.sources
# We need to include the sources in ..\src\hb-ucdn indirectly
!if [call create-lists.bat header hb_ucdn_srcs.mak hb_ucdn_SRCS]
!endif
!if [for %c in ($(LIBHB_UCDN_sources)) do @call create-lists.bat file hb_ucdn_srcs.mak hb-ucdn\%c]
!endif
!if [call create-lists.bat footer hb_ucdn_srcs.mak]
!endif
!include hb_ucdn_srcs.mak
!if [del /f /q hb_ucdn_srcs.mak]
!endif
# Include the Makefile portion that enables features based on user input
!include config-msvc.mak
!if "$(VALID_CFGSET)" == "TRUE"
# Include the Makefile portion to convert the source and header lists
# into the lists we need for compilation and introspection
!include create-lists-msvc.mak
all: $(HB_LIBS) $(HB_UTILS) $(EXTRA_TARGETS) all-build-info
tests: all $(HB_TESTS)
# Include the build rules for sources, DLLs and executables
!include build-rules-msvc.mak
# Include the rules for build directory creation and code generation
!include generate-msvc.mak
# Generate the introspection files
!if "$(INTROSPECTION)" == "1"
# Include the rules for building the introspection files
!include introspection-msvc.mak
!include hb-introspection-msvc.mak
!endif
!include install.mak
!else
all: help
@echo You need to specify a valid configuration, via
@echo CFG=release or CFG=debug
!endif
!include info-msvc.mak