Fixed TEF depenancies for SF builds. Enabled SPCRE and grep by default.
authorTom Sutcliffe <thomas.sutcliffe@accenture.com>
Fri, 09 Jul 2010 17:31:42 +0100
changeset 8 eb5f524dc31d
parent 6 96d581d2147d
child 9 257450419d10
Fixed TEF depenancies for SF builds. Enabled SPCRE and grep by default.
build/common/bld.inf
build/common/common.mmh
build/s60/platform_generic.mmh
commands/group/bld.inf
commands/group/fshell_commands.iby
documentation/common_mmh.pod
documentation/fshell_builddocs.mk
documentation/getting_started.pod
tools/fshell_copyright.pl
--- a/build/common/bld.inf	Fri Jul 09 10:11:55 2010 +0100
+++ b/build/common/bld.inf	Fri Jul 09 17:31:42 2010 +0100
@@ -33,7 +33,9 @@
 #include "..\..\plugins\consoles\rcons\group\bld.inf"
 #include "..\..\plugins\consoles\vt100cons\group\bld.inf"
 #include "..\..\plugins\consoles\win32cons\group\bld.inf"
+#ifdef FSHELL_TESTEXECUTE_SUPPORT
 #include "..\..\plugins\consoles\tefcons\bld.inf"
+#endif
 #include "..\..\plugins\networking\nullnif\group\bld.inf"
 #include "..\..\plugins\networking\tcpcsy\group\bld.inf"
 #include "..\..\plugins\networking\winsockprt\group\bld.inf"
--- a/build/common/common.mmh	Fri Jul 09 10:11:55 2010 +0100
+++ b/build/common/common.mmh	Fri Jul 09 17:31:42 2010 +0100
@@ -88,6 +88,9 @@
 #ifndef FSHELL_NO_MD4_SUPPORT
 #define FSHELL_MD4_SUPPORT
 #endif
+#ifndef FSHELL_NO_SPCRE_SUPPORT
+#define FSHELL_SPCRE_SUPPORT
+#endif
 
 //
 // PlatSec.
--- a/build/s60/platform_generic.mmh	Fri Jul 09 10:11:55 2010 +0100
+++ b/build/s60/platform_generic.mmh	Fri Jul 09 17:31:42 2010 +0100
@@ -31,6 +31,6 @@
 #define SYMBIAN_JAVA_NOT_INCLUDED
 #endif
 
-#define FSHELL_SPCRE_SUPPORT
+#define FSHELL_TESTEXECUTE_SUPPORT
 
 #endif // FSHELL_PLATFORM_GENERIC_MMH
--- a/commands/group/bld.inf	Fri Jul 09 10:11:55 2010 +0100
+++ b/commands/group/bld.inf	Fri Jul 09 17:31:42 2010 +0100
@@ -37,7 +37,6 @@
 ..\fed\group\fed.cif                     z:\resource\cif\fshell\fed.cif
 ..\snake\snake.cif                       z:\resource\cif\fshell\snake.cif
 ..\iniedit\iniedit.cif                   z:\resource\cif\fshell\iniedit.cif
-..\testexecute\testexecute.cif           z:\resource\cif\fshell\testexecute.cif
 
 PRJ_MMPFILES
 ..\cat\cat.mmp
@@ -61,7 +60,6 @@
 ..\fed\group\fed.mmp
 ..\snake\snake.mmp
 ..\iniedit\iniedit.mmp
-..\testexecute\testexecute.mmp
 
 #ifdef FSHELL_CORE_SUPPORT_SWI
 PRJ_EXPORTS
@@ -447,3 +445,10 @@
 PRJ_MMPFILES
 ..\memspy\memspy.mmp
 #endif
+
+#ifdef FSHELL_TESTEXECUTE_SUPPORT
+PRJ_EXPORTS
+..\testexecute\testexecute.mmp
+PRJ_MMPFILES
+..\testexecute\testexecute.cif           z:\resource\cif\fshell\testexecute.cif
+#endif
--- a/commands/group/fshell_commands.iby	Fri Jul 09 10:11:55 2010 +0100
+++ b/commands/group/fshell_commands.iby	Fri Jul 09 17:31:42 2010 +0100
@@ -369,7 +369,9 @@
 FSHELL_COMMAND_INFO_FILE(fshell,top.cif)
 #endif
 
+#ifdef FSHELL_TESTEXECUTE_SUPPORT
 FSHELL_EXECUTABLE_FILE(fshell_testexecute.exe)
 FSHELL_COMMAND_INFO_FILE(fshell,testexecute.cif)
+#endif
 
 #endif // __FSHELL_COMMANDS_IBY__
--- a/documentation/common_mmh.pod	Fri Jul 09 10:11:55 2010 +0100
+++ b/documentation/common_mmh.pod	Fri Jul 09 17:31:42 2010 +0100
@@ -202,7 +202,7 @@
 
 Indicates that the baseline is recent enough to be aware of the flexible memory model. It doesn't necessarily mean that the flexible model is actually the one being used. It generally guards kernel APIs that weren't introduced until the FMM was (such as Kern::ChunkUserBase).
 
