Mercurial > dwindows
annotate makefile.vc @ 2171:6533fc42c951
Fix building on Windows 2000 and changes to avoid CRT warnings.
Was using __has_extension() to check for clang, use __clang__ instead.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Mon, 05 Oct 2020 00:49:20 +0000 |
parents | a89841c500f8 |
children | 81c50388851d |
rev | line source |
---|---|
3 | 1 # |
750
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
2 # Visual C Makefile for Dynamic Windows |
381
0df4ad2ac083
Enable dwindows to be built from a directory other than where the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
286
diff
changeset
|
3 # |
1350
4333b58d879d
Upped the version number to 2.2. Added a Version file to reduce the number of places
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1251
diff
changeset
|
4 !include Version |
4333b58d879d
Upped the version number to 2.2. Added a Version file to reduce the number of places
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1251
diff
changeset
|
5 VER = $(DW_MAJOR_VERSION)$(DW_MINOR_VERSION) |
4333b58d879d
Upped the version number to 2.2. Added a Version file to reduce the number of places
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1251
diff
changeset
|
6 VERDOT = $(DW_MAJOR_VERSION).$(DW_MINOR_VERSION) |
1163
2991afb3bf71
Added support for including the svn revision number as the sub version with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1113
diff
changeset
|
7 VERREV = 0 |
640
cd1f9f0bd7e1
Support for building zip file on Win32
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
634
diff
changeset
|
8 |
750
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
9 # |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
10 # Setup the source and destination directories |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
11 # |
381
0df4ad2ac083
Enable dwindows to be built from a directory other than where the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
286
diff
changeset
|
12 !if "$(DWINDOWS_SRCDIR)" == "" |
0df4ad2ac083
Enable dwindows to be built from a directory other than where the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
286
diff
changeset
|
13 SRCDIR=. |
0df4ad2ac083
Enable dwindows to be built from a directory other than where the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
286
diff
changeset
|
14 !else |
0df4ad2ac083
Enable dwindows to be built from a directory other than where the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
286
diff
changeset
|
15 SRCDIR=$(DWINDOWS_SRCDIR) |
0df4ad2ac083
Enable dwindows to be built from a directory other than where the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
286
diff
changeset
|
16 !endif |
0df4ad2ac083
Enable dwindows to be built from a directory other than where the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
286
diff
changeset
|
17 |
750
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
18 !if "$(DWLIBDIR)" == "" |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
19 DWLIBDIR=.\lib |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
20 !endif |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
21 |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
22 !if "$(DWDLLDIR)" == "" |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
23 DWDLLDIR=.\dll |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
24 !endif |
3 | 25 |
2167
da33732f182d
Win: Add support for building with Clang/LLVM on Windows. SET CLANG=Y
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2088
diff
changeset
|
26 # Configure alternate compiler based on Clang/LLVM |
da33732f182d
Win: Add support for building with Clang/LLVM on Windows. SET CLANG=Y
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2088
diff
changeset
|
27 !if "$(CLANG)" == "Y" |
2168
b08df531fd71
Win: Rename LIB to WLIB to prevent clobbering the library path.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2167
diff
changeset
|
28 WLIB=llvm-lib.exe |
2167
da33732f182d
Win: Add support for building with Clang/LLVM on Windows. SET CLANG=Y
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2088
diff
changeset
|
29 CC=clang-cl.exe |
da33732f182d
Win: Add support for building with Clang/LLVM on Windows. SET CLANG=Y
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2088
diff
changeset
|
30 LINK=lld-link.exe |
da33732f182d
Win: Add support for building with Clang/LLVM on Windows. SET CLANG=Y
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2088
diff
changeset
|
31 !else |
2168
b08df531fd71
Win: Rename LIB to WLIB to prevent clobbering the library path.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2167
diff
changeset
|
32 WLIB=lib.exe |
2167
da33732f182d
Win: Add support for building with Clang/LLVM on Windows. SET CLANG=Y
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2088
diff
changeset
|
33 CC=cl.exe |
da33732f182d
Win: Add support for building with Clang/LLVM on Windows. SET CLANG=Y
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2088
diff
changeset
|
34 LINK=link.exe |
da33732f182d
Win: Add support for building with Clang/LLVM on Windows. SET CLANG=Y
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2088
diff
changeset
|
35 !endif |
da33732f182d
Win: Add support for building with Clang/LLVM on Windows. SET CLANG=Y
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2088
diff
changeset
|
36 |
750
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
37 # |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
38 # Configure settings for the target platform |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
39 # Default to x86 if not specified |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
40 # |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
41 !if "$(TARGET_CPU)" == "" |
1928
e07a1e176995
Try to get the target CPU from the Visual Studio environment, so you don't need to set TARGET_CPU.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1726
diff
changeset
|
42 !if "$(VSCMD_ARG_TGT_ARCH)" == "" |
2080
8f08d4c9d3fc
Win: Visual Studio 2015 sets PLATFORM=x64 in 64bit intel mode so
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2079
diff
changeset
|
43 !if "$(PLATFORM)" == "" |
750
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
44 TARGET_CPU=x86 |
1928
e07a1e176995
Try to get the target CPU from the Visual Studio environment, so you don't need to set TARGET_CPU.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1726
diff
changeset
|
45 !else |
2080
8f08d4c9d3fc
Win: Visual Studio 2015 sets PLATFORM=x64 in 64bit intel mode so
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2079
diff
changeset
|
46 TARGET_CPU=$(PLATFORM) |
8f08d4c9d3fc
Win: Visual Studio 2015 sets PLATFORM=x64 in 64bit intel mode so
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2079
diff
changeset
|
47 !endif |
8f08d4c9d3fc
Win: Visual Studio 2015 sets PLATFORM=x64 in 64bit intel mode so
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2079
diff
changeset
|
48 !else |
1928
e07a1e176995
Try to get the target CPU from the Visual Studio environment, so you don't need to set TARGET_CPU.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1726
diff
changeset
|
49 TARGET_CPU=$(VSCMD_ARG_TGT_ARCH) |
e07a1e176995
Try to get the target CPU from the Visual Studio environment, so you don't need to set TARGET_CPU.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1726
diff
changeset
|
50 !endif |
750
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
51 !endif |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
52 |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
53 !if "$(TARGET_CPU)" == "x86" |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
54 PLATFORM_DEF = -DWIN32 |
1113
a049f447999c
Updated makefiles to 2.1 on Windows and OS/2 for packaging.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1030
diff
changeset
|
55 PLATFORM_NAME = win32 |
750
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
56 !else |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
57 PLATFORM_DEF = -DWIN64 |
1113
a049f447999c
Updated makefiles to 2.1 on Windows and OS/2 for packaging.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1030
diff
changeset
|
58 PLATFORM_NAME = win64 |
750
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
59 !endif |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
60 |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
61 # |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
62 # Settings for either debug or release |
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
63 # |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
631
diff
changeset
|
64 !if "$(DEBUG)" == "Y" |
1601
71e0a3ad07f7
Enable level 3 warnings in DEBUG mode with Visual C to show deprecation warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1595
diff
changeset
|
65 # -D_CRT_SECURE_NO_WARNINGS disables unsafe string function warnings |
71e0a3ad07f7
Enable level 3 warnings in DEBUG mode with Visual C to show deprecation warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1595
diff
changeset
|
66 # These can be perfectly safe if used properly but get enabled by -W3 |
2167
da33732f182d
Win: Add support for building with Clang/LLVM on Windows. SET CLANG=Y
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2088
diff
changeset
|
67 CFLAGS_DEBUG = -DDEBUG -Z7 -W3 -Od -MTd # was -Zi |
647
f09977bc9b5c
Fixed building with Visual Studio 2008.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
643
diff
changeset
|
68 LINK_DEBUG = -debug |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
631
diff
changeset
|
69 !else |
772
b28ec71cfc88
Add -MT or -MTd switch to DEBUG switches
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
758
diff
changeset
|
70 CFLAGS_DEBUG = -Ox -MT |
634
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
631
diff
changeset
|
71 LINK_DEBUG = -release |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
631
diff
changeset
|
72 !endif |
c6a216c8174f
Support for setting transparent colour for bitmaps
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
631
diff
changeset
|
73 |
1163
2991afb3bf71
Added support for including the svn revision number as the sub version with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1113
diff
changeset
|
74 # Check the SVN revision number if possible |
2991afb3bf71
Added support for including the svn revision number as the sub version with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1113
diff
changeset
|
75 !if ![subwcrev . win\__SVN__.REV SVN.REV > NUL] |
2991afb3bf71
Added support for including the svn revision number as the sub version with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1113
diff
changeset
|
76 !include SVN.REV |
2991afb3bf71
Added support for including the svn revision number as the sub version with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1113
diff
changeset
|
77 !message Revision is [$(VERREV)] |
2991afb3bf71
Added support for including the svn revision number as the sub version with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1113
diff
changeset
|
78 SVNVERSION=-DVER_REV=$(VERREV) |
1626
fdeeba6c6d09
Add support for mercurial revisions in addition to subversion on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1618
diff
changeset
|
79 !else |
fdeeba6c6d09
Add support for mercurial revisions in addition to subversion on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1618
diff
changeset
|
80 |
fdeeba6c6d09
Add support for mercurial revisions in addition to subversion on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1618
diff
changeset
|
81 # Check the Mercurial revision number if possible |
fdeeba6c6d09
Add support for mercurial revisions in addition to subversion on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1618
diff
changeset
|
82 !if ![hg log -r . --template="VER_REV={rev}" > HG.REV] |
fdeeba6c6d09
Add support for mercurial revisions in addition to subversion on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1618
diff
changeset
|
83 !include HG.REV |
fdeeba6c6d09
Add support for mercurial revisions in addition to subversion on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1618
diff
changeset
|
84 !message Revision is [$(VER_REV)] |
fdeeba6c6d09
Add support for mercurial revisions in addition to subversion on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1618
diff
changeset
|
85 SVNVERSION=-DVER_REV=$(VER_REV) |
fdeeba6c6d09
Add support for mercurial revisions in addition to subversion on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1618
diff
changeset
|
86 !endif |
fdeeba6c6d09
Add support for mercurial revisions in addition to subversion on Windows.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1618
diff
changeset
|
87 |
1163
2991afb3bf71
Added support for including the svn revision number as the sub version with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1113
diff
changeset
|
88 !endif |
2991afb3bf71
Added support for including the svn revision number as the sub version with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1113
diff
changeset
|
89 |
2078
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
90 # |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
91 # Settings for supporting embedded Edge (Chromium) WebView2 |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
92 # |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
93 !if "$(WEBVIEW2DIR)" == "" |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
94 WEBVIEW2DIR=$(SRCDIR)\packages\Microsoft.Web.WebView2 |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
95 !endif |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
96 |
2082
3144912829e2
Minor build issues
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2080
diff
changeset
|
97 !if exists($(WEBVIEW2DIR)\build\native\include\WebView2.h) |
2078
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
98 WEBVIEW2INC=-DBUILD_EDGE -I$(WEBVIEW2DIR)\build\native\include |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
99 WEBVIEW2LIB=$(WEBVIEW2DIR)\build\native\$(TARGET_CPU)\WebView2Loader.dll.lib |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
100 WEBVIEW2OBJ=edge.obj |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
101 !endif |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
102 |
2088
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
103 # |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
104 # Settings for supporting WinToast notifications |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
105 # |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
106 !if "$(WINTOASTDIR)" == "" |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
107 WINTOASTDIR=$(SRCDIR)\packages\WinToast |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
108 !endif |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
109 |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
110 !if exists($(WINTOASTDIR)\src\wintoastlib.h) |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
111 WINTOASTINC=-DBUILD_TOAST -I$(WINTOASTDIR)\src |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
112 WINTOASTOBJ=wintoast.obj wintoastlib.obj |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
113 !endif |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
114 |
2171
6533fc42c951
Fix building on Windows 2000 and changes to avoid CRT warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2169
diff
changeset
|
115 # Visual C CRT deprecates a lot of common functions, these lines |
6533fc42c951
Fix building on Windows 2000 and changes to avoid CRT warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2169
diff
changeset
|
116 # will hide the deprecation warnings, remove these options to see them |
6533fc42c951
Fix building on Windows 2000 and changes to avoid CRT warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2169
diff
changeset
|
117 CRT_FLAGS = -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNING |
6533fc42c951
Fix building on Windows 2000 and changes to avoid CRT warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2169
diff
changeset
|
118 |
6533fc42c951
Fix building on Windows 2000 and changes to avoid CRT warnings.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2169
diff
changeset
|
119 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) $(WINTOASTINC) $(SVNVERSION) $(CRT_FLAGS) |
2078
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
120 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) |
598
78a8c4123818
Specify library output filenames.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
584
diff
changeset
|
121 RES = |
750
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
122 LINKFLAGS = -machine:$(TARGET_CPU) -manifest $(LINK_DEBUG) |
3 | 123 DLLLINKFLAGS = -dll |
1360
32a5be18e187
Source tree cleanup, move import/export definition files to their platform folder.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1350
diff
changeset
|
124 DEFFILE = $(SRCDIR)\win\dw.def |
32a5be18e187
Source tree cleanup, move import/export definition files to their platform folder.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1350
diff
changeset
|
125 DEFFILE2 = $(SRCDIR)\win\dwcompat.def |
3 | 126 |
2088
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
127 OBJS = dw.obj browser.obj XBrowseForFolder.obj $(WEBVIEW2OBJ) $(WINTOASTOBJ) |
3 | 128 |
1594
6baf177f335c
Rename compat.c/h dwcompat.c/h and configure option to --with-dwcompat.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1535
diff
changeset
|
129 OBJS2 = dwcompat.obj dirent.obj |
3 | 130 |
381
0df4ad2ac083
Enable dwindows to be built from a directory other than where the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
286
diff
changeset
|
131 all: dw dwcompat dwtest |
3 | 132 |
1163
2991afb3bf71
Added support for including the svn revision number as the sub version with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1113
diff
changeset
|
133 |
2991afb3bf71
Added support for including the svn revision number as the sub version with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1113
diff
changeset
|
134 |
3 | 135 clean: |
2078
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
136 -erase *.dll |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
137 -erase *.exe |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
138 -erase *.opt |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
139 -erase *.lib |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
140 -erase *.obj |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
141 -erase *.map |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
142 -erase *.pdb |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
143 -erase *.ilk |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
144 -erase *.exp |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
145 -erase *.REV |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
146 -erase *~ |
598
78a8c4123818
Specify library output filenames.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
584
diff
changeset
|
147 |
3 | 148 dw: dw.dll |
149 | |
150 dw.dll: $(OBJS) $(DEFFILE) | |
1163
2991afb3bf71
Added support for including the svn revision number as the sub version with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1113
diff
changeset
|
151 -md $(DWLIBDIR) |
2991afb3bf71
Added support for including the svn revision number as the sub version with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1113
diff
changeset
|
152 -md $(DWDLLDIR) |
3 | 153 $(LINK) @<< |
154 -out:$(@) -def:$(DEFFILE) | |
155 $(LINKFLAGS) $(DLLLINKFLAGS) | |
156 $(OBJS) $(RES) | |
157 $(LIBS) | |
158 << | |
2169
a89841c500f8
Win: Clang/LLVM tools don't seem to accept / to specify options...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2168
diff
changeset
|
159 $(WLIB) -def:$(DEFFILE) -machine:$(TARGET_CPU) -out:dw.lib |
a89841c500f8
Win: Clang/LLVM tools don't seem to accept / to specify options...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2168
diff
changeset
|
160 mt.exe -manifest dw.dll.manifest $(SRCDIR)\win\dw.dll.$(TARGET_CPU).manifest -outputresource:dw.dll;2 |
1447
5417b312801e
Add -DISOLATION_AWARE_ENABLED=1 to Visual C compile flags and delete temporary manifest files after build.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1431
diff
changeset
|
161 -erase dw.dll.manifest |
2078
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
162 copy dw.lib $(DWLIBDIR)\dw.lib |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
163 copy dw.dll $(DWDLLDIR)\dw.dll |
3 | 164 |
165 dwcompat: dwcompat.dll | |
166 | |
167 dwcompat.dll: $(OBJS2) $(DEFFILE2) | |
168 $(LINK) @<< | |
169 -out:$(@) -def:$(DEFFILE2) | |
170 $(LINKFLAGS) $(DLLLINKFLAGS) | |
171 $(OBJS2) $(RES) | |
172 $(LIBS) | |
173 << | |
2169
a89841c500f8
Win: Clang/LLVM tools don't seem to accept / to specify options...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2168
diff
changeset
|
174 $(WLIB) -def:$(DEFFILE2) -machine:$(TARGET_CPU) -out:dwcompat.lib |
a89841c500f8
Win: Clang/LLVM tools don't seem to accept / to specify options...
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2168
diff
changeset
|
175 mt.exe -manifest dwcompat.dll.manifest -outputresource:dwcompat.dll;2 |
1447
5417b312801e
Add -DISOLATION_AWARE_ENABLED=1 to Visual C compile flags and delete temporary manifest files after build.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1431
diff
changeset
|
176 -erase dwcompat.dll.manifest |
2078
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
177 copy dwcompat.lib $(DWLIBDIR)\dwcompat.lib |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
178 copy dwcompat.dll $(DWDLLDIR)\dwcompat.dll |
2082
3144912829e2
Minor build issues
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2080
diff
changeset
|
179 !if exists($(WEBVIEW2DIR)\build\native\$(TARGET_CPU)\WebView2Loader.dll) |
2079
f02266370e74
Win: Copy WebView2Loader.dll to the dll\ directory if building Edge support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2078
diff
changeset
|
180 copy $(WEBVIEW2DIR)\build\native\$(TARGET_CPU)\WebView2Loader.dll $(DWDLLDIR)\WebView2Loader.dll |
f02266370e74
Win: Copy WebView2Loader.dll to the dll\ directory if building Edge support.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2078
diff
changeset
|
181 !endif |
3 | 182 |
381
0df4ad2ac083
Enable dwindows to be built from a directory other than where the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
286
diff
changeset
|
183 dw.obj: $(SRCDIR)\win\dw.c |
772
b28ec71cfc88
Add -MT or -MTd switch to DEBUG switches
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
758
diff
changeset
|
184 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\dw.c |
381
0df4ad2ac083
Enable dwindows to be built from a directory other than where the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
286
diff
changeset
|
185 |
584
420c6c94abc7
Added dw_html_* functionality for embedding HTML pages in Dynamic Windows
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
381
diff
changeset
|
186 browser.obj: $(SRCDIR)\win\browser.c |
772
b28ec71cfc88
Add -MT or -MTd switch to DEBUG switches
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
758
diff
changeset
|
187 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\browser.c |
584
420c6c94abc7
Added dw_html_* functionality for embedding HTML pages in Dynamic Windows
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
381
diff
changeset
|
188 |
631
fa6c46796883
Use better directory browser widget.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
598
diff
changeset
|
189 XBrowseForFolder.obj: $(SRCDIR)\win\XBrowseForFolder.cpp |
772
b28ec71cfc88
Add -MT or -MTd switch to DEBUG switches
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
758
diff
changeset
|
190 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\XBrowseForFolder.cpp |
631
fa6c46796883
Use better directory browser widget.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
598
diff
changeset
|
191 |
2078
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
192 edge.obj: $(SRCDIR)\win\edge.cpp |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
193 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\edge.cpp |
2f98abf1e1e5
Win: Added support for building with Edge (Chromium) support via nmake.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1932
diff
changeset
|
194 |
2088
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
195 wintoast.obj: $(SRCDIR)\win\wintoast.cpp |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
196 $(CC) $(CFLAGS) /EHsc $(CFLAGS_DEBUG) $(SRCDIR)\win\wintoast.cpp |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
197 |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
198 wintoastlib.obj: $(WINTOASTDIR)\src\wintoastlib.cpp |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
199 $(CC) $(CFLAGS) /EHsc $(CFLAGS_DEBUG) $(WINTOASTDIR)\src\wintoastlib.cpp |
94ea915bd917
Win: Initial implementation of notifications on Windows. Currently using WinToast.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2082
diff
changeset
|
200 |
381
0df4ad2ac083
Enable dwindows to be built from a directory other than where the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
286
diff
changeset
|
201 dirent.obj: $(SRCDIR)\win\dirent.c |
772
b28ec71cfc88
Add -MT or -MTd switch to DEBUG switches
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
758
diff
changeset
|
202 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\win\dirent.c |
3 | 203 |
1594
6baf177f335c
Rename compat.c/h dwcompat.c/h and configure option to --with-dwcompat.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1535
diff
changeset
|
204 dwcompat.obj: $(SRCDIR)\dwcompat.c |
6baf177f335c
Rename compat.c/h dwcompat.c/h and configure option to --with-dwcompat.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1535
diff
changeset
|
205 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\dwcompat.c |
3 | 206 |
381
0df4ad2ac083
Enable dwindows to be built from a directory other than where the
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
286
diff
changeset
|
207 dwtest.obj: $(SRCDIR)\dwtest.c |
772
b28ec71cfc88
Add -MT or -MTd switch to DEBUG switches
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
758
diff
changeset
|
208 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\dwtest.c |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
45
diff
changeset
|
209 |
2082
3144912829e2
Minor build issues
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2080
diff
changeset
|
210 winmain.obj: $(SRCDIR)\winmain.c |
3144912829e2
Minor build issues
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2080
diff
changeset
|
211 $(CC) $(CFLAGS) $(CFLAGS_DEBUG) $(SRCDIR)\winmain.c |
3144912829e2
Minor build issues
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2080
diff
changeset
|
212 |
286
e9270ff04ced
Simple add dwtest as a target, dependent on dwtest.exe.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
191
diff
changeset
|
213 dwtest: dwtest.exe |
e9270ff04ced
Simple add dwtest as a target, dependent on dwtest.exe.
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
191
diff
changeset
|
214 |
191
634625c3239d
Fixes for dw_color_xxxx_set() to accept OS/2 style colors, and fixed a
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
45
diff
changeset
|
215 dwtest.exe: dwtest.obj winmain.obj |
750
e6a9f1c7b0d7
Changes to be smarter about source and destination directories with Visual C.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
647
diff
changeset
|
216 $(LINK) $(LINKFLAGS) /out:dwtest.exe dwtest.obj winmain.obj /subsystem:windows $(DWLIBDIR)\dwcompat.lib $(DWLIBDIR)\dw.lib $(LIBS) |
2082
3144912829e2
Minor build issues
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
2080
diff
changeset
|
217 mt.exe /manifest dwtest.exe.manifest $(SRCDIR)\win\dwtest.exe.$(TARGET_CPU).manifest /outputresource:dwtest.exe;1 |
1447
5417b312801e
Add -DISOLATION_AWARE_ENABLED=1 to Visual C compile flags and delete temporary manifest files after build.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1431
diff
changeset
|
218 -erase dwtest.exe.manifest |
640
cd1f9f0bd7e1
Support for building zip file on Win32
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
634
diff
changeset
|
219 |
cd1f9f0bd7e1
Support for building zip file on Win32
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
634
diff
changeset
|
220 zip: dw.dll |
cd1f9f0bd7e1
Support for building zip file on Win32
mhessling@81767d24-ef19-dc11-ae90-00e081727c95
parents:
634
diff
changeset
|
221 copy win\readme-win.txt . |
1604
7eb2e2d6b0be
OS/2 and Windows zip rules need to include dwcompat.h.
bsmith@81767d24-ef19-dc11-ae90-00e081727c95
parents:
1601
diff
changeset
|
222 zip dwindows-$(PLATFORM_NAME)-$(VERDOT).zip readme-win.txt readme.txt dw.dll dwcompat.dll dw.lib dwcompat.lib dw.h dwcompat.h |