Mercurial > pidgin.yaz
comparison Makefile.mingw @ 16177:d88f0f320c9b
merge of '07fc4db9a3c2c12596e0354b8e7959aa847f966b'
and '2e6d324c725b3e6a2c803589bca3f0ac9b9790bf'
author | Richard Laager <rlaager@wiktel.com> |
---|---|
date | Mon, 16 Apr 2007 00:44:33 +0000 |
parents | ded8da3de5f8 |
children | 8da9fef3843a |
comparison
equal
deleted
inserted
replaced
14940:2e3eba412412 | 16177:d88f0f320c9b |
---|---|
1 # Makefile.mingw | 1 # Makefile.mingw |
2 # | 2 # |
3 # Author: hermanator12002@yahoo.com | 3 # Author: hermanator12002@yahoo.com |
4 # Date 9/11/02 | 4 # Date 9/11/02 |
5 # Description: Top Makefile for win32 (mingw) port of Gaim | 5 # Description: Top Makefile for win32 (mingw) port of Pidgin and LibPurple |
6 # | 6 # |
7 | 7 |
8 GAIM_SRC = ./src | 8 PIDGIN_TREE_TOP := . |
9 GAIM_PROTOS = $(GAIM_SRC)/protocols | 9 include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak |
10 GAIM_PLUGINS = ./plugins | |
11 GAIM_PIXMAPS = ./pixmaps | |
12 GAIM_SOUNDS = ./sounds | |
13 GAIM_INSTALL_DIR = ./win32-install-dir | |
14 GTKSPELL_TOP = ../win32-dev/gtkspell-2.0.6/gtkspell | |
15 IDLETRACK_TOP = $(GAIM_SRC)/win32/IdleTracker | |
16 GTKRC_TOP = ../win32-dev/gtkrc | |
17 OSCAR = $(GAIM_PROTOS)/oscar | |
18 YAHOO = $(GAIM_PROTOS)/yahoo | |
19 MSN = $(GAIM_PROTOS)/msn | |
20 TOC = $(GAIM_PROTOS)/toc | |
21 IRC = $(GAIM_PROTOS)/irc | |
22 JABBER = $(GAIM_PROTOS)/jabber | |
23 NAPSTER = $(GAIM_PROTOS)/napster | |
24 GG = $(GAIM_PROTOS)/gg | |
25 NOVELL = $(GAIM_PROTOS)/novell | |
26 SILC = $(GAIM_PROTOS)/silc | |
27 SIMPLE = $(GAIM_PROTOS)/simple | |
28 SAMETIME = $(GAIM_PROTOS)/sametime | |
29 PO = ./po | |
30 | 10 |
31 MAKENSIS := makensis.exe | 11 # Generate a X.X.X.X version for the installer file versioning header |
12 # The last digit will be 99 for a final release, 0 for dev or unknown, or the beta number | |
13 PIDGIN_PRODUCT_VERSION = $(shell \ | |
14 awk 'BEGIN {FS="."} { \ | |
15 if (int($$3) == $$3) { \ | |
16 $$4 = "99"; \ | |
17 } else { \ | |
18 $$5 = $$3; \ | |
19 sub(int($$3), "", $$5); \ | |
20 if ($$5 == "dev") { \ | |
21 $$4 = "0"; \ | |
22 } else { \ | |
23 if (sub("beta", "", $$5) > 0) { \ | |
24 $$4 = $$5; \ | |
25 } else { \ | |
26 $$4 = "0"; \ | |
27 } \ | |
28 } \ | |
29 } \ | |
30 printf("%s.%s.%s.%s", $$1, $$2, int($$3), $$4); \ | |
31 exit; \ | |
32 }' VERSION) | |
32 | 33 |
33 VERSION := $(shell cat ./VERSION) | 34 GTK_INSTALL_VERSION = $(shell \ |
35 source ../gtk_installer/version.sh; \ | |
36 echo $$gtk_version \ | |
37 ) | |
34 | 38 |
35 NEEDED_DLLS = $(GTKSPELL_TOP)/libgtkspell.dll \ | 39 # Any *.dll or *.exe files included in win32-install-dir that we don't compile |
36 $(IDLETRACK_TOP)/idletrack.dll | 40 # should be included in this list so they don't get stripped |
41 EXTERNAL_DLLS = \ | |
42 freebl3.dll \ | |
43 libgtkspell.dll \ | |
44 libmeanwhile-1.dll \ | |
45 libxml2.dll \ | |
46 nspr4.dll \ | |
47 nss3.dll \ | |
48 nssckbi.dll \ | |
49 plc4.dll \ | |
50 plds4.dll \ | |
51 silc.dll \ | |
52 silcclient.dll \ | |
53 softokn3.dll \ | |
54 ssl3.dll | |
37 | 55 |
38 SOUNDS = $(GAIM_SOUNDS)/alert.wav \ | 56 #build an expression for `find` to use to ignore the above files |
39 $(GAIM_SOUNDS)/login.wav \ | 57 EXTERNAL_DLLS_FIND_EXP = $(patsubst %,-o -name %,$(EXTERNAL_DLLS)) |
40 $(GAIM_SOUNDS)/logout.wav \ | |
41 $(GAIM_SOUNDS)/receive.wav \ | |
42 $(GAIM_SOUNDS)/send.wav | |
43 | 58 |
59 .PHONY: all install installer installer_nogtk installer_debug installers clean uninstall create_release_install_dir | |
44 | 60 |
45 ## | 61 all: $(PIDGIN_CONFIG_H) |
46 ## Don't forget to change STATIC_PROTO_INIT, in config.h.mingw if you | 62 $(MAKE) -C $(PURPLE_TOP) -f $(MINGW_MAKEFILE) |
47 ## change the status of a protocol (static/plugin) | 63 $(MAKE) -C $(PIDGIN_TOP) -f $(MINGW_MAKEFILE) |
48 ## | 64 $(MAKE) -C $(PURPLE_PO_TOP) -f $(MINGW_MAKEFILE) |
49 | 65 |
50 OSCAR_TYPE = PLUGIN | 66 install: all $(PIDGIN_INSTALL_DIR) |
51 YAHOO_TYPE = PLUGIN | 67 $(MAKE) -C $(PURPLE_TOP) -f $(MINGW_MAKEFILE) install |
52 MSN_TYPE = PLUGIN | 68 $(MAKE) -C $(PIDGIN_TOP) -f $(MINGW_MAKEFILE) install |
53 TOC_TYPE = PLUGIN | 69 $(MAKE) -C $(PURPLE_PO_TOP) -f $(MINGW_MAKEFILE) install |
54 IRC_TYPE = PLUGIN | |
55 JABBER_TYPE = PLUGIN | |
56 NAPSTER_TYPE = PLUGIN | |
57 GG_TYPE = PLUGIN | |
58 NOVELL_TYPE = PLUGIN | |
59 SILC_TYPE = PLUGIN | |
60 SIMPLE_TYPE = PLUGIN | |
61 SAMETIME_TYPE = PLUGIN | |
62 | 70 |
63 all: | 71 create_release_install_dir: install |
64 cp config.h.mingw config.h | 72 rm -rf $(PIDGIN_INSTALL_DIR).release |
65 $(MAKE) TYPE='$(OSCAR_TYPE)' -C $(OSCAR) -f Makefile.mingw | 73 cp -R $(PIDGIN_INSTALL_DIR) $(PIDGIN_INSTALL_DIR).release |
66 $(MAKE) TYPE='$(YAHOO_TYPE)' -C $(YAHOO) -f Makefile.mingw | 74 find $(PIDGIN_INSTALL_DIR).release \( -name '*.dll' -o -name '*.exe' \) \ |
67 $(MAKE) TYPE='$(MSN_TYPE)' -C $(MSN) -f Makefile.mingw | 75 -not \( -false $(EXTERNAL_DLLS_FIND_EXP) \) -exec $(STRIP) --strip-unneeded {} ';' |
68 $(MAKE) TYPE='$(IRC_TYPE)' -C $(IRC) -f Makefile.mingw | |
69 $(MAKE) TYPE='$(JABBER_TYPE)' -C $(JABBER) -f Makefile.mingw | |
70 $(MAKE) TYPE='$(NAPSTER_TYPE)' -C $(NAPSTER) -f Makefile.mingw | |
71 $(MAKE) TYPE='$(GG_TYPE)' -C $(GG) -f Makefile.mingw | |
72 $(MAKE) TYPE='$(NOVELL_TYPE)' -C $(NOVELL) -f Makefile.mingw | |
73 $(MAKE) TYPE='$(SILC_TYPE)' -C $(SILC) -f Makefile.mingw | |
74 $(MAKE) TYPE='$(SIMPLE_TYPE)' -C $(SIMPLE) -f Makefile.mingw | |
75 $(MAKE) TYPE='$(SAMETIME_TYPE)' -C $(SAMETIME) -f Makefile.mingw | |
76 $(MAKE) -C $(GAIM_SRC) -f Makefile.mingw | |
77 $(MAKE) -C $(GAIM_PLUGINS) -f Makefile.mingw | |
78 | 76 |
77 installer: create_release_install_dir | |
78 $(MAKENSIS) /V3 /DPIDGIN_VERSION="$(PIDGIN_VERSION)" /DPIDGIN_PRODUCT_VERSION="$(PIDGIN_PRODUCT_VERSION)" /DWITH_GTK /DPIDGIN_INSTALL_DIR="$(PIDGIN_INSTALL_DIR).release" /DGTK_INSTALL_VERSION="$(GTK_INSTALL_VERSION)" pidgin/win32/nsis/pidgin-installer.nsi | |
79 mv pidgin/win32/nsis/pidgin*.exe ./ | |
79 | 80 |
80 install: all | 81 installer_nogtk: create_release_install_dir |
81 mkdir -p $(GAIM_INSTALL_DIR)/plugins | 82 $(MAKENSIS) /V3 /DPIDGIN_VERSION="$(PIDGIN_VERSION)" /DPIDGIN_PRODUCT_VERSION="$(PIDGIN_PRODUCT_VERSION)" /DPIDGIN_INSTALL_DIR="$(PIDGIN_INSTALL_DIR).release" /DGTK_INSTALL_VERSION="$(GTK_INSTALL_VERSION)" pidgin/win32/nsis/pidgin-installer.nsi |
82 mkdir -p $(GAIM_INSTALL_DIR)/sounds/gaim | 83 mv pidgin/win32/nsis/pidgin*.exe ./ |
83 $(MAKE) -C $(GAIM_PIXMAPS) -f Makefile.mingw install | |
84 $(MAKE) -C $(PO) -f Makefile.mingw install | |
85 $(MAKE) -C $(GAIM_SRC) -f Makefile.mingw install | |
86 $(MAKE) -C $(GAIM_PLUGINS) -f Makefile.mingw install | |
87 $(MAKE) TYPE='$(OSCAR_TYPE)' -C $(OSCAR) -f Makefile.mingw install | |
88 $(MAKE) TYPE='$(YAHOO_TYPE)' -C $(YAHOO) -f Makefile.mingw install | |
89 $(MAKE) TYPE='$(MSN_TYPE)' -C $(MSN) -f Makefile.mingw install | |
90 $(MAKE) TYPE='$(IRC_TYPE)' -C $(IRC) -f Makefile.mingw install | |
91 $(MAKE) TYPE='$(JABBER_TYPE)' -C $(JABBER) -f Makefile.mingw install | |
92 $(MAKE) TYPE='$(NAPSTER_TYPE)' -C $(NAPSTER) -f Makefile.mingw install | |
93 $(MAKE) TYPE='$(GG_TYPE)' -C $(GG) -f Makefile.mingw install | |
94 $(MAKE) TYPE='$(NOVELL_TYPE)' -C $(NOVELL) -f Makefile.mingw install | |
95 $(MAKE) TYPE='$(SILC_TYPE)' -C $(SILC) -f Makefile.mingw install | |
96 $(MAKE) TYPE='$(SIMPLE_TYPE)' -C $(SIMPLE) -f Makefile.mingw install | |
97 $(MAKE) TYPE='$(SAMETIME_TYPE)' -C $(SAMETIME) -f Makefile.mingw install | |
98 cp $(NEEDED_DLLS) $(GAIM_INSTALL_DIR) | |
99 cp $(SOUNDS) $(GAIM_INSTALL_DIR)/sounds/gaim | |
100 | 84 |
101 installer: | 85 installer_debug: install |
102 $(MAKENSIS) /DGAIM_VERSION="$(VERSION)" /DWITH_GTK gaim-installer.nsi | 86 $(MAKENSIS) /V3 /DPIDGIN_VERSION="$(PIDGIN_VERSION)" /DPIDGIN_PRODUCT_VERSION="$(PIDGIN_PRODUCT_VERSION)" /DPIDGIN_INSTALL_DIR="$(PIDGIN_INSTALL_DIR)" /DDEBUG /DGTK_INSTALL_VERSION="$(GTK_INSTALL_VERSION)" pidgin/win32/nsis/pidgin-installer.nsi |
87 mv pidgin/win32/nsis/pidgin*.exe ./ | |
103 | 88 |
104 installer_nogtk: | 89 installers: installer installer_nogtk installer_debug |
105 $(MAKENSIS) /DGAIM_VERSION="$(VERSION)" gaim-installer.nsi | |
106 | |
107 installer_debug: | |
108 $(MAKENSIS) /DGAIM_VERSION="$(VERSION)" /DDEBUG gaim-installer.nsi | |
109 | |
110 installers: installer installer_nogtk | |
111 | |
112 | 90 |
113 clean: | 91 clean: |
114 $(MAKE) -C $(PO) -f Makefile.mingw clean | 92 $(MAKE) -C $(PURPLE_PO_TOP) -f $(MINGW_MAKEFILE) clean |
115 $(MAKE) -C $(OSCAR) -f Makefile.mingw clean | 93 $(MAKE) -C $(PIDGIN_TOP) -f $(MINGW_MAKEFILE) clean |
116 $(MAKE) -C $(YAHOO) -f Makefile.mingw clean | 94 $(MAKE) -C $(PURPLE_TOP) -f $(MINGW_MAKEFILE) clean |
117 $(MAKE) -C $(MSN) -f Makefile.mingw clean | 95 rm -f $(PIDGIN_CONFIG_H) VERSION pidgin*.exe |
118 $(MAKE) -C $(IRC) -f Makefile.mingw clean | 96 |
119 $(MAKE) -C $(JABBER) -f Makefile.mingw clean | 97 uninstall: |
120 $(MAKE) -C $(NAPSTER) -f Makefile.mingw clean | 98 rm -rf $(PURPLE_INSTALL_PERLMOD_DIR) $(PIDGIN_INSTALL_PLUGINS_DIR) $(PURPLE_INSTALL_PO_DIR) $(PIDGIN_INSTALL_DIR) $(PIDGIN_INSTALL_DIR).release |
121 $(MAKE) -C $(GG) -f Makefile.mingw clean | 99 |
122 $(MAKE) -C $(NOVELL) -f Makefile.mingw clean | 100 include $(PIDGIN_COMMON_TARGETS) |
123 $(MAKE) -C $(SILC) -f Makefile.mingw clean | |
124 $(MAKE) -C $(SIMPLE) -f Makefile.mingw clean | |
125 $(MAKE) -C $(SAMETIME) -f Makefile.mingw clean | |
126 $(MAKE) -C $(GAIM_SRC) -f Makefile.mingw clean | |
127 $(MAKE) -C $(GAIM_PLUGINS) -f Makefile.mingw clean | |
128 rm -rf config.h $(GAIM_INSTALL_DIR) | |
129 rm -rf gaim*.exe |