annotate src/Makefile.mingw @ 3752:b32474e522fa

[gaim-migrate @ 3890] From: "William T. Mahan" <wtm2@duke.edu> This patch, against CVS HEAD, fixes three bugs in Oscar File Transfer support. I can split it up further if desired. * Send a null checksum when initiating a file transfer, which fixes "files don't match" warnings produced by some versions of WinAIM; add a compile-time option to actually compute the checksum, which is slow but necessary when sending to some Mac clients. * Don't allow sending files to oneself, because it causes all kinds of subtle problems and it's not useful. * Don't crash when there is an error writing to the output file when receiving. From: "William T. Mahan" <wtm2@duke.edu> This patch 2 of 3, which applies on top of the first, adds support for reverse connections for Oscar File Transfer, the lack of which has been the biggest complaint so far. Reverse connections are used by newer AIM clients when there is difficulty verifying the IP of the sender. From: "William T. Mahan" <wtm2@duke.edu> This patch 3 of 3, which applies on top of the first 2, removes the alarm() and sigaction() calls that were added by my original FT patch to detect transfer timeouts. Besides apparently not working on Windows, they involved a lot of ugly code to handle a special case. My new approach is to add destructors that can called when SNACs are freed; a timeout is detected when a request SNAC is cleaned up before the transfer is accepted. Although this touches several files, it is more generic than the old method. I tried to implement this in an unintrusive manner, so that there is little preformance penalty for SNACs that do not use destructors. My first two patches should work fine without this. If there are any objections to the third patch, I ask that the first two patches be applied, in which case I will set up a SourceForge page for this one. committer: Tailor Script <tailor@pidgin.im>
author Luke Schierer <lschiere@pidgin.im>
date Sat, 19 Oct 2002 05:22:30 +0000
parents 764d6f1848b2
children 3cd422d1d958
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3638
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
1 #
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
2 # Makefile.mingw
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
3 #
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
4 # Description: Makefile for win32 (mingw) version of Gaim
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
5 #
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
6
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
7 #
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
8 # PATHS
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
9 #
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
10
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
11 INCLUDE_DIR := .
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
12 GTK_TOP := ../../win32-dev/gtk_2_0
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
13 GAIM_TOP := ..
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
14 GAIM_SRC := .
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
15 PERL_LIB_DIR := ../../win32-dev/perl56
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
16 PERL_INCLUDE := $(PERL_LIB_DIR)/CORE
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
17 GAIM_INSTALL_DIR := $(GAIM_TOP)/win32-install-dir
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
18
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
19 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
20 ## VARIABLE DEFINITIONS
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
21 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
22
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
23 TARGET = gaim
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
24
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
25 # Compiler and Linker Options
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
26
3715
764d6f1848b2 [gaim-migrate @ 3848]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3638
diff changeset
27 CFLAGS =
3638
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
28
3715
764d6f1848b2 [gaim-migrate @ 3848]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3638
diff changeset
29 DEFINES =
3638
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
30
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
31 LDFLAGS = -mwindows
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
32
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
33 #-mconsole
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
34 #-mwindows
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
35
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
36 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
37 ## INCLUDE MAKEFILES
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
38 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
39
3715
764d6f1848b2 [gaim-migrate @ 3848]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3638
diff changeset
40 include $(GAIM_TOP)/src/win32/global.mak
3638
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
41
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
42 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
43 ## INCLUDE PATHS
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
44 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
45
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
46 INCLUDE_PATHS = -I$(INCLUDE_DIR) \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
47 -I$(INCLUDE_DIR)/win32 \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
48 -I$(GAIM_TOP) \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
49 -I$(GTK_TOP)/include \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
50 -I$(GTK_TOP)/include/gtk-2.0 \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
51 -I$(GTK_TOP)/include/glib-2.0 \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
52 -I$(GTK_TOP)/include/pango-1.0 \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
53 -I$(GTK_TOP)/include/atk-1.0 \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
54 -I$(GTK_TOP)/lib/glib-2.0/include \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
55 -I$(GTK_TOP)/lib/gtk-2.0/include \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
56 -I$(PERL_INCLUDE)
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
57
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
58
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
59 LIB_PATHS = -L$(GTK_TOP)/lib \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
60 -L$(GAIM_SRC) \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
61 -L$(PERL_LIB_DIR)
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
62
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
63
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
64 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
65 ## SOURCES, OBJECTS
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
66 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
67
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
68 SOUND_H_FILES = $(GAIM_TOP)/sounds/BuddyArrive.h \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
69 $(GAIM_TOP)/sounds/BuddyLeave.h \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
70 $(GAIM_TOP)/sounds/Receive.h \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
71 $(GAIM_TOP)/sounds/RedAlert.h \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
72 $(GAIM_TOP)/sounds/Send.h
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
73
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
74 HEADER_DEPS = $(SOUND_H_FILES)
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
75
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
76 DLL_C_SRC = aim.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
77 about.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
78 away.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
79 browser.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
80 buddy.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
81 buddy_chat.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
82 conversation.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
83 core.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
84 dialogs.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
85 ft.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
86 gaimrc.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
87 gtkimhtml.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
88 gtkspell.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
89 html.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
90 idle.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
91 list.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
92 md5.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
93 module.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
94 multi.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
95 perl.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
96 prefs.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
97 proxy.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
98 prpl.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
99 server.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
100 sound.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
101 util.c \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
102 win32/win32dep.c \
3715
764d6f1848b2 [gaim-migrate @ 3848]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3638
diff changeset
103 win32/MinimizeToTray.c \
764d6f1848b2 [gaim-migrate @ 3848]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3638
diff changeset
104 win32/libc_interface.c
3638
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
105
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
106 RC_SRC = win32/gaimrc.rc
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
107
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
108 EXE_C_SRC = win_aim.c
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
109
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
110 DLL_OBJECTS = $(DLL_C_SRC:%.c=%.o)
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
111
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
112 EXE_OBJECTS = $(EXE_C_SRC:%.c=%.o) $(RC_SRC:%.rc=%.o)
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
113
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
114 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
115 ## LIBRARIES
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
116 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
117
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
118 DLL_LIBS = -lgtk-win32-2.0 \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
119 -lpango-1.0 \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
120 -lglib-2.0 \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
121 -lgdk-win32-2.0 \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
122 -lgobject-2.0 \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
123 -lintl \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
124 -lgmodule-2.0 \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
125 -lgdk_pixbuf-2.0 \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
126 -lws2_32 \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
127 -liberty \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
128 -lwinmm \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
129 -lperl56
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
130
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
131
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
132 EXE_LIBS = -lgaim -lglib-2.0
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
133
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
134 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
135 ## RULES
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
136 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
137
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
138 # Make Sound headers
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
139 $(GAIM_TOP)/sounds/%.h:
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
140 $(MAKE) -C $(GAIM_TOP)/sounds -f Makefile.mingw $(@F)
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
141
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
142 # How to make a C file
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
143 %.o: %.c
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
144 $(CC) $(CFLAGS) $(INCLUDE_PATHS) $(DEFINES) -c $< -o $@
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
145
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
146 # How to make an RC file
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
147 %.o: %.rc
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
148 windres -i $< -o $@
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
149
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
150 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
151 ## TARGET DEFINITIONS
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
152 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
153
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
154 .PHONY: all clean
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
155
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
156 all: $(TARGET).exe $(TARGET).dll
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
157
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
158 install:
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
159 cp $(GAIM_SRC)/gaim.exe $(GAIM_SRC)/gaim.dll $(GAIM_INSTALL_DIR)
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
160
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
161
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
162 #
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
163 # BUILD DLL
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
164 #
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
165
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
166 $(TARGET).def: $(HEADER_DEPS) $(DLL_OBJECTS)
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
167 dlltool -D $(TARGET).dll -z $(TARGET).def --export-all-symbols \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
168 --exclude-symbols WinMain@16 $^
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
169
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
170 $(TARGET).base: $(HEADER_DEPS) $(DLL_OBJECTS)
3715
764d6f1848b2 [gaim-migrate @ 3848]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3638
diff changeset
171 $(CC) -mdll $(LDFLAGS) -o junk.tmp -Wl,--base-file,$@ $(DLL_OBJECTS) $(LIB_PATHS) $(DLL_LIBS)
3638
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
172 rm -rf junk.tmp
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
173
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
174 $(TARGET).exp: $(TARGET).base $(TARGET).def
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
175 dlltool --dllname $(TARGET).dll --base-file $(TARGET).base \
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
176 --output-exp $(TARGET).exp --def $(TARGET).def
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
177
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
178 $(TARGET).dll: $(HEADER_DEPS) $(DLL_OBJECTS) $(TARGET).exp
3715
764d6f1848b2 [gaim-migrate @ 3848]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3638
diff changeset
179 $(CC) -mdll $(LDFLAGS) -o $(TARGET).dll $(DLL_OBJECTS) -Wl,$(TARGET).exp $(LIB_PATHS) $(DLL_LIBS)
3638
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
180 rm -rf $(TARGET).exp $(TARGET).def $(TARGET).base
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
181
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
182 $(TARGET).lib: $(TARGET).def
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
183 dlltool -D $(TARGET).dll -d $(TARGET).def -l $(TARGET).lib
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
184
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
185 #
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
186 # BUILD EXE
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
187 #
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
188
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
189 $(TARGET).exe: $(TARGET).lib $(EXE_OBJECTS)
3715
764d6f1848b2 [gaim-migrate @ 3848]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 3638
diff changeset
190 $(CC) $(LDFLAGS) $(EXE_OBJECTS) $(LIB_PATHS) $(EXE_LIBS) -o $(TARGET).exe
3638
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
191
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
192 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
193 ## CLEAN RULES
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
194 ##
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
195
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
196 clean:
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
197 $(MAKE) -C $(GAIM_TOP)/sounds -f Makefile.mingw clean
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
198 rm -rf *.o ./win32/*.o
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
199 rm -rf $(TARGET).dll
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
200 rm -rf $(TARGET).lib
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
201 rm -rf $(TARGET).exe
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
202
d26752101ae4 [gaim-migrate @ 3761]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
203