diff -r 820b22e13ff1 -r 39c28ec933dd cross-plat-dev-utils/README-WINDOWS --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cross-plat-dev-utils/README-WINDOWS Mon May 10 19:54:49 2010 +0100 @@ -0,0 +1,187 @@ +# Copyright (c) 2010 Symbian Foundation Ltd +# This component and the accompanying materials are made available +# under the terms of the License "Eclipse Public License v1.0" +# which accompanies this distribution, and is available +# at the URL "http://www.eclipse.org/legal/epl-v10.html". +# +# Initial Contributors: +# Mike Kinghan, mikek@symbian.org for Symbian Foundation Ltd - initial contribution. + +== Contents == +============== +- Intro +- One-time utilities +--- fix_raptor_config.pl +--- fix_epoc32.pl +--- prep_env.pl +- General utilities. +--- build_raptor.pl +--- clean_raptor.pl +--- deepclean_raptor.pl +--- list_targets.pl +--- build_target.pl +--- build_all.pl +--- clean_target.pl +--- clean_all.pl +--- reallyclean_target.pl +--- reallyclean_all.pl +--- clean_build_logs.pl +--- weed_backups.pl +--- get_upstream.pl +--- diff_upstream.pl: +- Getting started. + +== Intro == +=========== + +Read the README file in the parent directory, and the NEWS and TODO files if you +have not already done so. Make the preparations described in that README before +you try to use any of the utilities in this directory. + +This directory contains utilities and associated resources for building this +package on Linux. All the utilities are Perl scripts (.pl files) which will +indicate their purpose if run with either of the options -h, --help. They are +also documented below. + +Provided you placed the package directory under the directory you want to be +EPOCROOT (as per the build/README file), there is no need to set EPOCROOT to run +any of the scripts. They will set it. If you set EPOCROOT in the environment for +these scripts they will respect your setting. + +There are two sorts of utilities: + +* Utilities that you need only run once, to make necessary fixes to the upstream +Raptor configuration or to the PDK 3.0.h epoc32 tree, so that it is possible to +build any of the targets. The one-time utilties may make use of the patch-files +directory. Any file located at .\patch-files\windows\SOME_PATH\SOME.FILE will be +deployed to replace the file $EPOCROOT\SOME_PATH\SOME.FILE + +* General utilities that you can use repeatedly for development work. + +You need to run these utilities from this directory. + +== One-time utilities == +======================== + +* fix_raptor_config.pl: +----------------------- +Patches the Raptor config file %SBS_HOME%\lib\config\gcc.xml so that the +Standard C/C++ Library is configured as the one installed with the compiler, +not the PDK's STLPort implementation of the Standard Library. + +* fix_epoc32.pl: +---------------- +Patches the epoc32 tree so that it provides a valid pre-include header file to +enable compiling of the tools code with gcc 3.4.5 + +* prep_env.pl: +-------------- +A wrapper for all the other fix_???.pl utilities. + +== General utilities == +======================= + +* build_raptor.pl: +------------------ +Builds Raptor. *You needn't build Raptor on Windows. You can use it from your +installed PDT 1.6* + +* clean_raptor.pl: +------------------ +Cleans Raptor (by invoking the CLEAN target of the Raptor build). *Not needed on + Windows if using Raptor from the PDT* + +* deepclean_raptor.pl: +---------------------- +Deletes all files created by building Raptor (which clean_raptor.pl does +not). *Not needed on Windows if using Raptor from the PDT* + +* list_targets.pl: +------------------ +Lists the targets in the package, with comments on any that don't need to be +built. The targets are listed as component paths relative to %EPOCROOT%\build. + +* build_target.pl TARGET: +------------------------- +Build the target TARGET, where TARGET is one of the targets listed by +list_targets.pl. + +* build_all.pl: +--------------- +Build all the targets except Raptor, with Raptor. + +* clean_target.pl TARGET: +------------------------- +Clean the target TARGET, where TARGET is one of the targets listed by +list_targets.pl + +* clean_all.pl: +--------------- +Build all the targets except Raptor, with Raptor. + +* reallyclean_target.pl TARGET: +------------------------ +Really-cleans target TARGET, where TARGET is one of the targets listed by +list_targets.pl. + +* reallyclean_all.pl: +--------------- +Really-clean all the targets except Raptor, with Raptor. + +* clean_build_logs.pl: +---------------------- +Deletes all Raptor build logs from %EPOCROOT%\epoc32\build. + +* weed_backups.pl: +----------------- +Deletes all files in the package dir that end with '~'. Not useful on +Windows. + +* get_upstream.pl CLONEDIR: +--------------------------- +Clones or updates the upstream package at the baseline revision found in +..\baseline.txt, from http://developer.symbian.org/oss/MCL/sftools/dev/build. +The upstream package will be cloned into the existing directory CLONEDIR if +this does not appear to have been already done. Otherwise CLONEDIR\build will +be updated. + +* diff_upstream.pl: +------------------- +Diffs this package with upstream package at the baseline revision found in +../baseline.txt. +Options: +-d, --diff-file FILE: The diffs will be written to FILE. +Default ./patch-files/diff/patch-N.patch, where N is the baseline revision. +-b, --baseline-dir DIR: The upstream baseline will be cloned into DIR if this +does not seem to have been done already. Otherwise DIR/build will be udated to +the baseline revision before diffing. +It is assumed that the command 'diff' will invoke the diff tool. diff is not +standard equioment on Windows but a port is available: +http://gnuwin32.sourceforge.net/packages/diffutils.htm. + +* patch_upstream.pl +------------------- +Gets a copy of upstream package at the baseline revision in ../baseline.txt and +applies a patch to it, by default making it the same as the revision of this +package that had that upstream baseline. +Options: +-p, --patch-file FILE: Apply the patch file FILE. +Default ./patch-files/diffs/patch-N.patch, where N is the baseline revision +-b, --baseline-dir DIR: The upstream baseline will be cloned into DIR if this +does not seem to have been done already. Otherwise DIR/build will be udated to +the baseline revision before patching. +It is assumed that the command 'patch' will invoke the patch tool. patch is not +standard equioment on Windows but a port is available: +http://gnuwin32.sourceforge.net/packages/patch.htm + + +== Getting started == +===================== + +To start your development cycle with this package: + +* Run prev_env.pl +* Run build_all.pl. This takes some time. +* If anything has gone wrong, try fixing it. +* Otherwise, pick something to do from the TODO file. +