Commit 1b9149f2 authored by ROOL's avatar ROOL 🤖
Browse files

Fixed some very odd issues in the TungstenDev build.

I don't fully understand what was going wrong, but looked like an odd
interaction with Task Windows, SparkFS and Sunfish. I've removed all
requirement for SparkFS in favour of using the InfoZip CLI tool.

Admin:
  Tested in simple test builds and TungstenDev (but not a full autobuild
  because it's not in cvs yet!)
  Will require Library 1.36 or later.
Author:
  srevill

Version 0.04. Tagged as 'ABRelease-0_04'
parent cb2d46eb
......@@ -19,7 +19,7 @@ includes (in this order) the following Resources subdirectories:
The script that is executed has a leafname which matches that of the phase it
will be run during, for example:
Resources.TungstenDev.clean - run in the "clean" phase
Resources.TungstenDev.clean - run in the "clean" phase
If no script file is found for a given phase of a specific build, then no
action is taken by this component in that build phase.
......@@ -55,17 +55,17 @@ required.
The default script will perform the following actions:
* If there is no ROM image (e.g. the build failed), exit here IfThere
* If SparkFS isn't running, we're going to have problems so generate error
* Remove any old template zip archive from our resources directory Remove
* Copy the central template zip archive into our resources directory
* Open the archive so we can copy into it
* Copy a ReadMe file into the zip archive
* Copy the ROM image into the zip archive
* Close the archive (filer window)
* If there is no ROM image (e.g. the build failed), exit here
* Create an empty directory to hold the files that will be zipped up
* Copy the Castle licence file into the zip directory
* Copy the ReadMe for this build into the zip directory
* Copy the ROM image into the zip directory
* Set the zip directory as the current directory
* Create a zip archive with the required files in it
* Return the CSD to its original state
* Delete any pre-existing zip archive on the autobuild server
* Copy the template zip archive onto the autobuild server
* Remove the template zip archive from our resources directory
* Remove any old crud from our build-specific resources directory
There is also a default script for the "clean" phase which deletes any copy
of the template zip archive from the Resources.<Name of Autobuild build>
......@@ -94,15 +94,5 @@ FINAL NOTES
The Resources.Generic directory includes some resources which are generically
useful for builds, these are:
* A template zip archive containing a copy of the Castle licence (PDF)
* A copy of the Castle licence (PDF)
* A template ReadMe text file containing only some generic information
* A utility (NullEvent) to cause a Task Window to sleep for a Wimp poll
The NullEvent utility is useful for putting between operations in a script in
order to ensure that some processing gets handed back to other Winp tasks.
This is useful for two reasons:
1. It allows the contents of the Task Window to update on screen and give a
better indication of progress
2. Things like Filer_Run and Filer_Boot have a chance to execute
......@@ -31,6 +31,6 @@ clean clean_all export_hdrs export_libs rom install install_rom release_autobuil
@Set ab_build$dir <AutoBuild$Root>.builds.<Autobuild$Build>
@Set ab_build$path <ab_build$dir>.
@Set ab_zip$file ab_build:<Autobuild$Build>/zip
@If "<Autobuild$Build>" <> "" Then Do mkdir -p <ab_build$dir>
@If "<Autobuild$Build>" <> "" Then CDir <ab_build$dir>
@If "<Autobuild$Build>" <> "" Then IfThere ab_res:$@ Then Obey -v ab_res:$@ ${INSTDIR}
@echo ${COMPONENT}: $@: complete
......@@ -12,5 +12,6 @@
| See the License for the specific language governing permissions and
| limitations under the License.
|
| Remove any old template zip archive from our resources directory
Remove <ab_res$dir>.zip
\ No newline at end of file
| Remove any old crud from our resources directory
x Wipe <ab_res$dir>.zip ~cfr~v
Remove <ab_res$dir>.tmp/zip
\ No newline at end of file
......@@ -15,37 +15,33 @@
| If there is no ROM image (e.g. the build failed), exit here
IfThere <Build$Dir>.Images.<Build$ImageName> Then Else Obey
| If SparkFS isn't running, we're going to have problems so generate error
RMEnsure SparkFS 0.00 Error ABRelease: release_autobuild: requires SparkFS to be present
RMEnsure Zip 0.00 Error ABRelease: release_autobuild: requires the SparkFS Zip module to be present
| Create an empty directory to hold the files that will be zipped up
CDir <ab_res$dir>.zip
| Remove any old template zip archive from our resources directory
Remove <ab_res$dir>.zip
| Copy the Castle licence file into the zip directory
Copy ab_res:Licence_v1/pdf <ab_res$dir>.zip.Licence_v1/pdf ~cf~r~v
| Copy the central template zip archive into our resources directory
Do Copy ab_res:zip <ab_res$dir>.zip ~cfr~v
Run ab_res:NullEvent
| Copy the ReadMe for this build into the zip directory
Copy ab_res:ReadMe/txt <ab_res$dir>.zip.ReadMe/txt ~cf~r~v
| Open the archive so we can copy into it
Do Filer_Run <ab_res$dir>.zip
Run ab_res:NullEvent
| Copy the ROM image into the zip directory
Copy <Build$Dir>.Images.<Build$ImageName> <ab_res$dir>.zip.<Build$ImageName> ~cf~r~v
| Copy a ReadMe file into the zip archive
Copy ab_res:ReadMe/txt <ab_res$dir>.zip.ReadMe/txt ~cfr~v
| Set the zip directory as the current directory
Dir <ab_res$dir>.zip
| Copy the ROM image into the zip archive
Copy <Build$Dir>.Images.<Build$ImageName> <ab_res$dir>.zip.<Autobuild$Build> ~cfr~v
Run ab_res:NullEvent
| Create a zip archive with the required files in it
Do zip -9qj ^.tmp/zip *
| Close the archive (filer window)
Do Filer_CloseDir <ab_res$dir>.zip
Run ab_res:NullEvent
| Return the CSD to its original state
Back
| Delete any pre-existing zip archive on the autobuild server
Remove <ab_zip$file>
| Copy the template zip archive onto the autobuild server
Copy <ab_res$dir>.zip <ab_zip$file> ~cfr~v
Copy <ab_res$dir>.tmp/zip <ab_zip$file> ~cfr~v
| Remove the template zip archive from our resources directory
Remove <ab_res$dir>.zip
\ No newline at end of file
| Remove any old crud from our build-specific resources directory
x Wipe <ab_res$dir>.zip ~cfr~v
Remove <ab_res$dir>.tmp/zip
\ No newline at end of file
/* (0.01)
/* (0.04)
*
* This file is automatically maintained by srccommit, do not edit manually.
* Last processed by srccommit version: 1.1.
*
*/
#define Module_MajorVersion_CMHG 0.01
#define Module_MajorVersion_CMHG 0.04
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 13 Jul 2009
#define Module_Date_CMHG 14 Jul 2009
#define Module_MajorVersion "0.01"
#define Module_Version 1
#define Module_MajorVersion "0.04"
#define Module_Version 4
#define Module_MinorVersion ""
#define Module_Date "13 Jul 2009"
#define Module_Date "14 Jul 2009"
#define Module_ApplicationDate "13-Jul-09"
#define Module_ApplicationDate "14-Jul-09"
#define Module_ComponentName "ABRelease"
#define Module_ComponentPath "castle/RiscOS/Utilities/Autobuild/ABRelease"
#define Module_FullVersion "0.01"
#define Module_HelpVersion "0.01 (13 Jul 2009)"
#define Module_LibraryVersionInfo "0:1"
#define Module_FullVersion "0.04"
#define Module_HelpVersion "0.04 (14 Jul 2009)"
#define Module_LibraryVersionInfo "0:4"
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment