On Wed, Dec 22, 2021 at 3:04 PM Kaleb Keithley <kkeithle@redhat.com> wrote:


On Wed, Dec 22, 2021 at 4:24 AM Yaniv Kaul <ykaul@redhat.com> wrote:

-- Configuring done
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
NSL_LIBRARY (ADVANCED)
    linked by target "ntirpc" in directory /home/tlv/ykaul/github/nfs-ganesha/src/libntirpc/src

-- Generating done

I personally usually use this:
`cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_CONFIG=rpmbuild -DUSE_FSAL_NULL=on -DUSE_FSAL_MEM=on -DUSE_FSAL_XFS=on -DUSE_FSAL_LUSTRE=off -DUSE_FSAL_CEPH=off -DUSE_FSAL_RGW=off -DUSE_FSAL_GPFS=on -DUSE_FSAL_PANFS=off -DUSE_FSAL_GLUSTER=on -DUSE_SYSTEM_NTIRPC=on -DUSE_9P_RDMA=off -DUSE_LTTNG=off -DUSE_ADMIN_TOOLS=off -DUSE_GUI_ADMIN_TOOLS=off -DUSE_RADOS_RECOV=off -DRADOS_URLS=off -DUSE_FSAL_VFS=ON -DUSE_FSAL_PROXY_V4=on -DUSE_FSAL_PROXY_V3=on -DUSE_DBUS=ON -DUSE_9P=off -DDISTNAME_HAS_GIT_DATA=OFF -DUSE_MAN_PAGE=off -DRPCBIND=on -D_MSPAC_SUPPORT=off -DSANITIZE_ADDRESS=off`

If you install the ceph dependencies, you can change -DUSE_FSAL_CEPH=off -DUSE_FSAL_RGW=off -DUSE_RADOS_RECOV=off -DRADOS_URLS=off  to "on"

But even, e.g., just `cmake . -DCMAKE_BUILD_TYPE=Maintainer`
should work. (It did work for me recently.)  It will at least build FSAL_VFS, which is enough to run a basic NFS server serving local file systems.

Neither worked. First I needed dbus-devel (it complained on dbus-1 missing).
Now I'm with:
Make Error at cmake/modules/FindPackageHandleStandardArgs.cmake:109 (message):
  Could NOT find NTIRPC: Found unsuitable version "0.0.0", but required is at
  least "4.0" (found NTIRPC_INCLUDE_DIR-NOTFOUND)

So disabled, with -DUSE_SYSTEM_NTIRPC=off
which only brought me to:
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
NSL_LIBRARY (ADVANCED)
    linked by target "ntirpc" in directory /home/tlv/ykaul/github/nfs-ganesha/src/libntirpc/src

So I install libnsl2-devel RPM package.

And now, it worked - even with clang!

and it complains on some issues, such as:
/home/tlv/ykaul/github/nfs-ganesha/src/FSAL/FSAL_MEM/mem_handle.c:175:40: warning: passing 'uint32_t *' (aka 'unsigned int *') to parameter of type 'int32_t *' (aka 'int *') converts between pointers to integer types with different sign [-Wpointer-sign]
        int32_t refcount = atomic_dec_int32_t(&myself->refcount);
                                              ^~~~~~~~~~~~~~~~~
/home/tlv/ykaul/github/nfs-ganesha/src/include/abstract_atomic.h:326:51: note: passing argument to parameter 'var' here
static inline int32_t atomic_dec_int32_t(int32_t *var)

which is trivially fixed by changing to an int32_t.

Thanks - I'll see if I can update the wiki with some basic editing.
Y.
Y.


 

[ykaul@ykaul build_dir]$ CC=clang cmake -i ~/github/nfs-ganesha/src
The "cmake -i" wizard mode is no longer supported.
Use the -D option to set cache values on the command line.
Use cmake-gui or ccmake for an interactive dialog.


We haven't ever tried using clang AFAIK, at least not at Red Hat on Linux. This release did get some attention from the FreeBSD community though, so I would not be surprised if it just worked.

I've never used cmake wizard mode.
 

In short, I would be happy to update the docs once I solve those issues.
Y.

On Wed, Dec 22, 2021 at 12:04 AM Kaleb Keithley <kkeithle@redhat.com> wrote:

On Tue, Dec 21, 2021 at 4:30 PM Yaniv Kaul <ykaul@redhat.com> wrote:
Congrats, where's the ChangeLog? Something to celebrate?
Y.

On Tue, Dec 21, 2021 at 11:09 PM kalebskeithley <notifications@github.com> wrote:

NFS-Ganesha 4.0 GA

Repository: nfs-ganesha/nfs-ganesha · Tag: V4.0 · Commit: 6156de3 · Released by: kalebskeithley

NFS-Ganesha 4.0 GA

This release has 2 assets:

  • Source code (zip)
  • Source code (tar.gz)

Visit the release page to download them.


You are receiving this because you are watching this repository.
View it on GitHub or unsubscribe from all notifications for this repository.



--

Kaleb


--

Kaleb