summaryrefslogtreecommitdiffstats
path: root/innbbsd/Makefile
blob: 0f74ee77b1b84e949cbb4bae4fde48d048e00c3f (plain) (blame)
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# $Id$
SRCROOT=    ..
.include "${SRCROOT}/pttbbs.mk"

VERSION=    0.50-pttpatch
ADMINUSER?= root@your.domain.name

.if $(OSTYPE) == "FreeBSD"
# FreeBSD為了 innbbsd額外需加的參數
inn_CFLAGS= -DBSD44 -DMMAP -DGETRUSAGE
inn_LDFLAGS=    -L/usr/local/lib -liconv
.else
# Linux為了 innbbsd額外需加的參數
inn_CFLAGS= -DLINUX -DGETRUSAGE
inn_LDFLAGS=    
.endif

CFLAGS+=    -DVERSION=\"${VERSION}\"        \
        -DADMINUSER=\"${ADMINUSER}\"        \
        -DMapleBBS  -DDBZDEBUG  -I. \
        ${inn_CFLAGS} -DHMM_USE_ANTI_SPAM

LDFLAGS+=   ${inn_LDFLAGS}

PROGS=      bbslink     bbsnnrp     ctlinnbbsd  \
        innbbsd     mkhistory

all:    ${PROGS}

# bbs util
UTIL_DIR=   $(SRCROOT)/util
UTIL_OBJS=  \
    util_cache.o    util_passwd.o   util_var.o

.for fn in ${UTIL_OBJS}
LINK_UTIL_OBJS+=    ${UTIL_DIR}/${fn}

${UTIL_DIR}/${fn}:  # FIXME: dependency
    cd ${UTIL_DIR}; make ${fn}
.endfor

LDLIBS+=$(SRCROOT)/common/bbs/libcmbbs.a \
    $(SRCROOT)/common/sys/libcmsys.a \
    $(SRCROOT)/common/osdep/libosdep.a  

echobbslib.o:   echobbslib.c
    ${CC} ${CFLAGS} -DWITH_ECHOMAIL -c echobbslib.c

innbbsd:    inndchannel.o innbbsd.o connectsock.o rfc931.o daemon.o \
        file.o pmain.o his.o dbz.o  closeonexec.o dbztool.o \
        inntobbs.o receive_article.o  echobbslib.o str_decode.o nocem.o
    ${CC} -o $@ ${LDFLAGS} $> ${LINK_UTIL_OBJS} $(LDLIBS)

bbslink:    bbslink.o pmain.o inntobbs.o echobbslib.o connectsock.o \
        file.o port.o str_decode.o
    ${CC} -o $@ ${LDFLAGS} $> ${LINK_UTIL_OBJS} $(LDLIBS)

bbsnnrp:    bbsnnrp.o pmain.o bbslib.o connectsock.o file.o
    ${CC} -o $@ ${LDFLAGS} $> ${LINK_UTIL_OBJS} $(LDLIBS)

ctlinnbbsd: ctlinnbbsd.o pmain.o bbslib.o connectsock.o file.o
    ${CC} -o $@ ${LDFLAGS} $> ${LINK_UTIL_OBJS} $(LDLIBS)

mkhistory:  mkhistory.o bbslib.o file.o his.o dbz.o port.o closeonexec.o
    ${CC} -o $@ ${LDFLAGS} $> ${LINK_UTIL_OBJS} $(LDLIBS)

install:    ${PROGS}
    install -d ${BBSHOME}/innd/
    install -c -m 755 ${PROGS} ${BBSHOME}/innd/

clean:
    rm -f *.o ${PROGS} core *.core

reset:
    cd $(SRCROOT)/util/; ${MAKE} clean shmctl
    ${MAKE} clean ; ${MAKE} ; ${MAKE} install
    killall innbbsd
    cd ~; nohup innd/innbbsd 7777 &