comparison src/protocols/oscar/Makefile.mingw @ 3630:9682c0e022c6

[gaim-migrate @ 3753] Yeah this will probably break a lot of shit knowing my luck. But hey, I really don't care what people thnk. committer: Tailor Script <tailor@pidgin.im>
author Rob Flynn <gaim@robflynn.com>
date Fri, 11 Oct 2002 03:14:01 +0000
parents
children 21d16e3164eb
comparison
equal deleted inserted replaced
3629:afc5bb164c5a 3630:9682c0e022c6
1 #
2 # Makefile.mingw
3 #
4 # Description: Makefile for win32 (mingw) version of liboscar
5 #
6
7 #
8 # PATHS
9 #
10
11 OSCAR_ROOT := .
12 GTK_TOP := ../../../../win32-dev/gtk_2_0
13 GAIM_TOP := ../../..
14 GAIM_INSTALL_DIR := $(GAIM_TOP)/win32-install-dir
15
16 ##
17 ## VARIABLE DEFINITIONS
18 ##
19
20 TARGET = liboscar
21
22 VERSION := $(shell cat $(GAIM_TOP)/VERSION)
23
24 # Compiler Options
25
26 CC = gcc.exe $(GCOPTS)
27
28 # Only use -g flag when building STATIC version
29 CFLAGS = -O2 -Wall -Werror
30
31 DEFINES = -DHAVE_CONFIG_H \
32 -DVERSION=\"$(VERSION)\" \
33 -DAIM_BUILDDATE=\"`date +%Y%m%d`\" \
34 -DAIM_BUILDTIME=\"`date +%H%M%S`\"
35
36 # Static or Plugin...
37 ifeq ($(TYPE),STATIC)
38 DEFINES += -DSTATIC
39 DLL_INSTALL_DIR = $(GAIM_INSTALL_DIR)
40 else
41 ifeq ($(TYPE),PLUGIN)
42 DLL_INSTALL_DIR = $(GAIM_INSTALL_DIR)/plugins
43 endif
44 endif
45
46
47 ##
48 ## INCLUDE MAKEFILES
49 ##
50
51
52 ##
53 ## INCLUDE PATHS
54 ##
55
56 INCLUDE_PATHS += -I$(OSCAR_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
69 LIB_PATHS = -L$(GTK_TOP)/lib \
70 -L$(GAIM_TOP)/src
71
72
73 ##
74 ## SOURCES, OBJECTS
75 ##
76
77 C_SRC = admin.c \
78 adverts.c \
79 auth.c \
80 bos.c \
81 buddylist.c \
82 chat.c \
83 chatnav.c \
84 conn.c \
85 ft.c \
86 icq.c \
87 im.c \
88 info.c \
89 invite.c \
90 meta.c \
91 misc.c \
92 msgcookie.c \
93 popups.c \
94 rxhandlers.c \
95 rxqueue.c \
96 search.c \
97 service.c \
98 snac.c \
99 ssi.c \
100 stats.c \
101 tlv.c \
102 translate.c \
103 txqueue.c \
104 util.c \
105 oscar.c
106
107
108 OBJECTS = $(C_SRC:%.c=%.o)
109
110
111 ##
112 ## LIBRARIES
113 ##
114
115 LIBS = -lgtk-win32-2.0 -lglib-2.0 -lgdk-win32-2.0 -lgmodule-2.0 -lgobject-2.0 -lintl -lws2_32 -liberty -lgaim
116
117
118 ##
119 ## RULES
120 ##
121
122 # How to make a C file
123
124 %.o: %.c
125 $(CC) $(CFLAGS) $(DEFINES) $(INCLUDE_PATHS) -o $@ -c $<
126
127 ##
128 ## TARGET DEFINITIONS
129 ##
130
131 .PHONY: all clean
132
133 all: $(TARGET).dll
134
135 install:
136 cp $(OSCAR_ROOT)/$(TARGET).dll $(DLL_INSTALL_DIR)
137
138
139 ##
140 ## BUILD Dependencies
141 ##
142
143 $(GAIM_TOP)/src/gaim.lib:
144 $(MAKE) -C $(GAIM_TOP)/src -f Makefile.mingw gaim.lib
145
146 ##
147 ## BUILD DLL
148 ##
149
150 $(TARGET).def: $(OBJECTS)
151 dlltool --dllname $(TARGET).dll -z $(TARGET).def --export-all-symbols $(OBJECTS)
152
153 $(TARGET).base: $(OBJECTS) $(GAIM_TOP)/src/gaim.lib
154 gcc -mdll -o junk.tmp -Wl,--base-file,$@ $(OBJECTS) $(LIB_PATHS) $(LIBS)
155 rm -rf junk.tmp
156
157 $(TARGET).exp: $(TARGET).def $(TARGET).base
158 dlltool --dllname $(TARGET).dll --base-file $(TARGET).base \
159 --output-exp $(TARGET).exp --def $(TARGET).def
160 rm -rf $(TARGET).base
161
162 $(TARGET).dll: $(OBJECTS) $(TARGET).exp $(GAIM_TOP)/src/gaim.lib
163 dlltool -D $(TARGET).dll -d $(TARGET).def -l $(TARGET).lib
164 gcc -mdll -o $(TARGET).dll $(OBJECTS) -Wl,$(TARGET).exp $(LIB_PATHS) $(LIBS)
165 rm -rf $(TARGET).exp
166
167 ##
168 ## CLEAN RULES
169 ##
170
171 clean:
172 rm -rf *.o
173 rm -rf $(TARGET).dll
174 rm -rf $(TARGET).lib
175 rm -rf $(TARGET).def