Enable GitLab CI/CD

Detail:
* Consolidate and complete .gitignore
* Makefiles: auto-create empty directories
* Enable GitLab CI, and address the warnings generated
* Enable GitLab CD for stubs (used implicitly when linker is invoked by cc)
* Fix bug uncovered by cppcheck: assert() triggered by clients compiled to
  C90 standard was performing zero-page reads
2 jobs for !5 with CrossCompilationSupport in 3 seconds (queued for 2 seconds)
detached
Status Job ID Name Coverage
  Static Analysis
passed #35589
cross
merge_log

00:00:01

failed #35591
cross allowed to fail
merge_whitesp

00:00:01

 
Name Stage Failure
failed
merge_whitesp Static Analysis
 * [new tag]         RISC_OSLib-6_08 -> RISC_OSLib-6_08
* [new tag] RISC_OSLib-6_09 -> RISC_OSLib-6_09
* [new tag] RISC_OSLib-6_10 -> RISC_OSLib-6_10
* [new tag] RISC_OSLib-6_11 -> RISC_OSLib-6_11
c/alloc line 1339 only removes whitespace error
c/armsys line 258 only removes whitespace error
c/stdio line 730 only removes whitespace error
Cleaning up project directory and file based variables
ERROR: Job failed: exit status 1