1. 10 Jul, 2023 1 commit
    • ROOL's avatar
      Install CompressPNG as PCompMod · 8a816d46
      ROOL authored
      Detail:
        In order to fit within a 10 letter FileCore limit pre RISC OS 4, shorten the
        on disc module name following the lead of CompressJPEG (JCompMod).
      
      Version 7.89. Tagged as 'BuildSys-7_89'
      8a816d46
  2. 08 May, 2023 1 commit
  3. 22 Apr, 2023 1 commit
  4. 25 Mar, 2023 3 commits
    • ROOL's avatar
      Build 6x SparkFS codecs from sources · e05ff6cf
      ROOL authored
      Version 7.86. Tagged as 'BuildSys-7_86'
      e05ff6cf
    • Ben Avison's avatar
      Enable `CmdHelp` merging rule when `CUSTOMRES=no` and cross-compiling · 669218b2
      Ben Avison authored
      In the cross-compiling case, a rule is defined targeting `MERGEDMSGS`, which
      the phony target `resources_cmdhelp` depends on, but the definition is
      conditional on `CUSTOMRES` not being `custom` or `no`.
      
      In a use-case which is believed to be unique to LanManFS, it is required
      that the resource files not be registered to ResourceFS via the Messages
      module, but by LanManFS itself, both for RAM and ROM builds, but the merging
      of `CmdHelp` and `Messages` files is still required. To leverage the
      `Messages` merging code in `CModule`, re-enable the `MERGEDMSGS` rule when
      `CUSTOMRES=no` (which is arguably the correct setting for LanManFS) but leave
      it disabled for `CUSTOMRES=custom` to permit full customisation if required.
      669218b2
    • Ben Avison's avatar
      Fix cross-compile `install` rule for `AAsmModule` · 129de901
      Ben Avison authored
      This was accidentally stripping the `,ffa` from the filename at the final
      copy step.
      129de901
  5. 04 Mar, 2023 2 commits
    • ROOL's avatar
      Move SparkFS, reference 9 codec modules · b1dfe962
      ROOL authored
      Version 7.85. Tagged as 'BuildSys-7_85'
      b1dfe962
    • ROOL's avatar
      Further library type changes · 37b2162d
      ROOL authored
      Detail:
        * Case correct FetchLib's object filename, and prevent applications linking
          against the module variant
        * Add SPARKLIB
        * For CTools
          - Remove unused Common and NBLib exports
          - Ensure inetlib/rpclib/unixlib/socklib install phases are run following
            the makefile changes in TCPIPLibs-5_75
      37b2162d
  6. 24 Feb, 2023 5 commits
    • ROOL's avatar
      Build SparkFSApp from sources · eef021dc
      ROOL authored
      Version 7.84. Tagged as 'BuildSys-7_84'
      eef021dc
    • Ben Avison's avatar
      Regularise default SOURCES_TO_SYMLINK · 0aeed78a
      Ben Avison authored
      * Add `hdr/*` to `CApp` - such components can use assembly, which might have
        need for assembly header files. Brings this in line with `CModule`.
      * Add `c++/*`, `hdr/*`, `VersionNum` and `VersionASM` to `CLibrary`. Brings
        this in line with `CApp` and `CModule`, means `SyncLib` doesn't need to
        explicitly add `hdr/*` and `NBLib` doesn't need to explicitly add `c++/*`
        or `VersionNum`. Strictly speaking, as a special case, `VersionNum` isn't
        required for `CLibrary` clients, since a copy is always available under
        `Export` renamed as `LibVersion`, but it's nice to be consistent.
      * Remove `Resources` from `AAsmModule` - it needs (and already has) special
        handling because it's a directory rather than a file.
      0aeed78a
    • Ben Avison's avatar
      Add missing phony targets · 7471f2ce
      Ben Avison authored
      * Add `standalone` target for CApp makefile clients.
      
        This is analogous to `standalone` for CModule clients, and is implemented
        as an alias for the `all` target. This is useful because cppcheck CI jobs
        need a consistent way to ensure that all local autogenerated source and
        header files have been created, so that cppcheck can fully analyse the
        source code.
      
      * Enable install target for cross-compiling CLibrary components.
      
        `install` was missing from the list of targets that need to be re-run from
        within the `objs` subdirectory.
      7471f2ce
    • Ben Avison's avatar
      Updates to library include path defines · 4f6ea9a5
      Ben Avison authored
      * Define cross-platform name for ConfigLib header include path.
      * Undefine `${TCPIPINC}` when building with GCC (as with the standard C
        headers, the headers in TCPIPLibs conflict with those on the default
        include path when compiling with GCC. Our TCPIPLibs headers appear to be
        incompatible with GCC, so resolve the conflict by removing TCPIPLibs from
        the path).
      4f6ea9a5
    • Ben Avison's avatar
      Updates to library file defines · df43c256
      Ben Avison authored
      * Add symbolic names for ImageLib libraries.
      df43c256
  7. 22 Feb, 2023 1 commit
  8. 20 Feb, 2023 1 commit
    • Ben Avison's avatar
      Change default RAMASMDEFINES to mirror AAsmModule · f0cb6586
      Ben Avison authored
      The AAsmModule shared makefile fragment predefines two assembly variables
      by default when targeting a softload binary: `standalone` (set to {TRUE})
      and `MergedMsgs` (set to the path to the merged `CmdHelp`/`Messages` file).
      It's reasonably common for components to migrate over time from AAsmModule
      to CModule; to assist with this process, change the default setting for
      `RAMASMDEFINES` to match.
      
      Once this is merged, the following components could have their Makefiles
      simplified: Debugger, MakePSFont, NVidia and VFPSupport.
      
      Version 7.82. Tagged as 'BuildSys-7_82'
      f0cb6586
  9. 28 Jan, 2023 1 commit
    • Jeffrey Lee's avatar
      Add HostApp makefile fragments · 061eac6e
      Jeffrey Lee authored
      The HostApp fragment is designed to be used for building apps/tools for
      running on the build host. It's currently fairly basic (just a
      stripped-down and tweaked version of CApp), but it should be sufficient
      for most purposes. The main advantage of this over HostTools+CApp (as
      used previously) is that HostApp will make sure to use the host's
      version of the CLib stubs, avoiding any incompatibilities between the
      host and target CLib versions.
      
      RISC OS version has been tested with a Disc build (after modifying the
      relevant HostTools-using components), GNU version is untested.
      
      Version 7.81. Tagged as 'BuildSys-7_81'
      061eac6e
  10. 28 Dec, 2022 1 commit
    • ROOL's avatar
      Add Internet 5 variant of rpclib · 03736764
      ROOL authored
      Admin:
        Also keep GNUmakefiles in sync by adding ${XOLIB} variables.
      
      Version 7.80. Tagged as 'BuildSys-7_80'
      03736764
  11. 21 Dec, 2022 2 commits
  12. 03 Dec, 2022 1 commit
    • ROOL's avatar
      Add XOLIB variable to AppLibs & ModuleLibs · 04ef6a31
      ROOL authored
      Detail:
        Also build it for those components which depend on InetRes
      Admin:
        Required by InetRes-5_97 and later.
      
      Version 7.78. Tagged as 'BuildSys-7_78'
      04ef6a31
  13. 29 Oct, 2022 3 commits
  14. 22 Oct, 2022 3 commits
    • Timothy E Baldwin's avatar
      Add ImageLibJPEG to Disc · c7fb2964
      Timothy E Baldwin authored
      Without this ImageLib fails the export libs phase with an error,
      ideally ImageLib needs fixing so it isn't split in this fashion.
      
      No change to build output (the contents of HardDisc4).
      
      Version 7.76. Tagged as 'BuildSys-7_76'
      c7fb2964
    • ROOL's avatar
      Remove unneeded components · ceb74171
      ROOL authored
      Detail:
        Remove NVRAM/PortManager from builds where unused.
        Remove MakePSFont/PDumperDM/DDT from ROM builds.
        For ROMs where some install a component and others only export it, settle
        on a common place to put the component in the list from a majority vote.
      Admin:
        Based on a submission from Timothy E Baldwin
        BCM2835/BonusBin/BuildEnv/Disc/IOMD32/OMAP3/4/5/PineA64/PlingSystem/Titanium
        Tungten/iMx6 builds checked.
        Unmaintained S3C2440/6410/BCM2835Pico not checked.
      ceb74171
    • ROOL's avatar
      Movements to make Components files easier to compare · 83892419
      ROOL authored
      Detail:
        Move Portable export up in IOMD32 to match Tungsten/S3C2440/S3C6410.
        Move SCSIFS/PCI to equivalent place in the exports at the top of file.
        Remove some extra # in separator blocks for Titanium.
      Admin:
        Based on a submission from Timothy E Baldwin
      83892419
  15. 19 Oct, 2022 4 commits
    • Jeffrey Lee's avatar
      Attempt to document the different defines · f82a7093
      Jeffrey Lee authored
      There are a number of different defines/variables which the makefile
      fragments pass into the compiler/assembler when building code. Add a new
      document (Makefile.Docs.Defines) which attempts to document them and
      their intended use.
      
      Version 7.75. Tagged as 'BuildSys-7_75'
      f82a7093
    • Jeffrey Lee's avatar
      Add RISCOS_MODULE defines · 351c84a1
      Jeffrey Lee authored
      These go hand-in-hand with the RISCOS_HAL and RISCOS_KERNEL defines, to
      allow code to identify when it's being built for inclusion in a module.
      351c84a1
    • Jeffrey Lee's avatar
      Add RISCOS_ZM assembler variable · 82636e39
      Jeffrey Lee authored
      This is intended to act as a replacement for the zM variable, which is
      hard to search for.
      
      zM will be removed in 2024.
      82636e39
    • Jeffrey Lee's avatar
      Add initial support for HAL & kernel library builds · 12bfbd27
      Jeffrey Lee authored
      Extend the CLibrary shared makefile to add support for building HAL and
      kernel versions of libraries, with 'h' and 'k' suffixes respectively.
      These are built with stack limit checking & frame pointers disabled, and
      with RISCOS_HAL and RISCOS_KERNEL defines enabled as appropriate.
      
      Note that currently there's nothing done to protect the SB register in
      HAL builds of libraries, or to deal with references to data sections.
      12bfbd27
  16. 10 Oct, 2022 2 commits
  17. 21 May, 2022 2 commits
  18. 14 Feb, 2022 2 commits
  19. 05 Feb, 2022 1 commit
    • Ben Avison's avatar
      Add SDIODriver header export to Disc build · f755c8f9
      Ben Avison authored
      This facilitates softloadable modules that interface to the SD subsystem
      (such as pretty much every Linux-derived WiFi driver module since they can't
      be linked into a ROM) and also permits GitLab CI to build soft-loadable
      versions of ROM WiFi drivers or SDFS.
      
      Version 7.70. Tagged as 'BuildSys-7_70'
      f755c8f9
  20. 31 Jan, 2022 1 commit
    • Ben Avison's avatar
      Create shared makefile for building HALs · 44504264
      Ben Avison authored
      This de-duplicates a lot of HAL makefiles, and also allows us to introduce a
      cross-compilation variant for them all at once.
      
      APCS specifiers are deliberately omitted; this is in order to facilitate some
      HALs linking with libraries compiled to the usual APCS variant without
      resulting in link-time warnings.
      
      Version 7.69. Tagged as 'BuildSys-7_69'
      44504264
  21. 29 Jan, 2022 1 commit
    • Ben Avison's avatar
      Add two SDIO-related libraries · 0296d2c6
      Ben Avison authored
      Added to Components files for all ROM builds that could, in theory, have WiFi
      drivers, and to Disc so that softloadable builds are possible.
      
      Version 7.68. Tagged as 'BuildSys-7_68'
      0296d2c6
  22. 28 Jan, 2022 1 commit