Mercurial > pidgin
annotate Makefile.mingw @ 16083:f2a4b05407d7
Patch from shlomil in ticket #78.
This fixes RTL text support in MSN, and lays the framework so it could be
supported in other prpls as well. As added pluses, shlomil removed some
duplicate code and fixed some small related bugs.
committer: Richard Laager <rlaager@wiktel.com>
author | Shlomi Loubaton <shlomister@gmail.com> |
---|---|
date | Fri, 13 Apr 2007 04:13:24 +0000 |
parents | ded8da3de5f8 |
children | 8da9fef3843a |
rev | line source |
---|---|
3630 | 1 # Makefile.mingw |
8615 | 2 # |
3630 | 3 # Author: hermanator12002@yahoo.com |
4 # Date 9/11/02 | |
16039
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
5 # Description: Top Makefile for win32 (mingw) port of Pidgin and LibPurple |
3630 | 6 # |
7 | |
16039
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
8 PIDGIN_TREE_TOP := . |
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
9 include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak |
10804 | 10 |
14454
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
11 # Generate a X.X.X.X version for the installer file versioning header |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
12 # The last digit will be 99 for a final release, 0 for dev or unknown, or the beta number |
15751
e11859350489
Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15581
diff
changeset
|
13 PIDGIN_PRODUCT_VERSION = $(shell \ |
14454
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
14 awk 'BEGIN {FS="."} { \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
15 if (int($$3) == $$3) { \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
16 $$4 = "99"; \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
17 } else { \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
18 $$5 = $$3; \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
19 sub(int($$3), "", $$5); \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
20 if ($$5 == "dev") { \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
21 $$4 = "0"; \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
22 } else { \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
23 if (sub("beta", "", $$5) > 0) { \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
24 $$4 = $$5; \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
25 } else { \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
26 $$4 = "0"; \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
27 } \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
28 } \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
29 } \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
30 printf("%s.%s.%s.%s", $$1, $$2, int($$3), $$4); \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
31 exit; \ |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
32 }' VERSION) |
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
33 |
15363
d9ef62fb7e7b
[gaim-migrate @ 18156]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15082
diff
changeset
|
34 GTK_INSTALL_VERSION = $(shell \ |
d9ef62fb7e7b
[gaim-migrate @ 18156]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15082
diff
changeset
|
35 source ../gtk_installer/version.sh; \ |
d9ef62fb7e7b
[gaim-migrate @ 18156]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15082
diff
changeset
|
36 echo $$gtk_version \ |
d9ef62fb7e7b
[gaim-migrate @ 18156]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15082
diff
changeset
|
37 ) |
d9ef62fb7e7b
[gaim-migrate @ 18156]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15082
diff
changeset
|
38 |
15082
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
39 # Any *.dll or *.exe files included in win32-install-dir that we don't compile |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
40 # should be included in this list so they don't get stripped |
15751
e11859350489
Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15581
diff
changeset
|
41 EXTERNAL_DLLS = \ |
15082
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
42 freebl3.dll \ |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
43 libgtkspell.dll \ |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
44 libmeanwhile-1.dll \ |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
45 libxml2.dll \ |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
46 nspr4.dll \ |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
47 nss3.dll \ |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
48 nssckbi.dll \ |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
49 plc4.dll \ |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
50 plds4.dll \ |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
51 silc.dll \ |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
52 silcclient.dll \ |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
53 softokn3.dll \ |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
54 ssl3.dll |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
55 |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
56 #build an expression for `find` to use to ignore the above files |
15751
e11859350489
Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15581
diff
changeset
|
57 EXTERNAL_DLLS_FIND_EXP = $(patsubst %,-o -name %,$(EXTERNAL_DLLS)) |
15082
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
58 |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
59 .PHONY: all install installer installer_nogtk installer_debug installers clean uninstall create_release_install_dir |
14454
22cb019456bd
[gaim-migrate @ 17168]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14315
diff
changeset
|
60 |
16039
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
61 all: $(PIDGIN_CONFIG_H) |
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
62 $(MAKE) -C $(PURPLE_TOP) -f $(MINGW_MAKEFILE) |
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
63 $(MAKE) -C $(PIDGIN_TOP) -f $(MINGW_MAKEFILE) |
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
64 $(MAKE) -C $(PURPLE_PO_TOP) -f $(MINGW_MAKEFILE) |
3630 | 65 |
16039
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
66 install: all $(PIDGIN_INSTALL_DIR) |
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
67 $(MAKE) -C $(PURPLE_TOP) -f $(MINGW_MAKEFILE) install |
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
68 $(MAKE) -C $(PIDGIN_TOP) -f $(MINGW_MAKEFILE) install |
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
69 $(MAKE) -C $(PURPLE_PO_TOP) -f $(MINGW_MAKEFILE) install |
3630 | 70 |
15082
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
71 create_release_install_dir: install |
16039
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
72 rm -rf $(PIDGIN_INSTALL_DIR).release |
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
73 cp -R $(PIDGIN_INSTALL_DIR) $(PIDGIN_INSTALL_DIR).release |
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
74 find $(PIDGIN_INSTALL_DIR).release \( -name '*.dll' -o -name '*.exe' \) \ |
15751
e11859350489
Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15581
diff
changeset
|
75 -not \( -false $(EXTERNAL_DLLS_FIND_EXP) \) -exec $(STRIP) --strip-unneeded {} ';' |
5384
0b544518a365
[gaim-migrate @ 5760]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
4897
diff
changeset
|
76 |
15082
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
77 installer: create_release_install_dir |
16039
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
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 |
15751
e11859350489
Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15581
diff
changeset
|
79 mv pidgin/win32/nsis/pidgin*.exe ./ |
15082
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
80 |
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
81 installer_nogtk: create_release_install_dir |
16039
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
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 |
15751
e11859350489
Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15581
diff
changeset
|
83 mv pidgin/win32/nsis/pidgin*.exe ./ |
3630 | 84 |
14315
8793fc8f7064
[gaim-migrate @ 17008]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14241
diff
changeset
|
85 installer_debug: install |
16039
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
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 |
15751
e11859350489
Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
15581
diff
changeset
|
87 mv pidgin/win32/nsis/pidgin*.exe ./ |
5931
8b5dd7117f56
[gaim-migrate @ 6371]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
5387
diff
changeset
|
88 |
15082
133af8458cbd
[gaim-migrate @ 17868]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14699
diff
changeset
|
89 installers: installer installer_nogtk installer_debug |
5384
0b544518a365
[gaim-migrate @ 5760]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
4897
diff
changeset
|
90 |
14315
8793fc8f7064
[gaim-migrate @ 17008]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14241
diff
changeset
|
91 clean: |
16039
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
92 $(MAKE) -C $(PURPLE_PO_TOP) -f $(MINGW_MAKEFILE) clean |
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
93 $(MAKE) -C $(PIDGIN_TOP) -f $(MINGW_MAKEFILE) clean |
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
94 $(MAKE) -C $(PURPLE_TOP) -f $(MINGW_MAKEFILE) clean |
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
95 rm -f $(PIDGIN_CONFIG_H) VERSION pidgin*.exe |
14699
cd1ddfa8868c
[gaim-migrate @ 17451]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14576
diff
changeset
|
96 |
cd1ddfa8868c
[gaim-migrate @ 17451]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
14576
diff
changeset
|
97 uninstall: |
16039
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
98 rm -rf $(PURPLE_INSTALL_PERLMOD_DIR) $(PIDGIN_INSTALL_PLUGINS_DIR) $(PURPLE_INSTALL_PO_DIR) $(PIDGIN_INSTALL_DIR) $(PIDGIN_INSTALL_DIR).release |
5931
8b5dd7117f56
[gaim-migrate @ 6371]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
5387
diff
changeset
|
99 |
16039
ded8da3de5f8
This should get all the Win32 Makefiles in line with
Kevin Stange <kevin@simguy.net>
parents:
15751
diff
changeset
|
100 include $(PIDGIN_COMMON_TARGETS) |