You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

75 lines
1.6 KiB

  1. VERSION = "2.9.7-mergerfs_2.26.0"
  2. OPT = -O2
  3. DESTDIR = "/"
  4. BINDIR = "/bin"
  5. SBINDIR = "/sbin"
  6. SRC = \
  7. lib/buffer.c \
  8. lib/cuse_lowlevel.c \
  9. lib/fuse.c \
  10. lib/fuse_kern_chan.c \
  11. lib/fuse_loop.c \
  12. lib/fuse_loop_mt.c \
  13. lib/fuse_lowlevel.c \
  14. lib/fuse_mt.c \
  15. lib/fuse_opt.c \
  16. lib/fuse_session.c \
  17. lib/fuse_signals.c \
  18. lib/helper.c \
  19. lib/mount.c
  20. OBJ = $(SRC:lib/%.c=obj/%.o)
  21. DEPS = $(OBJ:obj/%.o=obj/%.d)
  22. CFLAGS = $(OPT) \
  23. -g \
  24. -Wall \
  25. -pipe \
  26. '-D_FILE_OFFSET_BITS=64' \
  27. '-D_REENTRANT' \
  28. '-DFUSE_USE_VERSION=29' \
  29. '-DFUSERMOUNT_DIR="/usr/local/bin"' \
  30. '-DPACKAGE_VERSION=$(VERSION)' \
  31. -Iinclude \
  32. -MMD
  33. LDFLAGS = \
  34. -ldl \
  35. -lrt \
  36. -pthread
  37. all: obj/libfuse.a mergerfs-mount mount.mergerfs
  38. libfuse.a: obj/libfuse.a
  39. include/config.h:
  40. ecfd/build | tee include/config.h
  41. obj/libfuse.a: obj/obj-stamp include/config.h $(OBJ)
  42. ar rcs obj/libfuse.a $(OBJ)
  43. mergerfs-mount: include/config.h util/fusermount.c lib/mount_util.c
  44. $(CC) $(CFLAGS) -Ilib -o mergerfs-mount util/fusermount.c lib/mount_util.c
  45. mount.mergerfs: obj/libfuse.a util/mount.fuse.c
  46. $(CC) $(CFLAGS) -o mount.mergerfs util/mount.fuse.c obj/libfuse.a $(LDFLAGS)
  47. obj/obj-stamp:
  48. mkdir -p obj
  49. touch $@
  50. obj/%.o: lib/%.c
  51. $(CC) $(CFLAGS) -c $< -o $@
  52. clean:
  53. rm -rf obj include/config.h mergerfs-mount mount.mergerfs
  54. distclean: clean
  55. git clean -fdx
  56. install:
  57. install -D mergerfs-mount "$(DESTDIR)$(BINDIR)/mergerfs-mount"
  58. chown root:root "$(DESTDIR)$(BINDIR)/mergerfs-mount"
  59. chmod u+s "$(DESTDIR)$(BINDIR)/mergerfs-mount"
  60. install -D mount.mergerfs "$(DESTDIR)$(SBINDIR)/mount.mergerfs"
  61. -include $(DEPS)