-=item FSHELL_SPCRE_SUPPORT
+=item FSHELL_[NO_]SPCRE_SUPPORT
 
 The regular expression libraries spcre.dll and libpcre.dll are available.
 
@@ -214,6 +214,10 @@
 
 The MemSpy Engine APIs are available.
 
+=item FSHELL_TESTEXECUTE_SUPPORT
+
+The TestExecute APIs are available.
+
 =back
 
 A couple of further macros follow - these are specifically for platforms that provide an custom implementation of the relevant command rather than using fshell's built-in version.
--- a/documentation/fshell_builddocs.mk	Fri Jul 09 10:11:55 2010 +0100
+++ b/documentation/fshell_builddocs.mk	Fri Jul 09 17:31:42 2010 +0100
@@ -9,7 +9,7 @@
 # Initial Contributors:
 # Accenture - Initial contribution
 #
-MAKMAKE :
+BLD :
 	..\tools\fsh-builddocs -i $(EPOCROOT)epoc32/include pod-list.txt
 
 RELEASABLES :
@@ -18,4 +18,4 @@
 CLEAN :
 	..\tools\fsh-builddocs -i $(EPOCROOT)epoc32/include pod-list.txt -c
 
-BLD FREEZE LIB CLEANLIB RESOURCE SAVESPACE FINAL : 
+MAKMAKE FREEZE LIB CLEANLIB RESOURCE SAVESPACE FINAL : 
--- a/documentation/getting_started.pod	Fri Jul 09 10:11:55 2010 +0100
+++ b/documentation/getting_started.pod	Fri Jul 09 17:31:42 2010 +0100
@@ -14,6 +14,8 @@
 
 __END__
 
+=head1 Getting started with FShell
+
 =head1 Retreiving the FShell Source Code
 
 I<Todo - add instructions for accessing the Mercurial repository.>
@@ -32,7 +34,7 @@
 
 =back
 
-Each of these platforms have a separate directory with F<\fshell\build>. In some platforms there may be further separate sub-directories for specific variants of the platform. You need to identify a suitable directory (that contains a file named F<bld.inf>) from which to build from. Open a command prompt and C<cd> to this directory.
+Each of these platforms have a separate directory with F<\fshell\build>. In some platforms there may be further separate sub-directories for specific variants of the platform. You need to identify a suitable directory (that contains a file named F<bld.inf>) from which to build from. For example to build for the Symbian^3 release you need to build from F<\fshell\build\sf\3>. Open a command prompt and C<cd> to this directory.
 
 You also need to identify the type of binaries you want to build. Common ones are:
 
@@ -48,11 +50,11 @@
 
 =item * C<gcce>
 
-Used for running fshell on either physical or simulated ARM hardware. Requires an installation of the GCC-E. I<Todo - does the SF provide builds of GCC-E?>
+Used for running fshell on either physical or simulated ARM hardware. Requires an installation of the GCC crosscompiler (for arm-none-symbianelf) - see here for more information: http://developer.symbian.org/wiki/index.php/The_GCCE_toolchain_initiative
 
 =back
 
-Lastly, you need to identify the build variant you plan to use, either debug (C<udeb>) or release (C<urel>). Commonly, C<udeb> is used on the emulator whereas C<urel> is used on target hardward. For the purposes of this introduction we will assume that you will be building C<winscw udeb> and C<armv5 urel>.
+Lastly, you need to identify the build variant you plan to use, either debug (C<udeb>) or release (C<urel>). Commonly, C<udeb> is used on the emulator whereas C<urel> is used on target hardware. For the purposes of this introduction we will assume that you will be building C<winscw udeb> and C<armv5 urel>.
 
 =head2 SBSv1 (aka abld)
 
@@ -62,7 +64,10 @@
 
 =head2 SBSv2 (aka Raptor)
 
-  M:\fshell\build\sf\2>sbs -c armv5_urel -c winscw_udeb
+  M:\fshell\build\sf\2>sbs -c armv5_urel
+  M:\fshell\build\sf\2>sbs -c winscw_udeb
+
+I<Note:> There are currently some concurrency issues in the build process that mean we don't recommend building multiple platforms in a single invocation of sbs. Ie do the above rather than C<sbs -c armv5_urel -c winscw_udeb>. We'll fix this as soon as we can!
 
 =head1 Installation
 
--- a/tools/fshell_copyright.pl	Fri Jul 09 10:11:55 2010 +0100
+++ b/tools/fshell_copyright.pl	Fri Jul 09 17:31:42 2010 +0100
@@ -48,7 +48,7 @@
   my @newlines = ();
   
   my $commentstart = "//";
-  if ($name =~ /\.(pl|pm|script|pod|ini|idf|esk|mk|cif)/i || !($name =~ /\./))
+  if ($name =~ /\.(pl|pm|script|pod|ini|idf|esk|mk|cif|flm)/i || !($name =~ /\./))
 	{
 	# Need to use # instead of //
 	# Second part of conditional is for perl scripts that don't specify any ending