# Spectre Samba Mounter # # Douglas Thrift # # $Id$ CSRC = Spectre.cpp Configurator.cpp Maker.cpp Mounter.cpp Unmounter.cpp HDRS = ${patsubst %.cpp, %.hpp, ${CSRC}} OBJS = ${patsubst %.cpp, %.o, ${CSRC}} EXEC = spectre UNAME = -D_$(shell uname)_ CPPFLAGS ?= CXX ?= g++ CXXFLAGS += CXXDEP ?= -MM LDFLAGS += INSTALL ?= install -o root -g wheel all: ${EXEC} ${EXEC}: configure.h ${OBJS} ${CXX} ${OBJS} -o ${EXEC} ${LDFLAGS} %.o:%.cpp ${CXX} ${CXXFLAGS} $< -c ${CPPFLAGS} ${UNAME} depend: ${CSRC} ${HDRS} configure.h ${CXX} ${CXXDEP} ${CSRC} ${CPPFLAGS} ${UNAME} > depend configure.h: ./configure.pl ifeq (,$(filter depend, ${MAKECMDGOALS})) ifneq (,$(wildcard depend)) include depend endif endif install: all ${INSTALL} -d -v `./configure.pl -install` ${INSTALL} -d -v `./configure.pl -install`/bin ${INSTALL} -sv -m u=rwx,go=rx spectre `./configure.pl -install`/bin ${INSTALL} -d -v `./configure.pl -install`/conf ${INSTALL} -v -m u=rw,go=r spectre.conf.sample \ `./configure.pl -install`/conf ${INSTALL} -d -v -m u=rwx,go= `./configure.pl -install`/conf/private clean: - rm ${OBJS} ${EXEC} ${patsubst %, %.exe, ${EXEC}} core *.core distclean: clean - rm depend configure.dat configure.h