summary refs log tree commit diff
diff options
context:
space:
mode:
authorMichael Weiss <dev.primeos@gmail.com>2019-06-14 18:23:08 +0200
committerMichael Weiss <dev.primeos@gmail.com>2019-06-14 22:09:15 +0200
commitf2cfc158b2ae0c31950eb1d3142fdd723887bc35 (patch)
tree813fd069a04850d640052760d9ef00e20f10355e
parent189c4de9bf988fc5c47c71ba017623ba49cc6695 (diff)
downloadnixpkgs-f2cfc158b2ae0c31950eb1d3142fdd723887bc35.tar
nixpkgs-f2cfc158b2ae0c31950eb1d3142fdd723887bc35.tar.gz
nixpkgs-f2cfc158b2ae0c31950eb1d3142fdd723887bc35.tar.bz2
nixpkgs-f2cfc158b2ae0c31950eb1d3142fdd723887bc35.tar.lz
nixpkgs-f2cfc158b2ae0c31950eb1d3142fdd723887bc35.tar.xz
nixpkgs-f2cfc158b2ae0c31950eb1d3142fdd723887bc35.tar.zst
nixpkgs-f2cfc158b2ae0c31950eb1d3142fdd723887bc35.zip
fuse,fuse3: Avoid unnecessary build warnings
Do not set FUSERMOUNT_DIR since we already set it though
NIX_CFLAGS_COMPILE.

Setting it twice results in a lot of warnings like this one:

<command-line>:0:0: warning: "FUSERMOUNT_DIR" redefined

which makes the build look potentially broken.
This doesn't affect the result but fuse3 will now build without any
warnings and building fuse yields less warnings.
-rw-r--r--pkgs/os-specific/linux/fuse/common.nix4
-rw-r--r--pkgs/os-specific/linux/fuse/fuse2-Do-not-set-FUSERMOUNT_DIR.patch11
-rw-r--r--pkgs/os-specific/linux/fuse/fuse3-Do-not-set-FUSERMOUNT_DIR.patch12
3 files changed, 26 insertions, 1 deletions
diff --git a/pkgs/os-specific/linux/fuse/common.nix b/pkgs/os-specific/linux/fuse/common.nix
index 15470479a3a..f72b3cac737 100644
--- a/pkgs/os-specific/linux/fuse/common.nix
+++ b/pkgs/os-specific/linux/fuse/common.nix
@@ -28,7 +28,9 @@ in stdenv.mkDerivation rec {
         url = "https://github.com/libfuse/libfuse/commit/914871b20a901e3e1e981c92bc42b1c93b7ab81b.patch";
         sha256 = "1w4j6f1awjrycycpvmlv0x5v9gprllh4dnbjxl4dyl2jgbkaw6pa";
       })
-    ++ stdenv.lib.optional isFuse3 ./fuse3-install.patch;
+    ++ (if isFuse3
+      then [ ./fuse3-install.patch ./fuse3-Do-not-set-FUSERMOUNT_DIR.patch ]
+      else [ ./fuse2-Do-not-set-FUSERMOUNT_DIR.patch ]);
 
   nativeBuildInputs = if isFuse3
     then [ meson ninja pkgconfig ]
diff --git a/pkgs/os-specific/linux/fuse/fuse2-Do-not-set-FUSERMOUNT_DIR.patch b/pkgs/os-specific/linux/fuse/fuse2-Do-not-set-FUSERMOUNT_DIR.patch
new file mode 100644
index 00000000000..8ff40f34f93
--- /dev/null
+++ b/pkgs/os-specific/linux/fuse/fuse2-Do-not-set-FUSERMOUNT_DIR.patch
@@ -0,0 +1,11 @@
+--- a/lib/Makefile.am
++++ b/lib/Makefile.am
+@@ -1,7 +1,7 @@
+ ## Process this file with automake to produce Makefile.in
+ 
+ AUTOMAKE_OPTIONS = subdir-objects
+-AM_CPPFLAGS = -I$(top_srcdir)/include -DFUSERMOUNT_DIR=\"$(bindir)\" \
++AM_CPPFLAGS = -I$(top_srcdir)/include \
+  -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DFUSE_USE_VERSION=26
+ 
+ lib_LTLIBRARIES = libfuse.la libulockmgr.la
diff --git a/pkgs/os-specific/linux/fuse/fuse3-Do-not-set-FUSERMOUNT_DIR.patch b/pkgs/os-specific/linux/fuse/fuse3-Do-not-set-FUSERMOUNT_DIR.patch
new file mode 100644
index 00000000000..1d41a26b0a4
--- /dev/null
+++ b/pkgs/os-specific/linux/fuse/fuse3-Do-not-set-FUSERMOUNT_DIR.patch
@@ -0,0 +1,12 @@
+--- a/lib/meson.build
++++ b/lib/meson.build
+@@ -36,8 +36,7 @@ libfuse = library('fuse3', libfuse_sources, version: meson.project_version(),
+                   soversion: '3', include_directories: include_dirs,
+                   dependencies: deps, install: true,
+                   link_depends: 'fuse_versionscript',
+-                  c_args: [ '-DFUSE_USE_VERSION=34',
+-                            '-DFUSERMOUNT_DIR="@0@"'.format(fusermount_path) ],
++                  c_args: [ '-DFUSE_USE_VERSION=34' ],
+                   link_args: ['-Wl,--version-script,' + meson.current_source_dir()
+                               + '/fuse_versionscript' ])
+