This is the mail archive of the gsl-discuss@sourceware.org mailing list for the GSL 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: more make targets


On Tue, Jan 23, 2007 at 08:25:10PM -0700, Patrick Alken wrote:
> Hello all,
> 
>   I am wondering what people think about the idea of adding
> a few more makefile targets to gsl:
> 
> make opt
> make opt_install
> 
> These would compile the library with HAVE_INLINE and GSL_RANGE_CHECK_OFF
> and install the resulting library as "libgsl_opt.a" and
> "libgslcblas_opt.a"
> 
> Also,
> 
> make debug
> make debug_install
> 
> These would compile the library with -g only (no optimization) and
> install the resulting library as libgsl_debug.a and libgslcblas_debug.a.
> 
> This way, if the user wants they could have 3 copies of gsl
> simultaneously installed on their system and could choose which one
> to link against in their application. For example, it might be useful
> to develop your code with the standard gsl that has range checking
> but then switch quickly to libgsl_debug if you need to use valgrind 
> on a difficult bug (its easier to use gdb and valgrind on -g only),
> and then switch to libgsl_opt when you're ready for production use,
> without having to recompile the library every time.
> 
> Just throwing this out there as a suggestion :-).
> 
> Patrick Alken

If the goal is to speed up matrix element access within the gsl's own methods
(in linalg and cblas for eg.) then it might be easiest to define
GSL_RANGE_CHECK_OFF and HAVE_INLINE at the top of individual files that should
always be compiled with those options.

This addresses only some of your goals, but it is in some sense simpler... just
another suggestion :-)

James
-- 
http://www-etud.iro.umontreal.ca/~bergstrj


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