Merge master.
[dcpomatic.git] / platform / windows / installer.nsi.64.in
1 !include "MUI2.nsh"
2 !include "x64.nsh"
3
4 Name "DCP-o-matic"
5
6 RequestExecutionLevel admin
7
8 outFile "DCP-o-matic @version@ 64-bit Installer.exe"
9 !define MUI_ICON "%resources%/dcpomatic.ico"
10 !define MUI_UNICON "%resources%/dcpomatic.ico"
11 !define MUI_SPECIALBITMAP "%resources%/dcpomatic.bmp"
12
13 InstallDir "$PROGRAMFILES\DCP-o-matic"
14
15 !insertmacro MUI_PAGE_WELCOME
16 !insertmacro MUI_PAGE_LICENSE "../../../COPYING"
17 !insertmacro MUI_PAGE_DIRECTORY
18 !insertmacro MUI_PAGE_INSTFILES
19 !insertmacro MUI_PAGE_FINISH
20
21 !insertmacro MUI_UNPAGE_WELCOME
22 !insertmacro MUI_UNPAGE_CONFIRM
23 !insertmacro MUI_UNPAGE_INSTFILES
24 !insertmacro MUI_UNPAGE_FINISH
25  
26 !insertmacro MUI_LANGUAGE "English"
27
28 Section "install" "Installation info"
29
30 ${If} ${RunningX64}
31    DetailPrint "Installer running on 64-bit host"
32    ; disable registry redirection (enable access to 64-bit portion of registry)
33    SetRegView 64
34    ; change install dir
35    StrCpy $INSTDIR "$PROGRAMFILES64\DCP-o-matic"
36 ${EndIf}
37
38 SetOutPath "$INSTDIR\bin"
39
40 File "%deps%/bin/asdcp-libdcp.dll"
41 File "%deps%/bin/avcodec-55.dll"
42 File "%deps%/bin/avfilter-3.dll"
43 File "%deps%/bin/avformat-55.dll"
44 File "%deps%/bin/avutil-52.dll"
45 File "%deps%/bin/avdevice-55.dll"
46 File "%deps%/bin/dcp.dll"
47 File "%deps%/bin/libintl-8.dll"
48 File "%deps%/bin/kumu-libdcp.dll"
49 File "%deps%/bin/libboost_chrono-mt.dll"
50 File "%deps%/bin/libboost_filesystem-mt.dll"
51 File "%deps%/bin/libboost_system-mt.dll"
52 File "%deps%/bin/libboost_thread_win32-mt.dll"
53 File "%deps%/bin/libboost_date_time-mt.dll"
54 File "%deps%/bin/libeay32.dll"
55 File "%deps%/bin/libgcc_s_sjlj-1.dll"
56 File "%deps%/bin/libgio-2.0-0.dll"
57 File "%deps%/bin/libglib-2.0-0.dll"
58 File "%deps%/bin/libgobject-2.0-0.dll"
59 File "%deps%/bin/libiconv-2.dll"
60 File "%deps%/bin/libjpeg-8.dll"
61 File "%deps%/bin/libMagick++-5.dll"
62 File "%deps%/bin/libMagickCore-5.dll"
63 File "%deps%/bin/libMagickWand-5.dll"
64 File "%deps%/bin/libopenjpeg-1.dll"
65 File "%deps%/bin/libpng15-15.dll"
66 File "%deps%/bin/libsigc-2.0-0.dll"
67 File "%deps%/bin/libsndfile-1.dll"
68 File "%deps%/bin/libssh.dll"
69 File "%deps%/bin/libstdc++-6.dll"
70 File "%deps%/bin/postproc-52.dll"
71 File "%deps%/bin/swresample-0.dll"
72 File "%deps%/bin/swscale-2.dll"
73 File "%deps%/bin/zlib1.dll"
74 File "%deps%/bin/libjpeg-8.dll"
75 File "%deps%/bin/wxbase294u_gcc_custom.dll"
76 File "%deps%/bin/wxmsw294u_core_gcc_custom.dll"
77 File "%deps%/bin/wxmsw294u_adv_gcc_custom.dll"
78 File "%deps%/bin/libcairo-2.dll"
79 File "%deps%/bin/libfreetype-6.dll"
80 File "%deps%/bin/libgthread-2.0-0.dll"
81 File "%deps%/bin/libpango-1.0-0.dll"
82 File "%deps%/bin/libgmodule-2.0-0.dll"
83 File "%deps%/bin/libpangocairo-1.0-0.dll"
84 File "%deps%/bin/libpangowin32-1.0-0.dll"
85 File "%deps%/bin/libtiff-5.dll"
86 File "%deps%/bin/libglibmm-2.4-1.dll"
87 File "%deps%/bin/libxml++-2.6-2.dll"
88 File "%deps%/bin/libxml2-2.dll"
89 File "%deps%/bin/libpixman-1-0.dll"
90 File "%deps%/bin/libfontconfig-1.dll"
91 File "%deps%/bin/libexpat-1.dll"
92 File "%deps%/bin/libbz2.dll"
93 File "%deps%/bin/cxml.dll"
94 File "%deps%/bin/ffprobe.exe"
95
96 File "%binaries%/src/wx/dcpomatic-wx.dll"
97 File "%binaries%/src/lib/dcpomatic.dll"
98 File "%binaries%/src/tools/dcpomatic.exe"
99 File "%binaries%/src/tools/dcpomatic_batch.exe"
100 File "%binaries%/src/tools/dcpomatic_cli.exe"
101 File "%binaries%/src/tools/dcpomatic_server_cli.exe"
102 File "%binaries%/src/tools/dcpomatic_server.exe"
103
104 # I don't know why, but sometimes it seems that 
105 # delegates.xml must be in with the binaries, and
106 # sometimes in the $PROFILE.  Meh.
107 File "%deps%/etc/ImageMagick/delegates.xml"
108 SetOutPath "$PROFILE\.magick"
109 File "%deps%/etc/ImageMagick/delegates.xml"
110
111 SetOutPath "$INSTDIR\locale\fr\LC_MESSAGES"
112 File "%binaries%/src/lib/mo/fr_FR/libdcpomatic.mo"
113 File "%binaries%/src/wx/mo/fr_FR/libdcpomatic-wx.mo"
114 File "%binaries%/src/tools/mo/fr_FR/dcpomatic.mo"
115 SetOutPath "$INSTDIR\locale\it\LC_MESSAGES"
116 File "%binaries%/src/lib/mo/it_IT/libdcpomatic.mo"
117 File "%binaries%/src/wx/mo/it_IT/libdcpomatic-wx.mo"
118 File "%binaries%/src/tools/mo/it_IT/dcpomatic.mo"
119 SetOutPath "$INSTDIR\locale\es\LC_MESSAGES"
120 File "%binaries%/src/lib/mo/es_ES/libdcpomatic.mo"
121 File "%binaries%/src/wx/mo/es_ES/libdcpomatic-wx.mo"
122 File "%binaries%/src/tools/mo/es_ES/dcpomatic.mo"
123 SetOutPath "$INSTDIR\locale\sv\LC_MESSAGES"
124 File "%binaries%/src/lib/mo/sv_SE/libdcpomatic.mo"
125 File "%binaries%/src/wx/mo/sv_SE/libdcpomatic-wx.mo"
126 File "%binaries%/src/tools/mo/sv_SE/dcpomatic.mo"
127
128 CreateShortCut "$DESKTOP\DCP-o-matic.lnk" "$INSTDIR\bin\dcpomatic.exe" ""
129 CreateShortCut "$DESKTOP\DCP-o-matic batch converter.lnk" "$INSTDIR\bin\dcpomatic_batch.exe" ""
130 CreateShortCut "$DESKTOP\DCP-o-matic encode server.lnk" "$INSTDIR\bin\dcpomatic_server.exe" ""
131  
132 CreateDirectory "$SMPROGRAMS\DCP-o-matic"
133 CreateShortCut "$SMPROGRAMS\DCP-o-matic\Uninstall DCP-o-matic.lnk" "$INSTDIR\Uninstall.exe" "" "$INSTDIR\Uninstall.exe" 0
134 CreateShortCut "$SMPROGRAMS\DCP-o-matic\DCP-o-matic.lnk" "$INSTDIR\bin\dcpomatic.exe" "" "$INSTDIR\bin\dcpomatic.exe" 0
135 CreateShortCut "$SMPROGRAMS\DCP-o-matic\DCP-o-matic batch converter.lnk" "$INSTDIR\bin\dcpomatic.exe" "" "$INSTDIR\bin\dcpomatic_batch.exe" 0
136 CreateShortCut "$SMPROGRAMS\DCP-o-matic\DCP-o-matic encode server.lnk" "$INSTDIR\bin\dcpomatic_server.exe" "" "$INSTDIR\bin\dcpomatic_server.exe" 0
137  
138 WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\DCP-o-matic" "DisplayName" "DCP-o-matic (remove only)"
139 WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\DCP-o-matic" "UninstallString" "$INSTDIR\Uninstall.exe"
140  
141 WriteUninstaller "$INSTDIR\Uninstall.exe"
142  
143 SectionEnd
144  
145  
146 Section "Uninstall"
147  
148 RMDir /r "$INSTDIR\*.*"    
149 RMDir "$INSTDIR"
150 Delete "$DESKTOP\DCP-o-matic.lnk"
151 Delete "$DESKTOP\DCP-o-matic batch converter.lnk"
152 Delete "$DESKTOP\DCP-o-matic encode server.lnk"
153 Delete "$SMPROGRAMS\DCP-o-matic\*.*"
154 RmDir  "$SMPROGRAMS\DCP-o-matic"
155 DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\DCP-o-matic"
156 DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\DCP-o-matic"
157  
158 SectionEnd