aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Prebuild/README
diff options
context:
space:
mode:
Diffstat (limited to 'Prebuild/README')
-rw-r--r--Prebuild/README128
1 files changed, 86 insertions, 42 deletions
diff --git a/Prebuild/README b/Prebuild/README
index 4341e42..e8a2d69 100644
--- a/Prebuild/README
+++ b/Prebuild/README
@@ -2,14 +2,16 @@ Prebuild Instructions
2 2
3Prebuild is an XML-driven pre-build tool allowing developers to easily generate project or make files for major IDE's and .NET development tools including: Visual Studio 2005, Visual Studio 2003, Visual Studio 2002, SharpDevelop, SharpDevelop2, MonoDevelop, and NAnt. 3Prebuild is an XML-driven pre-build tool allowing developers to easily generate project or make files for major IDE's and .NET development tools including: Visual Studio 2005, Visual Studio 2003, Visual Studio 2002, SharpDevelop, SharpDevelop2, MonoDevelop, and NAnt.
4 4
5_________________________________________________________________________________ 5_______________________________________________________________________________
6Overview 6Overview
7 7
8Prebuild can be either be run from the command line to generate the project and make files or you can execute the included batch (*.bat) and Unix Shell script (*.sh) files. 8Prebuild can be either be run from the command line to generate the
9The Prebuild file 9project and make files or you can execute the included batch (*.bat)
10and Unix Shell script (*.sh) files.
10 11
11_________________________________________________________________________________ 12_______________________________________________________________________________
12The currently supported developement tools and their associated batch and shell script files. 13The currently supported developement tools and their associated batch
14and shell script files.
13 15
14Visual Studio .NET 2005 (VS2005.bat) 16Visual Studio .NET 2005 (VS2005.bat)
15Visual Studio .NET 2003 (VS2003.bat) 17Visual Studio .NET 2003 (VS2003.bat)
@@ -18,70 +20,102 @@ SharpDevelop (SharpDevelop.bat) - http://www.icsharpcode.net/OpenSource/SD/
18SharpDevelop2 (SharpDevelop.bat) - http://www.icsharpcode.net/OpenSource/SD/ 20SharpDevelop2 (SharpDevelop.bat) - http://www.icsharpcode.net/OpenSource/SD/
19MonoDevelop (MonoDevelop.sh) - http://www.monodevelop.com/ 21MonoDevelop (MonoDevelop.sh) - http://www.monodevelop.com/
20NAnt (nant.sh and nant.bat) - http://nant.sourceforge.net/ 22NAnt (nant.sh and nant.bat) - http://nant.sourceforge.net/
21Autotools (autotools.bat and autotools.sh) http://www.gnu.org. Only partial support 23Autotools (autotools.bat and autotools.sh) - http://en.wikipedia.org/wiki/GNU_build_system
22 24
23Notes: 25Notes:
24A Unix Shell script is provided for MonoDevelop, as this is more appropriate than a windows batch file. 26
25Visual Studio .NET 2005 and the Visual Express IDE's can import solutions from older versions of Visual Studio .NET. 27A Unix Shell script is provided for MonoDevelop, as it does not run on
28Windows at this time.
29
30Visual Studio .NET 2005 and the Visual Express IDE's can import
31solutions from older versions of Visual Studio .NET.
32
26Makefiles are not currently supported. 33Makefiles are not currently supported.
27 34
28_________________________________________________________________________________ 35_______________________________________________________________________________
29Command Line Syntax: 36Command Line Syntax:
30 37
31Example: 38Example:
32>Prebuild /target vs2003 39> Prebuild /target vs2003
33 40
34This will generate the project files for Visual Studio.NET 2003 and place the redirect the log to a file named PrebuildLog.txt in the parent directory 41This will generate the project files for Visual Studio.NET 2003 and
42place the redirect the log to a file named PrebuildLog.txt in the
43parent directory
35 44
36 45
37The syntax structure is as below, where commandParameter is optional depending on the command and you can provide several option-value pairs. 46The syntax structure is as below, where commandParameter is optional
38Note: The '>' signified the command line, do not actually enter this manually 47depending on the command and you can provide several option-value
48pairs.
39 49
40>Prebuild /<option> <commandParameter> 50Note: The '> ' signifies the command prompt, do not enter this literally
41 51
42>Prebuild /target vs2003 /pause 52> Prebuild /<option> <commandParameter>
43 53
44>Prebuild /target vs2003 /log ../Log.txt /pause /ppo /file ProjectConfig.xml 54> Prebuild /target vs2003 /pause
45 55
46>Prebuild /target sharpdev /log 56> Prebuild /target vs2003 /log ../Log.txt /pause /ppo /file ProjectConfig.xml
47 57
48>Prebuild /removedir obj|bin 58> Prebuild /target sharpdev /log
49 59
50>Prebuild /target vs2003 /allowedgroups Group1|Group2 60> Prebuild /removedir obj|bin
51 61
52>Prebuild /clean 62> Prebuild /target vs2003 /allowedgroups Group1|Group2
53 63
54>Prebuild /clean /yes 64> Prebuild /clean
55 65
56>Prebuild /clean vs2003 66> Prebuild /clean /yes
57 67
58_________________________________________________________________________________ 68> Prebuild /clean vs2003
69
70_______________________________________________________________________________
59Command Line Options: 71Command Line Options:
60 72
61/usage - Shows the help information on how to use Prebuild and what the different options are and what they do 73/usage - Shows the help information on how to use Prebuild and what
74the different options are and what they do
75
76/clean - The project files generated for the target type specified as
77a parameter for this option will be deleted. If no value is specified
78or if 'all' is specified, then project files for all the target types
79will be deleted.
62 80
63/clean - The project files generated for the target type specified as a parameter for this option will be deleted. If no value is specified or if 'all' is specified, then project files for all the target types will be deleted. 81/target - Specified the name of the development tool for which project
82or make files will be generated. Possible parameter values include:
83vs2003, vs2002, sharpdev
64 84
65/target - Specified the name of the development tool for which project or make files will be generated. Possible parameter values include: vs2003, vs2002, sharpdev 85/file - Specifies the name of the XML which defines what files are to
86be referenced by the generated project files as well as configures the
87options for them. If not specified, prebuild.xml in the current
88directory will be used as the default.
66 89
67/file - Specifies the name of the XML which defines what files are to be referenced by the generated project files as well as configures the options for them. If not specified, prebuild.xml will be used as the default. 90/log - Specified the log file that should be written to for build
91errors. If this option is not specified, no log file is generated,
92but if just no value is specified, then the defaul filename will be
93used for the log (Prebuild.log).
68 94
69/log - Specified the log file that should be written to for build errors. If this option is not specified, no log file is generated, but if just no value is specified, then the defaul filename will be used for the log (Prebuild.log). 95/ppo - Preprocesses the xml file to test for syntax errors or problems
96but doesn't generate the files
70 97
71/ppo - Preprocesses the xml file to test for syntax errors or problems but doesn't generate the files 98/pause - Shows the console until you press a key so that you can view
99the messages written while performing the specified actions.
72 100
73/pause - Shows the console until you press a key so that you can view the messages written while performing the specified actions. 101This allows you to check if an errors occurred and - if so - what it
74This allows you to check if an errors occurred and - if so - what it was. 102was.
75 103
76/showtargets - Shows a list of all the targets that can be specified as values for the /clean and /target commands. 104/showtargets - Shows a list of all the targets that can be specified
105as values for the /clean and /target commands.
77 106
78/allowedgroups - This is followed by a pipe-delimited list of project group filter flags (eg. Group1|Group2) allow optional filtering of all projects that dont have at least one of these flags 107/allowedgroups - This is followed by a pipe-delimited list of project
108group filter flags (eg. Group1|Group2) allow optional filtering of all
109projects that dont have at least one of these flags
79 110
80/removedir - This is followed by a pipe-delimited list of directory names that will be deleted while recursivly searching the directory of the prebuild application and its child directories (eg. use obj|bin to delete all output and temporary directories before file releases) 111/removedir - This is followed by a pipe-delimited list of directory
112names that will be deleted while recursivly searching the directory of
113the prebuild application and its child directories (eg. use obj|bin to
114delete all output and temporary directories before file releases)
81 115
82/yes - Answer yes to any warnings (e.g. when cleaning all projects). 116/yes - Answer yes to any warnings (e.g. when cleaning all projects).
83 117
84_________________________________________________________________________________ 118_______________________________________________________________________________
85Example Batch Files and Shell Scripts 119Example Batch Files and Shell Scripts
86 120
87NOTE: Common batch and shell script files are included with Prebuild source and file releases. 121NOTE: Common batch and shell script files are included with Prebuild source and file releases.
@@ -89,9 +123,12 @@ ______________________________
89MonoDevelop 123MonoDevelop
90 124
91#!/bin/sh 125#!/bin/sh
92# Generates a combine (.cmbx) and a set of project files (.prjx) 126# Generates a solution (.mds) and a set of project files (.mdp)
93# for MonoDevelop, a Mono port of SharpDevelop (http://icsharpcode.net/OpenSource/SD/Default.aspx) 127
94./Prebuild /target sharpdev /pause 128# for MonoDevelop, a Mono port of SharpDevelop
129# (http://icsharpcode.net/OpenSource/SD/Default.aspx)
130
131./Prebuild /target monodev /pause
95 132
96______________________________ 133______________________________
97Visual Studio .NET 2003 134Visual Studio .NET 2003
@@ -104,13 +141,20 @@ Notes:
104Text after lines that start with @rem are comments and are not evaluated 141Text after lines that start with @rem are comments and are not evaluated
105You can also place pause on the last line instead of specifing the /pause command. 142You can also place pause on the last line instead of specifing the /pause command.
106 143
107________________________________________________________________________________ 144_______________________________________________________________________________
108Example XML Configuration File 145Example XML Configuration File
109 146
110Note: 147Note:
111XML Comments (<!-- Comment -->) are used to markup the prebuild.xml file with notes 148
112The below file may be out-of-date, however the RealmForge Prebuild file serves as an up-to-date and extensive example. 149XML Comments (<!-- Comment -->) are used to markup the prebuild.xml
113It can be viewed using Tigris.org's WebSVN (http://realmforge.tigris.org/source/browse/realmforge/trunk/src/prebuild.xml) by just clicking on the "view file" link for the latest revision. 150file with notes
151
152The below file may be out-of-date, however the RealmForge Prebuild
153file serves as an up-to-date and extensive example.
154
155It can be viewed using Tigris.org's WebSVN
156(http://realmforge.tigris.org/source/browse/realmforge/trunk/src/prebuild.xml)
157by just clicking on the "view file" link for the latest revision.
114 158
115_________________________________ 159_________________________________
116 160