libpurple/plugins/perl/common/Makefile.mingw

Thu, 30 Oct 2008 22:40:49 +0000

author
Richard Laager <rlaager@pidgin.im>
date
Thu, 30 Oct 2008 22:40:49 +0000
changeset 24569
5dbd0617a27d
parent 23985
a8c308734700
child 27665
00196a586c45
permissions
-rw-r--r--

Build everything with the *_DISABLE_DEPRECATED flags set. This allows us
to detect when we're still using deprecated functions internally (and by
extension, when we've deprecated something we shouldn't have). In the
course of developing this changeset, I fixed a few such cases.

Given that the plan is to switch from PURPLE_HIDE_STRUCTS to
PURPLE_DISABLE_DEPRECATED as each struct is fully dealt with, this will
also ensure we have no regressions on the struct hiding work.

Deprecated functions are still available to the respective .c file, to
avoid missing prototype errors. Also, Perl and DBus undef the
*_DISABLE_DEPRECATED defines as appropriate so that deprecated functions
will still be exported to Perl plugins and via DBus. (Otherwise, we'd
be breaking backwards compatibility.)

6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
1 #
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
2 # Makefile.mingw
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
3 #
15894
765ec644ac47 Perl fixes for s/gaim/purple/. This hasn't really been tested yet.
Daniel Atallah <datallah@pidgin.im>
parents: 15677
diff changeset
4 # Description: Makefile for Purple perl module.
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
5 #
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
6
16100
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15894
diff changeset
7 PIDGIN_TREE_TOP := ../../../..
23915
b62601fd6e7d Update the Perl plugin loader to work with Perl 5.10.
Daniel Atallah <datallah@pidgin.im>
parents: 23023
diff changeset
8 GCCWARNINGS := -Wno-comment -Waggregate-return -Wcast-align -Wdeclaration-after-statement -Werror-implicit-function-declaration -Wextra -Wno-sign-compare -Wno-unused-parameter -Winit-self -Wmissing-declarations -Wmissing-prototypes -Wpointer-arith -Wundef -Wno-unused
16100
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15894
diff changeset
9 include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak
14377
c0440e16bacd [gaim-migrate @ 17008]
Daniel Atallah <datallah@pidgin.im>
parents: 14254
diff changeset
10
15894
765ec644ac47 Perl fixes for s/gaim/purple/. This hasn't really been tested yet.
Daniel Atallah <datallah@pidgin.im>
parents: 15677
diff changeset
11 TARGET = Purple
765ec644ac47 Perl fixes for s/gaim/purple/. This hasn't really been tested yet.
Daniel Atallah <datallah@pidgin.im>
parents: 15677
diff changeset
12 AUTOSPLIT = lib/auto/Purple/autosplit.ix
15533
1787d1216249 Some more changes to the win32 build to support cross-compiling.
Daniel Atallah <datallah@pidgin.im>
parents: 15438
diff changeset
13 EXTUTILS ?= C:/perl/lib/ExtUtils
14377
c0440e16bacd [gaim-migrate @ 17008]
Daniel Atallah <datallah@pidgin.im>
parents: 14254
diff changeset
14 PERL_PLUGIN_TOP := ..
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
15
7383
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
16 ##
14377
c0440e16bacd [gaim-migrate @ 17008]
Daniel Atallah <datallah@pidgin.im>
parents: 14254
diff changeset
17 ## INCLUDE PATHS
7383
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
18 ##
16393
d89faf3f5282 Allow include and lib paths to be overridden from local.ent
Daniel Atallah <datallah@pidgin.im>
parents: 16139
diff changeset
19 INCLUDE_PATHS += -I. \
16100
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15894
diff changeset
20 -I$(PIDGIN_TREE_TOP) \
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15894
diff changeset
21 -I$(PURPLE_TOP) \
18633
34ba43198355 Fix the win32 build. Thanks to Etan and Lee Roach. Fixes #1929.
Daniel Atallah <datallah@pidgin.im>
parents: 16773
diff changeset
22 -I$(PURPLE_TOP)/win32 \
11139
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
23 -I$(GTK_TOP)/include \
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
24 -I$(GTK_TOP)/include/glib-2.0 \
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
25 -I$(GTK_TOP)/lib/glib-2.0/include \
14377
c0440e16bacd [gaim-migrate @ 17008]
Daniel Atallah <datallah@pidgin.im>
parents: 14254
diff changeset
26 -I$(PERL_LIB_TOP)/CORE
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
27
16393
d89faf3f5282 Allow include and lib paths to be overridden from local.ent
Daniel Atallah <datallah@pidgin.im>
parents: 16139
diff changeset
28 LIB_PATHS += -L$(PERL_LIB_TOP) \
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
29 -L$(PERL_PLUGIN_TOP) \
16100
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15894
diff changeset
30 -L$(PURPLE_TOP) \
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
31 -L$(GTK_TOP)/lib
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
32
7383
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
33 ##
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
34 ## SOURCES, OBJECTS
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
35 ##
11139
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
36 XS_FILES = Account.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
37 AccountOpts.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
38 BuddyIcon.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
39 BuddyList.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
40 Cipher.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
41 Cmds.xs \
23985
a8c308734700 Another Perl patch from Zsombor Welker to add more functions.
Daniel Atallah <datallah@pidgin.im>
parents: 23915
diff changeset
42 Certificate.xs \
11139
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
43 Connection.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
44 Conversation.xs \
15067
3672f677a237 [gaim-migrate @ 17785]
Richard Laager <rlaager@pidgin.im>
parents: 14761
diff changeset
45 Core.xs \
13191
6c98c6130701 [gaim-migrate @ 15553]
Etan Reisner <deryni@pidgin.im>
parents: 11139
diff changeset
46 Debug.xs \
11139
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
47 FT.xs \
23985
a8c308734700 Another Perl patch from Zsombor Welker to add more functions.
Daniel Atallah <datallah@pidgin.im>
parents: 23915
diff changeset
48 Idle.xs \
16139
3fe11fe6c4f8 This should be called Purple.xs instead of Pidgin.xs
Daniel Atallah <datallah@pidgin.im>
parents: 16100
diff changeset
49 Purple.xs \
11139
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
50 ImgStore.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
51 Log.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
52 Network.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
53 Notify.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
54 Plugin.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
55 PluginPref.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
56 Pounce.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
57 Prefs.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
58 Privacy.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
59 Proxy.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
60 Prpl.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
61 Request.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
62 Roomlist.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
63 SSLConn.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
64 SavedStatuses.xs \
23023
6aeeb2037709 Expose smiley API to perl plugins.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18633
diff changeset
65 Server.xs \
13191
6c98c6130701 [gaim-migrate @ 15553]
Etan Reisner <deryni@pidgin.im>
parents: 11139
diff changeset
66 Signal.xs \
23023
6aeeb2037709 Expose smiley API to perl plugins.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18633
diff changeset
67 Smiley.xs \
11139
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
68 Sound.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
69 Status.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
70 Stringref.xs \
5daed718240a [gaim-migrate @ 13203]
nekokun
parents: 11130
diff changeset
71 Util.xs \
23985
a8c308734700 Another Perl patch from Zsombor Welker to add more functions.
Daniel Atallah <datallah@pidgin.im>
parents: 23915
diff changeset
72 Whiteboard.xs \
16529
1d0da9270ff9 This is mostly moving Purple::GtkUI:: -> Pidgin:: which has the side effect of
Etan Reisner <deryni@pidgin.im>
parents: 16393
diff changeset
73 XMLNode.xs
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
74
16773
e1171eb45f07 Remove the const-c and const-xs stuff and replace it with real constants
Etan Reisner <deryni@pidgin.im>
parents: 16529
diff changeset
75 #FALLBACKS = const-c.inc const-xs.inc
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
76 C_FILES = $(XS_FILES:%.xs=%.c)
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
77 OBJECTS = $(C_FILES:%.c=%.o)
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
78
7383
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
79 ##
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
80 ## LIBRARIES
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
81 ##
23915
b62601fd6e7d Update the Perl plugin loader to work with Perl 5.10.
Daniel Atallah <datallah@pidgin.im>
parents: 23023
diff changeset
82 LIBS = -lperl510 \
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
83 -lperl \
15438
c3e93cd038c5 Update win32 build for libpurple and pidgin renames. This compiles, but is far from complete.
Daniel Atallah <datallah@pidgin.im>
parents: 15435
diff changeset
84 -lpurple \
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
85 -lglib-2.0
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
86
16100
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15894
diff changeset
87 include $(PIDGIN_COMMON_RULES)
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
88
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
89 %.inc:
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
90 cp fallback/$@ ./
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
91
7383
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
92 ##
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
93 ## TARGETS
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
94 ##
14638
b0fa76dac93f [gaim-migrate @ 17300]
Daniel Atallah <datallah@pidgin.im>
parents: 14509
diff changeset
95 .PHONY: all install clean
7383
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
96
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
97 all: $(TARGET).dll $(AUTOSPLIT)
15894
765ec644ac47 Perl fixes for s/gaim/purple/. This hasn't really been tested yet.
Daniel Atallah <datallah@pidgin.im>
parents: 15677
diff changeset
98
14377
c0440e16bacd [gaim-migrate @ 17008]
Daniel Atallah <datallah@pidgin.im>
parents: 14254
diff changeset
99 install: all
16100
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15894
diff changeset
100 rm -rf $(PURPLE_INSTALL_PERLMOD_DIR)
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15894
diff changeset
101 cp -R lib $(PURPLE_INSTALL_PERLMOD_DIR)
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15894
diff changeset
102 cp $(TARGET).dll $(PURPLE_INSTALL_PERLMOD_DIR)
14377
c0440e16bacd [gaim-migrate @ 17008]
Daniel Atallah <datallah@pidgin.im>
parents: 14254
diff changeset
103
16100
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15894
diff changeset
104 $(C_FILES): $(PURPLE_CONFIG_H)
14377
c0440e16bacd [gaim-migrate @ 17008]
Daniel Atallah <datallah@pidgin.im>
parents: 14254
diff changeset
105
14509
e46c4ed7e331 [gaim-migrate @ 17161]
Daniel Atallah <datallah@pidgin.im>
parents: 14435
diff changeset
106 $(AUTOSPLIT):
7383
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
107 mkdir -p ./lib/auto
15894
765ec644ac47 Perl fixes for s/gaim/purple/. This hasn't really been tested yet.
Daniel Atallah <datallah@pidgin.im>
parents: 15677
diff changeset
108 cp Purple.pm ./lib
765ec644ac47 Perl fixes for s/gaim/purple/. This hasn't really been tested yet.
Daniel Atallah <datallah@pidgin.im>
parents: 15677
diff changeset
109 $(PERL) -MAutoSplit -e 'autosplit("lib/Purple.pm")'
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
110
16100
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15894
diff changeset
111 $(TARGET).dll: $(PURPLE_DLL).a $(PURPLE_PERL_DLL).a $(FALLBACKS) $(OBJECTS)
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
112 $(CC) -shared $(OBJECTS) $(LIB_PATHS) $(LIBS) -o $(TARGET).dll
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
113
7383
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
114 ##
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
115 ## CLEAN
d6b354fc9ea2 [gaim-migrate @ 7978]
Herman Bloggs <herman@bluedigits.com>
parents: 6816
diff changeset
116 ##
6816
b14a3043ed09 [gaim-migrate @ 7356]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
117 clean:
14761
d90178571681 [gaim-migrate @ 17451]
Daniel Atallah <datallah@pidgin.im>
parents: 14638
diff changeset
118 rm -rf $(TARGET).dll $(FALLBACKS) lib
d90178571681 [gaim-migrate @ 17451]
Daniel Atallah <datallah@pidgin.im>
parents: 14638
diff changeset
119 rm -f *.o $(C_FILES)
14377
c0440e16bacd [gaim-migrate @ 17008]
Daniel Atallah <datallah@pidgin.im>
parents: 14254
diff changeset
120
16100
a0ab70986c10 This should get all the Win32 Makefiles in line with
Kevin Stange <kstange@pidgin.im>
parents: 15894
diff changeset
121 include $(PIDGIN_COMMON_TARGETS)

mercurial