comparison makefile.vc @ 2078:2f98abf1e1e5

Win: Added support for building with Edge (Chromium) support via nmake. Unzip the nuget WebView2 package into packages\Microsoft.Web.WebView2
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Mon, 25 May 2020 03:21:29 +0000
parents bf34d9f9dabe
children f02266370e74
comparison
equal deleted inserted replaced
2077:9101babfc421 2078:2f98abf1e1e5
70 SVNVERSION=-DVER_REV=$(VER_REV) 70 SVNVERSION=-DVER_REV=$(VER_REV)
71 !endif 71 !endif
72 72
73 !endif 73 !endif
74 74
75 #
76 # Settings for supporting embedded Edge (Chromium) WebView2
77 #
78 !if "$(WEBVIEW2DIR)" == ""
79 WEBVIEW2DIR=$(SRCDIR)\packages\Microsoft.Web.WebView2
80 !endif
81
82 !if exists($(WEBVIEW2DIR)\build\native\include\WebView2.h)
83 WEBVIEW2INC=-DBUILD_EDGE -I$(WEBVIEW2DIR)\build\native\include
84 WEBVIEW2LIB=$(WEBVIEW2DIR)\build\native\$(TARGET_CPU)\WebView2Loader.dll.lib
85 WEBVIEW2OBJ=edge.obj
86 !endif
87
75 CC = cl 88 CC = cl
76 CFLAGS = -c $(PLATFORM_DEF) -D__WIN32__ -DMSVC -DTOOLBAR -DGDIPLUS -DAEROGLASS -D_UNICODE -DUNICODE -DBUILD_DLL -DISOLATION_AWARE_ENABLED=1 -I$(SRCDIR)\platform -I$(SRCDIR) $(SVNVERSION) 89 CFLAGS = -c $(PLATFORM_DEF) -D__WIN32__ -DMSVC -DTOOLBAR -DGDIPLUS -DAEROGLASS -D_UNICODE -DUNICODE -DBUILD_DLL -DISOLATION_AWARE_ENABLED=1 -I$(SRCDIR)\platform -I$(SRCDIR) $(WEBVIEW2INC) $(SVNVERSION)
77 LIBS = wsock32.lib kernel32.lib user32.lib comctl32.lib gdi32.lib advapi32.lib shell32.lib comdlg32.lib ole32.lib oleaut32.lib userenv.lib msimg32.lib gdiplus.lib 90 LIBS = wsock32.lib kernel32.lib user32.lib comctl32.lib gdi32.lib advapi32.lib shell32.lib comdlg32.lib ole32.lib oleaut32.lib userenv.lib msimg32.lib gdiplus.lib $(WEBVIEW2LIB)
78 RES = 91 RES =
79 LINKFLAGS = -machine:$(TARGET_CPU) -manifest $(LINK_DEBUG) 92 LINKFLAGS = -machine:$(TARGET_CPU) -manifest $(LINK_DEBUG)
80 DLLLINKFLAGS = -dll 93 DLLLINKFLAGS = -dll
81 LINK = link 94 LINK = link
82 DEFFILE = $(SRCDIR)\win\dw.def 95 DEFFILE = $(SRCDIR)\win\dw.def
83 DEFFILE2 = $(SRCDIR)\win\dwcompat.def 96 DEFFILE2 = $(SRCDIR)\win\dwcompat.def
84 97
85 OBJS = dw.obj browser.obj XBrowseForFolder.obj 98 OBJS = dw.obj browser.obj XBrowseForFolder.obj $(WEBVIEW2OBJ)
86 99
87 OBJS2 = dwcompat.obj dirent.obj 100 OBJS2 = dwcompat.obj dirent.obj
88 101
89 all: dw dwcompat dwtest 102 all: dw dwcompat dwtest
90 103
91 104
92 105
93 clean: 106 clean:
94 -erase *.dll 107 -erase *.dll
95 -erase *.exe 108 -erase *.exe
96 -erase *.opt 109 -erase *.opt
97 -erase *.lib 110 -erase *.lib
98 -erase *.obj 111 -erase *.obj
99 -erase *.map 112 -erase *.map
100 -erase *.pdb 113 -erase *.pdb
101 -erase *.ilk 114 -erase *.ilk
102 -erase *.exp 115 -erase *.exp
103 -erase *.REV 116 -erase *.REV
104 -erase *~ 117 -erase *~
105 118
106 dw: dw.dll 119 dw: dw.dll
107 120
108 dw.dll: $(OBJS) $(DEFFILE) 121 dw.dll: $(OBJS) $(DEFFILE)
109 -md $(DWLIBDIR) 122 -md $(DWLIBDIR)
115 $(LIBS) 128 $(LIBS)
116 << 129 <<
117 lib /def:$(DEFFILE) /machine:$(TARGET_CPU) /out:dw.lib 130 lib /def:$(DEFFILE) /machine:$(TARGET_CPU) /out:dw.lib
118 mt.exe /manifest dw.dll.manifest win\dw.dll.$(TARGET_CPU).manifest /outputresource:dw.dll;2 131 mt.exe /manifest dw.dll.manifest win\dw.dll.$(TARGET_CPU).manifest /outputresource:dw.dll;2
119 -erase dw.dll.manifest 132 -erase dw.dll.manifest
120 copy dw.lib $(DWLIBDIR)\dw.lib 133 copy dw.lib $(DWLIBDIR)\dw.lib
121 copy dw.dll $(DWDLLDIR)\dw.dll 134 copy dw.dll $(DWDLLDIR)\dw.dll
122 135
123 dwcompat: dwcompat.dll 136 dwcompat: dwcompat.dll
124 137
125 dwcompat.dll: $(OBJS2) $(DEFFILE2) 138 dwcompat.dll: $(OBJS2) $(DEFFILE2)
126 $(LINK) @<< 139 $(LINK) @<<
130 $(LIBS) 143 $(LIBS)
131 << 144 <<
132 lib /def:$(DEFFILE2) /machine:$(TARGET_CPU) /out:dwcompat.lib 145 lib /def:$(DEFFILE2) /machine:$(TARGET_CPU) /out:dwcompat.lib
133 mt.exe /manifest dwcompat.dll.manifest /outputresource:dwcompat.dll;2 146 mt.exe /manifest dwcompat.dll.manifest /outputresource:dwcompat.dll;2
134 -erase dwcompat.dll.manifest 147 -erase dwcompat.dll.manifest
135 copy dwcompat.lib $(DWLIBDIR)\dwcompat.lib 148 copy dwcompat.lib $(DWLIBDIR)\dwcompat.lib
136 copy dwcompat.dll $(DWDLLDIR)\dwcompat.dll 149 copy dwcompat.dll $(DWDLLDIR)\dwcompat.dll
137 150
138 dw.obj: $(SRCDIR)\win\dw.c 151 dw.obj: $(SRCDIR)\win\dw.c
139 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\dw.c 152 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\dw.c
140 153
141 browser.obj: $(SRCDIR)\win\browser.c 154 browser.obj: $(SRCDIR)\win\browser.c
142 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\browser.c 155 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\browser.c
143 156
144 XBrowseForFolder.obj: $(SRCDIR)\win\XBrowseForFolder.cpp 157 XBrowseForFolder.obj: $(SRCDIR)\win\XBrowseForFolder.cpp
145 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\XBrowseForFolder.cpp 158 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\XBrowseForFolder.cpp
159
160 edge.obj: $(SRCDIR)\win\edge.cpp
161 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\edge.cpp
146 162
147 dirent.obj: $(SRCDIR)\win\dirent.c 163 dirent.obj: $(SRCDIR)\win\dirent.c
148 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\dirent.c 164 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\dirent.c
149 165
150 dwcompat.obj: $(SRCDIR)\dwcompat.c 166 dwcompat.obj: $(SRCDIR)\dwcompat.c