annotate Makefile.mingw @ 17727:78744359f57f

#include "gtkutils.h"
author Richard Laager <rlaager@wiktel.com>
date Sun, 20 May 2007 14:55:13 +0000
parents 8da9fef3843a
children 042b64016a57
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3630
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
1 # Makefile.mingw
8615
f26e7dc1805e [gaim-migrate @ 9366]
Luke Schierer <lschiere@pidgin.im>
parents: 7056
diff changeset
2 #
3630
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
3 # Author: hermanator12002@yahoo.com
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
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
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
6 #
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
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
6dcfec6f2f7c [gaim-migrate @ 12452]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10201
diff changeset
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
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
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
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
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
9682c0e022c6 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
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
16689
8da9fef3843a Remove generated files in the 'clean' target.
Daniel Atallah <daniel.atallah@gmail.com>
parents: 16039
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)