From 3c93c5842ebdfb30afafd590c06dd13f1ef00d8a Mon Sep 17 00:00:00 2001
From: Ben Avison <bavison@gitlab.riscosopen.org>
Date: Fri, 21 Mar 2008 00:03:52 +0000
Subject: [PATCH] Overhaul of HdrSrc.

Detail:
  To allow public release of this component, sensitive header files have
  been moved out of the way. HdrSrc will in future only contain preprocessed
  versions of those files with confidential information filtered out.
Admin:
  Not tested in a build yet.

Version 1.59. Not tagged
---
 !MkExportAll,fd7 |  16 +++++
 Makefile         | 167 +++++++++++++++--------------------------------
 VersionNum       |   8 +--
 3 files changed, 72 insertions(+), 119 deletions(-)
 create mode 100644 !MkExportAll,fd7

diff --git a/!MkExportAll,fd7 b/!MkExportAll,fd7
new file mode 100644
index 0000000..8ba44e3
--- /dev/null
+++ b/!MkExportAll,fd7
@@ -0,0 +1,16 @@
+| Copyright 2008 Castle Technology Ltd
+|
+| Licensed under the Apache License, Version 2.0 (the "License");
+| you may not use this file except in compliance with the License.
+| You may obtain a copy of the License at
+|
+|     http://www.apache.org/licenses/LICENSE-2.0
+|
+| Unless required by applicable law or agreed to in writing, software
+| distributed under the License is distributed on an "AS IS" BASIS,
+| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+| See the License for the specific language governing permissions and
+| limitations under the License.
+|
+Dir <Obey$Dir>
+amu_machine export OPTIONS=ALL
diff --git a/Makefile b/Makefile
index 5358a6d..988abd1 100644
--- a/Makefile
+++ b/Makefile
@@ -43,27 +43,7 @@ HDRDIR = ${TOPDIR}.Global
 HDIR   = <CExport$dir>
 LIBDIR = <Lib$Dir>
 
-# Generic options:
-#
-MKDIR    = do mkdir -p
-AC       = access
-AS       = objasm
-LD       = link
-CP       = copy
-RM       = remove
-WIPE     = -wipe
-TOKENISE = tokenise
-HDR2H    = build:Hdr2H
-STRIP    = stripdepnd
-
-CFLAGS   = -c -depend !Depend ${THROWBACK} -IC:
-AFLAGS   = -depend !Depend ${THROWBACK}
-LDFLAGS  = -bin
-ACFLAGS  = rw/r
-CPFLAGS  = ~cfr~v
-WFLAGS   = FR~C~V
-
-TOKENS   = Hdr:Tokens
+include StdTools
 
 #
 # Program specific options:
@@ -85,7 +65,6 @@ EXPORTS   = \
  ${HDRDIR}.Devices \
  ${HDRDIR}.DevNos \
  ${HDRDIR}.DrawObj \
- ${HDRDIR}.DrawTags \
  ${HDRDIR}.ExtraLong \
  ${HDRDIR}.FDC.FDC711 \
  ${HDRDIR}.FileTypes \
@@ -116,7 +95,6 @@ EXPORTS   = \
  ${HDRDIR}.PDumperReg \
  ${HDRDIR}.PoduleReg \
  ${HDRDIR}.Pointer \
- ${HDRDIR}.PrintTypes \
  ${HDRDIR}.Proc \
  ${HDRDIR}.Services \
  ${HDRDIR}.Sprite \
@@ -135,7 +113,6 @@ EXPORTS   = \
  ${HDIR}.Global.h.Devices \
  ${HDIR}.Global.h.DevNos \
  ${HDIR}.Global.h.DrawObj \
- ${HDIR}.Global.h.DrawTags \
  ${HDIR}.Global.h.EnvNumbers \
  ${HDIR}.Global.h.FileTypes \
  ${HDIR}.Global.h.FreeWay \
@@ -160,12 +137,6 @@ EXPORTS   = \
  ${HDIR}.Global.IO.h.GenericIO \
  ${HDIR}.Global.IO.h.IOMD \
 
-#
-# Derived assembler header files
-#
-FILETYPES = Derived.FileTypes
-SWIS      = Derived.SWIs
-
 #
 # Generic rules:
 #
@@ -191,15 +162,10 @@ Dirs:
 	${MKDIR} ${HDIR}.Global.h
 	${MKDIR} ${HDIR}.Global.IO.h
 	${MKDIR} ${HDIR}.Interface.h
