pidgin/plugins/perl/common/Makefile.mingw

changeset 38317
87484be86fb8
parent 38316
7d7cab247dcd
child 38318
43b5ee1c917b
equal deleted inserted replaced
38316:7d7cab247dcd 38317:87484be86fb8
1 #
2 # Makefile.mingw
3 #
4 # Description: Makefile for Pidgin perl module.
5 #
6
7 PIDGIN_TREE_TOP := ../../../..
8 include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak
9
10 #we cannot include win32dep.h, but we need struct sockaddr_in6 definition
11 CFLAGS += -include ws2tcpip.h
12
13 GCCWARNINGS += -Wno-comment -Wno-unused -Wno-nested-externs
14
15 DEFINES := $(subst -DWIN32_LEAN_AND_MEAN,,$(DEFINES))
16
17 TARGET = Pidgin
18
19 ##
20 ## INCLUDE PATHS
21 ##
22 INCLUDE_PATHS = -I. \
23 -I$(PIDGIN_TREE_TOP) \
24 -I$(PURPLE_TOP) \
25 -I$(PURPLE_TOP)/win32 \
26 -I$(PIDGIN_TOP) \
27 -I$(PIDGIN_TOP)/win32 \
28 -I$(GTK_TOP)/include \
29 -I$(GTK_TOP)/include/atk-1.0 \
30 -I$(GTK_TOP)/include/cairo \
31 -I$(GTK_TOP)/include/glib-2.0 \
32 -I$(GTK_TOP)/include/gtk-2.0 \
33 -I$(GTK_TOP)/include/pango-1.0 \
34 -I$(GTK_TOP)/include/gdk-pixbuf-2.0 \
35 -I$(GTK_TOP)/lib/glib-2.0/include \
36 -I$(GTK_TOP)/lib/gtk-2.0/include \
37 -I$(LIBSOUP_TOP)/include/libsoup-2.4 \
38 -I$(WEBKITGTK_TOP)/include/webkitgtk-1.0 \
39 -I$(PERL_LIB_TOP)/include
40
41 LIB_PATHS += \
42 -L$(PERL_LIB_TOP)/lib \
43 -L$(PURPLE_TOP) \
44 -L$(PIDGIN_TOP) \
45 -L$(PURPLE_PERL_TOP) \
46 -L$(GTK_TOP)/lib
47
48 ##
49 ## SOURCES, OBJECTS
50 ##
51 XS_FILES = \
52 Pidgin.xs \
53 GtkAccount.xs \
54 GtkBlist.xs \
55 GtkConn.xs \
56 GtkConv.xs \
57 GtkConvWin.xs \
58 GtkDebug.xs \
59 GtkDialogs.xs \
60 GtkFt.xs \
61 GtkLog.xs \
62 GtkMenuTray.xs \
63 GtkPlugin.xs \
64 GtkPluginPref.xs \
65 GtkPounce.xs \
66 GtkPrefs.xs \
67 GtkPrivacy.xs \
68 GtkRoomlist.xs \
69 GtkSavedStatuses.xs \
70 GtkSound.xs \
71 GtkStatusBox.xs \
72 GtkUtils.xs
73
74
75 C_FILES = $(XS_FILES:%.xs=%.c)
76 OBJECTS = $(C_FILES:%.c=%.o)
77
78 ##
79 ## LIBRARIES
80 ##
81 LIBS = -lperl520 \
82 -lperl \
83 -lpurple \
84 -lpidgin \
85 -lglib-2.0
86
87 include $(PIDGIN_COMMON_RULES)
88
89 ##
90 ## TARGETS
91 ##
92 .PHONY: all install clean
93
94 all: $(TARGET).dll
95
96 $(PURPLE_INSTALL_PERL_DIR)/Purple.pm:
97 $(MAKE) -C $(PURPLE_PERL_TOP)/common -f $(MINGW_MAKEFILE) install
98
99 install: all $(PURPLE_INSTALL_PERL_DIR)/Purple.pm
100 rm -f $(PIDGIN_INSTALL_PERL_DIR)/$(TARGET).dll $(PIDGIN_INSTALL_PERL_DIR)/auto/Pidgin/$(TARGET).pm
101 mkdir -p $(PIDGIN_INSTALL_PERL_DIR)
102 cp $(TARGET).pm $(PIDGIN_INSTALL_PERL_DIR)
103 mkdir -p $(PIDGIN_INSTALL_PERL_DIR)/auto/Pidgin
104 cp $(TARGET).dll $(PIDGIN_INSTALL_PERL_DIR)/auto/Pidgin
105
106 $(C_FILES): $(PIDGIN_CONFIG_H)
107
108 $(TARGET).dll: $(PIDGIN_DLL).a $(PURPLE_PERL_DLL).a $(OBJECTS)
109 $(CC) -shared $(OBJECTS) $(LIB_PATHS) $(DLL_LD_FLAGS) $(LIBS) -o $(TARGET).dll
110
111 ##
112 ## CLEAN
113 ##
114 clean:
115 rm -f *.o $(C_FILES) $(TARGET).dll
116
117 include $(PIDGIN_COMMON_TARGETS)

mercurial