- 08 Dec, 2023 1 commit
-
-
ROOL authored
Version 7.96. Tagged as 'BuildSys-7_96'
-
- 06 Dec, 2023 1 commit
-
-
ROOL authored
Also add application library variables by which they may be referred. Version 7.95. Tagged as 'BuildSys-7_95'
-
- 30 Oct, 2023 1 commit
-
-
ROOL authored
Version 7.94. Tagged as 'BuildSys-7_94'
-
- 18 Oct, 2023 1 commit
-
-
Phil Pemberton authored
Path for PPADriverJ had an extra "RiscOS" prefix meaning builds adding it to their Components file would fail. Version 7.93. Not tagged
-
- 20 Sep, 2023 1 commit
-
-
ROOL authored
Detail: Adds !MakeIns MIDI app from ESP. Build 310Support from recently discovered sources. Version 7.93. Tagged as 'BuildSys-7_93'
-
- 18 Sep, 2023 1 commit
-
-
ROOL authored
Detail: * MakeInstrument and MakeInstrumentApp added * Relocate MIDIPlayer * Split ARLib to produce two targets * Add entry for 310Support Version 7.92. Tagged as 'BuildSys-7_92'
-
- 24 Aug, 2023 1 commit
-
-
ROOL authored
Detail: Since srcbuild treats HAL type components as "not C" during the install ROM phase, yet the HAL fragment inherits most of its rules from CModule, there's no install_rom rule to override (as there is with AAsmModule, for example) so no need to suffix it with ${CUSTOM_ROM}. This was preventing the link and copy step for clients of the HAL fragment. Version 7.91. Not tagged
-
- 23 Aug, 2023 1 commit
-
-
Ben Avison authored
A common pattern previously in use was for a shared makefile to define a top-level phony rule (the sort of thing that srcbuild or a !Mk file would use as the target to pass to amu) but with a macro expansion within the rule name. This allowed clients to override the rule by assigning any value to the macro. However, this approach makes it relatively difficult for clients to be adapted to support cross-compilation. This is because when cross-compiling, the shared makefiles utilise nested invocations of the make tool in order to facilitate an out-of-tree build directory layout. Therefore, clients need to determine whether they are cross-compiling, and if so, whether they are in the context of the inner or outer make invocation, before they can decide whether or not to redefine the phony target. This can be achieved in as little as 3 extra lines: CURDIR ?= objs ifeq (objs,$(notdir ${CURDIR})) # redefinitions of top-level phony rules placed here endif but this wasn't universally popular. Instead, taking inspiration from INSTTYPE, we can chain from each ${PHONY} rule to a ${PHONY}_custom rule and have the client makefile define the ${PHONY}_custom rule instead. Crucially, in the cross-compiling case, the shared makefile can then take care of ensuring this only happens on the inner make invocation. In summary: When setting `CUSTOMEXP` to `custom`, clients should henceforth * define `export_hdrs_custom` and `export_libs_custom` rather than redefine `export` * define `export_hdrs_custom` rather than redefine `export_hdrs` * define `export_libs_custom` rather than redefine `export_libs` When setting `CUSTOMROM` to `custom`, clients should henceforth * define `install_rom_custom` rather than redefine `install_rom` * define `rom_custom` rather than redefine `rom` * define `rom_link_custom` rather than redefine `rom_link` When setting `CUSTOMSA` to `custom`, clients should henceforth * define `install_custom` rather than redefine `install` * define `standalone_custom` rather than redefine `standalone` `CUSTOMDBG` and `CUSTOMGPA` are now removed. These were not being used by any client makefiles, but it seems probable that the rules they related to (`debug` and `gpa_debug` respectively) would have needed overriding in precisely the same circumstances as `install` and `standalone`, so in future `CUSTOMSA` should be used for these also. Version 7.91. Tagged as 'BuildSys-7_91'
-
- 31 Jul, 2023 4 commits
-
-
ROOL authored
CTools: add BootCommands to the developer !System, since its SysMerge script checks for its presence for the X command. Disc: activate SparkLzh to build the Lzh codec from sources. Version 7.90. Tagged as 'BuildSys-7_90'
-
Ben Avison authored
The use of ';' between subcommands threw away the status of earlier ones. Replace with '&&'.
-
Ben Avison authored
This allows RISC OS Wimp template files with filetype fec to be referenced identically whether native or cross-compiling (it expands to an empty string when used natively).
-
Ben Avison authored
Norcroft's `-We` option suppresses warnings about casts between function pointers and non-function objects. Norcroft's `-Wn` option suppresses warnings about implicit narrowing casts. GCC doesn't have equivalents to these warnings, so they expand to an empty string if that's the selected compiler.
-
- 10 Jul, 2023 1 commit
-
-
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'
-
- 08 May, 2023 1 commit
-
-
ROOL authored
Version 7.88. Tagged as 'BuildSys-7_88'
-
- 22 Apr, 2023 1 commit
-
-
ROOL authored
Version 7.87. Tagged as 'BuildSys-7_87'
-
- 25 Mar, 2023 3 commits
-
-
ROOL authored
Version 7.86. Tagged as 'BuildSys-7_86'
-
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.
-
Ben Avison authored
This was accidentally stripping the `,ffa` from the filename at the final copy step.
-
- 04 Mar, 2023 2 commits
-
-
ROOL authored
Version 7.85. Tagged as 'BuildSys-7_85'
-
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
-
- 24 Feb, 2023 5 commits
-
-
ROOL authored
Version 7.84. Tagged as 'BuildSys-7_84'
-
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.
-
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.
-
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).
-
Ben Avison authored
* Add symbolic names for ImageLib libraries.
-
- 22 Feb, 2023 1 commit
-
-
ROOL authored
Version 7.83. Tagged as 'BuildSys-7_83'
-
- 20 Feb, 2023 1 commit
-
-
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'
-
- 28 Jan, 2023 1 commit
-
-
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'
-
- 28 Dec, 2022 1 commit
-
-
ROOL authored
Admin: Also keep GNUmakefiles in sync by adding ${XOLIB} variables. Version 7.80. Tagged as 'BuildSys-7_80'
-
- 21 Dec, 2022 2 commits
-
-
Cameron Cawley authored
Version 7.79. Tagged as 'BuildSys-7_79'
-
Robert Sprowson authored
Don't use TARGET= for getting the theme sprites, to avoid 2 things overriding it. Don't append !Paint or !Draw for the install path, the shared makefiles does this. Version 7.78. Not tagged
-
- 03 Dec, 2022 1 commit
-
-
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'
-
- 29 Oct, 2022 3 commits
- 22 Oct, 2022 3 commits
-
-
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'
-
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.
-
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
-
- 19 Oct, 2022 2 commits
-
-
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'
-
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.
-