File: Makefile

package info (click to toggle)
sms-pl 1.9.2m-2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 620 kB
  • ctags: 355
  • sloc: cpp: 2,143; ansic: 1,046; perl: 272; makefile: 113; sh: 97
file content (134 lines) | stat: -rw-r--r-- 4,880 bytes parent folder | download | duplicates (2)
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# Wygenerowano Tue Jun  8 19:28:21 1999
# przez mkmake - (c) Mikolaj Rydzewski, <miki@ceti.pl>

TARGET=sms
CXX?=c++
CC?=gcc

# aby skompilowac program z opcja sledzenia dodaj opcje -DDEBUG
#
# starsze wersje g++ nie mialy wlaczonej obslugi wyjatkow - jesli uzywasz
# takiej to dodaj flage --handle-exceptions
#
# aby skompilowac program w systemie gdzie nie ma funkcji vsnprintf()
# nalezy dodac opcje -DNO_VSPRINTF
#
# Aby zwracane byly kody bledow w stylu qmaila -DFOR_QMAIL
#
# Aby nie wkompilowywac opcji wysylania wiadomosci z dowolnego dostepnegp IP
# nalezy dodac opcje -DNO_ANYIP Jesli podczas kompilacji otrzymamy
# bledy o nieznanych funkcjach, np.  getaddrinfo() nalezy dodac wlasnie te
# opcje.
#
# wszystkie ww opcje nalezy dodawac do zmiennej CFLAGS

# optimization level is set by debian/rules, but let's have a sane default here
# as well
CFLAGS?=-O2
CFLAGS+=-Wall -g

# dla starszych wersji Solarisa (tam gdzie nie ma snprintf, getdomainname,
# itd.) odkomentuj ponizsze dwie linie:
# CFLAGS2=-DOLD_SOLARIS
# OLD_S=snprintf.o

# jesli kompilujesz program pod SunOS / Solaris  nalezy odkomentowac
# ponizsza linie:
# SOLARIS_LIBS_OPT=-lsocket -lnsl -L/usr/local/lib -R/usr/local/lib

# jesli chcesz wylaczyc obsluge ksiazki adresowej zakomentuj caly
# ponizszy blok:
GDBM=-lgdbm
ADDR_DEF=-DADDR_BOOK
ADDR_O=cgdbm.o addrbook.o
SMSADDR=smsaddr
LNCMD=true

# nw katalogi nie sa przeszukiwane automatycznie na FreeBSD, NetBSD i OpenBSD.
# Odkomentuj ponizsze linie jesli kompilujesz program na tych systemach
# BSD_INC=-I/usr/local/include -I/usr/pkg/include
# BSD_LIB=-L/usr/local/lib -L/usr/pkg/lib

# jesli kompilujemu program w systemie AmigaOS nalezy odkomentowac
# ponizsze linie:
# AMIGA_LIB=-lstdc++

# katalog pod ktorym program zostanie zainstalowany po make install - binaria
# ida do $DIR/$BIN, reszta do $DIR/$DOC
PREFIX?=/usr/local
INSTALL_PREFIX=$(PREFIX)
INSTALL_BIN=$(INSTALL_PREFIX)/bin
INSTALL_DOC=$(INSTALL_PREFIX)/share/sms
INSTALL_MAN=$(INSTALL_PREFIX)/man

# ponizej juz nic nie powinno sie zmieniac

INCLUDE_OPT=$(BSD_INC)
LIBS_OPT=$(GDBM) $(SOLARIS_LIBS_OPT) $(BSD_LIB) $(AMIGA_LIB)

all: $(TARGET)
$(TARGET): $(ADDR_O) $(OLD_S) plus.o era.o podziel_sms.o headers.o request.o main.o socket.o debug.o mail.o czat.o match.o eranet.o wap.o nike.o miastoplusa.o idea_mbox.o
	$(CXX) $(CFLAGS) -o $(TARGET) $(ADDR_O) $(OLD_S) plus.o era.o podziel_sms.o headers.o request.o main.o socket.o debug.o mail.o czat.o match.o eranet.o wap.o nike.o miastoplusa.o idea_mbox.o $(LIBS_OPT)
	$(LNCMD)
