fakeroot debian/rules binary
# These targets provide for windows native builds
+INNOSETUP := $(shell cygpath -au "$(PROGRAMFILES)/Inno Setup 5/Compil32.exe")
-windows-exe:
- PYTHON=$(PYTHON) $(PP) $(MAKE) -C windows
+.PHONY: hatch-eggs windows-exe windows-installer
+
+hatch-eggs:
+ $(PP) $(PYTHON) misc/hatch-eggs.py
+
+windows-exe: hatch-eggs
+ #PYTHON=$(PYTHON) $(PP) $(MAKE) -C windows
+ cd windows && $(PP) $(PYTHON) setup.py py2exe
windows-installer: windows-exe
- $(MAKE) -C windows installer
+ $(PP) $(PYTHON) misc/sub-ver.py windows/installer.tmpl >windows/installer.iss
+ cd windows && "$(INNOSETUP)" /cc installer.iss
+
--- /dev/null
+#! /usr/bin/python
+
+import os.path
+import sys
+import zipfile
+
+path = []
+if sys.platform == 'win32':
+ support_lib = "support/Lib/site-packages"
+else:
+ pyver = "python%d.%d" % (sys.version_info[:2])
+ support_lib = "support/lib/%s/site-packages" % pyver
+
+if os.path.exists(support_lib):
+ for fn in os.listdir(support_lib):
+ if fn.endswith(".egg"):
+ path.append(os.path.abspath(os.path.join(support_lib, fn)))
+
+# We also need to include .egg's in the CWD, because if there is an .egg there
+# then "make build-deps" will take that as satisfying its requirements.
+for fn in os.listdir("."):
+ if fn.endswith(".egg"):
+ path.append(os.path.abspath(os.path.join(os.getcwd(), fn)))
+
+for eggpath in path:
+ if os.path.isfile(eggpath):
+ bak = eggpath + '.bak'
+ os.rename(eggpath, bak)
+ os.mkdir(eggpath)
+ zf = zipfile.ZipFile(bak, 'r')
+ print bak
+ for name in zf.namelist():
+ dirname = os.path.join(eggpath, os.path.dirname(name))
+ if not os.path.isdir(dirname):
+ print 'creating', dirname
+ os.makedirs(dirname)
+ print name
+ f = file(os.path.join(eggpath, name), 'wb')
+ f.write(zf.read(name))
+ f.close()
+
--- /dev/null
+#! /usr/bin/python
+
+from allmydata import __version__ as v
+
+import sys
+
+if len(sys.argv) == 1:
+ input = sys.stdin
+elif len(sys.argv) == 2:
+ fname = sys.argv[1]
+ input = file(fname, 'rb')
+else:
+ raise ValueError('must provide 0 or 1 argument (stdin, or filename)')
+
+vern = {
+ 'major': v.major,
+ 'minor': v.minor,
+ 'point': v.micro,
+ 'micro': v.micro,
+ 'nano' : v.nano,
+ 'build': str(v),
+ }
+
+for line in input.readlines():
+ print line % vern,
+
+++ /dev/null
-
-INNOSETUP := $(shell cygpath -u "$(PROGRAMFILES)/Inno Setup 5/Compile32.exe")
-
-# note that this requires the python path to be set appropriately, and hence this
-# should be invoked by calling the windows-exe taget in the top level makefile
-
-windows-exe:
- $(PYTHON) setup.py py2exe
-
-installer:
- $(INNOSETUP)
- #$(INNOSETUP) /cc installer.iss
+++ /dev/null
-[Setup]
-AppName=Allmydata Tahoe
-AppVerName=Allmydata Tahoe 2.9
-AppVersion=2.9.0
-VersionInfoVersion=2.9.0
-AppPublisher=Allmydata Inc.
-AppPublisherURL=http://www.allmydata.com/
-AppSupportURL=http://www.allmydata.com/support/
-DefaultDirName={pf}\Allmydata.Tahoe
-DefaultGroupName=Allmydata
-; minumum version NT 4, no classic windows
-MinVersion=0,4.0
-Compression=lzma/max
-SolidCompression=yes
-OutputDir=installer/Allmydata_Tahoe_Setup_v2_9_0.exe
-SourceDir=dist
-SetupIconFile=installer.ico
-UninstallDisplayIcon=installer.ico
-; license file needs to be build/all dir
-;LicenseFile=../license.txt
-OutputBaseFilename=AllmydataSetup-%BUILD%
-
-[Files]
-; contents of 'binaries' dir. (consolidated build target)
-Source: "*.*"; DestDir: "{app}\Install"; Flags: restartreplace replacesameversion uninsrestartdelete
-Source: ".\web\*.*"; DestDir: "{app}\web"; Flags: recursesubdirs
-
-[Dirs]
-Name: "{app}\noderoot"
-
-[Icons]
-; Program files entries
-Name: "{group}\Tahoe root dir (web)"; Filename: "{app}\Install\tahoe.exe"; Parameters: "webopen"
-Name: "{group}\Allmydata Help"; Filename: "http://www.allmydata.com/help.php"
-
-[Run]
-; Things performed before the final page of the installer
-Filename: "{app}\Install\tahoesvc.exe"; Parameters: "-install"; Flags: runhidden
-Filename: "{app}\Install\tahoe.exe"; Parameters: "create-client ""{app}\noderoot"""; Description: "Set the node into debug logging mode"; Flags: runhidden
-Filename: "{app}\Install\confwiz.exe"; Flags: hidewizard
-;Filename: "{app}\Install\ReadMe.txt"; Description: "View the ReadMe file"; Flags: unchecked postinstall nowait shellexec skipifdoesntexist
-
-[UninstallRun]
-; Performed before the uninstaller runs to undo things
-Filename: "{sys}\net.exe"; Parameters: "stop Tahoe"; Flags: runhidden
-Filename: "{app}\Install\tahoesvc.exe"; Parameters: "-remove"; Flags: runhidden
-;Filename: "http://www.allmydata.com/redirect/uninstallsurvey.php?build=%BUILD%"; Flags: shellexec
-
-[Registry]
-Root: HKLM; Subkey: "Software\Allmydata"; Flags: uninsdeletekeyifempty
-Root: HKLM; Subkey: "Software\Allmydata"; ValueType: string; ValueName: "Base Dir Path"; ValueData: "{app}\noderoot"; Flags: uninsdeletekey
--- /dev/null
+[Setup]
+AppName=Allmydata Tahoe
+AppVerName=Allmydata Tahoe %(major)d.%(minor)d
+AppVersion=%(major)d.%(minor)d.%(point)d-%(nano)d
+VersionInfoVersion=%(major)d.%(minor)d.%(point)d.%(nano)d
+AppPublisher=Allmydata Inc.
+AppPublisherURL=http://www.allmydata.com/
+AppSupportURL=http://www.allmydata.com/support/
+DefaultDirName={pf}\Allmydata.Tahoe
+DefaultGroupName=Allmydata
+; minumum version NT 4, no classic windows
+MinVersion=0,4.0
+Compression=lzma/max
+SolidCompression=yes
+OutputDir=./installer/
+SourceDir=dist
+SetupIconFile=../installer.ico
+UninstallDisplayIcon=../amdicon.ico
+; license file needs to be build/all dir
+;LicenseFile=../license.txt
+OutputBaseFilename=Allmydata_Tahoe_Setup_v%(major)d_%(minor)d_%(point)d
+
+[Files]
+; contents of 'binaries' dir. (consolidated build target)
+Source: "*.*"; DestDir: "{app}\Install"; Flags: restartreplace replacesameversion uninsrestartdelete
+Source: ".\web\*.*"; DestDir: "{app}\web"; Flags: recursesubdirs
+
+[Dirs]
+Name: "{app}\noderoot"
+
+[Icons]
+; Program files entries
+Name: "{group}\Tahoe root dir (web)"; Filename: "{app}\Install\tahoe.exe"; Parameters: "webopen"
+Name: "{group}\Allmydata Help"; Filename: "http://www.allmydata.com/help.php"
+
+[Run]
+; Things performed before the final page of the installer
+Filename: "{app}\Install\tahoesvc.exe"; Parameters: "-install"; Flags: runhidden
+Filename: "{app}\Install\tahoe.exe"; Parameters: "create-client ""{app}\noderoot"""; Description: "Set the node into debug logging mode"; Flags: runhidden
+Filename: "{app}\Install\confwiz.exe"; Flags: hidewizard
+;Filename: "{app}\Install\ReadMe.txt"; Description: "View the ReadMe file"; Flags: unchecked postinstall nowait shellexec skipifdoesntexist
+
+[UninstallRun]
+; Performed before the uninstaller runs to undo things
+Filename: "{sys}\net.exe"; Parameters: "stop Tahoe"; Flags: runhidden
+Filename: "{app}\Install\tahoesvc.exe"; Parameters: "-remove"; Flags: runhidden
+;Filename: "http://www.allmydata.com/redirect/uninstallsurvey.php?build=%(build)%"; Flags: shellexec
+
+[Registry]
+Root: HKLM; Subkey: "Software\Allmydata"; Flags: uninsdeletekeyifempty
+Root: HKLM; Subkey: "Software\Allmydata"; ValueType: string; ValueName: "Base Dir Path"; ValueData: "{app}\noderoot"; Flags: uninsdeletekey