On 21/02/12 22:57, Michael Biebl wrote:
Firstly, when talking about Upstart we need to make a clear distinction between Upstart itself and the library it relies upon heavily - the NIH Utility library .On 21.02.2012 21:25, Russ Allbery wrote:The most likely way forward is some period where either can be used and we see how things shake out. Unfortunately, neither currently supports kFreeBSD. The upstart upstream seems more amenable to doing so than the systemd upstream.Afaics both upstream projects take more or less the same position on that matter. At least Scott  was clear that he didn't intend to merge any non-Linux specific code and that a kfreebsd port would basically have to be maintained as a fork/branch. Has this position changed for upstart now that James is de-facto the new upstream maintainer? Michael  http://lists.debian.org/debian-bsd/2009/07/msg00122.html
I am personally more than happy for others to work on porting Upstart to other non-Linux platforms. However, I suspect the majority of the work in getting Upstart running on for example a FreeBSD kernel would be in porting NIH to that platform. Certainly, Like Scott, I dislike code littered with #ifdefs so any approach adopted would need to retain Upstart and NIH's code clarity and elegance. For Upstart itself, a compromise approach might be to create an 'arch/' directory like the kernel uses. However, for NIH, we really need Scotts input as he is the maintainer.
If we can find an approach acceptable to all parties, there is another important point to bear in mind: the tests. Scott and more latterly myself have spent a huge amount of effort maintaining the existing tests and writing new tests as features are added, to ensure expected system behaviour. I feel strongly that such tests are imperative for large software projects like this, particularly a system-critical one such as the init deamon. For current test statistics, see:
http://upstart.ubuntu.com/cookbook/#statisticsWith respect to Upstart, as an absolute minimum I would want a "sign-off" stating all the tests had passed successfully on atleast the platform the patch applies to before considering accepting any patches into the upstream lp:upstart branch .
I've attached a list of library and function calls for both Upstart and NIH for those interested in assessing the size of the porting effort.
Kind regards, James.  - https://launchpad.net/libnih  - https://launchpad.net/upstart -- James Hunt ____________________________________ http://upstart.ubuntu.com/cookbook http://upstart.ubuntu.com/cookbook/upstart_cookbook.pdf