11 Commits

Author SHA1 Message Date
CrashOveride95
318128f42c Fix CI typo that caused only libultra_rom to be built (#14) 2025-08-24 21:30:53 -04:00
CrashOveride95
b742894b55 New and improved make build system and other cleanups (#13)
* Remove unused C versions of gu functions which will conflict with ASM versions under the new build system
This is a holdover from the decomp, as it must support older libultra versions which used these functions; as we're basing this project off of the final 2.0L, they gotta go

* Comment out bugged unused debug code
Will be removed completely by #12 soon enough anyway, but this will break CI if I don't remove this

* C++ fix in ultra64.h

* New build system
Based off my personal "template" featuring makedepend and support for automatically building and installing all 3 library versions, along with colors
Still needs cleanup to make sure I've brought over everything from the previous makefile

* Fix clang_format

* CI fixes to account for the non-decomp build system

* Remove old makefile

* Remove decomp tools

* Accidentally removed format checker

* Change VERSION to TARGET

* Fix install target by removing unused files and bring back ZSort header

* Fix CI typo

* gzsort header removed, I will figure out how to add it in modsdk later

* just copy the whole PR folder instead and remove install.mk, unnecessary

* SDK installation shall be handled seperately

* Remove RMON and a few leftover KMC things

* Remove MODERN_CC, as everyone is gonna be building this on a modern compiler anyway
2025-08-23 22:58:24 -04:00
someone2639
46f03ca93d Explicitly use clang-format 19 in CI, reintroduce auto format checks for include/ (#7)
* test clang v19

* require clang-format 19

* Try outputting patch as an artifact

* test CI

* actually set the correct filename

* only upload on failure

* try a more descriptive name

* remove intentional test change

---------

Co-authored-by: someone2639 <someone2639@gmail.com>
2025-02-18 22:13:12 -05:00
someone2639
c366e0122a Format the Repo (#3)
* set build options

* remove COMPARE and MDOERN_* switches

* remove tools makefile

* AR patching is gone too since we want a fullly decomped version

* AR is modern

* remove cwd changes

* edit my own tool to fix compile errors

* compile files generated with my own tool instead of the originals

* inline modern_gcc makefile

* port mips toolchain detection logic

* add util.mk for find-command

* remove forced AR order and strip/mdebug removal commands

* add -mabi=32 to as flags

* formatting changes

* add clang format files

* formatting changes

* make libgultra CI work

* install mips gcc too

* add format check tools

* Add formatting to CI

* Add CI (#4)

* make libgultra CI work

* install mips gcc too

* remove make setup

---------

Co-authored-by: someone2639 <someone2639@gmail.com>

* we don't use clang-tidy

* use 120 width for formatting

* a

* address clang-tidy messing up

* test

* align consecutive macros and declarations

* only align macros for now

* SpaceAfterCStyleCast: false

* format headers too

* remove cast space switch because its false by default

* pointers on left

* AlignConsecutiveBitFields: true

* install clang-format and clang-tidy on gh actions

* and clang-tools

* show diff in format check tool

* make CI work

---------

Co-authored-by: someone2639 <someone2639@gmail.com>
🙏
2025-02-17 22:56:09 -05:00
someone2639
408c92afed Add CI (#4)
* make libgultra CI work

* install mips gcc too

* remove make setup

---------

Co-authored-by: someone2639 <someone2639@gmail.com>
2025-02-17 16:00:38 -05:00
Wiseguy
56d146a86a Add mips binutils to the package install list for the gcc workflow 2024-08-18 22:25:58 -04:00
Mr-Wiseguy
2ab125a5f3 Matched 2.0I and 2.0J, fixed matched object count calculation (#53)
* Matched 2.0I and 2.0J, fixed matched object count calculation

* Update version checkbox matrix

* Mark irix 2.0H as N/A in the checkbox matrix since it's not available

* Address PR comments

* Changed tab to spaces on new files

* Converted tabs to spaces in other changes, fixed os_motor.h definitions
2023-09-02 23:17:04 -04:00
Mr-Wiseguy
7b04a39156 Add support for multiple versions, match current archives under 2.0K (#52)
* Initial pass at multi-version support, matched 2.0K

* Fixed CI and made it build K, changed default version back to L

* Fixed VERSION_DEFINE not being used after rebase

* Update checkbox matrix for 2.0K

* Update readme instructions, fix ido CI

* Fix NON_MATCHING and document it in the readme

* Change default version to L, fix clean removing all builds, made distclean remove all builds, allow running clean and distclean without setup

* Made build and extracted paths match the base path format, remove unnecessary file compilation flag setting
2023-08-31 10:38:15 -04:00
Derek Hensley
b376559296 Irix support (libultra_rom/libultra OK) (#44)
* WIP

* Add ar

* POC

* WIP libultra_rom

* Simplify Makefile and match initalize

* 1 c 1 s left

* exceptasm OK

* Different weak impl

* COMPARE_AR comment for irix

* Get ar working and clean up makefile

* Some more small cleanup

* Split makefile

* dereference instead of [0]

* Small cleanups

* initialize msp and kmc libultra

* libultra_rom OK

* Warnings

* Add to readme

* Fix ido ci?

* Make libultra_rom default again

* PR review

* libultra OK

* Update Readme

* whitespace removal

* Small exceptasm clean up

* Asm symbols

* Bring over improved asm.h

* build improvements

* asm PR suggestions

* Make comment

* Fix readme table

* strip debug on setup

* GBIDEFINEs
2023-06-27 17:58:03 -07:00
Mr-Wiseguy
0417857a2c Match libgultra_d.a and libgultra.a (#36)
* Begin stages of _d

* Match audio

* Match ldiv

* match llbit

* Match string.c (memcpy matched by wiseguy)

* match syncprintf

* Match flash code and skip libc X files (will do later)

* fix flash formatting and match some voice files

* More voice files

* More voice progress

* voice finish

* Match ai and sched

* Match aisetfreq (done by Tharo) and a few more

* match eep read/write

* more io files

* match epi

* Match gbpak and motor

* PFS mostly matched

* Match PI

* Match SI

* Match SP code

* Match VI code

* Fix alignment

* Match RG

* Fix exceptasm

* parse_gbi fix

* OS part 1

* Fix conflict

* Fix some bugs

* More files

* more matching

* Almost there

* begin some libultra_d code

* add delay

* Match timerintr

* fix for merge

* match logfloat

* printregion match

* log OK

* profile OK

* commonerror OK, plus small cleanups in profile and log

* small cleanup of commonerror

* Start

* Small cleanup

* Defines for constants and other cleanup (#1)

* Integrated fakechroot to match file paths for monutil

* Added generation of symlink to /bin for the chroot

* Matched monutil (#2)

* Added support for libgultra.a building

* Matched profile for libgultra.a

* Fixed host_ptn64 symtab diff, better support for building different versions

* finish libgultra_d (#33)

* finish libgultra_d

* clean up some old comments

* IDO recomp redirect (#35)

* Updates for patched ido

* Some clean up

* new line

* Update table to reflect that libgultra.a and libgultra_d.a are matched

* Change default target to libgultra_rom

* Replaced some magic numbers with defines, removed binlink

* Added explicit alignment to any implicitly aligned variables (#37)

* newlines

* profile cleanup

* va_end

* formating

* WAIT_ON_IOBUSY

* OS_VI_SPECIAL_MAX

* Ido download latest

* yeet useless __assertBreak

* Enable ci for all L libgultra

* Fix NULL syntax

* osViGetCurrentFramebuffer

* Format (#40)

* format

* file modes

* logfloat

* Fix wrong permisions

* left*

* Cleanups

* Missed an rdb.h

* newlines

---------

Co-authored-by: CrashOveride95 <crashoveride953@gmail.com>
Co-authored-by: CrashOveride95 <40003130+CrashOveride95@users.noreply.github.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
Co-authored-by: pixel-stuck <mathmcclintic@gmail.com>
2023-04-02 19:12:00 -07:00
Anghelo Carvajal
d03b2a3afb Github Actions CI builds (#38)
* GHA CI for GCC libgultra

* CI templates for non GCC builds
2023-03-19 09:32:03 +09:00