-	${MKDIR} ${HDIR}.Interface2.h
 	${MKDIR} ${LIBDIR}
-	${MKDIR} o
 
 clean:
-	${RM} ${FILETYPES}
-	${RM} ${SWIS}
-	${WIPE} o ${WFLAGS}
-	@echo ${COMPONENT}: derived headers cleaned
+	@echo ${COMPONENT}: nothing to clean
 
 #
 # Special rule for exporting all ImageSize, Machine and UserIF files.
@@ -211,87 +177,58 @@ ALL: ${HDRDIR}.Machine.Machine ${HDRDIR}.UserIF.UserIF ${HDRDIR}.ImageSize.<Imag
 	${CP} hdr.ImageSize ${HDRDIR}.ImageSize ${CPFLAGS}
 	${CP} hdr.APCS ${HDRDIR}.APCS ${CPFLAGS}
 
-#
-# Rules for deriving headers:
-#
-${FILETYPES}: o.FileTypes
-	${LD} ${LDFLAGS} -o $@ o.FileTypes
-	stripnulls $@
-	${AC} $@ ${ACFLAGS}
-	settype $@ text
-
-o.FileTypes: Register.ISV-Types s.DoTypes
-	${AS} ${AFLAGS} s.DoTypes -o $@
-
-${SWIS}: o.SWIs
-	${LD} -bin -o $@ o.SWIs
-	stripnulls $@
-	${AC} $@ ${ACFLAGS}
-	settype $@ text
-
-o.SWIs: Register.ISV-SWIs s.DoSWIs
-	${AS} ${AFLAGS} s.DoSWIs -o $@
-
 #
 # Rules for exporting:
 #
 
 # Registration headers:
