Makefile.mingw

Fri, 25 Apr 2014 16:21:09 +0200

author
Tomasz Wasilczyk <twasilczyk@pidgin.im>
date
Fri, 25 Apr 2014 16:21:09 +0200
changeset 35906
9baff8e0812f
parent 35905
e123a17b6c0b
child 36163
c3e87cb60c02
child 37140
25d39bb4d758
permissions
-rw-r--r--

win32: update bunch of dependencies

3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
1 # Makefile.mingw
8615
7db99c77c41e [gaim-migrate @ 9366]
Luke Schierer <lschiere@pidgin.im>
parents: 7056
diff changeset
2 #
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
3 # Author: hermanator12002@yahoo.com
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
4 # Date 9/11/02
25875
a98b16817658 Lots of minor whitespace and comment changes:
Mark Doliner <markdoliner@pidgin.im>
parents: 24229
diff changeset
5 # Description: Top Makefile for win32 (mingw) port of Pidgin and libpurple
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
6 #
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
7
16100
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15805
diff changeset
8 PIDGIN_TREE_TOP := .
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15805
diff changeset
9 include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak
10804
e51729c86312 [gaim-migrate @ 12452]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10201
diff changeset
10
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
11 # Generate a X.X.X.X version for the installer file versioning header
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
12 # The last digit will be 99 for a final release, 0 for dev or unknown, or the beta number
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15643
diff changeset
13 PIDGIN_PRODUCT_VERSION = $(shell \
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
14 awk 'BEGIN {FS="."} { \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
15 if (int($$3) == $$3) { \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
16 $$4 = "99"; \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
17 } else { \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
18 $$5 = $$3; \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
19 sub(int($$3), "", $$5); \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
20 if ($$5 == "dev") { \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
21 $$4 = "0"; \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
22 } else { \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
23 if (sub("beta", "", $$5) > 0) { \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
24 $$4 = $$5; \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
25 } else { \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
26 $$4 = "0"; \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
27 } \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
28 } \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
29 } \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
30 printf("%s.%s.%s.%s", $$1, $$2, int($$3), $$4); \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
31 exit; \
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
32 }' VERSION)
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
33
35906
9baff8e0812f win32: update bunch of dependencies
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35905
diff changeset
34 GTK_INSTALL_VERSION = 2.24.18.0
15425
c0961da59074 [gaim-migrate @ 18156]
Daniel Atallah <datallah@pidgin.im>
parents: 15144
diff changeset
35
33417
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
36 authenticode_sign = $(MONO_SIGNCODE) \
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
37 -spc "$(SIGNCODE_SPC)" -v "$(SIGNCODE_PVK)" \
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
38 -a sha1 -$$ commercial \
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
39 -n "$(2)" -i "https://pidgin.im" \
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
40 -t "http://timestamp.verisign.com/scripts/timstamp.dll" -tr 10 \
33752
fb9baad00cbd installer: remove Baltimore_CyberTrust_Root.pem, ValiCert_Class_2_VA.pem when uninstalling
Daniel Atallah <datallah@pidgin.im>
parents: 33669
diff changeset
41 $(1) && rm -f $(1).bak
33417
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
42
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
43 gpg_sign = $(GPG_SIGN) -ab $(1) && $(GPG_SIGN) --verify $(1).asc
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
44
20253
7e389b201776 applied changes from 60b78c93bfc38b72c6e9fdde59d0e2507bccc4bd
Luke Schierer <lschiere@pidgin.im>
parents: 19668
diff changeset
45 STRIPPED_RELEASE_DIR = $(PIDGIN_TREE_TOP)/pidgin-$(PIDGIN_VERSION)-win32bin
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 28003
diff changeset
46 DEBUG_SYMBOLS_DIR = $(PIDGIN_TREE_TOP)/pidgin-$(PIDGIN_VERSION)-dbgsym
20253
7e389b201776 applied changes from 60b78c93bfc38b72c6e9fdde59d0e2507bccc4bd
Luke Schierer <lschiere@pidgin.im>
parents: 19668
diff changeset
47
33753
75999131f023 installer: update installer deps with a fixed NSIS SHA1Sum plugin that works on Windows XP
Daniel Atallah <datallah@pidgin.im>
parents: 33752
diff changeset
48 PIDGIN_INST_DEP_DIR="$(WIN32_DEV_TOP)/pidgin-inst-deps-20130214"
20253
7e389b201776 applied changes from 60b78c93bfc38b72c6e9fdde59d0e2507bccc4bd
Luke Schierer <lschiere@pidgin.im>
parents: 19668
diff changeset
49
15144
d936faa32f0e [gaim-migrate @ 17868]
Daniel Atallah <datallah@pidgin.im>
parents: 14761
diff changeset
50 # Any *.dll or *.exe files included in win32-install-dir that we don't compile
d936faa32f0e [gaim-migrate @ 17868]
Daniel Atallah <datallah@pidgin.im>
parents: 14761
diff changeset
51 # should be included in this list so they don't get stripped
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15643
diff changeset
52 EXTERNAL_DLLS = \
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
53 exchndl.dll \
21395
e5bb2b0df509 Improved cyrus sasl support on win32:
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21074
diff changeset
54 libsasl.dll \
e5bb2b0df509 Improved cyrus sasl support on win32:
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21074
diff changeset
55 saslANONYMOUS.dll \
e5bb2b0df509 Improved cyrus sasl support on win32:
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21074
diff changeset
56 saslCRAMMD5.dll \
e5bb2b0df509 Improved cyrus sasl support on win32:
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21074
diff changeset
57 saslDIGESTMD5.dll \
e5bb2b0df509 Improved cyrus sasl support on win32:
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21074
diff changeset
58 saslGSSAPI.dll \
e5bb2b0df509 Improved cyrus sasl support on win32:
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 21074
diff changeset
59 saslLOGIN.dll \
33918
00a5613b27d5 win32: switch silc-toolkit to OBS
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33905
diff changeset
60 saslPLAIN.dll
15144
d936faa32f0e [gaim-migrate @ 17868]
Daniel Atallah <datallah@pidgin.im>
parents: 14761
diff changeset
61
d936faa32f0e [gaim-migrate @ 17868]
Daniel Atallah <datallah@pidgin.im>
parents: 14761
diff changeset
62 #build an expression for `find` to use to ignore the above files
15805
a80eb333bae9 Updates to the win32 installer. It isn't complete yet, but this a good saving point.
Daniel Atallah <datallah@pidgin.im>
parents: 15643
diff changeset
63 EXTERNAL_DLLS_FIND_EXP = $(patsubst %,-o -name %,$(EXTERNAL_DLLS))
15144
d936faa32f0e [gaim-migrate @ 17868]
Daniel Atallah <datallah@pidgin.im>
parents: 14761
diff changeset
64
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 29881
diff changeset
65 include $(PIDGIN_COMMON_RULES)
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 29881
diff changeset
66
35387
c516874b0d14 Prepare files for gtk-doc conversion.
Ankit Vani <a@nevitus.org>
parents: 35297
diff changeset
67 .PHONY: all install installer installer_offline installer_zip debug_symbols_zip installers clean uninstall create_release_install_dir generate_installer_includes $(PIDGIN_REVISION_H) $(PIDGIN_REVISION_RAW_TXT) gtk_runtime_zip
14516
fa15efbfe388 [gaim-migrate @ 17168]
Daniel Atallah <datallah@pidgin.im>
parents: 14377
diff changeset
68
27970
1dea59c9eced Fix windows build by adding the necessary bits to define the MTN revision
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 27665
diff changeset
69 all: $(PIDGIN_CONFIG_H) $(PIDGIN_REVISION_H)
33937
f15e97d8758e win32: silence build even more
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33918
diff changeset
70 $(MAKE_at) $(MAKE) -C $(PURPLE_TOP) -f $(MINGW_MAKEFILE)
f15e97d8758e win32: silence build even more
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33918
diff changeset
71 $(MAKE_at) $(MAKE) -C $(PIDGIN_TOP) -f $(MINGW_MAKEFILE)
21074
91249b31d423 Add support for a DISABLE_NLS makefile variable in the mingw build to disable processing any of the translations. This shaves some time off test builds. This doesn't actually disable gettext during the build.
Daniel Atallah <datallah@pidgin.im>
parents: 20253
diff changeset
72 ifndef DISABLE_NLS
33937
f15e97d8758e win32: silence build even more
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33918
diff changeset
73 $(MAKE_at) $(MAKE) -C $(PURPLE_PO_TOP) -f $(MINGW_MAKEFILE)
21074
91249b31d423 Add support for a DISABLE_NLS makefile variable in the mingw build to disable processing any of the translations. This shaves some time off test builds. This doesn't actually disable gettext during the build.
Daniel Atallah <datallah@pidgin.im>
parents: 20253
diff changeset
74 endif
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
75
16100
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15805
diff changeset
76 install: all $(PIDGIN_INSTALL_DIR)
33937
f15e97d8758e win32: silence build even more
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33918
diff changeset
77 $(MAKE_at) $(MAKE) -C $(PURPLE_TOP) -f $(MINGW_MAKEFILE) install
f15e97d8758e win32: silence build even more
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33918
diff changeset
78 $(MAKE_at) $(MAKE) -C $(PIDGIN_TOP) -f $(MINGW_MAKEFILE) install
21074
91249b31d423 Add support for a DISABLE_NLS makefile variable in the mingw build to disable processing any of the translations. This shaves some time off test builds. This doesn't actually disable gettext during the build.
Daniel Atallah <datallah@pidgin.im>
parents: 20253
diff changeset
79 ifndef DISABLE_NLS
33937
f15e97d8758e win32: silence build even more
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33918
diff changeset
80 $(MAKE_at) $(MAKE) -C $(PURPLE_PO_TOP) -f $(MINGW_MAKEFILE) install
21074
91249b31d423 Add support for a DISABLE_NLS makefile variable in the mingw build to disable processing any of the translations. This shaves some time off test builds. This doesn't actually disable gettext during the build.
Daniel Atallah <datallah@pidgin.im>
parents: 20253
diff changeset
81 endif
33937
f15e97d8758e win32: silence build even more
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33918
diff changeset
82 $(MAKE_at) $(MAKE) -C share/ca-certs -f $(MINGW_MAKEFILE) install
f15e97d8758e win32: silence build even more
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33918
diff changeset
83 $(MAKE_at) $(MAKE) -C share/sounds -f $(MINGW_MAKEFILE) install
33620
8c11f90243e4 Update the Installer Dependencies to the latest version with the exchndl.dll that doesn't crash with gcc > 4.4
Daniel Atallah <datallah@pidgin.im>
parents: 33418
diff changeset
84 cp $(PIDGIN_INST_DEP_DIR)/exchndl.dll $(PIDGIN_INSTALL_DIR)
33903
d8c4567a9a85 win32: fix permissions after install; check PATH
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33861
diff changeset
85 chmod -R 777 $(PIDGIN_INSTALL_DIR)
3630
caa952062dc2 [gaim-migrate @ 3753]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
86
33417
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
87 gtk_runtime_zip:
33904
623ab8519076 win32: fix gtk runtime generation script
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33903
diff changeset
88 cd pidgin/win32/nsis/ ; ./generate_gtk_zip.sh "$(GPG_SIGN)"
29798
7e57f09e0b2e The rest of the plumbing needed to build the GTK+ Runtime zip included in the installer
Daniel Atallah <datallah@pidgin.im>
parents: 29794
diff changeset
89
33417
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
90 generate_installer_includes: create_release_install_dir gtk_runtime_zip debug_symbols_zip $(PIDGIN_TREE_TOP)/pidgin/win32/nsis/nsis_translations.desktop
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
91 rm -f pidgin/win32/nsis/pidgin-translations.nsh pidgin/win32/nsis/pidgin-spellcheck.nsh pidgin/win32/nsis/pidgin-spellcheck-preselect.nsh
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29634
diff changeset
92 find $(STRIPPED_RELEASE_DIR)/locale -maxdepth 1 -mindepth 1 \
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29634
diff changeset
93 -exec basename {} ';' \
30409
5ec2b6ec47f4 Make sure that the translations in the installer are displayed sorted.
Daniel Atallah <datallah@pidgin.im>
parents: 30285
diff changeset
94 | LC_ALL=C sort | sed -e s/^/\!insertmacro\ LANG_SECTION\ \"/ -e s/$$/\"/ \
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29634
diff changeset
95 > pidgin/win32/nsis/pidgin-translations.nsh
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
96 #Convert the available.lst lines to "!insertmacro SPELLCHECK_SECTION lang lang_name lang_file"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
97 sed -e "/^#/d" -e "s/^[^,]\{1,\},[^,]\{1,\},/\"/" \
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
98 -e "s/,/\"\ \"/" -e "s/,/\"\ \"/" -e "s/[\ \t]*$$/\"/" \
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
99 -e "s/^/\!insertmacro\ SPELLCHECK_SECTION\ /" \
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
100 pidgin/win32/nsis/available.lst \
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
101 > pidgin/win32/nsis/pidgin-spellcheck.nsh
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
102 #Convert the lines to "!insertmacro CHECK_SPELLCHECK_SECTION lang"
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
103 iconv -f latin1 -t utf-8 pidgin/win32/nsis/pidgin-spellcheck.nsh | \
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
104 sed -e "s/SPELLCHECK_SECTION/CHECK_SPELLCHECK_SECTION/" \
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
105 -e "s/ \"[^\"]*\"\ \"[^\"]*\"[\t\ ]*$$//" | \
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
106 iconv -f utf-8 -t latin1 \
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
107 > pidgin/win32/nsis/pidgin-spellcheck-preselect.nsh
30285
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 29881
diff changeset
108 #Generate the Installer translations
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 29881
diff changeset
109 echo "!define GCOMPRIS_NSIS_INCLUDE_PATH \".\"" > $(PIDGIN_TREE_TOP)/pidgin/win32/nsis/langmacros.nsh
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 29881
diff changeset
110 echo "@INSERT_TRANSLATIONS@" >> $(PIDGIN_TREE_TOP)/pidgin/win32/nsis/langmacros.nsh
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 29881
diff changeset
111 $(PERL) $(PIDGIN_TREE_TOP)/pidgin/win32/nsis/create_nsis_translations.pl \
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 29881
diff changeset
112 $(PIDGIN_TREE_TOP)/pidgin/win32/nsis/nsis_translations.desktop \
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 29881
diff changeset
113 $(PIDGIN_TREE_TOP)/pidgin/win32/nsis/langmacros.nsh \
33c8197dc6b6 Final piece of getting the installer translations integrated with the regular
Daniel Atallah <datallah@pidgin.im>
parents: 29881
diff changeset
114 $(PIDGIN_TREE_TOP)/pidgin/win32/nsis/translations
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29634
diff changeset
115
15144
d936faa32f0e [gaim-migrate @ 17868]
Daniel Atallah <datallah@pidgin.im>
parents: 14761
diff changeset
116 create_release_install_dir: install
20253
7e389b201776 applied changes from 60b78c93bfc38b72c6e9fdde59d0e2507bccc4bd
Luke Schierer <lschiere@pidgin.im>
parents: 19668
diff changeset
117 rm -rf $(STRIPPED_RELEASE_DIR)
29807
bda3933c6400 Upgrade GtkSpell to 2.0.16 on Windows. The installer needs a bunch more work, but that is for later
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
118 mkdir $(STRIPPED_RELEASE_DIR)
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
119 tar -cf - $(PIDGIN_INSTALL_DIR) --exclude=Gtk --exclude=spellcheck/share \
29807
bda3933c6400 Upgrade GtkSpell to 2.0.16 on Windows. The installer needs a bunch more work, but that is for later
Daniel Atallah <datallah@pidgin.im>
parents: 29798
diff changeset
120 | tar --strip 2 -xC $(STRIPPED_RELEASE_DIR) -f -
20253
7e389b201776 applied changes from 60b78c93bfc38b72c6e9fdde59d0e2507bccc4bd
Luke Schierer <lschiere@pidgin.im>
parents: 19668
diff changeset
121 find $(STRIPPED_RELEASE_DIR) \( -name '*.dll' -o -name '*.exe' \) \
29639
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29634
diff changeset
122 -not \( -false $(EXTERNAL_DLLS_FIND_EXP) \) \
7266983d565c Add the ability to choose which translations are installed.
Daniel Atallah <datallah@pidgin.im>
parents: 29634
diff changeset
123 -exec $(STRIP) --strip-unneeded {} ';'
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
124 ifdef SIGN_EXECUTABLES
33417
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
125 $(call authenticode_sign, $(STRIPPED_RELEASE_DIR)/pidgin.exe, "Pidgin $(PIDGIN_VERSION)")
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
126 endif
5384
b187b49ff651 [gaim-migrate @ 5760]
Herman Bloggs <herman@bluedigits.com>
parents: 4897
diff changeset
127
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
128 installer: generate_installer_includes
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33408
diff changeset
129 $(eval $@_DEBUG_SYMBOLS_SHA1SUM := $(shell sha1sum $(DEBUG_SYMBOLS_DIR).zip | sed -e "s/\ .*$$//"))
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33408
diff changeset
130 $(eval $@_GTK_SHA1SUM := $(shell sha1sum pidgin/win32/nsis/gtk-runtime-$(GTK_INSTALL_VERSION).zip | sed -e "s/\ .*$$//"))
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33408
diff changeset
131 $(MAKENSIS) -V3 -DPIDGIN_VERSION="$(PIDGIN_VERSION)" -DPIDGIN_PRODUCT_VERSION="$(PIDGIN_PRODUCT_VERSION)" \
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33408
diff changeset
132 -DPIDGIN_INSTALL_DIR="$(STRIPPED_RELEASE_DIR)" -DGTK_INSTALL_VERSION="$(GTK_INSTALL_VERSION)" \
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33408
diff changeset
133 -DDEBUG_SYMBOLS_SHA1SUM="$($@_DEBUG_SYMBOLS_SHA1SUM)" -DGTK_SHA1SUM="$($@_GTK_SHA1SUM)"\
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33408
diff changeset
134 pidgin/win32/nsis/pidgin-installer.nsi
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
135 ifdef SIGN_EXECUTABLES
33417
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
136 $(call authenticode_sign, pidgin/win32/nsis/pidgin-$(PIDGIN_VERSION).exe, "Pidgin Installer")
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
137 endif
21671
5fb405d62f39 This is a patch from Lee Roach to update the mingw "clean" makefile targets to remove some generated files and to fix a couple other issues. Fixes #3981.
Daniel Atallah <datallah@pidgin.im>
parents: 21526
diff changeset
138 mv pidgin/win32/nsis/pidgin-$(PIDGIN_VERSION).exe ./
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
139 ifdef SIGN_EXECUTABLES
33417
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
140 $(call gpg_sign, pidgin-$(PIDGIN_VERSION).exe)
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
141 endif
15144
d936faa32f0e [gaim-migrate @ 17868]
Daniel Atallah <datallah@pidgin.im>
parents: 14761
diff changeset
142
29818
ba5a3e226f5d Finish up win32 gtkspell 2.0.16 / enchant support (mostly in the installer)
Daniel Atallah <datallah@pidgin.im>
parents: 29807
diff changeset
143 installer_offline: generate_installer_includes
33415
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33408
diff changeset
144 $(MAKENSIS) -V3 -DPIDGIN_VERSION="$(PIDGIN_VERSION)" -DPIDGIN_PRODUCT_VERSION="$(PIDGIN_PRODUCT_VERSION)" \
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33408
diff changeset
145 -DPIDGIN_INSTALL_DIR="$(STRIPPED_RELEASE_DIR)" -DGTK_INSTALL_VERSION="$(GTK_INSTALL_VERSION)" \
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33408
diff changeset
146 -DOFFLINE_INSTALLER \
51473787ff4f Bake the sha1sums for the debug symbols and gtk runtime into the installer instead of downloading them.
Daniel Atallah <datallah@pidgin.im>
parents: 33408
diff changeset
147 pidgin/win32/nsis/pidgin-installer.nsi
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
148 ifdef SIGN_EXECUTABLES
33417
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
149 $(call authenticode_sign, pidgin/win32/nsis/pidgin-$(PIDGIN_VERSION)-offline.exe, "Pidgin Installer")
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
150 endif
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 28003
diff changeset
151 mv pidgin/win32/nsis/pidgin-$(PIDGIN_VERSION)-offline.exe ./
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
152 ifdef SIGN_EXECUTABLES
33417
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
153 $(call gpg_sign, pidgin-$(PIDGIN_VERSION)-offline.exe)
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
154 endif
5931
6bd53176fdcf [gaim-migrate @ 6371]
Herman Bloggs <herman@bluedigits.com>
parents: 5387
diff changeset
155
20253
7e389b201776 applied changes from 60b78c93bfc38b72c6e9fdde59d0e2507bccc4bd
Luke Schierer <lschiere@pidgin.im>
parents: 19668
diff changeset
156 installer_zip: create_release_install_dir
7e389b201776 applied changes from 60b78c93bfc38b72c6e9fdde59d0e2507bccc4bd
Luke Schierer <lschiere@pidgin.im>
parents: 19668
diff changeset
157 rm -f pidgin-$(PIDGIN_VERSION)-win32-bin.zip
7e389b201776 applied changes from 60b78c93bfc38b72c6e9fdde59d0e2507bccc4bd
Luke Schierer <lschiere@pidgin.im>
parents: 19668
diff changeset
158 zip -9 -r pidgin-$(PIDGIN_VERSION)-win32-bin.zip $(STRIPPED_RELEASE_DIR)
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
159 ifdef SIGN_EXECUTABLES
33417
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
160 $(call gpg_sign, pidgin-$(PIDGIN_VERSION)-win32-bin.zip)
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
161 endif
20253
7e389b201776 applied changes from 60b78c93bfc38b72c6e9fdde59d0e2507bccc4bd
Luke Schierer <lschiere@pidgin.im>
parents: 19668
diff changeset
162
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 28003
diff changeset
163 debug_symbols_zip: install
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 28003
diff changeset
164 rm -rf $(DEBUG_SYMBOLS_DIR) $(DEBUG_SYMBOLS_DIR).zip
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 28003
diff changeset
165 mkdir $(DEBUG_SYMBOLS_DIR)
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 28003
diff changeset
166 tar -cf - `find $(PIDGIN_INSTALL_DIR) \( -name '*.dll' -o -name '*.exe' \) \
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 28003
diff changeset
167 -not \( -false $(EXTERNAL_DLLS_FIND_EXP) \) -print` \
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 28003
diff changeset
168 | tar --strip 2 --xform s/$$/.dbgsym/ -xC $(DEBUG_SYMBOLS_DIR) -f -
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
169 cp $(MEANWHILE_TOP)/bin/libmeanwhile-1.dll.debug $(DEBUG_SYMBOLS_DIR)/libmeanwhile-1.dll.dbgsym
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 28003
diff changeset
170 zip -9 -r $(DEBUG_SYMBOLS_DIR).zip $(DEBUG_SYMBOLS_DIR)
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
171 ifdef SIGN_EXECUTABLES
33417
156f37832487 Sign all the win32 binaries with GPG (in addition to the authenticode signing for the executables)
Daniel Atallah <datallah@pidgin.im>
parents: 33415
diff changeset
172 $(call gpg_sign, $(DEBUG_SYMBOLS_DIR).zip)
33905
eb212da4069d win32: check NSIS, fix installers
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33904
diff changeset
173 endif
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 28003
diff changeset
174
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 28003
diff changeset
175 installers: installer installer_offline debug_symbols_zip installer_zip
5384
b187b49ff651 [gaim-migrate @ 5760]
Herman Bloggs <herman@bluedigits.com>
parents: 4897
diff changeset
176
14377
c0440e16bacd [gaim-migrate @ 17008]
Daniel Atallah <datallah@pidgin.im>
parents: 14303
diff changeset
177 clean:
33937
f15e97d8758e win32: silence build even more
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33918
diff changeset
178 $(MAKE_at) $(MAKE) -C $(PURPLE_PO_TOP) -f $(MINGW_MAKEFILE) clean
f15e97d8758e win32: silence build even more
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33918
diff changeset
179 $(MAKE_at) $(MAKE) -C $(PIDGIN_TOP) -f $(MINGW_MAKEFILE) clean
f15e97d8758e win32: silence build even more
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33918
diff changeset
180 $(MAKE_at) $(MAKE) -C $(PURPLE_TOP) -f $(MINGW_MAKEFILE) clean
f15e97d8758e win32: silence build even more
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33918
diff changeset
181 $(MAKE_at) $(MAKE) -C share/ca-certs -f $(MINGW_MAKEFILE) clean
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 28003
diff changeset
182 rm -f $(PIDGIN_CONFIG_H) $(PIDGIN_REVISION_H) $(PIDGIN_REVISION_RAW_TXT) ./VERSION pidgin-$(PIDGIN_VERSION)*.exe pidgin-$(PIDGIN_VERSION)-win32-bin.zip $(DEBUG_SYMBOLS_DIR).zip
14761
d90178571681 [gaim-migrate @ 17451]
Daniel Atallah <datallah@pidgin.im>
parents: 14638
diff changeset
183
d90178571681 [gaim-migrate @ 17451]
Daniel Atallah <datallah@pidgin.im>
parents: 14638
diff changeset
184 uninstall:
29634
80dbf6f777c4 Use a private GTK+ Runtime copy on Windows.
Daniel Atallah <datallah@pidgin.im>
parents: 28003
diff changeset
185 rm -rf $(PURPLE_INSTALL_PERL_DIR) $(PIDGIN_INSTALL_PLUGINS_DIR) $(PURPLE_INSTALL_PO_DIR) $(PIDGIN_INSTALL_DIR) $(STRIPPED_RELEASE_DIR) $(DEBUG_SYMBOLS_DIR)
21671
5fb405d62f39 This is a patch from Lee Roach to update the mingw "clean" makefile targets to remove some generated files and to fix a couple other issues. Fixes #3981.
Daniel Atallah <datallah@pidgin.im>
parents: 21526
diff changeset
186 rm -f ./VERSION
5931
6bd53176fdcf [gaim-migrate @ 6371]
Herman Bloggs <herman@bluedigits.com>
parents: 5387
diff changeset
187
16100
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15805
diff changeset
188 include $(PIDGIN_COMMON_TARGETS)
28003
e9773dca1e18 Apparently the .PHONY bits are important for the revision reported in win32
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 27970
diff changeset
189

mercurial