PageRenderTime 59ms CodeModel.GetById 50ms app.highlight 6ms RepoModel.GetById 2ms app.codeStats 0ms

/win32/shellext/Makefile.nmake

https://bitbucket.org/tortoisehg/hgtk/
Unknown | 67 lines | 53 code | 14 blank | 0 comment | 0 complexity | ff2267a95c54cb3f4b88ae45d79cc344 MD5 | raw file
 1
 2OBJECTS_DIRSTATE = TortoiseUtils.obj \
 3        Direntry.obj \
 4        Directory.obj \
 5        Winstat.obj \
 6        RegistryConfig.obj \
 7        ThgDebug.obj
 8
 9OBJECTS_THGSGELL = $(OBJECTS_DIRSTATE) \
10        InitStatus.obj \
11        CShellExtCMenu.obj \
12        CShellExtOverlay.obj \
13        TortoiseIconBitmap.obj \
14        IconBitmapUtils.obj \
15        Registry.obj \
16        ShellExt.obj \
17        StringUtils.obj \
18        SysInfo.obj \
19        dirstate.obj \
20        Winstat64.obj \
21        Dirstatecache.obj \
22        DirectoryStatus.obj \
23        Thgstatus.obj \
24        QueryDirstate.obj \
25        ThgVersion.obj
26
27OBJECTS_TERMINATE = Thgstatus.obj \
28        RegistryConfig.obj \
29        ThgDebug.obj
30
31LIBS    = shlwapi.lib gdiplus.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Msi.lib
32DEFFILE = ShellExt.def
33
34
35# /MT = statically linked runtime libraries /MD = dynamically linked
36# THG_EXTRA_CPPFLAGS is taken from environment (may be undefined)
37CPPFLAGS         = /nologo /Ox /W2 /EHsc /MT /DAPPMAIN /DTHG_DEBUG $(THG_EXTRA_CPPFLAGS)
38BASE_LDFLAGS     = /nologo /INCREMENTAL:NO /MANIFEST $(LIBS)
39LDFLAGS_THGSHELL = $(BASE_LDFLAGS) /DLL /DEF:$(DEFFILE)
40LDFLAGS_DIRSTATE = $(BASE_LDFLAGS) /SUBSYSTEM:CONSOLE
41LDFLAGS_TERMINATE = $(BASE_LDFLAGS) /DLL /DEF:terminate.def
42
43
44THGSHELL_TARGET = THgShell$(THG_PLATFORM).dll
45TERMINATE_TARGET = terminate-$(THG_PLATFORM).dll
46
47all: $(THGSHELL_TARGET) $(TERMINATE_TARGET)
48
49clean:
50    del *.obj *.dll *.exe *.lib *.exp *.manifest *.res parentid.h ThgCLSIDs.wxi
51
52ThgVersion:
53    create-parentid-h.cmd
54
55$(THGSHELL_TARGET): ThgVersion $(OBJECTS_THGSGELL)
56    cl /EP ThgCLSIDs-template.wxi > ThgCLSIDs.wxi
57    rc /dTHG_SHELL_FNAME="$@" $(THG_EXTRA_RCFLAGS) shellext.rc
58    link /OUT:$@ $(LDFLAGS_THGSHELL) $** shellext.res
59    mt -nologo -manifest $@.manifest -outputresource:"$@;#2"
60
61dirstate.exe: dirstate.obj $(OBJECTS_DIRSTATE)
62    link /OUT:$@ $(LDFLAGS_DIRSTATE) $**
63    mt -nologo -manifest $@.manifest -outputresource:"$@;#1"
64
65$(TERMINATE_TARGET): terminate.obj $(OBJECTS_TERMINATE)
66    link /OUT:$@ $(LDFLAGS_TERMINATE) $**
67    mt -nologo -manifest $@.manifest -outputresource:"$@;#1"