-${HDRDIR}.AUN:        Register.AUN;            ${CP} Register.AUN        $@ ${CPFLAGS}
-${HDRDIR}.Countries:  Register.Countries;      ${CP} Register.Countries  $@ ${CPFLAGS}
-${HDRDIR}.Devices:    Register.Devices;        ${CP} Register.Devices    $@ ${CPFLAGS}
-${HDRDIR}.DevNos:     Register.DevNos;         ${CP} Register.DevNos     $@ ${CPFLAGS}
-${HDRDIR}.DrawObj:    Register.DrawObj;        ${CP} Register.DrawObj    $@ ${CPFLAGS}
-${HDRDIR}.DrawTags:   Register.DrawTags;       ${CP} Register.DrawTags   $@ ${CPFLAGS}
-${HDRDIR}.FSNumbers:  Register.FSNumbers;      ${CP} Register.FSNumbers  $@ ${CPFLAGS}
-${HDRDIR}.GraphicsV:  Register.GraphicsV;      ${CP} Register.GraphicsV  $@ ${CPFLAGS}
-${HDRDIR}.Keyboard:   Register.Keyboard;       ${CP} Register.Keyboard   $@ ${CPFLAGS}
-${HDRDIR}.KEYV:       Register.KEYV;           ${CP} Register.KEYV       $@ ${CPFLAGS}
-${HDRDIR}.Messages:   Register.Messages;       ${CP} Register.Messages   $@ ${CPFLAGS}
-${HDRDIR}.NewErrors:  Register.NewErrors;      ${CP} Register.NewErrors  $@ ${CPFLAGS}
-${HDRDIR}.OsWords:    Register.OsWords;        ${CP} Register.OsWords    $@ ${CPFLAGS}
-${HDRDIR}.PaletteV:   Register.PaletteV;       ${CP} Register.PaletteV   $@ ${CPFLAGS}
-${HDRDIR}.Pointer:    Register.Pointer;        ${CP} Register.Pointer    $@ ${CPFLAGS}
-${HDRDIR}.PDriverReg: Register.PDriverReg;     ${CP} Register.PDriverReg $@ ${CPFLAGS}
-${HDRDIR}.PDumperReg: Register.PDumperReg;     ${CP} Register.PDumperReg $@ ${CPFLAGS}
-${HDRDIR}.PoduleReg:  Register.PoduleReg;      ${CP} Register.PoduleReg  $@ ${CPFLAGS}
-${HDRDIR}.PrintTypes: Register.PrintTypes;     ${CP} Register.PrintTypes $@ ${CPFLAGS}
-${HDRDIR}.Services:   Register.Services;       ${CP} Register.Services   $@ ${CPFLAGS}
-${HDRDIR}.UpCall:     Register.UpCall;         ${CP} Register.UpCall     $@ ${CPFLAGS}
-
-# Derived registration headers:
-${HDRDIR}.FileTypes:  ${FILETYPES};            ${CP} ${FILETYPES}        $@ ${CPFLAGS}
-${HDRDIR}.SWIs:       ${SWIS};                 ${CP} ${SWIS}             $@ ${CPFLAGS}
+${HDRDIR}.AUN:        hdr.AUN;         ${CP} hdr.AUN        $@ ${CPFLAGS}
+${HDRDIR}.Countries:  hdr.Countries;   ${CP} hdr.Countries  $@ ${CPFLAGS}
+${HDRDIR}.Devices:    hdr.Devices;     ${CP} hdr.Devices    $@ ${CPFLAGS}
+${HDRDIR}.DevNos:     hdr.DevNos;      ${CP} hdr.DevNos     $@ ${CPFLAGS}
+${HDRDIR}.DrawObj:    hdr.DrawObj;     ${CP} hdr.DrawObj    $@ ${CPFLAGS}
+${HDRDIR}.FileTypes:  hdr.FileTypes;   ${CP} hdr.FileTypes  $@ ${CPFLAGS}
+${HDRDIR}.FSNumbers:  hdr.FSNumbers;   ${CP} hdr.FSNumbers  $@ ${CPFLAGS}
+${HDRDIR}.GraphicsV:  hdr.GraphicsV;   ${CP} hdr.GraphicsV  $@ ${CPFLAGS}
+${HDRDIR}.Keyboard:   hdr.Keyboard;    ${CP} hdr.Keyboard   $@ ${CPFLAGS}
+${HDRDIR}.KEYV:       hdr.KEYV;        ${CP} hdr.KEYV       $@ ${CPFLAGS}
+${HDRDIR}.Messages:   hdr.Messages;    ${CP} hdr.Messages   $@ ${CPFLAGS}
+${HDRDIR}.NewErrors:  hdr.NewErrors;   ${CP} hdr.NewErrors  $@ ${CPFLAGS}
+${HDRDIR}.OsWords:    hdr.OsWords;     ${CP} hdr.OsWords    $@ ${CPFLAGS}
+${HDRDIR}.PaletteV:   hdr.PaletteV;    ${CP} hdr.PaletteV   $@ ${CPFLAGS}
+${HDRDIR}.PDriverReg: hdr.PDriverReg;  ${CP} hdr.PDriverReg $@ ${CPFLAGS}
+${HDRDIR}.PDumperReg: hdr.PDumperReg;  ${CP} hdr.PDumperReg $@ ${CPFLAGS}
+${HDRDIR}.PoduleReg:  hdr.PoduleReg;   ${CP} hdr.PoduleReg  $@ ${CPFLAGS}
+${HDRDIR}.Pointer:    hdr.Pointer;     ${CP} hdr.Pointer    $@ ${CPFLAGS}
+${HDRDIR}.Services:   hdr.Services;    ${CP} hdr.Services   $@ ${CPFLAGS}
+${HDRDIR}.SWIs:       hdr.SWIs;        ${CP} hdr.SWIs       $@ ${CPFLAGS}
+${HDRDIR}.UpCall:     hdr.UpCall;      ${CP} hdr.UpCall     $@ ${CPFLAGS}
 
 # The C versions of registration headers:
