[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Golang Xen packages and the golang packaging system


  • To: Ian Jackson <Ian.Jackson@xxxxxxxxxx>
  • From: George Dunlap <George.Dunlap@xxxxxxxxxx>
  • Date: Thu, 23 Apr 2020 11:49:18 +0000
  • Accept-language: en-GB, en-US
  • Authentication-results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none; spf=None smtp.pra=George.Dunlap@xxxxxxxxxx; spf=Pass smtp.mailfrom=George.Dunlap@xxxxxxxxxx; spf=None smtp.helo=postmaster@xxxxxxxxxxxxxxx
  • Cc: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Nick Rosbrook <rosbrookn@xxxxxxxxx>
  • Delivery-date: Thu, 23 Apr 2020 11:49:35 +0000
  • Ironport-sdr: V754dtk/vuSB5qabf0l6nUbMmcL+D5/ZKAOs2PpKxmnEZrLCajwVuv6XZTO1RcApLkkVZPZ3lS cBR5JFB8dBtSUjpzFqbfg4IEXEz88lFeWNry6mm9tpAELbRd8k6u3zTJd3WSe6n0zEIEijIvTo QlPD1/qNFLlOILIZSvD7B9rRRqIapZref5ZHsU2ye8++XHePxqjNWX6Wk8ZKEWfdsBDp+TAkJn M9e7mPIGlza0BKM4cCXn7m8h0i+ivk0rCQBXl/ykEly4uJUbQOMG9VAwMTGiwCfQNZJ77UATX+ OrU=
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHWGL+431OGV0A6ZUWxyQX/eS/9b6iGcJeAgAAA0oCAAAYAAA==
  • Thread-topic: Golang Xen packages and the golang packaging system


> On Apr 23, 2020, at 12:27 PM, Ian Jackson <ian.jackson@xxxxxxxxxx> wrote:
> 
> Ian Jackson writes ("Re: Golang Xen packages and the golang packaging  
> system"):
>> This is quite unpleasant.  In particular, it makes a git tree out of
>> output files.  What will we do when someone sends us patches to the
>> bindings ?
> 
> Also, anyone who redistributes your proposed golang package is
> violating our licence unless they ship a copy of xen.git[1] too, since
> the golang package is not source code.
> 
> [1] Technically, a copy of the relevant parts will do.

The “relevant parts” would primarily be gengotypes.py, right?  Oh, and I guess 
libxl_test.idl and friends.  libxl_test.idl isn’t included in the distribution 
either.

I’m not an expert in the golang build system, but they generally seem to be 
trying to keep the functionality simple (which of course, means if you want to 
do anything non-basic, it’s incredibly complicated or completely impossible).

There’s a command, `go generate`, which we could use to run gengotypes.py to 
generate the appropriate files.  But I’m not sure how to use that in a 
practical way for this sort of package: it might end up that people wanting to 
use the package would need to manually clone it, then manually run `go 
generate` before manually building the package.

Checking in the generated files means that someone can simply add 
`golang.xenproject.org/xenlight` as a dependency (perhaps with a specific 
version tag, like v4.14), and everything Just Works.

Nick may have some ideas on how to use the golang build system more effectively.

 -George

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.