Here is what I wanted. Let us say there is a compilation feature called
USE_FSAL_GPFS. I want these possibilities:
1. If I enable this feature at the "cmake command line", enable this. If it
can't be enabled due to missing packages, then please fail cmake!
2. If I disable this feature at the "cmake command line", please disable
it. This is easy.
3. If I neither enable nor disable at the cmake command line, then it can
be auto-enabled if sufficient packages are installed.
I am not sure if the following works for what I am thinking of (I added
braces for clarity):
if (DEFINED USE_FSAL_GPFS) {
if (USE_FSAL_GPFS) {
case A: admin wants it. Check headers and libs (or
packages). If it can't be enabled, fail.
else () {
case B: admin doesn't want it
}
else () {# not defined by the admin
case C: We want to enable this feature if required packages are
installed.
case D: We don't care, just disable
}
I don't know if DEFINED keyword works the way I want it though. Note that
case A is the only one that fails here.
Regards, Malahal.
On Thu, Mar 22, 2018 at 5:33 PM, Daniel Gryniewicz <d...@redhat.com> wrote:
> So, there is an option STRICT_PACKAGE that is supposed to enable this.
> It's not fully utilized, but it's mostly there.
>
> The problem is that we can't tell whether the default is being used (lots
> of options are on by default but disable themselves if the packages aren't
> installed) or if the user explicitly turned them on. CMake doesn't seem to
> give us that information, that I've found. So, instead, we have
> STRICT_PACKAGE, and you'll have to explicitly turn off everything that's on
> by default but that you don't want.
>
> If you know of a better way of doing this, then I'm happy to listen and
> help implement it.
>
> Daniel
>
> On 03/22/2018 12:28 AM, Malahal Naineni wrote:
>
>> If I specify an option on the cmake command line, I would like it to be
>> honoured, if not, simply fail. Today, cmake only gives a warning if it
>> can't meet my option's requirements. Can some cmake guru fix this first?
>>
>> On Tue, Mar 20, 2018 at 8:38 PM, Daniel Gryniewicz <d...@redhat.com
>> <mailto:d...@redhat.com>> wrote:
>>
>> It's probably a good idea to add the build options to --version
>> output, or something. That way we can ask for it in these types of
>> situations. I've added a card to the wishlist for this.
>>
>> Daniel
>>
>> On Tue, Mar 20, 2018 at 9:39 AM, TomK <tomk...@mdevsys.com
>> <mailto:tomk...@mdevsys.com>> wrote:
>> > On 3/19/2018 9:54 AM, Frank Filz wrote:
>> >>>
>> >>> Solved.
>> >>>
>> >>> Here's the solution in case it can help someone else.
>> >>>
>> >>> To get a certain feature in NFS Ganesha, I had to compile the
>> V2.6
>> >>> release from source. When configuring to compile, idmapd
>> support got
>> >>> disabled since packages were missing:
>> >>>
>> >>> libnfsidmap-devel-0.25-17.el7.x86_64
>> >>>
>> >>> Installed the above package and recompiled with nfsidmap
>> support enabled
>> >>> and this issue went away. Users now show up properly off the
>> NFS mount
>> >>> on clients.
>> >>
>> >>
>> >> Oh, well that was a simple fix :-)
>> >>
>> >> I wonder if we could make changes in our cmake files to make it
>> easier to
>> >> see when stuff got left out due to missing packages? I've been
>> caught out
>> >> myself.
>> >>
>> >> Frank
>> >>
>> > Yep, sure was an easy fix.
>> >
>> > Wouldn't mind seeing that. Maybe even a way to find out what
>> options went
>> > into compiling packages for each distro.
>> >
>> >
>> > --
>> > Cheers,
>> > Tom K.
>> >
>> ------------------------------------------------------------
>> -------------------------
>> >
>> > Living on earth is expensive, but it includes a free trip around
>> the sun.
>> >
>>
>>
>>
>
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Nfs-ganesha-devel mailing list
Nfs-ganesha-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel