Date: Tue, 31 Aug 2010 23:10:08 -0500 From: Scot Hetzel <swhetzel@gmail.com> To: bf1783@gmail.com, maho@FreeBSD.org Cc: freebsd-ports@freebsd.org Subject: Re: math/blas linking to gfortran with LDADD?= -lgfortran Message-ID: <AANLkTinVXMOanGiMsBGBgyMtOWpDEUrLzaetZfFXn7p_@mail.gmail.com> In-Reply-To: <AANLkTi=X6=o6bLy4EcGafiinK0UWjzUUPL6NNM6ad0i8@mail.gmail.com> References: <AANLkTinhAPY-PEH_TegMAEx1ejHf_WoEL8KZU%2BoXGhFD@mail.gmail.com> <4C7D76A6.7080401@DataIX.net> <AANLkTi=X6=o6bLy4EcGafiinK0UWjzUUPL6NNM6ad0i8@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 31, 2010 at 10:06 PM, b. f. <bf1783@googlemail.com> wrote: > On 8/31/10, jhell <jhell@dataix.net> wrote: >> Looking closer at the math/blas & math/lapack ports: >> >> This statement does not make any sense. The logic is backwards for every >> instance. And WITH_PROFILE would do. >> .if !(defined(NOPROFILE) || defined(NO_PROFILE) || defined(WITHOUT_PROFI= LE)) >> PLIST_FILES+=3D =A0 lib/libblas_p.a >> .endif >> >> Which is basically saying: >> Add that profile lib if NOPROFILE is not defined "_p is a profiled lib >> why would you want to install this if the admin has NOT defined NOPROFIL= E? >> > > Er, I'm not sure what you're getting at here. No means no. =A0Really. > The default, as I explained, is to build and install the profiling > libraries, unless one or more of three disabling variables has been > defined. And that's the default because users of these ports often use > the profiled libraries when analyzing performance of their programs, > which are usually computationally-intensive. =A0Why the three variables? > =A0Because they control whether the profiling libraries are actually > built via bsd.compat.mk and bsd.lib.mk. > Actually there are only 2 *_PROFILE variables (WITH_PROFILE and WITHOUT_PROFILE) that are user visible for the FreeBSD sources. The NOPROFILE variable is depreceiated, and the NO_PROFILE variable is only supposed to be used in Makefiles according to bsd.own.mk: # Define MK_* variables (which are either "yes" or "no") for users # to set via WITH_*/WITHOUT_* in /etc/src.conf and override in the # make(1) environment. # These should be tested with `=3D=3D "no"' or `!=3D "no"' in makefiles. # The NO_* variables should only be set by makefiles. So according to bsd.own.mk, this is the correct test for the math/blas port to determine if profiling libraries should be built: .if !defined(WITHOUT_PROFILE) PLIST_FILES+=3D lib/libblas_p.a .endif I also tested how these variables responded: vbox# cd /usr/src/lib/libcam vbox# make -V WITH_PROFILE -V MK_PROFILE -V NO_PROFILE -V WITHOUT_PROFILE yes vbox# make -V WITH_PROFILE -V MK_PROFILE -V NO_PROFILE -V WITHOUT_PROFILE WITH_PROFILE=3Dyes yes yes vbox# make -V WITH_PROFILE -V MK_PROFILE -V NO_PROFILE -V WITHOUT_PROFILE NO_PROFILE=3Dyes no yes vbox# make -V WITH_PROFILE -V MK_PROFILE -V NO_PROFILE -V WITHOUT_PROFILE WITHOUT_PROFILE=3Dyes no yes vbox# make -V WITH_PROFILE -V MK_PROFILE -V NO_PROFILE -V WITHOUT_PROFILE NOPROFILE=3Dyes "/usr/share/mk/bsd.compat.mk", line 35: warning: NOPROFILE is deprecated in favour of NO_PROFILE no yes As can be seen, NOPROFILE is deprecated. NOTE: WITHOUT_PROFILE would need to be set in /etc/make.conf (instead of /etc/src.conf) to disable building profiled libraries in the FreeBSD sources and the math/blas port. Scot
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTinVXMOanGiMsBGBgyMtOWpDEUrLzaetZfFXn7p_>