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