changeset 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 9101babfc421
children f02266370e74
files makefile.vc
diffstat 1 files changed, 34 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
--- a/makefile.vc	Mon May 25 03:17:57 2020 +0000
+++ b/makefile.vc	Mon May 25 03:21:29 2020 +0000
@@ -72,9 +72,22 @@
 
 !endif
 
+#
+# Settings for supporting embedded Edge (Chromium) WebView2
+#
+!if "$(WEBVIEW2DIR)" == ""
+WEBVIEW2DIR=$(SRCDIR)\packages\Microsoft.Web.WebView2
+!endif
+
+!if exists($(WEBVIEW2DIR)\build\native\include\WebView2.h) 
+WEBVIEW2INC=-DBUILD_EDGE -I$(WEBVIEW2DIR)\build\native\include
+WEBVIEW2LIB=$(WEBVIEW2DIR)\build\native\$(TARGET_CPU)\WebView2Loader.dll.lib
+WEBVIEW2OBJ=edge.obj
+!endif
+
 CC = cl
-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)
-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
+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)
+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)
 RES =
 LINKFLAGS = -machine:$(TARGET_CPU) -manifest $(LINK_DEBUG)
 DLLLINKFLAGS = -dll
@@ -82,7 +95,7 @@
 DEFFILE = $(SRCDIR)\win\dw.def
 DEFFILE2 = $(SRCDIR)\win\dwcompat.def
 
-OBJS = dw.obj browser.obj XBrowseForFolder.obj
+OBJS = dw.obj browser.obj XBrowseForFolder.obj $(WEBVIEW2OBJ)
 
 OBJS2 = dwcompat.obj dirent.obj
 
@@ -91,17 +104,17 @@
 
 
 clean:
-        -erase *.dll
-        -erase *.exe
-        -erase *.opt
-        -erase *.lib
-        -erase *.obj
-        -erase *.map
-        -erase *.pdb
-        -erase *.ilk
-        -erase *.exp
-        -erase *.REV
-        -erase *~
+	-erase *.dll
+	-erase *.exe
+	-erase *.opt
+	-erase *.lib
+	-erase *.obj
+	-erase *.map
+	-erase *.pdb
+	-erase *.ilk
+	-erase *.exp
+	-erase *.REV
+	-erase *~
 
 dw: dw.dll
 
@@ -117,8 +130,8 @@
 	lib /def:$(DEFFILE) /machine:$(TARGET_CPU) /out:dw.lib
 	mt.exe /manifest dw.dll.manifest win\dw.dll.$(TARGET_CPU).manifest /outputresource:dw.dll;2
 	-erase dw.dll.manifest
-        copy dw.lib $(DWLIBDIR)\dw.lib
-        copy dw.dll $(DWDLLDIR)\dw.dll
+	copy dw.lib $(DWLIBDIR)\dw.lib
+	copy dw.dll $(DWDLLDIR)\dw.dll
 
 dwcompat: dwcompat.dll
 
@@ -132,8 +145,8 @@
 	lib /def:$(DEFFILE2) /machine:$(TARGET_CPU) /out:dwcompat.lib
 	mt.exe /manifest dwcompat.dll.manifest /outputresource:dwcompat.dll;2
 	-erase dwcompat.dll.manifest
-        copy dwcompat.lib $(DWLIBDIR)\dwcompat.lib
-        copy dwcompat.dll $(DWDLLDIR)\dwcompat.dll
+	copy dwcompat.lib $(DWLIBDIR)\dwcompat.lib
+	copy dwcompat.dll $(DWDLLDIR)\dwcompat.dll
 
 dw.obj: $(SRCDIR)\win\dw.c
 	$(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\dw.c
@@ -144,6 +157,9 @@
 XBrowseForFolder.obj: $(SRCDIR)\win\XBrowseForFolder.cpp
 	$(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\XBrowseForFolder.cpp
 
+edge.obj: $(SRCDIR)\win\edge.cpp
+	$(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\edge.cpp
+
 dirent.obj: $(SRCDIR)\win\dirent.c
 	$(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\dirent.c