This is a strange accusation. The repo linked as proof (https://github.com/derek57/libogc) consists of over 100 commits meticulously converting the libogc codebase to look more like the RTEMS codebase, and claiming that's enough proof that it's the same codebase. I wonder if it'd even build, or if those changes didn't break anything?
Regardless of whether there's any truth to this anonymous accusation, this doesn't seem like the right way to go about it. An article walking through some of the similarities would be much more helpful to prove the point (and probably less work for whoever went through this exercise).
I'm not saying it isn't true, I just find this to not be the most credible accusation I've seen. This feels like some opensource drama thing, and the readme doesn't help, being both lacking information and including lines like:
> How disgusting...
EDIT:
also, they have another serious accusation without ANY proof:
> we discovered that large portions of libogc were stolen directly from the Nintendo SDK or games using the Nintendo SDK (decompiled and cleaned up).
Yeah, I'm with Marcan 90% of the time, and in my view Marcan is more likely than not right that that function is derived from the RTEMS function, but in my view there's still reasonable doubt. That is to say, purely based on the evidence linked, I only agree that it's probable that the code is copied and disagree with Marcan's claim that it's "not possible" for the implementation to be non-infringing.
The fact that some of the identifiers are similar raises the biggest suspicions. "__lwp_stack_isenough" vs. "_Stack_Is_enough" is suspicious because I'd probably call that "sufficient_stack_available" or something like that. "LWP_STATES_DORMANT" vs. "STATES_DORMANT" is also suspicious because the normal OS term would be "sleeping". Still, the function logic is different enough that, even with that evidence, one could plausibly claim that only the headers or interface were copied and the implementation was clean-room, which is non-infringing per Oracle v. Google.
In US legal system terms, I'd say that a preponderance of the evidence shows that the code is a derivative work (i.e. it's more likely than not that the code was copied at some point), but that there's still reasonable doubt (i.e. a reasonable person could plausibly believe otherwise).
FWIW, whether you agree with the accusation or not, it isn't anonymous. The commit history makes it obvious that it's marcan (Hector Martin) making the accusations.
Whether it's really worth all of the hooplah or not is going to be up to taste. I think it's pointless to just not explicitly credit RTEMS personally, but I suspect the real point of doing this is probably in large parts just to distance themselves from the reverse engineered libogc code.
> FWIW, whether you agree with the accusation or not, it isn't anonymous. The commit history makes it obvious that it's marcan (Hector Martin) making the accusations.
I'm not an expert in embedded systems, but I do work on them at a very low level, and I can't be sure 100% of my code would differential from the RTEMS code base any more than libogs's. That doesn't mean they didn't do it - but the concepts behind Real Time Operating Systems in general are well known, and nearly standardized.
Regardless of whether there's any truth to this anonymous accusation, this doesn't seem like the right way to go about it. An article walking through some of the similarities would be much more helpful to prove the point (and probably less work for whoever went through this exercise).
At least provide some links to RTEMS code comparing the libogc code. The OP cites these (https://github.com/devkitPro/libogc/blob/52c525a13fd1762c103... and https://github.com/atgreen/RTEMS/blob/2f200c7e642c214accb7cc...), but that's hardly a smoking gun. The function is trivial, just filling in some struct fields. The logic for choosing the stack size is the same, but it's also trivial and I'd just as likely attribute it to the function interface.
I'm not saying it isn't true, I just find this to not be the most credible accusation I've seen. This feels like some opensource drama thing, and the readme doesn't help, being both lacking information and including lines like:
> How disgusting...
EDIT:
also, they have another serious accusation without ANY proof:
> we discovered that large portions of libogc were stolen directly from the Nintendo SDK or games using the Nintendo SDK (decompiled and cleaned up).