[gaim-migrate @ 4302]
[pidgin-git.git] / Makefile.mingw
blob9af15da678a36a7ad0dae99526830a1c5baa722d
1 # Makefile.mingw
2
3 # Author: hermanator12002@yahoo.com
4 # Date 9/11/02
5 # Description: Top Makefile for win32 (mingw) port of Gaim
8 GAIM_SRC = ./src
9 GAIM_PROTOS = $(GAIM_SRC)/protocols
10 GAIM_PLUGINS = ./plugins
11 GAIM_PIXMAPS = ./pixmaps
12 GAIM_SOUNDS = ./sounds
13 GAIM_INSTALL_DIR = ./win32-install-dir
14 GTK_TOP = ../win32-dev/gtk_2_0
15 GTK_LIBS = $(GTK_TOP)/lib
16 PERL_TOP = ../win32-dev/perl56
17 IDLETRACKER_TOP = $(GAIM_SRC)/win32/IdleTracker
18 GTKRC_TOP = ../win32-dev/gtkrc
19 OSCAR = $(GAIM_PROTOS)/oscar
20 YAHOO = $(GAIM_PROTOS)/yahoo
21 MSN = $(GAIM_PROTOS)/msn
22 TOC = $(GAIM_PROTOS)/toc
23 IRC = $(GAIM_PROTOS)/irc
24 JABBER = $(GAIM_PROTOS)/jabber
25 NAPSTER = $(GAIM_PROTOS)/napster
26 GG = $(GAIM_PROTOS)/gg
27 PO = ./po
29 VERSION := $(shell cat ./VERSION)
31 NEEDED_DLLS =           $(GTK_LIBS)/libgdk-win32-2.0-0.dll \
32                         $(GTK_LIBS)/libglib-2.0-0.dll \
33                         $(GTK_LIBS)/libintl-1.dll \
34                         $(GTK_LIBS)/iconv.dll \
35                         $(GTK_LIBS)/libgmodule-2.0-0.dll \
36                         $(GTK_LIBS)/libgtk-win32-2.0-0.dll \
37                         $(GTK_LIBS)/libgdk_pixbuf-2.0-0.dll \
38                         $(GTK_LIBS)/libgobject-2.0-0.dll \
39                         $(GTK_LIBS)/libgthread-2.0-0.dll \
40                         $(GTK_TOP)/bin/libjpeg.dll \
41                         $(GTK_TOP)/bin/libpng.dll \
42                         $(GTK_TOP)/bin/libtiff.dll \
43                         $(GTK_TOP)/bin/zlib.dll \
44                         $(GTK_LIBS)/libpango-1.0-0.dll \
45                         $(GTK_LIBS)/libpangoft2-1.0-0.dll \
46                         $(GTK_LIBS)/libpangowin32-1.0-0.dll \
47                         $(GTK_LIBS)/libatk-1.0-0.dll \
48                         $(PERL_TOP)/perl56.dll \
49                         $(IDLETRACKER_TOP)/IdleTrac.dll
51 # For Gtk 2.0.3
52 #                       $(GTK_LIBS)/libjpeg6b.dll \
53 #                       $(GTK_LIBS)/libpng-3.dll \
54 #                       $(GTK_LIBS)/libtiff.dll \
55 #                       $(GTK_LIBS)/libz.dll \
57 # For Gtk 2.0.6
58 #                       $(GTK_TOP)/bin/libjpeg.dll \
59 #                       $(GTK_TOP)/bin/libpng.dll \
60 #                       $(GTK_TOP)/bin/libtiff.dll \
61 #                       $(GTK_TOP)/bin/zlib.dll \
66 PIXMAPS_DIALOGS =       $(GAIM_PIXMAPS)/gaim_error.png \
67                         $(GAIM_PIXMAPS)/gaim_info.png \
68                         $(GAIM_PIXMAPS)/gaim_warning.png \
69                         $(GAIM_PIXMAPS)/gaim_question.png
71 PIXMAPS_MENUS = $(GAIM_PIXMAPS)/about_menu.png \
72                         $(GAIM_PIXMAPS)/accounts-menu.png \
73                         $(GAIM_PIXMAPS)/import-menu.png \
74                         $(GAIM_PIXMAPS)/insert-image-small.png \
75                         $(GAIM_PIXMAPS)/insert-link-small.png
77 PIXMAPS_BUTTONS =       $(GAIM_PIXMAPS)/edit.png \
78                         $(GAIM_PIXMAPS)/accounts.png \
79                         $(GAIM_PIXMAPS)/change-bgcolor-small.png \
80                         $(GAIM_PIXMAPS)/change-fgcolor-small.png \
81                         $(GAIM_PIXMAPS)/preferences.png \
82                         $(GAIM_PIXMAPS)/signon.png \
83                         $(GAIM_PIXMAPS)/insert-image-small.png \
84                         $(GAIM_PIXMAPS)/insert-link-small.png \
85                         $(GAIM_PIXMAPS)/insert-smiley-small.png \
86                         $(GAIM_PIXMAPS)/text_bigger.png \
87                         $(GAIM_PIXMAPS)/text_normal.png \
88                         $(GAIM_PIXMAPS)/text_smaller.png 
90 PIXMAPS_SMILEYS =       $(GAIM_PIXMAPS)/angel.png \
91                         $(GAIM_PIXMAPS)/bigsmile.png \
92                         $(GAIM_PIXMAPS)/burp.png \
93                         $(GAIM_PIXMAPS)/cool.png \
94                         $(GAIM_PIXMAPS)/crossedlips.png \
95                         $(GAIM_PIXMAPS)/cry.png \
96                         $(GAIM_PIXMAPS)/embarrassed.png \
97                         $(GAIM_PIXMAPS)/kiss.png \
98                         $(GAIM_PIXMAPS)/moneymouth.png \
99                         $(GAIM_PIXMAPS)/sad.png \
100                         $(GAIM_PIXMAPS)/scream.png \
101                         $(GAIM_PIXMAPS)/smile.png \
102                         $(GAIM_PIXMAPS)/think.png \
103                         $(GAIM_PIXMAPS)/tongue.png \
104                         $(GAIM_PIXMAPS)/wink.png \
105                         $(GAIM_PIXMAPS)/yell.png \
106                         $(GAIM_PIXMAPS)/luke.png \
107                         $(GAIM_PIXMAPS)/oneeye.png \
108                         $(GAIM_PIXMAPS)/crazy.png \
109                         $(GAIM_PIXMAPS)/mrt.png \
110                         $(GAIM_PIXMAPS)/download.png \
111                         $(GAIM_PIXMAPS)/farted.png
113 PIXMAPS =               $(GAIM_PIXMAPS)/away.png \
114                         $(GAIM_PIXMAPS)/connect.png \
115                         $(GAIM_PIXMAPS)/msgpend.png \
116                         $(GAIM_PIXMAPS)/msgunread.png \
117                         $(GAIM_PIXMAPS)/offline.png \
118                         $(GAIM_PIXMAPS)/online.png \
119                         $(GAIM_PIXMAPS)/logo.png
120                         
122 SOUNDS =                $(GAIM_SOUNDS)/leave.wav \
123                         $(GAIM_SOUNDS)/redalert.wav \
124                         $(GAIM_SOUNDS)/receive.wav \
125                         $(GAIM_SOUNDS)/send.wav \
126                         $(GAIM_SOUNDS)/arrive.wav
130 ## Don't forget to change STATIC_PROTO_INIT, in config.h.mingw if you 
131 ## change the status of a protocol (static/plugin)
134 OSCAR_TYPE = PLUGIN
135 YAHOO_TYPE = PLUGIN
136 MSN_TYPE = PLUGIN
137 TOC_TYPE = PLUGIN
138 IRC_TYPE = PLUGIN
139 JABBER_TYPE = PLUGIN
140 NAPSTER_TYPE = PLUGIN
141 GG_TYPE = PLUGIN
143 all:
144         cp config.h.mingw config.h
145         $(MAKE) TYPE='$(OSCAR_TYPE)' -C $(OSCAR) -f Makefile.mingw
146         $(MAKE) TYPE='$(YAHOO_TYPE)' -C $(YAHOO) -f Makefile.mingw
147         $(MAKE) TYPE='$(MSN_TYPE)' -C $(MSN) -f Makefile.mingw
148         $(MAKE) TYPE='$(TOC_TYPE)' -C $(TOC) -f Makefile.mingw
149         $(MAKE) TYPE='$(IRC_TYPE)' -C $(IRC) -f Makefile.mingw
150         $(MAKE) TYPE='$(JABBER_TYPE)' -C $(JABBER) -f Makefile.mingw
151         $(MAKE) TYPE='$(GG_TYPE)' -C $(GG) -f Makefile.mingw
152         $(MAKE) -C $(GAIM_SRC) -f Makefile.mingw
153         $(MAKE) -C $(GAIM_PLUGINS) -f Makefile.mingw
156 install: all
157         mkdir -p $(GAIM_INSTALL_DIR)/plugins
158         mkdir -p $(GAIM_INSTALL_DIR)/pixmaps/gaim/dialogs
159         mkdir -p $(GAIM_INSTALL_DIR)/pixmaps/gaim/buttons
160         mkdir -p $(GAIM_INSTALL_DIR)/pixmaps/gaim/menus
161         mkdir -p $(GAIM_INSTALL_DIR)/pixmaps/gaim/smileys/default
162         mkdir -p $(GAIM_INSTALL_DIR)/sounds/gaim
163         $(MAKE) -C $(PO) -f Makefile.mingw install
164         $(MAKE) -C $(GAIM_SRC) -f Makefile.mingw install
165         $(MAKE) -C $(GAIM_PLUGINS) -f Makefile.mingw install
166         $(MAKE) TYPE='$(OSCAR_TYPE)' -C $(OSCAR) -f Makefile.mingw install
167         $(MAKE) TYPE='$(YAHOO_TYPE)' -C $(YAHOO) -f Makefile.mingw install
168         $(MAKE) TYPE='$(MSN_TYPE)' -C $(MSN) -f Makefile.mingw install
169         $(MAKE) TYPE='$(TOC_TYPE)' -C $(TOC) -f Makefile.mingw install
170         $(MAKE) TYPE='$(IRC_TYPE)' -C $(IRC) -f Makefile.mingw install
171         $(MAKE) TYPE='$(JABBER_TYPE)' -C $(JABBER) -f Makefile.mingw install
172         $(MAKE) TYPE='$(GG_TYPE)' -C $(GG) -f Makefile.mingw install
173         cp $(NEEDED_DLLS) $(GAIM_INSTALL_DIR)
174         cp $(PIXMAPS_DIALOGS) $(GAIM_INSTALL_DIR)/pixmaps/gaim/dialogs
175         cp $(PIXMAPS_BUTTONS) $(GAIM_INSTALL_DIR)/pixmaps/gaim/buttons
176         cp $(PIXMAPS_SMILEYS) $(GAIM_INSTALL_DIR)/pixmaps/gaim/smileys/default
177         cp $(PIXMAPS_MENUS) $(GAIM_INSTALL_DIR)/pixmaps/gaim/menus
178         cp $(PIXMAPS) $(GAIM_INSTALL_DIR)/pixmaps/gaim
179         cp $(SOUNDS) $(GAIM_INSTALL_DIR)/sounds/gaim
180         mkdir -p $(GAIM_INSTALL_DIR)/lib/gtk-2.0
181         cp -R $(GTK_LIBS)/gtk-2.0/2.0.0 $(GAIM_INSTALL_DIR)/lib/gtk-2.0
182         cp -R $(GTK_LIBS)/pango $(GAIM_INSTALL_DIR)/lib
183         cp -R $(GTK_TOP)/etc $(GAIM_INSTALL_DIR)
184         cp $(GAIM_SRC)/win32/themes/gtkrc $(GAIM_INSTALL_DIR)/etc/gtk-2.0
186 installer:
187         makensis.exe /DGAIM_VERSION="$(VERSION)" gaim-installer.nsi
189 clean:
190         $(MAKE) -C $(PO) -f Makefile.mingw clean
191         $(MAKE) -C $(OSCAR) -f Makefile.mingw clean
192         $(MAKE) -C $(YAHOO) -f Makefile.mingw clean
193         $(MAKE) -C $(MSN) -f Makefile.mingw clean
194         $(MAKE) -C $(TOC) -f Makefile.mingw clean
195         $(MAKE) -C $(IRC) -f Makefile.mingw clean
196         $(MAKE) -C $(JABBER) -f Makefile.mingw clean
197         $(MAKE) -C $(GG) -f Makefile.mingw clean
198         $(MAKE) -C $(GAIM_SRC) -f Makefile.mingw clean
199         $(MAKE) -C $(GAIM_PLUGINS) -f Makefile.mingw clean
200         rm -rf config.h $(GAIM_INSTALL_DIR)
201         rm -rf gaim*.exe