I created two parallel sets of code, one with multi-context/window guaranteed-safe use of GL function pointers (the 'MX' files) and one with the not-guaranteed-multicontext safe scheme that prefixes all GL functions with 'gl' (the 'NoMX' files). I prefer the MX scheme, but kept/needed NoMX to interact with the original version of libcompoundray, which had gl calls in it. However, I have since written all the GL functionality out of my fork of libcompoundray, so the extra complexity here is now just technical debt.
I created two parallel sets of code, one with multi-context/window guaranteed-safe use of GL function pointers (the 'MX' files) and one with the not-guaranteed-multicontext safe scheme that prefixes all GL functions with 'gl' (the 'NoMX' files). I prefer the MX scheme, but kept/needed NoMX to interact with the original version of libcompoundray, which had gl calls in it. However, I have since written all the GL functionality out of my fork of libcompoundray, so the extra complexity here is now just technical debt.