/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. OBJECTS_DIRSTATE = TortoiseUtils.obj \
  2. Direntry.obj \
  3. Directory.obj \
  4. Winstat.obj \
  5. RegistryConfig.obj \
  6. ThgDebug.obj
  7. OBJECTS_THGSGELL = $(OBJECTS_DIRSTATE) \
  8. InitStatus.obj \
  9. CShellExtCMenu.obj \
  10. CShellExtOverlay.obj \
  11. TortoiseIconBitmap.obj \
  12. IconBitmapUtils.obj \
  13. Registry.obj \
  14. ShellExt.obj \
  15. StringUtils.obj \
  16. SysInfo.obj \
  17. dirstate.obj \
  18. Winstat64.obj \
  19. Dirstatecache.obj \
  20. DirectoryStatus.obj \
  21. Thgstatus.obj \
  22. QueryDirstate.obj \
  23. ThgVersion.obj
  24. OBJECTS_TERMINATE = Thgstatus.obj \
  25. RegistryConfig.obj \
  26. ThgDebug.obj
  27. LIBS = 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
  28. DEFFILE = ShellExt.def
  29. # /MT = statically linked runtime libraries /MD = dynamically linked
  30. # THG_EXTRA_CPPFLAGS is taken from environment (may be undefined)
  31. CPPFLAGS = /nologo /Ox /W2 /EHsc /MT /DAPPMAIN /DTHG_DEBUG $(THG_EXTRA_CPPFLAGS)
  32. BASE_LDFLAGS = /nologo /INCREMENTAL:NO /MANIFEST $(LIBS)
  33. LDFLAGS_THGSHELL = $(BASE_LDFLAGS) /DLL /DEF:$(DEFFILE)
  34. LDFLAGS_DIRSTATE = $(BASE_LDFLAGS) /SUBSYSTEM:CONSOLE
  35. LDFLAGS_TERMINATE = $(BASE_LDFLAGS) /DLL /DEF:terminate.def
  36. THGSHELL_TARGET = THgShell$(THG_PLATFORM).dll
  37. TERMINATE_TARGET = terminate-$(THG_PLATFORM).dll
  38. all: $(THGSHELL_TARGET) $(TERMINATE_TARGET)
  39. clean:
  40. del *.obj *.dll *.exe *.lib *.exp *.manifest *.res parentid.h ThgCLSIDs.wxi
  41. ThgVersion:
  42. create-parentid-h.cmd
  43. $(THGSHELL_TARGET): ThgVersion $(OBJECTS_THGSGELL)
  44. cl /EP ThgCLSIDs-template.wxi > ThgCLSIDs.wxi
  45. rc /dTHG_SHELL_FNAME="$@" $(THG_EXTRA_RCFLAGS) shellext.rc
  46. link /OUT:$@ $(LDFLAGS_THGSHELL) $** shellext.res
  47. mt -nologo -manifest $@.manifest -outputresource:"$@;#2"
  48. dirstate.exe: dirstate.obj $(OBJECTS_DIRSTATE)
  49. link /OUT:$@ $(LDFLAGS_DIRSTATE) $**
  50. mt -nologo -manifest $@.manifest -outputresource:"$@;#1"
  51. $(TERMINATE_TARGET): terminate.obj $(OBJECTS_TERMINATE)
  52. link /OUT:$@ $(LDFLAGS_TERMINATE) $**
  53. mt -nologo -manifest $@.manifest -outputresource:"$@;#1"