1#Customisable stuff here
2LINUX32_COMPILER = i686-pc-linux-gnu-gcc
3LINUX64_COMPILER = x86_64-pc-linux-gnu-gcc
4#WIN32_COMPILER = /usr/bin/i586-mingw32-gcc
5WIN32_COMPILER = /home/Eion/win32-dev/mingw-4.7.2/bin/gcc.exe
6WIN32_WINDRES = i586-mingw32-windres
7#WIN32_OBJCOPY = i586-mingw32-objcopy
8WIN32_OBJCOPY = objcopy.exe
9#LINUX_ARM_COMPILER = arm-pc-linux-gnu-gcc
10LINUX_ARM_COMPILER = arm-none-linux-gnueabi-gcc
11LINUX_PPC_COMPILER = powerpc-unknown-linux-gnu-gcc
12FREEBSD60_COMPILER = i686-pc-freebsd6.0-gcc
13MACPORT_COMPILER = i686-apple-darwin10-gcc-4.0.1
14MAKENSIS ?= "$(PROGRAMFILES)/NSIS/makensis.exe"
15
16LIBPURPLE_CFLAGS = -I/usr/include/libpurple -I/usr/local/include/libpurple -DPURPLE_PLUGINS -DENABLE_NLS -DHAVE_ZLIB
17GLIB_CFLAGS = -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include -I/usr/include/json-glib-1.0 -ljson-glib-1.0
18WIN32_DEV_DIR = C:/cygwin/home/Eion/win32-dev
19WIN32_PIDGIN_DIR = C:/cygwin/home/Eion/pidgin-2.10.11
20WIN32_CFLAGS = -I${WIN32_DEV_DIR}/gtk_2_0-2.14/include/glib-2.0 -I${WIN32_PIDGIN_DIR}/libpurple/win32 -I${WIN32_DEV_DIR}/gtk_2_0-2.14/include -I${WIN32_DEV_DIR}/gtk_2_0-2.14/include/glib-2.0 -I${WIN32_DEV_DIR}/gtk_2_0-2.14/lib/glib-2.0/include -I${WIN32_DEV_DIR}/json-glib-0.8.0 -Wno-format -I${WIN32_PIDGIN_DIR}/libpurple -I${WIN32_DEV_DIR}/nss-3.12.5-nspr-4.8.2/include
21WIN32_LIBS = -L${WIN32_DEV_DIR}/gtk_2_0-2.14/lib -L${WIN32_PIDGIN_DIR}/libpurple -L${WIN32_DEV_DIR}/nss-3.12.5-nspr-4.8.2/lib -lglib-2.0 -lgobject-2.0 -lintl -lpurple -lws2_32 -L. -ljson-glib-1.0 -lz -lnss3
22MACPORT_CFLAGS = -I/opt/local/include/libpurple -DPURPLE_PLUGINS -DENABLE_NLS -DHAVE_ZLIB -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -I/opt/local/include/json-glib-1.0 -arch i386 -arch ppc -dynamiclib -L/opt/local/lib -ljson-glib-1.0 -lpurple -lglib-2.0 -lgobject-2.0 -lintl -lz -isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4
23
24DEB_PACKAGE_DIR = ./debdir
25
26SKYPEWEB_SOURCES = \
27	skypeweb_connection.c \
28	skypeweb_contacts.c \
29	skypeweb_login.c \
30	skypeweb_messages.c \
31	skypeweb_util.c \
32	libskypeweb.c
33
34
35#Standard stuff here
36.PHONY:	all clean install sourcepackage
37
38all:	libskypeweb.dll
39
40install:	libskypeweb-debug.dll
41	install -p libskypeweb-debug.dll "$(PROGRAMFILES)/Pidgin/plugins/"
42
43installers:	libskypeweb.dll pidgin-skypeweb.nsi
44	$(MAKENSIS) "/DPIDGIN_VARIANT"="Pidgin" "/DPRODUCT_NAME"="pidgin-skypeweb" "/DINSTALLER_NAME"="pidgin-skypeweb-installer" "/DJSON_GLIB_DLL"="libjson-glib-1.0.dll" pidgin-skypeweb.nsi
45
46clean:
47	rm -f libskypeweb.dll
48
49libskypeweb.dll:	${SKYPEWEB_SOURCES}
50	${WIN32_COMPILER} ${LIBPURPLE_CFLAGS} -static-libgcc -Wall -I. -g -ggdb -O2 -pipe ${SKYPEWEB_SOURCES} -o $@ -shared ${WIN32_CFLAGS} ${WIN32_LIBS}
51	${WIN32_OBJCOPY} --only-keep-debug $@ $@.dbg
52	${WIN32_OBJCOPY} --strip-debug $@
53	${WIN32_OBJCOPY} --add-gnu-debuglink=$@.dbg $@
54	upx libskypeweb.dll
55
56libskypeweb-debug.dll:	${SKYPEWEB_SOURCES}
57	${WIN32_COMPILER} ${LIBPURPLE_CFLAGS} -static-libgcc -Wall -Wno-unused-but-set-variable -Wno-unused-variable -I. -g -ggdb -O0 -pipe ${SKYPEWEB_SOURCES} -o $@ -shared ${WIN32_CFLAGS} ${WIN32_LIBS}
58