2dad72903a26a0ca818d9c46bd88a41e8809215f
[gnokii.git] / common / Makefile
1
2 #
3 # Makefile for the GNOKII tool suite.
4 #
5
6 #
7 # For this common directory is used "subsystem.o" .o files concept.
8 #   (the list of object files to be linked together (to COMMON.o),
9 #   and other dirs is used this _one_ file (instead of all OBJS)
10 #
11
12 TOPDIR=..
13 include $(TOPDIR)/Makefile.global
14
15 CFLAGS += $(PTHREAD_CFLAGS)
16
17 DIRS =          protocol \
18                 oldmodules \
19                 newmodules
20
21 OBJS =  devices/device.o \
22         data/rlp-common.o \
23         data/rlp-crc24.o \
24         files/midifile.o \
25         gsm-ringtones.o \
26         gsm-coding.o \
27         gsm-datetime.o \
28         gsm-wap.o \
29         gsm-api.o \
30         gsm-phonebook.o \
31         gsm-calendar.o \
32         gsm-networks.o \
33         gsm-bitmaps.o \
34         gsm-sms.o \
35         files/cfgreader.o \
36         misc.o \
37         protocol/fbus.o \
38         protocol/fbus3110.o \
39         protocol/fbusirda.o \
40         protocol/mbus.o \
41         protocol/at.o \
42         newmodules/sniff/sniff.o \
43         newmodules/newat.o \
44         newmodules/n6110.o \
45         newmodules/n3110.o \
46         newmodules/n7110.o
47
48 DATA_OBJS = data/virtmodem.o \
49         data/at-emulator.o \
50         data/datapump.o
51
52 ifdef WIN32
53         OBJS += $(TOPDIR)/win32/winserial.o
54 else
55         OBJS += devices/unixserial.o \
56                 devices/unixirda.o \
57                 devices/tekram.o
58 endif
59
60 ifdef XPM_CFLAGS
61     CFLAGS += $(XPM_CFLAGS)
62 endif
63
64 all: COMMON.o DATA.o gsm-filetypes.o
65
66 COMMON.o: $(OBJS)
67         $(LD) $(LDREL) $(LDOUT) COMMON.o $(OBJS)
68
69 DATA.o: $(DATA_OBJS)
70         $(LD) $(LDREL) $(LDOUT) DATA.o $(DATA_OBJS)
71
72 gsm-filetypes.o: files/gsm-filetypes.c 
73         $(CC) $(CFLAGS) -c files/gsm-filetypes.c
74
75 makelib: $(OBJS) DATA.o gsm-filetypes.o
76         $(CC) -shared -o libmygnokii.so $(OBJS) DATA.o gsm-filetypes.o
77
78 clean:
79         $(RM) $(OBJS) $(DATA_OBJS) *~ depend libmygnokii.so COMMON.o gsm-filetypes.o DATA.o
80         
81 install:
82         $(INSTALL) -d $(libdir)
83         $(INSTALL) libmygnokii.so $(libdir)
84         @echo
85
86 depend dep:
87         $(CC) $(CFLAGS) -MM *.c >depend
88
89 ifeq (depend,$(wildcard depend))
90 include depend
91 endif
92
93
94 .PHONY: all install clean dep depend