[GenABEL-dev] ProbABEL autotools integration branch in SVN

L.C. Karssen l.karssen at erasmusmc.nl
Fri Aug 12 15:08:35 CEST 2011


Dear list,

In SVN rev. 758  implemented a 'solution' for the problem with
generating the ProbABEL PDF documentation as described in one of my
previous e-mails (see below).

I did the following:
- In configure.ac I check whether the program pdflatex exists. If so a
variable HAVE_PDFLATEX is defined. 
- In doc/Makefile.am I use this variable to add a few lines to the
Makefile so that the PDF gets generated by 'make' and installed by 'make
install'.

So, if you have pdflatex installed everything works like it did before.
However, if you don't have pdflatex installed, you won't get the PDF of
the manual, only the .tex file will be installed. 

I guess that's the best solution. At least it is self-consistent, you
can run
$ ./configure
$ make distcheck 
to generate the ProbABEL-$VERSION.tar.gz file and then distribute that.
If you untar the tar.gz file and repeat you will get the exact same
results. 

If, on the other hand, we want our official .tar.gz file to contain the
PDF file (which should then be generated by the maintainer of the tar.gz
file and not stored in SVN, as Rob already pointed out), we face a
problem, because in that case
$ make 
and/or 
$ make distcheck
will always try to make the PDF, forcing our users to have LaTeX
installed, which we didn't want. I tried to make the inclusion of the
PDF into the tar.gz file optional (depending on the presence of LaTeX),
but couldn't get that to work). I guess that's because it would violate
the principle that it should always be possible to run make distcheck
'recursively'.

All in all, I think the way things are now is the most proper solution. 


Furthermore, in r. 759 I changed a bit of the ProbABEL code to reflect
the fact that we now have the help of the configure script to give us
information like the name of the package and the version number. The
version number is now stored in configure.ac, which, after invocation
of ./configure, creates src/config.h. That file contains defines like:
#define PACKAGE_VERSION "0.1-9e"
that I used to replace the once mentioned in version.h (which I
deleted). A logical next step here would be to tell automake to insert
the version number from configure.ac also into the documentation. But
that's for another day.


Lennart.


On wo, 2011-07-27 at 00:28 +0200, L.C. Karssen wrote:
> Dear list,
> 

> The 'almost' I referred to earlier relates to the doc directory. At this
> moment there is no automake Makefile.am yet for that directory. There
> are two reasons for that:
> 1) I'm not yet sure how to go about this. As far as I know there is no
> automake support for LaTeX to PDF yet. However, I think I could put the
> old Makefile rules in there with a little tweaking to make it work
> 2) If we follow 1) and don't store the pdf in SVN, we force all users
> who want to install ProbABEL to have a functioning LaTeX install
> (./configure doesn't check for this AFAIK). I don't think we want to add
> LaTeX to the ProbABEL dependencies.
> Any suggestions on this issue is much appreciated. 
> 

> Lennart.
> 
> 
> On ma, 2011-06-27 at 19:28 +0200, L.C. Karssen wrote:
> > Dear list,
> > 
> > Those of you that keep an eye on the SVN repo have noticed that I've
> > added a branch called ProbABEL/autotools-integration. In that branch I'm
> > trying to convert the ProbABEL package to use autoconf and automake. The
> > reasons for this change are:
> > - most (dare I say 'advanced' here?) Linux/Unix users are used to the
> > sequence of ./configure; make; make install when compiling and
> > installing software.
> > - it makes ProbABEL conform (more) to the GNU coding standards, and as a
> > result
> > - it is easier to package ProbABEL for various distributions
> > (e.g. .deb, .rpm, .tgz)
> > - I've been wanting to lean how to use autoconf and automake for some
> > time, and ProbABEL seems to be a nice (although slightly complex)
> > project to started with. 
> > 
> > At the moment I've got most of it working: 
> > - palinear and palogist are compiled and installed in PREFIX/bin
> > - the examples are copied to PREFIX/usr/share/ProbABEL/examples/
> > - documentation is copied to PREFIX/usr/share/doc/
> > - the probabel_config.cfg file is copied to PREFIX/etc/
> > 
> > What isn't working yet is:
> > - the PDF is not automatically generated from the .tex file. I still use
> > the old Makefile in the doc/ directory for that. 
> > - I didn't test how this all works for the Windows build
> > - pacoxph doesn't compile. It gives this error:
> > pacoxph-main.o: In function `coxph_reg::estimate(coxph_data&, int, int,
> > double, double, int, int, int, bool, int)':
> > /home/lennart/ErasmusMC/R-dev/ABEL-total/branches/ProbABEL/autotools-integration/ProbABEL/src/reg1.h:884: undefined reference to `coxfit2(int*, int*, int*, double*, int*, double*, double*, double*, int*, double*, double*, double*, double*, double*, int*, double*, double*, double*, double*)'
> > collect2: ld returned 1 exit status
> > 
> > even though the function definition seems to be available in reg1.h
> > itself... I'll have to look into that. 
> > 
> > Any help is appreciated! Also if you've got more experience with
> > autoconf/automake I'd like to hear your comments.
> > 
> > 
> > 
> > Regards,
> > 
> > Lennart.
> > 
> > 
> > _______________________________________________
> > genabel-devel mailing list
> > genabel-devel at lists.r-forge.r-project.org
> > https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/genabel-devel
> 
> _______________________________________________
> genabel-devel mailing list
> genabel-devel at lists.r-forge.r-project.org
> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/genabel-devel

-- 
-----------------------------------------------
L.C. Karssen
Erasmus MC
Department of Epidemiology
Room Ee2224

Postbus 2040
3000 CA Rotterdam
The Netherlands

phone: +31-10-7044217
fax: +31-10-7044657
email: l.karssen at erasmusmc.nl
GPG key ID: 0E1D39E3
-----------------------------------------------
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://lists.r-forge.r-project.org/pipermail/genabel-devel/attachments/20110812/3117a67f/attachment.pgp>


More information about the genabel-devel mailing list