93 lines
2.3 KiB
Makefile
93 lines
2.3 KiB
Makefile
VERSION := 0
|
|
SUBVERSION := 8
|
|
MINORVERSION := 2-SNAPSHOT
|
|
|
|
#prefix := /usr
|
|
prefix := /usr/local
|
|
sbin := $(prefix)/lib
|
|
|
|
all: libnethogs
|
|
|
|
# nethogs_testsum
|
|
|
|
LDFLAGS+= -shared
|
|
ODIR_BASE := objs/lib
|
|
ifeq ($(DEBUG),1)
|
|
$(info debug mode)
|
|
ODIR:=$(ODIR_BASE)/debug
|
|
CFLAGS?=-Wall -Wextra -O0 -g -fPIC
|
|
CXXFLAGS?=--std=c++11 --std=c++11 -Wall -Wextra -O0 -g -fPIC
|
|
else
|
|
$(info release mode)
|
|
ODIR:=$(ODIR_BASE)/release
|
|
CFLAGS?=-Wall -Wextra -O3 -fPIC
|
|
CXXFLAGS?=---std=c++11 Wall -Wextra -O3 -fPIC
|
|
endif
|
|
|
|
OBJ_NAMES= libnethogs.o packet.o connection.o process.o refresh.o decpcap.o inode2prog.o conninode.o devices.o
|
|
OBJS=$(addprefix $(ODIR)/,$(OBJ_NAMES))
|
|
|
|
#$(info $(OBJS))
|
|
|
|
.PHONY: tgz
|
|
|
|
.PHONY: uninstall
|
|
|
|
install: libnethogs
|
|
install -d -m 755 $(DESTDIR)$(sbin)
|
|
install -m 755 libnethogs $(DESTDIR)$(sbin)
|
|
@echo
|
|
@echo "Installed libnethogs to $(DESTDIR)$(sbin)"
|
|
@echo
|
|
@echo "You might have to add this directory to your PATH and/or refresh your shells' path cache with a command like 'hash -r'."
|
|
|
|
uninstall:
|
|
rm $(DESTDIR)$(sbin)/libnethogs
|
|
|
|
libnethogs: $(OBJS)
|
|
$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) $(OBJS) -o libnethogs.so -lpcap
|
|
|
|
#-lefence
|
|
|
|
$(ODIR)/refresh.o: refresh.cpp refresh.h nethogs.h
|
|
@mkdir -p $(ODIR)
|
|
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ -c refresh.cpp
|
|
|
|
$(ODIR)/process.o: process.cpp process.h nethogs.h
|
|
@mkdir -p $(ODIR)
|
|
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ -c process.cpp
|
|
|
|
$(ODIR)/packet.o: packet.cpp packet.h nethogs.h
|
|
@mkdir -p $(ODIR)
|
|
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ -c packet.cpp
|
|
|
|
$(ODIR)/connection.o: connection.cpp connection.h nethogs.h
|
|
@mkdir -p $(ODIR)
|
|
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ -c connection.cpp
|
|
|
|
$(ODIR)/decpcap.o: decpcap.c decpcap.h
|
|
@mkdir -p $(ODIR)
|
|
$(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -c decpcap.c
|
|
|
|
$(ODIR)/inode2prog.o: inode2prog.cpp inode2prog.h nethogs.h
|
|
@mkdir -p $(ODIR)
|
|
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ -c inode2prog.cpp
|
|
|
|
$(ODIR)/conninode.o: conninode.cpp nethogs.h conninode.h
|
|
@mkdir -p $(ODIR)
|
|
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ -c conninode.cpp
|
|
|
|
$(ODIR)/devices.o: devices.cpp devices.h
|
|
@mkdir -p $(ODIR)
|
|
$(CXX) $(CXXFLAGS) -o $@ -c devices.cpp
|
|
|
|
$(ODIR)/libnethogs.o: libnethogs.cpp libnethogs.h
|
|
@mkdir -p $(ODIR)
|
|
$(CXX) $(CXXFLAGS) -o $@ -c libnethogs.cpp -DVERSION=\"$(VERSION)\" -DSUBVERSION=\"$(SUBVERSION)\" -DMINORVERSION=\"$(MINORVERSION)\"
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
rm -f $(OBJS)
|
|
rm -f libnethogs
|
|
|