[Developers] A new package for Gentoo and a set of patches for ADMB-10.1

Hugo Mildenberger Hugo.Mildenberger at web.de
Fri Nov 11 07:21:22 PST 2011


Dear list members,

I just created an ADMB package[1] for Gentoo-Linux. In order to get it
working, I had to solve some issues with the currently used build
system, and did also fix some minor bugs in ADMB sources. As a
by-product, there is now a commented set of patches[2] which you may
want to incorporate into the main line. The package containing the patch
set was tested on x86 and x86_64. Comparing the outputs from the example
programs revealed some minor differences among these two machines, which
in turn may be attributed to a different internal floating point precision.

Essentially, on almost any GNU based system, said patch set will

1.) automatically build 32 and 64 bit versions,
    depending on data pointer size *and* --enable-64bit (default true)
2.) respect host CXXFLAGS, as this is very important for
    package developers, for making debug versions, profiling,
    cross-compiling and so on
2.) enable parallel make
4.) preserve the functionality, but get rid of the troublesome
    *necessity* to set ADMB_HOME (defaulting to "$datadir"/admb)
5.) add missing dependencies concerning tpl2rem.lex and tpl2cpp.lex,
    so that the C-code will be regenerated from sources
6.) account for the fact that a "g++" compiler may be actually have
    a very long installed name, only ending in "g++"

Due to ADMB's perfectly non-standard set of install directories, the
Gentoo package implements the installation phase without using any make
file -- simply because fixing that in the archived source tree would
have amounted in replacing the entire make system. But it could be done
quite easily by switching to automake or cmake.

Besides all that, there is also a cumulated patch meant to shorten the
long list of annoying warnings and thus direct attention to the
potentially important ones.

Lastly, since I haven't also tried to make a windows version, I can only
hope that I didn't interfere with the Windows build. But installers on
Windows may also want to take care of the new configure script target
"@admb_home@"  (as implemented, e.g., within "scripts/g++/adcomp.in"),
or make use of a registry key instead.


Best regards


Hugo Mildenberger

[1] https://bugs.gentoo.org/show_bug.cgi?id=390169
[2] https://bugs.gentoo.org/attachment.cgi?id=292187

the latter is a tar archive, containing
  admb-10.1-adcomp-use-configured-home.patch
  admb-10.1-adlink-use-configured-home.patch
  admb-10.1-admb-show-configured-home.patch
  admb-10.1-enable64-respect-cxxflags-configure-home.patch
  admb-10.1-fix-cp-scripts-g++.patch
  admb-10.1-fix-g++-warnings.patch
  admb-10.1-fix-parallel-make.patch
  admb-10.1-nh99-optg32-rh8-laplace-mak-add-tpl2cpp-dep.patch
  admb-10.1-optg32-rh8-laplace-mak-add-tpl2rem-dep.patch
  admb-10.1-respect-cxxflags.patch
  admb-10.1-tpl2cpp-fix-segv-on-temp-open-fail.patch
  admb-10.1-tpl2rem-use-configured-home.patch



More information about the Developers mailing list