diff options
author | John Mark Bell <jmb@netsurf-browser.org> | 2008-12-09 11:12:58 +0000 |
---|---|---|
committer | John Mark Bell <jmb@netsurf-browser.org> | 2008-12-09 11:12:58 +0000 |
commit | 71db29f5b05659a760f91ce0a5f0901786d0fea3 (patch) | |
tree | 25127d339423c7453412e98a28776c967de1f227 /riscos/scripts | |
parent | 3e715853118e88880f1783d6baffd6638f4ccf63 (diff) | |
download | netsurf-71db29f5b05659a760f91ce0a5f0901786d0fea3.tar.gz netsurf-71db29f5b05659a760f91ce0a5f0901786d0fea3.tar.bz2 |
Build !Run at compile time. This ensures that the WimpSlot size is always correct.
svn path=/trunk/netsurf/; revision=5889
Diffstat (limited to 'riscos/scripts')
-rw-r--r-- | riscos/scripts/Run | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/riscos/scripts/Run b/riscos/scripts/Run new file mode 100644 index 000000000..fe9980df3 --- /dev/null +++ b/riscos/scripts/Run @@ -0,0 +1,112 @@ +| Run file for NetSurf. ( $Revision$ ) +| +| This file ensures that the system resources required by NetSurf are +| present. Additionally, it forces setting of system variables related +| to NetSurf. + +| Set system variables and application sprites +Set NetSurf$ForceVars 1 +/<Obey$Dir>.!Boot +UnSet NetSurf$ForceVars + +| Detect if NetSurf is already running and, if so, force the +| current instance to open a new window. Then stop this script. +Set Alias$NetSurfRunning UnSet Alias$NetSurfRunning|mUnSet NetSurf$Running|mObey +Set NetSurf$Running 0 +WimpSlot -min 64k -max 64k +/<NetSurf$Dir>.KickNS +| If not running, then unset system variables and continue +If "<NetSurf$Running>" = "0" Then Set Alias$NetSurfRunning UnSet Alias$NetSurfRunning|mUnSet NetSurf$Running +| Invoke our alias to clean up +NetSurfRunning + +| Resource Locations +| The following are read-only locations +SetMacro NetSurf$Path Choices:WWW.NetSurf.,<NetSurf$Dir>. +| The following are write-only locations +SetMacro NetSurf$ChoicesSave <Choices$Write>.WWW.NetSurf.Choices + +| We need RISC OS 3 +RMEnsure UtilityModule 3.00 Error NetSurf needs RISC OS 3 or later + +| Ensure Nested WIMP is installed +| http://acorn.riscos.com/ (in the universal boot archive) +RMEnsure WindowManager 3.80 Error NetSurf requires the Nested Window Manager. This can be obtained by downloading the Universal Boot sequence from http://acorn.riscos.com/ + +| Check for various key resources - can't do much if they don't exist +If "<System$Path>" = "" Then Set System$Path_Message System resources not found. +If "<Wimp$ScrapDir>" = "" Then Error Scrap resource not found. +If "<InetDBase$Path>" = "" Then Error Internet resources can not be found +If "<Unicode$Path>" = "" Then Error NetSurf requires the !Unicode resource. This can be found, along with the Iconv module, at http://www.netsurf-browser.org/projects/iconv/ +If "<Inet$MimeMappings>" = "" Then Set Inet$MimeMappings InetDBase:MimeMap + +| Define this alias for clarity +| Syntax: NetSurfRMLoad <Path to module> +Set Alias$NetSurfRMLoad IfThere %%*0 Then RMLoad %%*0 + +| Ensure a 32bit SharedCLibrary is installed +| http://www.iyonix.com/32bit/ +| (5.17 == first 32bit SCL, 5.43 == C99 features) +RMEnsure SharedCLibrary 5.17 NetSurfRMLoad System:Modules.CLib +RMEnsure SharedCLibrary 5.43 Error NetSurf requires SharedCLibrary 5.43 or later. This can be downloaded from http://www.iyonix.com/32bit/system.shtml + +| Ensure CallASWI is installed +| http://www.iyonix.com/32bit/ +RMEnsure UtilityModule 3.70 RMEnsure CallASWI 0.02 NetSurfRMLoad System:Modules.CallASWI +RMEnsure UtilityModule 3.70 RMEnsure CallASWI 0.02 Error NetSurf requires the CallASWI module. This can be downloaded from http://www.iyonix.com/32bit/system.shtml + +| Ensure DrawFile module is installed +| http://acorn.riscos.com/riscos/releases/drawfile.arc +| Should be installed in !System.310.Modules +RMEnsure DrawFile 1.30 NetSurfRMLoad System:Modules.DrawFile +RMEnsure DrawFile 1.30 Error NetSurf requires the DrawFile module. An old verson of this can be downloaded from http://acorn.riscos.com/riscos/releases/drawfile.arc + +| Ensure SharedUnixLibrary is installed +| http://www.riscos.info/downloads/gccsdk/sharedunixlib/system.zip +RMEnsure SharedUnixLibrary 1.07 NetSurfRMLoad System:Modules.SharedULib +RMEnsure SharedUnixLibrary 1.07 Error NetSurf requires SharedUnixLibrary 1.07 or later. This can be downloaded from http://www.riscos.info/downloads/gccsdk/sharedunixlib/system.zip + +| Load AcornURI if it isn't already +| http://sudden.recoil.org/ +Unset NetSurf$Start_URI_Handler +RMEnsure AcornURI 0.12 Set NetSurf$Start_URI_Handler 1 +RMEnsure AcornURI 0.12 NetSurfRMLoad System:Modules.Network.URI +RMEnsure AcornURI 0.12 Error NetSurf requires AcornURI 0.12 or later. A version of this can be found at http://sudden.recoil.org/others/ +RMEnsure AcornURI 0.12 Unset NetSurf$Start_URI_Handler + +| Check for mime map module +RMEnsure MimeMap 0.10 NetSurfRMLoad System:Modules.Network.MimeMap +RMEnsure MimeMap 0.10 Error NetSurf requires MimeMap 0.10 or later + +| Ensure Tinct is loaded +| http://www.tinct.net/ +RMEnsure Tinct 0.13 NetSurfRMLoad System:Modules.Tinct +RMEnsure Tinct 0.13 Error NetSurf requires Tinct 0.13 or later. This can be downloaded from http://www.tinct.net/ + +| Ensure Iconv +| http://www.netsurf-browser.org/iconv/ +RMEnsure Iconv 0.10 NetSurfRMLoad System:Modules.Iconv +RMEnsure Iconv 0.10 Error NetSurf requires Iconv 0.10 or later. This can be downloaded from http://www.netsurf-browser.org/iconv/ + +| Disable SpecialFX, if present +Set NetSurf$SpecialFX 1 +RMEnsure SpecialFX 1.00 Set NetSurf$SpecialFX 0 +If <NetSurf$SpecialFX> Then SpecialFX ~B~G~L NetSurf +Unset NetSurf$SpecialFX + +| No longer need this alias +Unset Alias$NetSurfRMLoad + +| Now attempt to create Scrap directories +CDir <Wimp$ScrapDir>.WWW +CDir <Wimp$ScrapDir>.WWW.NetSurf + +| Install NetSurf-specific fonts +| NB: trailing dot is required +FontInstall NetSurf:Resources.Fonts. + +WIMPSLOT +Run <NetSurf$Dir>.!RunImage -v %*0 2><Wimp$ScrapDir>.WWW.NetSurf.Log + +| Uninstall NetSurf-specific fonts +FontRemove NetSurf:Resources.Fonts. |