This is the mail archive of the
mailing list for the eCos project.
Re: A naive question on issues related to code in public repository
Alex Schuilenburg wrote:
While it would be good to get the cradle port into the public CVS
repository, as per my previous email, this is not possible unless you
either wrote a new port from scratch
what does writing from scratch mean? there are hal specific isr/dsr,
macros/functions to be provided in hal. when you save the context of
thread/interrupt, initialise the thread etc. you will be be doing in
standard steps needed on the architecture - things you will be changing,
will be order of saving the registers, or using some alternate
instructions. in case of some architectures you might not even have this
It means throwing away the existing port, starting the port again and
not referring to the old sources.
even after rewrite it will turn out to be same. ecos lays out certain
conventions for naming macros/variables/functions/typedefs etc. so
things won't be changing there. you will moreorless write same things.
Yes, the functionality will be the same and indeed much of the code may
resemble the old code. However, the new port should still not be based
on the old code otherwise it could be seen as a derivative and hence we
get back to the licensing issues.
if you modify some files beyound certain extent, may be you can call
them as almost rewritten (like for modifications beyound certain extent,
I have seen mention of copyright assignment issues on the list).
No you cannot call modified code as being rewritten, even if it is
unrecognisable. You are still basing the new code on the old code, using
the old code as a template. This is derived code, and as such will fall
under the derived code's license.
You need to consider a clean room implementation, and given your
previous exposure to the old code, you will most likely be tainted. Some
may argue that because of this, you may not be a suitable for a rewrite.
Unfortunately a lot of this is open to interpretation so I will take the
cowards way out and leave it to the maintainers to specify what needs to
be done to create a new port suitable for import to anoncvs that is not
tainted by the older code and hence license.
The best route, and maybe only route in your case, would be for Cradle
and Red Hat to re-release the code under the version 2 license.
And as an FYI (since you appeared to have missed Nick's comments :-)
Nick Garnett is the person who did the original port of Cradle to eCos,
i know that even before recent thread. as I gather from earlier
discussions, possibly this port was not thoroughly tested (unfinished
work), that's what would have left certain bugs, little but at crucial
i found nick's work quite fine (improvements here and there are possible
in any work over a period of time with usage), something that has got me
accoclades of 'being obsessed'.
can hal/doings-in-hal be looked at in isolation with rest of the eCos?
This I cannot answer and will leave to a maintainer..