forked from jcnelson/vdev
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
34 lines (25 loc) · 805 Bytes
/
Makefile
File metadata and controls
34 lines (25 loc) · 805 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
CPP := g++ -Wall -g
LIB := -lpthread -lrt -lfskit -lfskit_fuse -lpstat
INC := -I/usr/include -I/usr/local/include -I.
C_SRCS:= $(wildcard *.c) $(wildcard os/*.c)
CXSRCS:= $(wildcard *.cpp) $(wildcard os/*.cpp)
OBJ := $(patsubst %.c,%.o,$(C_SRCS)) $(patsubst %.cpp,%.o,$(CXSRCS))
DEFS := -D_REENTRANT -D_THREAD_SAFE -D__STDC_FORMAT_MACROS -D_FILE_OFFSET_BITS=64
VDEV := vdev
PREFIX ?= /usr
BINDIR ?= $(PREFIX)/bin
# change/override this for your OS
OS := LINUX
all: $(VDEV)
$(VDEV): $(OBJ)
$(CPP) -o $(VDEV) $(OBJ) $(LIBINC) $(LIB) -D_VDEV_OS_$(OS)
install: $(VDEV)
mkdir -p $(BINDIR)
cp -a $(VDEV) $(BINDIR)
%.o : %.c
$(CPP) -o $@ $(INC) -c $< $(DEFS) -D_VDEV_OS_$(OS)
%.o : %.cpp
$(CPP) -o $@ $(INC) -c $< $(DEFS) -D_VDEV_OS_$(OS)
.PHONY: clean
clean:
/bin/rm -f $(OBJ) $(VDEV)