This is the mail archive of the
cygwin-apps
mailing list for the Cygwin project.
Re: [ITP] astrometry.net-0.38-1
- From: "Yaakov (Cygwin/X)" <yselkowitz at users dot sourceforge dot net>
- To: cygwin-apps <cygwin-apps at cygwin dot com>
- Date: Fri, 04 Nov 2011 10:11:54 -0500
- Subject: Re: [ITP] astrometry.net-0.38-1
- References: <CAH7za-Bv7D84wjExfGe_Y7oYGSwq=Q61OGjq7J3wP56i_OcwBA@mail.gmail.com> <6r0p87d36jnok922ec2mkfjqpog218994j@4ax.com> <CAH7za-Bw8ppYPwQkvxo03Q4dmi0vPo3qEMJJz+2EwaO25n8+8g@mail.gmail.com> <4E8F0AA2.4060402@gmail.com> <CAH7za-BpsVVDPoLHVHC+o40pFjPEATMv_sL=tu7zPAd1kB7uGg@mail.gmail.com> <4EB3865A.2060400@cwilson.fastmail.fm>
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