On 29/09/2017 22:17, Bruce Dubbs wrote:
I am looking at fuse-3.2.0.  This package has dropped autotools in favor of meson/ninja.  We are still in a bit of a learning mode and I am going to present what I've found asking for comment.

sed -i '/^udev/,$ s/^/#/' util/meson.build

meson --prefix=/usr $PWD build
cd build
ninja -j1

DESTDIR=$DEST $SUDO ninja install

mv -vf /usr/lib/libfuse3.so.3 /lib
ln -sfvn ../../lib/libfuse3.so.3.2.0 /usr/lib/libfuse3.so

mv -vf /usr/bin/fusermount3  /bin
mv -vf /usr/sbin/mount.fuse3 /sbin


install -v -m755 -d $DEST/usr/share/doc/fuse-3.2.0/html

install -v -m644  ../doc/{README.NFS,kernel.txt} \
                    $DEST/usr/share/doc/fuse-3.2.0

cp -Rv ../doc/html $DEST/usr/share/doc/fuse-3.2.0

gunzip $DEST/usr/share/man/man1/fusermount3.1.gz
gunzip $DEST/usr/share/man/man8/mount.fuse.8.gz

These are the issues:

The sed removes the install of the boot script and the udev rule.
I'm unsure if the udev rule (KERNEL=="fuse", MODE="0666") is required, but if that is needed, we probably should add that manually.  The installation location of the files is hard coded.

meson insists that --bindir, --sbindir, etc be subdirectories of prefix.

Not sure this is relevant, but the according to http://mesonbuild.com/Installing.html, it is possible to impose an absolute install dir  in the meson.build file. In the present case, something like:
sed s@get_option(\'bindir\')@/bin@ -i util/meson.build

and same thing with sbindir.

probably fusermount_path should be changed in lib/meson.build too.

If we change --prefix to /, then we would need to specify or move ./usr/share/man/*, /usr/lib/pkgconfig, /usr/include/fuse3.  We would still need to remove/recreate /usr/lib/libfuse3.so.

But it is maybe easier to change the "install_dir:" stanzas in this case...


The docs are not installed as a part of the ninja build and if they were, would would probably need to rename the directory to get a versioned directory name.

Maybe add some install_xxx stanza to doc/meson.build, but not sure it is worht the trouble...


ninja insists on installing man pages compressed.  The uncompressed files are only about 12K so the compression seems obsolete to me.

ninja just calls "meson --private". Compression is done by meson and it seems it cannot be disabled. See "install_man()" in
http://mesonbuild.com/Reference-manual.html.

Feedback?


My first contact with meson. Seems promising. In the present case of fuse3, autotools was not much easier, and much slower. We should maybe report upstream about compressed man pages.

Pierre
--
http://lists.linuxfromscratch.org/listinfo/blfs-dev
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to