#+

addrbook.o: addrbook.cc addrbook.h match.o
	$(CXX) $(CFLAGS) $(INCLUDE_OPT) -c addrbook.cc
cgdbm.o: cgdbm.cc cgdbm.h
	$(CXX) $(CFLAGS) $(INCLUDE_OPT) -c cgdbm.cc

snprintf.o: snprintf.c
	$(CC) $(CFLAGS) $(CFLAGS2) $(INCLUDE_OPT) -c snprintf.c
nike.o: nike.cc sms.h headers.h request.h
	$(CXX) $(CFLAGS) $(CFLAGS2) $(INCLUDE_OPT) -c nike.cc
eranet.o: eranet.cc sms.h headers.h request.h
	$(CXX) $(CFLAGS) $(CFLAGS2) $(INCLUDE_OPT) -c eranet.cc
wap.o: wap.cc sms.h headers.h request.h
	$(CXX) $(CFLAGS) $(CFLAGS2) $(INCLUDE_OPT) -c wap.cc
match.o: match.c match.h
	$(CXX) $(CFLAGS) $(CFLAGS2) $(INCLUDE_OPT) -c match.c

miastoplusa.o: miastoplusa.cc sms.h headers.h request.h
	$(CXX) $(CFLAGS) $(CFLAGS2) $(INCLUDE_OPT) -c miastoplusa.cc
idea_mbox.o: idea_mbox.cc sms.h headers.h request.h
	$(CXX) $(CFLAGS) $(CFLAGS2) $(INCLUDE_OPT) -c idea_mbox.cc
czat.o: czat.cc sms.h headers.h request.h
	$(CXX) $(CFLAGS) $(CFLAGS2) $(INCLUDE_OPT) -c czat.cc
plus.o: plus.cc sms.h headers.h request.h
	$(CXX) $(CFLAGS) $(CFLAGS2) $(INCLUDE_OPT) -c plus.cc
era.o: era.cc sms.h headers.h request.h
	$(CXX) $(CFLAGS) $(INCLUDE_OPT) -c era.cc
podziel_sms.o: podziel_sms.cc sms.h
	$(CXX) $(CFLAGS) $(INCLUDE_OPT) -c podziel_sms.cc
headers.o: headers.cc headers.h
	$(CXX) $(CFLAGS) $(INCLUDE_OPT) -c headers.cc
request.o: request.cc sms.h request.h socket.h
	$(CXX) $(CFLAGS) $(INCLUDE_OPT) -c request.cc
main.o: main.cc addrbook.h sms.h headers.h
	$(CXX) $(CFLAGS) $(INCLUDE_OPT) $(ADDR_DEF) -c main.cc
socket.o: socket.cc socket.h
	$(CXX) $(CFLAGS) $(INCLUDE_OPT) -c socket.cc
debug.o: debug.cc debug.h sms.h
	$(CXX) $(CFLAGS) $(INCLUDE_OPT) -c debug.cc
mail.o: mail.cc sms.h
	$(CXX) $(CFLAGS) $(CFLAGS2) $(INCLUDE_OPT) -c mail.cc
#.
clean:
	rm -f sms.log core *.o $(TARGET) $(SMSADDR)
install: all
# manpages installed from debian/rules
	mkdir -p -m 755 $(INSTALL_BIN) # $(INSTALL_MAN)/man1 $(INSTALL_MAN)/man5
# link taken care of by debian/links
	install -m 755 $(TARGET) $(INSTALL_BIN)
# rest installed from within debian/rules
#	mkdir -p -m 755 $(INSTALL_DOC)/contrib/tksms
#	cp README* $(INSTALL_DOC);
#	cp -R contrib/* $(INSTALL_DOC)/contrib
#	chmod -R a+rX $(INSTALL_DOC)/*
#	install -m 644 doc/man/sms.1 $(INSTALL_MAN)/man1
#	install -m 644 doc/man/smsaddr.1 $(INSTALL_MAN)/man1
#	install -m 644 doc/man/smsrc.5 $(INSTALL_MAN)/man5

archive: clean
	./make_archive