##// END OF EJS Templates
win32: add Emacs scripts to Inno Setup installer
Pascal Quantin -
r12080:eb7ddba6 stable
parent child Browse files
Show More
@@ -1,127 +1,129 b''
1 1 ; Script generated by the Inno Setup Script Wizard.
2 2 ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
3 3
4 4 #ifndef VERSION
5 5 #define FileHandle
6 6 #define FileLine
7 7 #define VERSION = "unknown"
8 8 #if FileHandle = FileOpen(SourcePath + "\..\..\mercurial\__version__.py")
9 9 #expr FileLine = FileRead(FileHandle)
10 10 #expr FileLine = FileRead(FileHandle)
11 11 #define VERSION = Copy(FileLine, Pos('"', FileLine)+1, Len(FileLine)-Pos('"', FileLine)-1)
12 12 #endif
13 13 #if FileHandle
14 14 #expr FileClose(FileHandle)
15 15 #endif
16 16 #pragma message "Detected Version: " + VERSION
17 17 #endif
18 18
19 19 [Setup]
20 20 AppCopyright=Copyright 2005-2010 Matt Mackall and others
21 21 AppName=Mercurial
22 22 AppVerName=Mercurial {#VERSION}
23 23 InfoAfterFile=contrib/win32/postinstall.txt
24 24 LicenseFile=COPYING
25 25 ShowLanguageDialog=yes
26 26 AppPublisher=Matt Mackall and others
27 27 AppPublisherURL=http://mercurial.selenic.com/
28 28 AppSupportURL=http://mercurial.selenic.com/
29 29 AppUpdatesURL=http://mercurial.selenic.com/
30 30 AppID={{4B95A5F1-EF59-4B08-BED8-C891C46121B3}
31 31 AppContact=mercurial@selenic.com
32 32 OutputBaseFilename=Mercurial-{#VERSION}
33 33 DefaultDirName={pf}\Mercurial
34 34 SourceDir=..\..
35 35 VersionInfoDescription=Mercurial distributed SCM (version {#VERSION})
36 36 VersionInfoCopyright=Copyright 2005-2010 Matt Mackall and others
37 37 VersionInfoCompany=Matt Mackall and others
38 38 InternalCompressLevel=max
39 39 SolidCompression=true
40 40 SetupIconFile=contrib\win32\mercurial.ico
41 41 AllowNoIcons=true
42 42 DefaultGroupName=Mercurial
43 43 PrivilegesRequired=none
44 44
45 45 [Files]
46 46 Source: contrib\mercurial.el; DestDir: {app}/Contrib
47 47 Source: contrib\vim\*.*; DestDir: {app}/Contrib/Vim
48 48 Source: contrib\zsh_completion; DestDir: {app}/Contrib
49 49 Source: contrib\bash_completion; DestDir: {app}/Contrib
50 50 Source: contrib\tcsh_completion; DestDir: {app}/Contrib
51 51 Source: contrib\tcsh_completion_build.sh; DestDir: {app}/Contrib
52 52 Source: contrib\hgk; DestDir: {app}/Contrib; DestName: hgk.tcl
53 53 Source: contrib\xml.rnc; DestDir: {app}/Contrib
54 54 Source: contrib\shrink-revlog.py; DestDir: {app}/Contrib
55 Source: contrib\mercurial.el; DestDir: {app}/Contrib
56 Source: contrib\mq.el; DestDir: {app}/Contrib
55 57 Source: contrib\win32\ReadMe.html; DestDir: {app}; Flags: isreadme
56 58 Source: contrib\mergetools.hgrc; DestDir: {tmp};
57 59 Source: contrib\win32\mercurial.ini; DestDir: {app}; DestName: Mercurial.ini; Check: CheckFile; AfterInstall: ConcatenateFiles;
58 60 Source: contrib\win32\postinstall.txt; DestDir: {app}; DestName: ReleaseNotes.txt
59 61 Source: dist\hg.exe; DestDir: {app}; AfterInstall: Touch('{app}\hg.exe.local')
60 62 Source: dist\python*.dll; Destdir: {app}; Flags: skipifsourcedoesntexist
61 63 Source: dist\library.zip; DestDir: {app}
62 64 Source: dist\mfc*.dll; DestDir: {app}; Flags: skipifsourcedoesntexist
63 65 Source: dist\msvc*.dll; DestDir: {app}; Flags: skipifsourcedoesntexist
64 66 Source: dist\Microsoft.VC*.CRT.manifest; DestDir: {app}; Flags: skipifsourcedoesntexist
65 67 Source: dist\Microsoft.VC*.MFC.manifest; DestDir: {app}; Flags: skipifsourcedoesntexist
66 68 Source: dist\w9xpopen.exe; DestDir: {app}
67 69 Source: dist\add_path.exe; DestDir: {app}
68 70 Source: doc\*.html; DestDir: {app}\Docs
69 71 Source: doc\style.css; DestDir: {app}\Docs
70 72 Source: mercurial\help\*.txt; DestDir: {app}\help
71 73 Source: mercurial\locale\*.*; DestDir: {app}\locale; Flags: recursesubdirs createallsubdirs
72 74 Source: mercurial\templates\*.*; DestDir: {app}\Templates; Flags: recursesubdirs createallsubdirs
73 75 Source: CONTRIBUTORS; DestDir: {app}; DestName: Contributors.txt
74 76 Source: COPYING; DestDir: {app}; DestName: Copying.txt
75 77
76 78 [INI]
77 79 Filename: {app}\Mercurial.url; Section: InternetShortcut; Key: URL; String: http://mercurial.selenic.com/
78 80
79 81 [UninstallDelete]
80 82 Type: files; Name: {app}\Mercurial.url
81 83 Type: files; Name: {app}\Contrib\shrink-revlog.pyc
82 84
83 85 [Icons]
84 86 Name: {group}\Uninstall Mercurial; Filename: {uninstallexe}
85 87 Name: {group}\Mercurial Command Reference; Filename: {app}\Docs\hg.1.html
86 88 Name: {group}\Mercurial Configuration Files; Filename: {app}\Docs\hgrc.5.html
87 89 Name: {group}\Mercurial Ignore Files; Filename: {app}\Docs\hgignore.5.html
88 90 Name: {group}\Mercurial Web Site; Filename: {app}\Mercurial.url
89 91
90 92 [Run]
91 93 Filename: "{app}\add_path.exe"; Parameters: "{app}"; Flags: postinstall; Description: "Add the installation path to the search path"
92 94
93 95 [UninstallRun]
94 96 Filename: "{app}\add_path.exe"; Parameters: "/del {app}"
95 97
96 98 [UninstallDelete]
97 99 Type: files; Name: "{app}\hg.exe.local"
98 100 [Code]
99 101 var
100 102 WriteFile: Boolean;
101 103 CheckDone: Boolean;
102 104
103 105 function CheckFile(): Boolean;
104 106 begin
105 107 if not CheckDone then begin
106 108 WriteFile := True;
107 109 if FileExists(ExpandConstant(CurrentFileName)) then begin
108 110 WriteFile := MsgBox('' + ExpandConstant(CurrentFileName) + '' #13#13 'The file already exists.' #13#13 'Would you like Setup to overwrite it?', mbConfirmation, MB_YESNO) = idYes;
109 111 end;
110 112 CheckDone := True;
111 113 end;
112 114 Result := WriteFile;
113 115 end;
114 116
115 117 procedure ConcatenateFiles();
116 118 var
117 119 MergeConfigs: TArrayOfString;
118 120 begin
119 121 if LoadStringsFromFile(ExpandConstant('{tmp}\mergetools.hgrc'),MergeConfigs) then begin
120 122 SaveStringsToFile(ExpandConstant(CurrentFileName),MergeConfigs,True);
121 123 end;
122 124 end;
123 125
124 126 procedure Touch(fn: String);
125 127 begin
126 128 SaveStringToFile(ExpandConstant(fn), '', False);
127 129 end;
General Comments 0
You need to be logged in to leave comments. Login now