mweastwood / LibHealpix.jl

A Julia wrapper of the Healpix library.
http://mweastwood.info/LibHealpix.jl/stable/
Other
11 stars 7 forks source link

get the PackageEvaluator.jl build working #29

Closed mweastwood closed 7 years ago

mweastwood commented 7 years ago

http://pkg.julialang.org/detail/LibHealpix

It is somewhat embarrassing having a red dot next to the package name. I think I'll need to submit a PR to PackageEvaluator.jl to install autoconf, but I should actually get PackageEvaluator.jl running myself to see if that's all that's needed.

I'm not going to bother fixing the errors for julia 0.4 and 0.5 though because the package no longer supports those versions.

mweastwood commented 7 years ago

ref JuliaCI/PackageEvaluator.jl#169

tkelman commented 7 years ago

the point of autoconf is that you don't need autoconf to run a configure script, so release tarballs should usually come with a generated copy. why is the healpix source tarball missing that? the source repo, for developers, sure you can leave out the generated files. but make dist should build a proper release source tarball for you, that you can run on systems where autotools aren't installed

mweastwood commented 7 years ago

@tkelman

I was unaware that libtool and autoconf generally shouldn't be needed by the user. However this is the situation I am dealing with:

$ tar xf Healpix_3.31_2016Aug26.tar.gz 
$ cd Healpix_3.31/
$ find -name configure
./configure
./src/healpy/healpixsubmodule/src/cxx/autotools/configure
./src/healpy/cfitsio/configure
$ ./configure 

*************************
 Welcome to Healpix 3.31
*************************

This script takes care of the configuration and compilation
of the C, C++, F90, IDL and Python packages of the Healpix distribution.

Do you want to:
(0): exit
(1): configure Healpix IDL package
(2): configure Healpix C package, and edit Makefile
(3): configure Healpix F90 package, and edit Makefile
(4): configure Healpix C++ package, and edit Makefile
(5): configure Healpix Python (healpy) package, and edit Makefile
(8): see what configuration files have been created so far
(9): edit your shell configuration file to have easier access to Healpix codes
(-1): reset
     (will *REMOVE* the Makefile and configuration files, and exit)
(0): exit

Enter your choice (configuration of packages can be done in any order): ^C

I need both the C (libchealpix) and C++ (libhealpix_cxx) packages compiled. They provide different pieces of functionality.

Unlike what the documentation says there is no autotools generated configure script being distributed with healpix. The 3 hits from find are respectively: an interactive configure script (ugh), an autotools configure script for C++ part of the healpix library used by the python equivalent of this package, and a configure script for cfitsio (irrelevant here). So while I could make use of the second one, it unfortunately doesn't get me over the finish line.

In Xenial you can grab this dependency with apt and on OSX you can use homebrew (I don't have easy access to a mac so this isn't automated yet), so maybe this won't be a problem for most users?

tkelman commented 7 years ago

At some point I will upgrade pkgeval to use 16.04, I'm not sure exactly when that will be though.

mweastwood commented 7 years ago

I think I'm going to try to get Travis building and deploying the dependencies for me. I have another open issue for that (#20), but I think that would close this issue as well and it seems the most sensible way forward.