44 lines
1.1 KiB
Makefile
44 lines
1.1 KiB
Makefile
|
|
# retoor <retoor@molodetz.nl>
|
||
|
|
|
||
|
|
CC = gcc
|
||
|
|
CFLAGS = -Wall -Wextra -Werror -O2 -fPIC -D_FILE_OFFSET_BITS=64
|
||
|
|
CFLAGS += $(shell pkg-config --cflags fuse3 libxml-2.0 libcurl)
|
||
|
|
LDFLAGS = $(shell pkg-config --libs fuse3 libxml-2.0 libcurl) -lpthread
|
||
|
|
|
||
|
|
TARGET = fusedav
|
||
|
|
SRC_DIR = src
|
||
|
|
INC_DIR = include
|
||
|
|
BUILD_DIR = build
|
||
|
|
|
||
|
|
SOURCES = $(wildcard $(SRC_DIR)/*.c)
|
||
|
|
OBJECTS = $(patsubst $(SRC_DIR)/%.c,$(BUILD_DIR)/%.o,$(SOURCES))
|
||
|
|
|
||
|
|
.PHONY: all clean install uninstall
|
||
|
|
|
||
|
|
all: $(TARGET)
|
||
|
|
|
||
|
|
$(TARGET): $(OBJECTS)
|
||
|
|
$(CC) $(OBJECTS) -o $@ $(LDFLAGS)
|
||
|
|
|
||
|
|
$(BUILD_DIR)/%.o: $(SRC_DIR)/%.c | $(BUILD_DIR)
|
||
|
|
$(CC) $(CFLAGS) -I$(INC_DIR) -c $< -o $@
|
||
|
|
|
||
|
|
$(BUILD_DIR):
|
||
|
|
mkdir -p $(BUILD_DIR)
|
||
|
|
|
||
|
|
clean:
|
||
|
|
rm -rf $(BUILD_DIR) $(TARGET)
|
||
|
|
|
||
|
|
install: $(TARGET)
|
||
|
|
install -d $(DESTDIR)/usr/local/bin
|
||
|
|
install -m 755 $(TARGET) $(DESTDIR)/usr/local/bin/
|
||
|
|
|
||
|
|
uninstall:
|
||
|
|
rm -f $(DESTDIR)/usr/local/bin/$(TARGET)
|
||
|
|
|
||
|
|
deps:
|
||
|
|
@echo "Required packages:"
|
||
|
|
@echo " Debian/Ubuntu: sudo apt install libfuse3-dev libcurl4-openssl-dev libxml2-dev"
|
||
|
|
@echo " Fedora/RHEL: sudo dnf install fuse3-devel libcurl-devel libxml2-devel"
|
||
|
|
@echo " Arch: sudo pacman -S fuse3 curl libxml2"
|