-${HDIR}.Global.h.AUN:        Register.AUN ${HDR2H};            perl ${HDR2H} Register.AUN        $@
-${HDIR}.Global.h.Countries:  Register.Countries ${HDR2H};      perl ${HDR2H} Register.Countries  $@
-${HDIR}.Global.h.Devices:    Register.Devices ${HDR2H};        perl ${HDR2H} Register.Devices    $@
-${HDIR}.Global.h.DevNos:     Register.DevNos ${HDR2H};         perl ${HDR2H} Register.DevNos     $@
-${HDIR}.Global.h.DrawObj:    Register.DrawObj ${HDR2H};        perl ${HDR2H} Register.DrawObj    $@
-${HDIR}.Global.h.DrawTags:   Register.DrawTags ${HDR2H};       perl ${HDR2H} Register.DrawTags   $@
-${HDIR}.Global.h.EnvNumbers: Register.EnvNumbers ${HDR2H};     perl ${HDR2H} Register.EnvNumbers $@
-${HDIR}.Global.h.FreeWay:    Register.FreeWay ${HDR2H};        perl ${HDR2H} Register.FreeWay    $@
-${HDIR}.Global.h.FSNumbers:  Register.FSNumbers ${HDR2H};      perl ${HDR2H} Register.FSNumbers  $@
-${HDIR}.Global.h.GraphicsV:  Register.GraphicsV ${HDR2H};      perl ${HDR2H} Register.GraphicsV  $@
-${HDIR}.Global.h.Keyboard:   Register.Keyboard  ${HDR2H};      perl ${HDR2H} Register.Keyboard   $@
-${HDIR}.Global.h.KeyV:       Register.KeyV ${HDR2H};           perl ${HDR2H} Register.KeyV       $@
-${HDIR}.Global.h.Messages:   Register.Messages ${HDR2H};       perl ${HDR2H} Register.Messages   $@
-${HDIR}.Global.h.NewErrors:   Register.NewErrors ${HDR2H};       perl ${HDR2H} Register.NewErrors   $@
+${HDIR}.Global.h.AUN:        hdr.AUN;         ${HDR2H} hdr.AUN        $@
+${HDIR}.Global.h.Countries:  hdr.Countries;   ${HDR2H} hdr.Countries  $@
+${HDIR}.Global.h.Devices:    hdr.Devices;     ${HDR2H} hdr.Devices    $@
+${HDIR}.Global.h.DevNos:     hdr.DevNos;      ${HDR2H} hdr.DevNos     $@
+${HDIR}.Global.h.DrawObj:    hdr.DrawObj;     ${HDR2H} hdr.DrawObj    $@
+${HDIR}.Global.h.EnvNumbers: hdr.EnvNumbers;  ${HDR2H} hdr.EnvNumbers $@
+${HDIR}.Global.h.FileTypes:  hdr.FileTypes;   ${HDR2H} hdr.FileTypes  $@
+${HDIR}.Global.h.FreeWay:    hdr.FreeWay;     ${HDR2H} hdr.FreeWay    $@
+${HDIR}.Global.h.FSNumbers:  hdr.FSNumbers;   ${HDR2H} hdr.FSNumbers  $@
+${HDIR}.Global.h.GraphicsV:  hdr.GraphicsV;   ${HDR2H} hdr.GraphicsV  $@
+${HDIR}.Global.h.Keyboard:   hdr.Keyboard;    ${HDR2H} hdr.Keyboard   $@
+${HDIR}.Global.h.KeyV:       hdr.KeyV;        ${HDR2H} hdr.KeyV       $@
+${HDIR}.Global.h.Messages:   hdr.Messages;    ${HDR2H} hdr.Messages   $@
+${HDIR}.Global.h.NewErrors:  hdr.NewErrors;   ${HDR2H} hdr.NewErrors  $@
 # NewErrors still has a few problems.  Partial support is there.
-${HDIR}.Global.h.OsWords:    Register.OsWords ${HDR2H};        perl ${HDR2H} Register.OsWords    $@
-${HDIR}.Global.h.PaletteV:   Register.PaletteV ${HDR2H};       perl ${HDR2H} Register.PaletteV   $@
-${HDIR}.Global.h.PDriverReg: Register.PDriverReg ${HDR2H};     perl ${HDR2H} Register.PDriverReg $@
-${HDIR}.Global.h.PDumperReg: Register.PDumperReg ${HDR2H};     perl ${HDR2H} Register.PDumperReg $@
-${HDIR}.Global.h.PoduleReg:  Register.PoduleReg ${HDR2H};      perl ${HDR2H} Register.PoduleReg  $@
-${HDIR}.Global.h.Pointer:    Register.Pointer ${HDR2H};        perl ${HDR2H} Register.Pointer    $@
-# PrintTypes is just full of comments
-${HDIR}.Global.h.Services:   Register.Services ${HDR2H};       perl ${HDR2H} Register.Services   $@
-${HDIR}.Global.h.UpCall:     Register.UpCall ${HDR2H};         perl ${HDR2H} Register.UpCall     $@
-
-# The C versions of derived registration headers:
-${HDIR}.Global.h.FileTypes:  ${FILETYPES} ${HDR2H};            perl ${HDR2H} ${FILETYPES}        $@
-${HDIR}.Global.h.SWIs:       ${SWIS} ${HDR2H};                 perl ${HDR2H} ${SWIS}             $@
+${HDIR}.Global.h.OsWords:    hdr.OsWords;     ${HDR2H} hdr.OsWords    $@
+${HDIR}.Global.h.PaletteV:   hdr.PaletteV;    ${HDR2H} hdr.PaletteV   $@
+${HDIR}.Global.h.PDriverReg: hdr.PDriverReg;  ${HDR2H} hdr.PDriverReg $@
+${HDIR}.Global.h.PDumperReg: hdr.PDumperReg;  ${HDR2H} hdr.PDumperReg $@
+${HDIR}.Global.h.PoduleReg:  hdr.PoduleReg;   ${HDR2H} hdr.PoduleReg  $@
+${HDIR}.Global.h.Pointer:    hdr.Pointer;     ${HDR2H} hdr.Pointer    $@
+${HDIR}.Global.h.Services:   hdr.Services;    ${HDR2H} hdr.Services   $@
+${HDIR}.Global.h.SWIs:       hdr.SWIs;        ${HDR2H} hdr.SWIs       $@
+${HDIR}.Global.h.UpCall:     hdr.UpCall;      ${HDR2H} hdr.UpCall     $@
 
 
 # The C versions of local header files.
