source: win32.mk @ a4dc9f7

Last change on this file since a4dc9f7 was 2983f5e, checked in by Jelmer Vernooij <jelmer@…>, at 2005-11-28T23:32:50Z

Switch to using a Makefile rather then VC project files.

  • Property mode set to 100644
File size: 3.9 KB
Line 
1!INCLUDE Makefile.settings
2
3GLIB_CFLAGS = /I "$(GLIB_DIR)\include" \
4              /I "$(GLIB_DIR)\include\glib-2.0" \
5              /I "$(GLIB_DIR)\lib\glib-2.0\include"
6
7GLIB_LFLAGS = /libpath:"$(GLIB_DIR)\lib" 
8
9NSS_CFLAGS = /I "$(NSS_DIR)\include" /I "$(NSPR_DIR)\include"
10NSS_LFLAGS = /libpath:"$(NSS_DIR)\lib" /libpath:"$(NSPR_DIR)\lib" 
11NSS_LIBS = nss3.lib ssl3.lib libnspr4.lib
12
13COMMON_LIBS = kernel32.lib user32.lib advapi32.lib shell32.lib iconv.lib \
14                        glib-2.0.lib gmodule-2.0.lib wsock32.lib advapi32.lib
15
16
17MAIN_OBJS = account.obj bitlbee.obj commands.obj crypting.obj \
18        help.obj irc.obj protocols\md5.obj protocols\nogaim.obj \
19        protocols\sha.obj protocols\proxy.obj query.obj nick.obj set.obj \
20        user.obj protocols\util.obj win32.obj
21
22MAIN_LIBS = $(COMMON_LIBS)
23
24SSL_OBJS = protocols\ssl_nss.obj
25SSL_LIBS = $(NSS_LFLAGS) $(NSS_LIBS)
26
27MSN_OBJS = \
28        protocols\msn\msn.obj \
29        protocols\msn\msn_util.obj \
30        protocols\msn\ns.obj \
31        protocols\msn\passport.obj \
32        protocols\msn\sb.obj \
33        protocols\msn\tables.obj \
34        $(SSL_OBJS)
35
36MSN_LIBS = $(COMMON_LIBS) $(SSL_LIBS)
37
38OSCAR_OBJS = \
39        protocols\oscar\admin.obj \
40        protocols\oscar\auth.obj \
41        protocols\oscar\bos.obj \
42        protocols\oscar\buddylist.obj \
43        protocols\oscar\chat.obj \
44        protocols\oscar\chatnav.obj \
45        protocols\oscar\conn.obj \
46        protocols\oscar\icq.obj \
47        protocols\oscar\im.obj \
48        protocols\oscar\info.obj \
49        protocols\oscar\misc.obj \
50        protocols\oscar\msgcookie.obj \
51        protocols\oscar\oscar.obj \
52        protocols\oscar\oscar_util.obj \
53        protocols\oscar\rxhandlers.obj \
54        protocols\oscar\rxqueue.obj \
55        protocols\oscar\search.obj \
56        protocols\oscar\service.obj \
57        protocols\oscar\snac.obj \
58        protocols\oscar\ssi.obj \
59        protocols\oscar\stats.obj \
60        protocols\oscar\tlv.obj \
61        protocols\oscar\txqueue.obj
62
63OSCAR_LIBS = $(COMMON_LIBS)
64
65JABBER_OBJS = \
66        protocols\jabber\expat.obj \
67        protocols\jabber\genhash.obj \
68        protocols\jabber\hashtable.obj \
69        protocols\jabber\jabber.obj \
70        protocols\jabber\jconn.obj \
71        protocols\jabber\jid.obj \
72        protocols\jabber\jpacket.obj \
73        protocols\jabber\jutil.obj \
74        protocols\jabber\karma.obj \
75        protocols\jabber\log.obj \
76        protocols\jabber\pool.obj \
77        protocols\jabber\pproxy.obj \
78        protocols\jabber\rate.obj \
79        protocols\jabber\str.obj \
80        protocols\jabber\xhash.obj \
81        protocols\jabber\xmlnode.obj \
82        protocols\jabber\xmlparse.obj \
83        protocols\jabber\xmlrole.obj \
84        protocols\jabber\xmltok.obj \
85        protocols\jabber\xstream.obj \
86        $(SSL_OBJS)
87
88JABBER_LIBS = $(COMMON_LIBS) $(SSL_LIBS)
89
90YAHOO_OBJS = \
91        protocols\yahoo\crypt.obj \
92        protocols\yahoo\libyahoo2.obj \
93        protocols\yahoo\vc50.idb \
94        protocols\yahoo\yahoo.obj \
95        protocols\yahoo\yahoo_fn.obj \
96        protocols\yahoo\yahoo_httplib.obj \
97        protocols\yahoo\yahoo_list.obj \
98        protocols\yahoo\yahoo_util.obj
99
100YAHOO_LIBS = $(COMMON_LIBS)
101
102CC=cl.exe
103CFLAGS=$(GLIB_CFLAGS) $(NSS_CFLAGS) /D NDEBUG /D WIN32 /D _WINDOWS \
104       /I . /I protocols /I protocols\oscar /nologo \
105       /D GLIB2 /D ARCH="\"Windows\"" /D CPU="\"x86\"" \
106       /D PLUGINDIR="plugins"
107
108.c.obj:
109        $(CC) $(CFLAGS) /c /Fo$@ $<
110
111ALL: bitlbee.exe libmsn.dll liboscar.dll libjabber.dll libyahoo.dll
112       
113LINK32=link.exe
114LINK32_FLAGS=/nologo $(GLIB_LFLAGS)
115
116bitlbee.exe: $(DEF_FILE) $(MAIN_OBJS)
117    $(LINK32) $(MAIN_LIBS) $(LINK32_FLAGS) /out:bitlbee.exe $(MAIN_OBJS)
118
119libmsn.dll: $(MSN_OBJS) 
120        $(LINK32) /DLL /SUBSYSTEM:WINDOWS /ENTRY:msn_init $(MSN_LIBS) $(LINK32_FLAGS) /out:libmsn.dll $(MSN_OBJS)
121
122libyahoo.dll: $(YAHOO_OBJS)
123        $(LINK32) /DLL /SUBSYSTEM:WINDOWS /ENTRY:yahoo_init $(YAHOO_LIBS) $(LINK32_FLAGS) /out:libyahoo.dll $(YAHOO_OBJS)
124
125liboscar.dll: $(OSCAR_OBJS)
126        $(LINK32) /DLL /SUBSYSTEM:WINDOWS /ENTRY:oscar_init $(OSCAR_LIBS) $(LINK32_FLAGS) /out:liboscar.dll $(OSCAR_OBJS)
127
128libjabber.dll: $(JABBER_OBJS)
129        $(LINK32) /DLL /SUBSYSTEM:WINDOWS /ENTRY:jabber_init $(JABBER_LIBS) $(LINK32_FLAGS) /out:libjabber.dll $(JABBER_OBJS)
130
131clean:
132        @-erase $(MAIN_OBJS)
133        @-erase $(MSN_OBJS)
134        @-erase $(JABBER_OBJS)
135        @-erase $(OSCAR_OBJS)
136        @-erase $(YAHOO_OBJS)
Note: See TracBrowser for help on using the repository browser.