d7e4fc73b1
- store: data.raw append-only / read-by-offset / fsync - meta: Segment/VersionDiff/FileView/FileMeta + segment-list update (append/overwrite/truncate/extend) + in-memory directory tree - fuse_ops: all callbacks route through COW backend; per-write Segment logging (op/phys_off/log_off/size) - tests/phase2.sh: 5 write scenarios + sqlite + dir ops, 24/24 pass Metadata in-memory (restart-lost; persistence phase 5); data.raw retains superseded bytes pending GC. cur cache / aggregation / multi-block land in phase 3. Co-Authored-By: Claude <noreply@anthropic.com>
23 lines
560 B
Makefile
23 lines
560 B
Makefile
CXX ?= g++
|
|
CXXFLAGS ?= -std=c++17 -O2 -g -Wall -Wextra -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -pthread
|
|
FUSE_CFLAGS := $(shell pkg-config --cflags fuse3)
|
|
FUSE_LIBS := $(shell pkg-config --libs fuse3)
|
|
|
|
TARGET := etvd_fuse
|
|
SRCS := src/main.cpp src/fuse_ops.cpp src/store.cpp src/meta.cpp
|
|
OBJS := $(SRCS:.cpp=.o)
|
|
HEADERS := $(wildcard src/*.h)
|
|
|
|
.PHONY: all clean
|
|
|
|
all: $(TARGET)
|
|
|
|
$(TARGET): $(OBJS)
|
|
$(CXX) $(CXXFLAGS) $(OBJS) -o $@ $(FUSE_LIBS) -pthread
|
|
|
|
src/%.o: src/%.cpp $(HEADERS)
|
|
$(CXX) $(CXXFLAGS) $(FUSE_CFLAGS) -c $< -o $@
|
|
|
|
clean:
|
|
rm -f $(OBJS) $(TARGET)
|