[gaim-migrate @ 4138]
[pidgin-git.git] / Makefile.mingw
blobff4c43f5547fa545d0790993b0d1457cc80d5d92
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_INSTALL_DIR = ./win32-install-dir
13 GTK_TOP = ../win32-dev/gtk_2_0
14 GTK_LIBS = $(GTK_TOP)/lib
15 PERL_TOP = ../win32-dev/perl56
16 IDLETRACKER_TOP = $(GAIM_SRC)/win32/IdleTracker
17 GTKRC_TOP = ../win32-dev/gtkrc
18 OSCAR = $(GAIM_PROTOS)/oscar
19 YAHOO = $(GAIM_PROTOS)/yahoo
20 MSN = $(GAIM_PROTOS)/msn
21 TOC = $(GAIM_PROTOS)/toc
22 IRC = $(GAIM_PROTOS)/irc
23 JABBER = $(GAIM_PROTOS)/jabber
24 NAPSTER = $(GAIM_PROTOS)/napster
25 GG = $(GAIM_PROTOS)/gg
26 PO = ./po
28 NEEDED_DLLS =           $(GTK_LIBS)/libgdk-win32-2.0-0.dll \
29                         $(GTK_LIBS)/libglib-2.0-0.dll \
30                         $(GTK_LIBS)/libintl-1.dll \
31                         $(GTK_LIBS)/iconv.dll \
32                         $(GTK_LIBS)/libgmodule-2.0-0.dll \
33                         $(GTK_LIBS)/libgtk-win32-2.0-0.dll \
34                         $(GTK_LIBS)/libgdk_pixbuf-2.0-0.dll \
35                         $(GTK_LIBS)/libgobject-2.0-0.dll \
36                         $(GTK_LIBS)/libgthread-2.0-0.dll \
37                         $(GTK_TOP)/bin/libjpeg.dll \
38                         $(GTK_TOP)/bin/libpng.dll \
39                         $(GTK_TOP)/bin/libtiff.dll \
40                         $(GTK_TOP)/bin/zlib.dll \
41                         $(GTK_LIBS)/libpango-1.0-0.dll \
42                         $(GTK_LIBS)/libpangoft2-1.0-0.dll \
43                         $(GTK_LIBS)/libpangowin32-1.0-0.dll \
44                         $(GTK_LIBS)/libatk-1.0-0.dll \
45                         $(PERL_TOP)/perl56.dll \
46                         $(IDLETRACKER_TOP)/IdleTrac.dll
48 # For Gtk 2.0.3
49 #                       $(GTK_LIBS)/libjpeg6b.dll \
50 #                       $(GTK_LIBS)/libpng-3.dll \
51 #                       $(GTK_LIBS)/libtiff.dll \
52 #                       $(GTK_LIBS)/libz.dll \
54 # For Gtk 2.0.6
55 #                       $(GTK_TOP)/bin/libjpeg.dll \
56 #                       $(GTK_TOP)/bin/libpng.dll \
57 #                       $(GTK_TOP)/bin/libtiff.dll \
58 #                       $(GTK_TOP)/bin/zlib.dll \
63 PIXMAPS_DIALOGS =       $(GAIM_PIXMAPS)/gaim_error.png \
64                         $(GAIM_PIXMAPS)/gaim_info.png \
65                         $(GAIM_PIXMAPS)/gaim_warning.png \
66                         $(GAIM_PIXMAPS)/gaim_question.png
68 PIXMAPS_MENUS = $(GAIM_PIXMAPS)/about_menu.png \
69                         $(GAIM_PIXMAPS)/accounts-menu.png \
70                         $(GAIM_PIXMAPS)/import-menu.png \
71                         $(GAIM_PIXMAPS)/insert-image-small.png \
72                         $(GAIM_PIXMAPS)/insert-link-small.png
74 PIXMAPS_BUTTONS =       $(GAIM_PIXMAPS)/edit.png \
75                         $(GAIM_PIXMAPS)/accounts.png \
76                         $(GAIM_PIXMAPS)/change-bgcolor-small.png \
77                         $(GAIM_PIXMAPS)/change-fgcolor-small.png \
78                         $(GAIM_PIXMAPS)/preferences.png \
79                         $(GAIM_PIXMAPS)/signon.png \
80                         $(GAIM_PIXMAPS)/insert-image-small.png \
81                         $(GAIM_PIXMAPS)/insert-link-small.png \
82                         $(GAIM_PIXMAPS)/insert-smiley-small.png \
83                         $(GAIM_PIXMAPS)/text_bigger.png \
84                         $(GAIM_PIXMAPS)/text_normal.png \
85                         $(GAIM_PIXMAPS)/text_smaller.png 
87 PIXMAPS =               $(GAIM_PIXMAPS)/away.png \
88                         $(GAIM_PIXMAPS)/connect.png \
89                         $(GAIM_PIXMAPS)/msgpend.png \
90                         $(GAIM_PIXMAPS)/msgunread.png \
91                         $(GAIM_PIXMAPS)/offline.png \
92                         $(GAIM_PIXMAPS)/online.png \
93                         $(GAIM_PIXMAPS)/logo.png
95 GTKRC_ENGINES =         $(GTKRC_TOP)/libnativewin.dll
99 ## Don't forget to change STATIC_PROTO_INIT, in config.h.mingw if you 
100 ## change the status of a protocol (static/plugin)
103 OSCAR_TYPE = PLUGIN
104 YAHOO_TYPE = PLUGIN
105 MSN_TYPE = PLUGIN
106 TOC_TYPE = PLUGIN
107 IRC_TYPE = PLUGIN
108 JABBER_TYPE = PLUGIN
109 NAPSTER_TYPE = PLUGIN
110 GG_TYPE = PLUGIN
112 all:
113         cp config.h.mingw config.h
114         $(MAKE) TYPE='$(OSCAR_TYPE)' -C $(OSCAR) -f Makefile.mingw
115         $(MAKE) TYPE='$(YAHOO_TYPE)' -C $(YAHOO) -f Makefile.mingw
116         $(MAKE) TYPE='$(MSN_TYPE)' -C $(MSN) -f Makefile.mingw
117         $(MAKE) TYPE='$(TOC_TYPE)' -C $(TOC) -f Makefile.mingw
118         $(MAKE) TYPE='$(IRC_TYPE)' -C $(IRC) -f Makefile.mingw
119         $(MAKE) TYPE='$(JABBER_TYPE)' -C $(JABBER) -f Makefile.mingw
120         $(MAKE) TYPE='$(GG_TYPE)' -C $(GG) -f Makefile.mingw
121         $(MAKE) -C $(GAIM_SRC) -f Makefile.mingw
122         $(MAKE) -C $(GAIM_PLUGINS) -f Makefile.mingw
125 install: all
126         mkdir -p $(GAIM_INSTALL_DIR)/plugins
127         mkdir -p $(GAIM_INSTALL_DIR)/pixmaps/gaim/dialogs
128         mkdir -p $(GAIM_INSTALL_DIR)/pixmaps/gaim/buttons
129         mkdir -p $(GAIM_INSTALL_DIR)/pixmaps/gaim/menus
130         $(MAKE) -C $(PO) -f Makefile.mingw install
131         $(MAKE) -C $(GAIM_SRC) -f Makefile.mingw install
132         $(MAKE) -C $(GAIM_PLUGINS) -f Makefile.mingw install
133         $(MAKE) TYPE='$(OSCAR_TYPE)' -C $(OSCAR) -f Makefile.mingw install
134         $(MAKE) TYPE='$(YAHOO_TYPE)' -C $(YAHOO) -f Makefile.mingw install
135         $(MAKE) TYPE='$(MSN_TYPE)' -C $(MSN) -f Makefile.mingw install
136         $(MAKE) TYPE='$(TOC_TYPE)' -C $(TOC) -f Makefile.mingw install
137         $(MAKE) TYPE='$(IRC_TYPE)' -C $(IRC) -f Makefile.mingw install
138         $(MAKE) TYPE='$(JABBER_TYPE)' -C $(JABBER) -f Makefile.mingw install
139         $(MAKE) TYPE='$(GG_TYPE)' -C $(GG) -f Makefile.mingw install
140         cp $(NEEDED_DLLS) $(GAIM_INSTALL_DIR)
141         cp $(PIXMAPS_DIALOGS) $(GAIM_INSTALL_DIR)/pixmaps/gaim/dialogs
142         cp $(PIXMAPS_BUTTONS) $(GAIM_INSTALL_DIR)/pixmaps/gaim/buttons
143         cp $(PIXMAPS_MENUS) $(GAIM_INSTALL_DIR)/pixmaps/gaim/menus
144         cp $(PIXMAPS) $(GAIM_INSTALL_DIR)/pixmaps/gaim
145         mkdir -p $(GAIM_INSTALL_DIR)/lib/gtk-2.0
146         cp -R $(GTK_LIBS)/gtk-2.0/2.0.0 $(GAIM_INSTALL_DIR)/lib/gtk-2.0
147         cp -R $(GTK_LIBS)/pango $(GAIM_INSTALL_DIR)/lib
148         cp -R $(GTK_TOP)/etc $(GAIM_INSTALL_DIR)
149         cp $(GTKRC_TOP)/gtkrc $(GAIM_INSTALL_DIR)/etc/gtk-2.0
150         mkdir -p $(GAIM_INSTALL_DIR)/lib/gtk-2.0/2.0.0/engines
151         cp $(GTKRC_ENGINES) $(GAIM_INSTALL_DIR)/lib/gtk-2.0/2.0.0/engines
153 installer:
154         makensis.exe gaim-installer.nsi
156 clean:
157         $(MAKE) -C $(PO) -f Makefile.mingw clean
158         $(MAKE) -C $(OSCAR) -f Makefile.mingw clean
159         $(MAKE) -C $(YAHOO) -f Makefile.mingw clean
160         $(MAKE) -C $(MSN) -f Makefile.mingw clean
161         $(MAKE) -C $(TOC) -f Makefile.mingw clean
162         $(MAKE) -C $(IRC) -f Makefile.mingw clean
163         $(MAKE) -C $(JABBER) -f Makefile.mingw clean
164         $(MAKE) -C $(GG) -f Makefile.mingw clean
165         $(MAKE) -C $(GAIM_SRC) -f Makefile.mingw clean
166         $(MAKE) -C $(GAIM_PLUGINS) -f Makefile.mingw clean
167         rm -rf config.h $(GAIM_INSTALL_DIR)
168         rm -rf gaim*.exe