mirror of
git://git.tartarus.org/simon/puzzles.git
synced 2025-04-21 16:05:44 -07:00
I still haven't managed to get the WinCE port building via bob, but
I should at least check in what I've got. [originally from svn r7542]
This commit is contained in:
38
Buildscr
38
Buildscr
@ -43,6 +43,41 @@ delegate windows
|
|||||||
return puzzles/Output/setup.exe
|
return puzzles/Output/setup.exe
|
||||||
enddelegate
|
enddelegate
|
||||||
|
|
||||||
|
# Build the Pocket PC binaries and CAB.
|
||||||
|
#
|
||||||
|
# NOTE: This part of the build script requires the Windows delegate
|
||||||
|
# server to have the cabwiz program on its PATH. This will
|
||||||
|
# typically be at
|
||||||
|
#
|
||||||
|
# C:\Program Files\Windows CE Tools\WCE420\POCKET PC 2003\Tools
|
||||||
|
#
|
||||||
|
# but it might not be if you've installed it somewhere else, or
|
||||||
|
# have a different version.
|
||||||
|
#
|
||||||
|
# NOTE ALSO: This part of the build is commented out, for the
|
||||||
|
# moment, because cabwiz does unhelpful things when run from within
|
||||||
|
# a bob delegate process (or, more generally, when run from any
|
||||||
|
# terminal-based remote login to a Windows machine, including
|
||||||
|
# Cygwin opensshd and Windows Telnet). The symptom is that cabwiz
|
||||||
|
# just beeps and sits there. Until I figure out how to build the
|
||||||
|
# .cab from an automated process (and I'm willing to consider silly
|
||||||
|
# approaches such as a third-party CAB generator), I don't think I
|
||||||
|
# can sensibly enable this build.
|
||||||
|
|
||||||
|
#in puzzles do perl wceinf.pl wingames.lst > puzzles.inf
|
||||||
|
#delegate windows
|
||||||
|
# in puzzles do cmd /c 'wcearmv4 & nmake -f Makefile.wce clean'
|
||||||
|
# in puzzles do cmd /c 'wcearmv4 & nmake -f Makefile.wce VER=-DREVISION=$(revision)'
|
||||||
|
# # Nasty piece of sh here which saves the return code from cabwiz,
|
||||||
|
# # outputs its errors and/or warnings, and then propagates the
|
||||||
|
# # return code back to bob. If only cabwiz could output to
|
||||||
|
# # standard error LIKE EVERY OTHER COMMAND-LINE UTILITY IN THE
|
||||||
|
# # WORLD, I wouldn't have to do this.
|
||||||
|
# in puzzles do cat puzzles.inf
|
||||||
|
# in puzzles do cmd /c 'wcearmv4 & bash -c cabwiz puzzles.inf /err cabwiz.err /cpu ARMV4'; a=$$?; cat cabwiz.err; exit $$a
|
||||||
|
# return puzzles/puzzles.armv4.cab
|
||||||
|
#enddelegate
|
||||||
|
|
||||||
# Build the help file and the HTML docs.
|
# Build the help file and the HTML docs.
|
||||||
in puzzles do make -f Makefile.doc clean # remove CHM-target HTML
|
in puzzles do make -f Makefile.doc clean # remove CHM-target HTML
|
||||||
in puzzles do make -f Makefile.doc # and rebuild help file...
|
in puzzles do make -f Makefile.doc # and rebuild help file...
|
||||||
@ -84,6 +119,9 @@ deliver puzzles/puzzles.hlp $@
|
|||||||
deliver puzzles/puzzles.cnt $@
|
deliver puzzles/puzzles.cnt $@
|
||||||
deliver puzzles/puzzles.zip $@
|
deliver puzzles/puzzles.zip $@
|
||||||
deliver puzzles/Output/setup.exe puzzles-r$(revision)-installer.exe
|
deliver puzzles/Output/setup.exe puzzles-r$(revision)-installer.exe
|
||||||
|
|
||||||
|
# deliver puzzles/puzzles.armv4.cab $@ # (not built at the moment)
|
||||||
|
|
||||||
# This one isn't in the puzzles subdir, because makedist.sh left it
|
# This one isn't in the puzzles subdir, because makedist.sh left it
|
||||||
# one level up.
|
# one level up.
|
||||||
deliver puzzles*.tar.gz $@
|
deliver puzzles*.tar.gz $@
|
||||||
|
65
wceinf.pl
Normal file
65
wceinf.pl
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
|
||||||
|
# Perl script to generate a .INF file for building a Pocket PC .CAB
|
||||||
|
# archive of Puzzles. This has to be scripted so that it can read
|
||||||
|
# wingames.lst and automatically adjust to the current available
|
||||||
|
# set of puzzles.
|
||||||
|
|
||||||
|
# Usage:
|
||||||
|
#
|
||||||
|
# $ ./wceinf.pl wingames.lst > puzzles.inf
|
||||||
|
|
||||||
|
$lst = shift @ARGV;
|
||||||
|
open LST, "<", $lst;
|
||||||
|
while (<LST>) {
|
||||||
|
chomp;
|
||||||
|
split /:/;
|
||||||
|
push @exes, $_[0];
|
||||||
|
$names{$_[0]} = $_[1];
|
||||||
|
}
|
||||||
|
close LST;
|
||||||
|
|
||||||
|
print '[Version]'."\n";
|
||||||
|
print 'Signature = "$Windows NT$" ; required as-is'."\n";
|
||||||
|
print 'Provider = "Simon Tatham" ; full app name will be "<Provider> <AppName>"'."\n";
|
||||||
|
print 'CESignature = "$Windows CE$" ; required as-is'."\n";
|
||||||
|
print ''."\n";
|
||||||
|
print '[CEStrings]'."\n";
|
||||||
|
print 'AppName = "Puzzle Collection" ; full app name will be "<Provider> <AppName>"'."\n";
|
||||||
|
print 'InstallDir = %CE8%\%AppName% ; "\Program Files\Games\Puzzle Collection" (default install directory)'."\n";
|
||||||
|
print ''."\n";
|
||||||
|
print '[CEDevice.x86]'."\n";
|
||||||
|
print 'ProcessorType = 686'."\n";
|
||||||
|
print ''."\n";
|
||||||
|
print '[CEDevice.ARM]'."\n";
|
||||||
|
print 'ProcessorType = 2577'."\n";
|
||||||
|
print ''."\n";
|
||||||
|
print '[SourceDisksNames.x86] ; CPU-dependent files'."\n";
|
||||||
|
print '2 = ,"x86 Files",,.'."\n";
|
||||||
|
print ''."\n";
|
||||||
|
print '[SourceDisksNames.ARMV4] ; CPU-dependent files'."\n";
|
||||||
|
print '2 = ,"ARM Files",,.'."\n";
|
||||||
|
print ''."\n";
|
||||||
|
print '[SourceDisksFiles]'."\n";
|
||||||
|
for $exe (@exes) {
|
||||||
|
print $exe.' = 2'."\n";
|
||||||
|
}
|
||||||
|
print ''."\n";
|
||||||
|
print '[DefaultInstall]'."\n";
|
||||||
|
print 'CopyFiles = PuzzleFiles'."\n";
|
||||||
|
print 'CEShortcuts = Links'."\n";
|
||||||
|
print ''."\n";
|
||||||
|
print '[DestinationDirs]'."\n";
|
||||||
|
print 'PuzzleFiles = 0, %InstallDir%'."\n";
|
||||||
|
print 'Links = 0, %CE14%\Puzzles'."\n";
|
||||||
|
print ''."\n";
|
||||||
|
print ';File copy list.'."\n";
|
||||||
|
print '[PuzzleFiles]'."\n";
|
||||||
|
for $exe (@exes) {
|
||||||
|
print $exe."\n";
|
||||||
|
}
|
||||||
|
print ''."\n";
|
||||||
|
print '[Links]'."\n";
|
||||||
|
for $exe (@exes) {
|
||||||
|
print '"'.$names{$exe}.'",0,'.$exe."\n";
|
||||||
|
}
|
Reference in New Issue
Block a user