##// END OF EJS Templates
hgk: simplify tags parser...
hgk: simplify tags parser As when hg tags is being called without -v option, it returns lines with two elements in each, we can just interate them as if it were a usual Tcl list using foreach and two variables. Line endings and whitespace don't matter when doing so, so we may keep them as is. When we're processing the lines, tag variable is assigned a tag name, and rev is a string in form of revision:hash which we can split on colon. As Tcl8.4 lacks lassign command, and using lindex makes code a bit less readable, we use foreach to iterate over two-element list.

File last commit:

r13246:a01c52b0 stable
r18808:962844e8 default
Show More
mercurial.iss
148 lines | 5.4 KiB | text/plain | TextLexer
Bryan O'Sullivan
Add Windows installer file....
r1290 ; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
Steve Borho
iss: take version from iscc command line or __version__.py...
r9356
#ifndef VERSION
#define FileHandle
#define FileLine
#define VERSION = "unknown"
#if FileHandle = FileOpen(SourcePath + "\..\..\mercurial\__version__.py")
#expr FileLine = FileRead(FileHandle)
#expr FileLine = FileRead(FileHandle)
#define VERSION = Copy(FileLine, Pos('"', FileLine)+1, Len(FileLine)-Pos('"', FileLine)-1)
#endif
#if FileHandle
#expr FileClose(FileHandle)
#endif
#pragma message "Detected Version: " + VERSION
#endif
Pascal Quantin
win32: 64-bit Inno Setup installer
r12263 #ifndef ARCH
#define ARCH = "x86"
#endif
Bryan O'Sullivan
Add Windows installer file....
r1290 [Setup]
Pascal Quantin
Update copyright year to 2010
r10209 AppCopyright=Copyright 2005-2010 Matt Mackall and others
Bryan O'Sullivan
Add Windows installer file....
r1290 AppName=Mercurial
Pascal Quantin
win32: 64-bit Inno Setup installer
r12263 #if ARCH == "x64"
AppVerName=Mercurial {#VERSION} (64-bit)
OutputBaseFilename=Mercurial-{#VERSION}-x64
ArchitecturesAllowed=x64
ArchitecturesInstallIn64BitMode=x64
#else
Steve Borho
iss: take version from iscc command line or __version__.py...
r9356 AppVerName=Mercurial {#VERSION}
Pascal Quantin
win32: 64-bit Inno Setup installer
r12263 OutputBaseFilename=Mercurial-{#VERSION}
#endif
Bryan O'Sullivan
Add Windows installer file....
r1290 InfoAfterFile=contrib/win32/postinstall.txt
LicenseFile=COPYING
ShowLanguageDialog=yes
AppPublisher=Matt Mackall and others
Dirkjan Ochtman
change wiki/bts URLs to point to new hostname
r8936 AppPublisherURL=http://mercurial.selenic.com/
AppSupportURL=http://mercurial.selenic.com/
AppUpdatesURL=http://mercurial.selenic.com/
Bryan O'Sullivan
Add Windows installer file....
r1290 AppID={{4B95A5F1-EF59-4B08-BED8-C891C46121B3}
AppContact=mercurial@selenic.com
Steve Borho
win32: move default install path inside program files...
r5625 DefaultDirName={pf}\Mercurial
Steve Borho
win32: use relative path to install source...
r5626 SourceDir=..\..
Steve Borho
iss: take version from iscc command line or __version__.py...
r9356 VersionInfoDescription=Mercurial distributed SCM (version {#VERSION})
Pascal Quantin
Update copyright year to 2010
r10209 VersionInfoCopyright=Copyright 2005-2010 Matt Mackall and others
Bryan O'Sullivan
Add Windows installer file....
r1290 VersionInfoCompany=Matt Mackall and others
InternalCompressLevel=max
SolidCompression=true
Pascal Quantin
Add Lee Cantey's installer icon to win32 installer...
r7659 SetupIconFile=contrib\win32\mercurial.ico
Bryan O'Sullivan
Add Windows installer file....
r1290 AllowNoIcons=true
DefaultGroupName=Mercurial
Lee Cantey
Fixes to not require administrator privleges and use private copies of DLLs when running the Windows installer....
r4629 PrivilegesRequired=none
Bryan O'Sullivan
Add Windows installer file....
r1290
[Files]
Source: contrib\mercurial.el; DestDir: {app}/Contrib
Steve Borho
win32: include contrib/vim in Windows package
r5627 Source: contrib\vim\*.*; DestDir: {app}/Contrib/Vim
Steve Borho
win32: include zsh_completion in Windows package
r5628 Source: contrib\zsh_completion; DestDir: {app}/Contrib
Martin Geisler
mercurial.iss: backout 08bbed8ac9b8...
r10029 Source: contrib\bash_completion; DestDir: {app}/Contrib
Pascal Quantin
mercurial.iss: add tcsh completion script
r10031 Source: contrib\tcsh_completion; DestDir: {app}/Contrib
Source: contrib\tcsh_completion_build.sh; DestDir: {app}/Contrib
Pascal Quantin
Package hgk Tcl/Tk script in win32 installer...
r7663 Source: contrib\hgk; DestDir: {app}/Contrib; DestName: hgk.tcl
Pascal Quantin
Add RelaxNG schema to win32 installer
r10182 Source: contrib\xml.rnc; DestDir: {app}/Contrib
Pascal Quantin
Add shrink-revlog.py to win32 installer
r10235 Source: contrib\shrink-revlog.py; DestDir: {app}/Contrib
Pascal Quantin
win32: add Emacs scripts to Inno Setup installer
r12080 Source: contrib\mercurial.el; DestDir: {app}/Contrib
Source: contrib\mq.el; DestDir: {app}/Contrib
Pascal Quantin
win32: add hgweb scripts to Inno Setup installer
r12081 Source: contrib\hgweb.fcgi; DestDir: {app}/Contrib
Source: contrib\hgweb.wsgi; DestDir: {app}/Contrib
Lee Cantey
Remove patchbomb from list of contrib files to install since it's now an extension....
r1844 Source: contrib\win32\ReadMe.html; DestDir: {app}; Flags: isreadme
Pascal Quantin
Update mercurial.ini file packaged in win32 installer...
r7662 Source: contrib\mergetools.hgrc; DestDir: {tmp};
Source: contrib\win32\mercurial.ini; DestDir: {app}; DestName: Mercurial.ini; Check: CheckFile; AfterInstall: ConcatenateFiles;
Lee Cantey
Remove patchbomb from list of contrib files to install since it's now an extension....
r1844 Source: contrib\win32\postinstall.txt; DestDir: {app}; DestName: ReleaseNotes.txt
Lee Cantey
Fixes to not require administrator privleges and use private copies of DLLs when running the Windows installer....
r4629 Source: dist\hg.exe; DestDir: {app}; AfterInstall: Touch('{app}\hg.exe.local')
Pascal Quantin
win32: 64-bit Inno Setup installer
r12263 #if ARCH == "x64"
Source: dist\*.dll; Destdir: {app}
Source: dist\*.pyd; Destdir: {app}
#else
Pascal Quantin
Bundle python dll in win32 installer if present...
r8057 Source: dist\python*.dll; Destdir: {app}; Flags: skipifsourcedoesntexist
Steve Borho
iss: make mfc*.dll and msvc*.dll optional...
r9357 Source: dist\msvc*.dll; DestDir: {app}; Flags: skipifsourcedoesntexist
Pascal Quantin
win32: 64-bit Inno Setup installer
r12263 Source: dist\w9xpopen.exe; DestDir: {app}
#endif
Pascal Quantin
Add Python 2.6 support to win32 installer...
r8058 Source: dist\Microsoft.VC*.CRT.manifest; DestDir: {app}; Flags: skipifsourcedoesntexist
Pascal Quantin
win32: 64-bit Inno Setup installer
r12263 Source: dist\library.zip; DestDir: {app}
Marco Barisione
Automatically add the path of hg to %PATH% using add_path
r2384 Source: dist\add_path.exe; DestDir: {app}
Pascal Quantin
win32: add cacert.pem file to Inno Setup installer
r13246 Source: dist\cacert.pem; Destdir: {app}
Lee Cantey
Add html docs and use for help shortcut
r4822 Source: doc\*.html; DestDir: {app}\Docs
Pascal Quantin
Add style.css file to Inno Setup script
r9633 Source: doc\style.css; DestDir: {app}\Docs
Pascal Quantin
Update win32 installer with changes from f91e5630ce7e
r10002 Source: mercurial\help\*.txt; DestDir: {app}\help
Pascal Quantin
win32: update Inno Setup build instructions with up-to-date software
r12262 Source: mercurial\locale\*.*; DestDir: {app}\locale; Flags: recursesubdirs createallsubdirs skipifsourcedoesntexist
Pascal Quantin
Update win32 installer with changes from f91e5630ce7e
r10002 Source: mercurial\templates\*.*; DestDir: {app}\Templates; Flags: recursesubdirs createallsubdirs
Lee Cantey
Remove patchbomb from list of contrib files to install since it's now an extension....
r1844 Source: CONTRIBUTORS; DestDir: {app}; DestName: Contributors.txt
Bryan O'Sullivan
Add Windows installer file....
r1290 Source: COPYING; DestDir: {app}; DestName: Copying.txt
[INI]
Dirkjan Ochtman
change wiki/bts URLs to point to new hostname
r8936 Filename: {app}\Mercurial.url; Section: InternetShortcut; Key: URL; String: http://mercurial.selenic.com/
Pascal Quantin
win32: add cacert.pem file to Inno Setup installer
r13246 Filename: {app}\Mercurial.ini; Section: web; Key: cacerts; String: {app}\cacert.pem
Bryan O'Sullivan
Add Windows installer file....
r1290
[UninstallDelete]
Type: files; Name: {app}\Mercurial.url
Pascal Quantin
Add shrink-revlog.py to win32 installer
r10235 Type: files; Name: {app}\Contrib\shrink-revlog.pyc
Bryan O'Sullivan
Add Windows installer file....
r1290
[Icons]
Name: {group}\Uninstall Mercurial; Filename: {uninstallexe}
Lee Cantey
Add html docs and use for help shortcut
r4822 Name: {group}\Mercurial Command Reference; Filename: {app}\Docs\hg.1.html
Pascal Quantin
Win32 installer: add hgrc.5.html and hgignore.5.html links to Start Menu folder
r8056 Name: {group}\Mercurial Configuration Files; Filename: {app}\Docs\hgrc.5.html
Name: {group}\Mercurial Ignore Files; Filename: {app}\Docs\hgignore.5.html
Bryan O'Sullivan
Add Windows installer file....
r1290 Name: {group}\Mercurial Web Site; Filename: {app}\Mercurial.url
Marco Barisione
Automatically add the path of hg to %PATH% using add_path
r2384
[Run]
Filename: "{app}\add_path.exe"; Parameters: "{app}"; Flags: postinstall; Description: "Add the installation path to the search path"
[UninstallRun]
Filename: "{app}\add_path.exe"; Parameters: "/del {app}"
Lee Cantey
Fixes to not require administrator privleges and use private copies of DLLs when running the Windows installer....
r4629
[UninstallDelete]
Type: files; Name: "{app}\hg.exe.local"
Pascal Quantin
win32: update Inno Setup build instructions with up-to-date software
r12262
Pascal Quantin
Update mercurial.ini file packaged in win32 installer...
r7662 [Code]
var
WriteFile: Boolean;
CheckDone: Boolean;
Lee Cantey
Fixes to not require administrator privleges and use private copies of DLLs when running the Windows installer....
r4629
Pascal Quantin
Update mercurial.ini file packaged in win32 installer...
r7662 function CheckFile(): Boolean;
begin
if not CheckDone then begin
WriteFile := True;
if FileExists(ExpandConstant(CurrentFileName)) then begin
WriteFile := MsgBox('' + ExpandConstant(CurrentFileName) + '' #13#13 'The file already exists.' #13#13 'Would you like Setup to overwrite it?', mbConfirmation, MB_YESNO) = idYes;
end;
CheckDone := True;
end;
Result := WriteFile;
end;
procedure ConcatenateFiles();
var
MergeConfigs: TArrayOfString;
begin
if LoadStringsFromFile(ExpandConstant('{tmp}\mergetools.hgrc'),MergeConfigs) then begin
SaveStringsToFile(ExpandConstant(CurrentFileName),MergeConfigs,True);
end;
end;
Lee Cantey
Fixes to not require administrator privleges and use private copies of DLLs when running the Windows installer....
r4629 procedure Touch(fn: String);
begin
SaveStringToFile(ExpandConstant(fn), '', False);
end;