Imported Upstream version 1.4.6
[platform/upstream/harfbuzz.git] / win32 / introspection-msvc.mak
1 # Common NMake Makefile module for checking the build environment is sane
2 # for building introspection files under MSVC/NMake.
3 # This can be copied from $(gi_srcroot)\build\win32 for GNOME items
4 # that support MSVC builds and introspection under MSVC.
5
6 # Can override with env vars as needed
7 # You will need to have built gobject-introspection for this to work.
8 # Change or pass in or set the following to suit your environment
9
10 !if "$(PREFIX)" == ""
11 PREFIX = ..\..\..\vs$(VSVER)\$(PLAT)
12 !endif
13
14 # Note: The PYTHON must be the Python release series that was used to build
15 # the GObject-introspection scanner Python module!
16 # Either having python.exe your PATH will work or passing in
17 # PYTHON=<full path to your Python interpretor> will do
18
19 # This is required, and gobject-introspection needs to be built
20 # before this can be successfully run.
21 !if "$(PYTHON)" == ""
22 PYTHON=python
23 !endif
24
25 # Don't change anything following this line!
26
27 GIR_SUBDIR = share\gir-1.0
28 GIR_TYPELIBDIR = lib\girepository-1.0
29 G_IR_SCANNER = $(PREFIX)\bin\g-ir-scanner
30 G_IR_COMPILER = $(PREFIX)\bin\g-ir-compiler.exe
31 G_IR_INCLUDEDIR = $(PREFIX)\$(GIR_SUBDIR)
32 G_IR_TYPELIBDIR = $(PREFIX)\$(GIR_TYPELIBDIR)
33
34 VALID_PKG_CONFIG_PATH = FALSE
35
36 MSG_INVALID_PKGCONFIG = You must set or specifiy a valid PKG_CONFIG_PATH
37 MSG_INVALID_CFG = You need to specify or set CFG to be release or debug to use this Makefile to build the Introspection Files
38
39 ERROR_MSG =
40
41 BUILD_INTROSPECTION = TRUE
42
43 !if ![pkg-config --print-errors --errors-to-stdout $(CHECK_PACKAGE) > pkgconfig.x]      \
44         && ![setlocal]  \
45         && ![set file="pkgconfig.x"]    \
46         && ![FOR %A IN (%file%) DO @echo PKG_CHECK_SIZE=%~zA > pkgconfig.chksize]       \
47         && ![del $(ERRNUL) /q/f pkgconfig.x]
48 !endif
49
50 !include pkgconfig.chksize
51 !if "$(PKG_CHECK_SIZE)" == "0"
52 VALID_PKG_CONFIG_PATH = TRUE
53 !else
54 VALID_PKG_CONFIG_PATH = FALSE
55 !endif
56
57 !if ![del $(ERRNUL) /q/f pkgconfig.chksize]
58 !endif
59
60 VALID_CFGSET = FALSE
61 !if "$(CFG)" == "release" || "$(CFG)" == "debug"
62 VALID_CFGSET = TRUE
63 !endif
64
65 !if "$(VALID_PKG_CONFIG_PATH)" != "TRUE"
66 BUILD_INTROSPECTION = FALSE
67 ERROR_MSG = $(MSG_INVALID_PKGCONFIG)
68 !endif
69
70 !if "$(VALID_CFGSET)" != "TRUE"
71 BUILD_INTROSPECTION = FALSE
72 ERROR_MSG = $(MSG_INVALID_CFG)
73 !endif