blob: 356ecf30e9c5a2b804879004c5539d87e01c6942 (
plain)
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
|
PATH:=/MinGW/bin/:$(PATH)
CC:=gcc
#Comment this out to disable debugging output
DEBUG=1
#VERBOSE=1
#API_SOCK=1
DEFS=-DCLIENT -DLIBRARY -DWIN32 -D_REENTRANT -D_GNU_SOURCE
ifdef VERBOSE
DEFS:= $(DEFS) -DDEBUG
DEBUG=1
endif
CFLAGS:= $(DEFS) -Wall -Iwin32/include $(CFLAGS)
LDFLAGS:= -Lwin32/lib $(LDFLAGS)
LDLIBS:= -lwsock32 -liphlpapi -lpthreadGC2 -lxml2 -lzdll
ifdef DEBUG
LDFLAGS:= $(LDFLAGS) -g
CFLAGS:= $(CFLAGS) -g
else
#CFLAGS:= $(CFLAGS) -Os
endif
MCLI = mcli
MCLI_OBJS = mld_common.o mld_client.o mld_reporter.o mcast.o recv_tv.o recv_ccpp.o tools.o tca_handler.o tra_handler.o satlists.o interfaces.o inet_pton.o inet_ntop.o inet_aton.o
MCLI_SOBJS := main.o dummy_client.o
all: lib$(MCLI)
lib$(MCLI): $(MCLI_OBJS)
$(CC) $(LDFLAGS) -shared -o $@.dll $(MCLI_OBJS) $(LDLIBS) -Wl,--out-implib,$@.a -Wl,--output-def,$@.def
# $(AR) $(ARFLAGS) $@.a $(MCLI_OBJS)
@copy /b $@.dll win32\\lib\\
@copy /b $@.a win32\\lib\\
@copy /b $@.def win32\\lib\\
lib.exe /def:$@.def /machine:x86 /out:win32\\lib\\$@.lib
@echo "You can find all libraries in directory win32\lib"
$(MCLI): $(MCLI_OBJS) $(MCLI_SOBJS)
$(CC) $(LDFLAGS) -o $@ $(MCLI_OBJS) $(MCLI_SOBJS) $(LDLIBS)
$(MCLI)-shared: lib$(MCLI)
$(CC) -c $(CFLAGS) -ULIBRARY -o main.o main.c
$(CC) -c $(CFLAGS) -ULIBRARY -o dummy_client.o dummy_client.c
$(CC) $(LDFLAGS) -o $@ $(MCLI_SOBJS) $(LDLIBS) -lmcli
clean:
@del $(MCLI)*.exe lib$(MCLI).* *.lib *.o *.la *~
%.o: %.c
$(CC) -c $(CFLAGS) -o $@ $<
|