14192
|
1 #
|
|
2 # Makefile.mingw
|
|
3 #
|
|
4 # Description: Makefile for win32 (mingw) version of OpenQ src
|
|
5 #
|
|
6
|
|
7 #
|
|
8 # PATHS
|
|
9 #
|
|
10
|
|
11 INCLUDE_DIR := .
|
|
12 OPENQ_TOP := ../
|
|
13 GTK_TOP := ../../../../win32-dev/gtk_2_0
|
|
14 GAIM_TOP := ../../..
|
|
15 OPENQ_ROOT := .
|
|
16 GAIM_INSTALL_DIR := $(GAIM_TOP)/win32-install-dir
|
|
17
|
|
18 ##
|
|
19 ## VARIABLE DEFINITIONS
|
|
20 ##
|
|
21
|
|
22 TARGET = openq
|
|
23
|
|
24 TYPE = PLUGIN
|
|
25
|
|
26 OPENQ_VERSION := $(shell cat $(OPENQ_TOP)/VERSION)
|
|
27
|
|
28 # Compiler Options
|
|
29
|
|
30 CFLAGS =
|
|
31
|
|
32 DEFINES = -DOPENQ_VERSION=\"$(OPENQ_VERSION)\"
|
|
33
|
|
34 # Static or Plugin...
|
|
35 ifeq ($(TYPE),STATIC)
|
|
36 DEFINES += -DSTATIC
|
|
37 DLL_INSTALL_DIR = $(GAIM_INSTALL_DIR)
|
|
38 else
|
|
39 ifeq ($(TYPE),PLUGIN)
|
|
40 DLL_INSTALL_DIR = $(GAIM_INSTALL_DIR)/plugins
|
|
41 endif
|
|
42 endif
|
|
43
|
|
44
|
|
45 ##
|
|
46 ## INCLUDE MAKEFILES
|
|
47 ##
|
|
48
|
|
49 include $(GAIM_TOP)/src/win32/global.mak
|
|
50
|
|
51 ##
|
|
52 ## INCLUDE PATHS
|
|
53 ##
|
|
54
|
|
55 INCLUDE_PATHS += \
|
|
56 -I$(OPENQ_ROOT) \
|
|
57 -I$(GTK_TOP)/include \
|
|
58 -I$(GTK_TOP)/include/gtk-2.0 \
|
|
59 -I$(GTK_TOP)/include/glib-2.0 \
|
|
60 -I$(GTK_TOP)/include/pango-1.0 \
|
|
61 -I$(GTK_TOP)/include/atk-1.0 \
|
|
62 -I$(GTK_TOP)/lib/glib-2.0/include \
|
|
63 -I$(GTK_TOP)/lib/gtk-2.0/include \
|
|
64 -I$(GAIM_TOP)/src \
|
|
65 -I$(GAIM_TOP)/src/win32 \
|
|
66 -I$(GAIM_TOP)
|
|
67
|
|
68 LIB_PATHS = \
|
|
69 -L$(GTK_TOP)/lib \
|
|
70 -L$(GAIM_TOP)/src
|
|
71
|
|
72 ##
|
|
73 ## SOURCES, OBJECTS
|
|
74 ##
|
|
75
|
|
76 C_SRC = \
|
|
77 buddy_info.c \
|
|
78 buddy_list.c \
|
|
79 buddy_opt.c \
|
|
80 buddy_status.c \
|
|
81 char_conv.c \
|
|
82 crypt.c \
|
|
83 file_trans.c \
|
|
84 group.c \
|
|
85 group_conv.c \
|
|
86 group_find.c \
|
|
87 group_free.c \
|
|
88 group_hash.c \
|
|
89 group_im.c \
|
|
90 group_info.c \
|
|
91 group_join.c \
|
|
92 group_misc.c \
|
|
93 group_network.c \
|
|
94 group_opt.c \
|
|
95 group_search.c \
|
|
96 header_info.c \
|
|
97 im.c \
|
|
98 keep_alive.c \
|
|
99 login_logout.c \
|
|
100 packet_parse.c \
|
|
101 qq.c \
|
|
102 qq_proxy.c \
|
|
103 recv_core.c \
|
|
104 send_core.c \
|
|
105 send_file.c \
|
|
106 sendqueue.c \
|
|
107 show.c \
|
|
108 sys_msg.c \
|
|
109 udp_proxy_s5.c \
|
|
110 utils.c
|
|
111
|
|
112 OBJECTS = $(C_SRC:%.c=%.o)
|
|
113
|
|
114 ##
|
|
115 ## LIBRARIES
|
|
116 ##
|
|
117
|
|
118 LIBS = \
|
|
119 -lgtk-win32-2.0 \
|
|
120 -lglib-2.0 \
|
|
121 -lgdk-win32-2.0 \
|
|
122 -lgdk_pixbuf-2.0 \
|
|
123 -lgmodule-2.0 \
|
|
124 -lgobject-2.0 \
|
|
125 -lws2_32 \
|
|
126 -lintl \
|
|
127 -lgaim
|
|
128
|
|
129 ##
|
|
130 ## RULES
|
|
131 ##
|
|
132
|
|
133 # How to make a C file
|
|
134
|
|
135 %.o: %.c
|
|
136 $(CC) $(CFLAGS) $(DEFINES) $(INCLUDE_PATHS) -o $@ -c $<
|
|
137
|
|
138 ##
|
|
139 ## TARGET DEFINITIONS
|
|
140 ##
|
|
141
|
|
142 .PHONY: all clean
|
|
143
|
|
144 all: $(TARGET).dll
|
|
145
|
|
146 install:
|
|
147 mkdir -p $(DLL_INSTALL_DIR)
|
|
148 cp $(OPENQ_ROOT)/$(TARGET).dll $(DLL_INSTALL_DIR)
|
|
149
|
|
150
|
|
151 ##
|
|
152 ## BUILD Dependencies
|
|
153 ##
|
|
154
|
|
155 $(GAIM_TOP)/src/gaim.lib:
|
|
156 $(MAKE) -C $(GAIM_TOP)/src -f Makefile.mingw gaim.lib
|
|
157
|
|
158 ##
|
|
159 ## BUILD DLL
|
|
160 ##
|
|
161
|
|
162 $(TARGET).dll: $(OBJECTS) $(GAIM_TOP)/src/gaim.lib
|
|
163 $(CC) -shared $(OBJECTS) $(LIB_PATHS) $(LIBS) $(DLL_LD_FLAGS) -o $(TARGET).dll
|
|
164
|
|
165 ##
|
|
166 ## CLEAN RULES
|
|
167 ##
|
|
168
|
|
169 clean:
|
|
170 rm -rf *.o
|
|
171 rm -rf $(TARGET).dll
|
|
172 rm -rf $(TARGET).lib
|
|
173
|