@@ -301,12 +238,12 @@ ${HDIR}.Global.h.SWIs:       ${SWIS} ${HDR2H};                 perl ${HDR2H} ${S
 #   Sprite
 # Files which have no equivalent.
 #   DDVMacros   Debug       ExtraLong   ListOpts    Macros      NdrDebug    Proc        Symbols
-${HDIR}.Global.h.Heap:       Hdr.Heap ${HDR2H};           perl ${HDR2H} Hdr.Heap       $@
-${HDIR}.Global.h.Sprite:     Hdr.Sprite ${HDR2H};         perl ${HDR2H} Hdr.Sprite     $@
-${HDIR}.Global.h.Tokens:     Hdr.Tokens ${HDR2H};         perl ${HDR2H} Hdr.Tokens     $@
-${HDIR}.Global.h.CMOS:       Hdr.CMOS ${HDR2H};           perl ${HDR2H} Hdr.CMOS       $@
-${HDIR}.Global.IO.h.GenericIO: Hdr.IO.GenericIO ${HDR2H}; perl ${HDR2H} Hdr.IO.GenericIO $@
-${HDIR}.Global.IO.h.IOMD:    Hdr.IO.IOMD ${HDR2H};        perl ${HDR2H} Hdr.IO.IOMD    $@
+${HDIR}.Global.h.Heap:         hdr.Heap;         ${HDR2H} hdr.Heap         $@
+${HDIR}.Global.h.Sprite:       hdr.Sprite;       ${HDR2H} hdr.Sprite       $@
+${HDIR}.Global.h.Tokens:       hdr.Tokens;       ${HDR2H} hdr.Tokens       $@
+${HDIR}.Global.h.CMOS:         hdr.CMOS;         ${HDR2H} hdr.CMOS         $@
+${HDIR}.Global.IO.h.GenericIO: hdr.IO.GenericIO; ${HDR2H} hdr.IO.GenericIO $@
+${HDIR}.Global.IO.h.IOMD:      hdr.IO.IOMD;      ${HDR2H} hdr.IO.IOMD      $@
 
 
 # C headers:
diff --git a/VersionNum b/VersionNum
index 6f0ad61..e67c812 100644
--- a/VersionNum
+++ b/VersionNum
@@ -6,18 +6,18 @@
  */
 #define Module_MajorVersion_CMHG        1.59
 #define Module_MinorVersion_CMHG        
-#define Module_Date_CMHG                04 Dec 2005
+#define Module_Date_CMHG                21 Mar 2008
 
 #define Module_MajorVersion             "1.59"
 #define Module_Version                  159
 #define Module_MinorVersion             ""
-#define Module_Date                     "04 Dec 2005"
+#define Module_Date                     "21 Mar 2008"
 
-#define Module_ApplicationDate          "04-Dec-05"
+#define Module_ApplicationDate          "21-Mar-08"
 
 #define Module_ComponentName            "HdrSrc"
 #define Module_ComponentPath            "RiscOS/Sources/Programmer/HdrSrc"
 
 #define Module_FullVersion              "1.59"
-#define Module_HelpVersion              "1.59 (04 Dec 2005)"
+#define Module_HelpVersion              "1.59 (21 Mar 2008)"
 #define Module_LibraryVersionInfo       "1:59"
-- 
GitLab