# $Cambridge: hermes/src/prayer/accountd/Makefile,v 1.1.1.1 2003/04/15 13:00:02 dpc22 Exp $
# Prayer - a Webmail Interface
#
# Copyright (c) University of Cambridge 2000 - 2002
# See the file NOTICE for conditions of use and distribution.

ifeq ($(strip $(RPM_BUILD)), true)
include ../Config-RPM
else
include ../Config
endif

# Enable Electric Fence
ifeq ($(strip $(FENCE_ENABLE)), true)
  BASE_INCLUDE += $(FENCE_INCLUDE)
  BASE_LIBS    += $(FENCE_LIBS)
endif

# Add PAM if backend needs pam
ifeq ($(strip $(ACCOUNTD_PAM_ENABLE)), true)
  BASE_INCLUDE      += $(PAM_INCLUDE)
  BASE_LIBS         += $(PAM_LIBS)
  ACCOUNTD_PAM_DEFS  = -DACCOUNTD_PAM_ENABLE=1
endif

ifeq ($(strip $(ACCOUNTD_USE_BSD_PTY)), true)
  BASE_LIBS += -lutil
  OS_DEFS   += -DUSE_BSD_PTY
endif

CFLAGS  = $(BASECFLAGS)
LDFLAGS = $(BASELDFLAGS) 
LIBS    = $(BASE_LIBS)

ifeq ($(strip $(ACCOUNTD_SSL_ENABLE)), true)
  # Don't worry about session cache: unlikely to be any hits.
  CFLAGS  += $(SSL_INCLUDE)
  LIBS    += $(SSL_LIBS)
  SSLOBJS  = ssl.o
else
  SSLOBJS  = no_ssl.o
endif

all: prayer-accountd

########################################################################

OBJS = pool.o assoc.o buffer.o string.o config.o log.o iostream.o $(SSLOBJS) \
       ipaddr.o os.o password.o fullname.o quota.o file.o mail.o \
       filter.o checksum.o process.o authenicate.o

prayer-accountd: $(OBJS) accountd.o
	$(CC) $(LDFLAGS) -o prayer-accountd accountd.o $(OBJS) $(LIBS)

test: test.o $(OBJS)
	$(CC) $(LDFLAGS) -o test test.o $(OBJS) $(LIBS)

# Default build rule
%.o: %.c *.h Makefile
	$(CC) $(CFLAGS) -c $<

# os.o special: depends on os_*.c a well as os.c.
os.o: os.c os_*.c *.h Makefile
	$(CC) $(CFLAGS) -c $(OS_DEFS) $<

accountd.o: accountd.c *.h Makefile
	$(CC) $(CFLAGS) -c \
	  -DACCOUNTD_CONFIG_FILE=\"$(ACCOUNTD_CONFIG_FILE)\" $<

authenicate.o: authenicate.c *.h Makefile
	$(CC) $(CFLAGS) -c $(ACCOUNTD_PAM_DEFS) $<

clean:
	-rm -f prayer-accountd test core *.o *~ \#*\# 

install:
	$(INSTALL) -m 755 -o ${RO_USER} -g ${RW_GROUP} \
	prayer-accountd ${BROOT}${BIN_DIR}



syntax highlighted by Code2HTML, v. 0.9.1