This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ITP] astrometry.net-0.38-1


On Fri, 2011-11-04 at 02:29 -0400, Charles Wilson wrote:
> On 10/7/2011 12:18 PM, Jussi Kantola wrote:
> > However I had to modify backend-main.c so that the config file (which
> > defines the location of index files)
> > could be read from cygwin's preferred location,
> > /usr/share/astrometry/etc/backend.cfg.
> 
> That's a little odd, and I don't think that's exactly what was meant by 
> the documentation http://cygwin.com/setup.html#package_contents.
> 
> I don't think this is a showstopper for this release, but ordinarily 
> configuration files belong in the top-level /etc directory.  However, 
> once installed there, a name like "backend.cfg" is poorly chosen, since 
> it doesn't really indicate what package it belongs to, and thus might 
> conflict with some other package.

Then this should be /etc/astrometry/backend.cfg instead.

> IOW, cygwin python's distutils is _doing the right thing_ -- creating 
> the plugin with the name spherematch_c.dll -- but the Makefile in 
> astrometry.net thinks the plugin will always be named spherematch_c.so 
> and reports an error when it tries to install the latter file.

So patch the Makefile.in.

> Now, this bit is interesting:
> -       mkdir -p $(INSTALL_DIR)/python/astrometry/libkd
> +       mkdir -p $(INSTALL_DIR)/share/astrometry/python/astrometry/libkd
> 
> Normally, python extensions go under the "real" python dir:
> 
> 	/usr/lib/python2.6/site-packages/<pkgname>/...
> 
> But...this whole build system doesn't really support that; it hardcodes 
> the destination path and then adds that path to sys.path via the 
> "application" .py files; when it really should use some mechanism to 
> find the entry in $python's sys.path list which contains "site-packages".
> 
> So...accepting that, the python stuff should ALSO go under /lib rather 
> than /share, because (a) the .pyc files are platform specific, and (b) 
> the .dll's which ought to go there are also platform specific.

I'm not so sure about (a), but my Linux VMs already use Python 2.7 so I
couldn't check.  That aside, I have no problem with application-specific
pure-Python code in /usr/share/$PN, as they serve no purpose outside the
given application, and many packages do this, in fact.  Obviously DLL
extensions can't go there though.

> ....so, not GTG.  Also, you missed Corinna's statement: "If the binaries 
> are using it (the libbackend library), they should also be linked 
> against [the DLL], rather than being linked statically."
> 
> Your build still links against libbackend.a, rather than cygbackend.dll.
> 
> I'm trying to massage your -src package to DTRT.  Stay tuned.

Good luck, it sounds like this software is quite unpolished.  No wonder
it's not in the distros yet.


Yaakov



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]