view libpurple/protocols/oscar/Makefile.mingw @ 23477:fd124c21ebb7

Properly parse (most of) the MSN GCF command. Provides a <Account>->"View Blocked Text" dialog showing the regular expressions that the MSN servers are currently blocking. For the people who were wondering why their messages were never received.
author Elliott Sales de Andrade <qulogic@pidgin.im>
date Sun, 15 Jun 2008 06:55:21 +0000
parents 1843c0180fbe
children aaaff38e144f f2baa434a977
line wrap: on
line source

#
# Makefile.mingw
#
# Description: Makefile for win32 (mingw) version of liboscar
#

PIDGIN_TREE_TOP := ../../..
include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak

TARGET = liboscar
AIM_TARGET = libaim
ICQ_TARGET = libicq
TYPE = PLUGIN

# Static or Plugin...
ifeq ($(TYPE),STATIC)
  DEFINES += -DSTATIC
  DLL_INSTALL_DIR =		$(PURPLE_INSTALL_DIR)
else
  ifeq ($(TYPE),PLUGIN)
    DLL_INSTALL_DIR =	$(PURPLE_INSTALL_PLUGINS_DIR)
  endif
endif

##
## INCLUDE PATHS
##
INCLUDE_PATHS +=	-I. \
			-I$(GTK_TOP)/include \
			-I$(GTK_TOP)/include/glib-2.0 \
			-I$(GTK_TOP)/lib/glib-2.0/include \
			-I$(PURPLE_TOP) \
			-I$(PURPLE_TOP)/win32 \
			-I$(PIDGIN_TREE_TOP)

LIB_PATHS +=		-L$(GTK_TOP)/lib \
			-L$(PURPLE_TOP) \
			-L.

##
##  SOURCES, OBJECTS
##
C_SRC = \
	bstream.c		\
	family_admin.c		\
	family_advert.c		\
	family_alert.c		\
	family_auth.c		\
	family_bart.c		\
	family_bos.c		\
	family_buddy.c		\
	family_chat.c		\
	family_chatnav.c	\
	family_icq.c		\
	family_icbm.c		\
	family_invite.c		\
	family_locate.c		\
	family_odir.c		\
	family_popup.c		\
	family_oservice.c	\
	family_feedbag.c	\
	family_stats.c		\
	family_translate.c	\
	family_userlookup.c	\
	flap_connection.c	\
	misc.c			\
	msgcookie.c		\
	odc.c			\
	oft.c			\
	oscar.c			\
	oscar_data.c		\
	peer.c			\
	peer_proxy.c		\
	rxhandlers.c		\
	snac.c			\
	tlv.c			\
	util.c

OBJECTS = $(C_SRC:%.c=%.o)

AIM_C_SRC = libaim.c
AIM_OBJECTS = $(AIM_C_SRC:%.c=%.o)

ICQ_C_SRC = libicq.c
ICQ_OBJECTS = $(ICQ_C_SRC:%.c=%.o)

##
## LIBRARIES
##
LIBS =	\
			-lglib-2.0 \
			-lintl \
			-lws2_32 \
			-lpurple

include $(PIDGIN_COMMON_RULES)

##
## TARGET DEFINITIONS
##
.PHONY: all install clean

all: $(TARGET).dll $(AIM_TARGET).dll $(ICQ_TARGET).dll

install: all $(DLL_INSTALL_DIR)
	cp $(AIM_TARGET).dll $(ICQ_TARGET).dll $(DLL_INSTALL_DIR)
	cp $(TARGET).dll $(PURPLE_INSTALL_DIR)

$(OBJECTS): $(PURPLE_CONFIG_H)

$(TARGET).dll.a $(TARGET).dll: $(PURPLE_DLL).a $(OBJECTS)
	$(CC) -shared $(OBJECTS) $(LIB_PATHS) $(LIBS) $(DLL_LD_FLAGS) -Wl,--out-implib,$(TARGET).dll.a -o $(TARGET).dll

$(AIM_TARGET).dll: $(TARGET).dll.a $(AIM_OBJECTS)
	$(CC) -shared $(AIM_OBJECTS) $(LIB_PATHS) $(LIBS) -loscar $(DLL_LD_FLAGS) -o $(AIM_TARGET).dll

$(ICQ_TARGET).dll: $(TARGET).dll.a $(ICQ_OBJECTS)
	$(CC) -shared $(ICQ_OBJECTS) $(LIB_PATHS) $(LIBS) -loscar $(DLL_LD_FLAGS) -o $(ICQ_TARGET).dll

##
## CLEAN RULES
##
clean:
	rm -f $(OBJECTS) $(TARGET).dll $(TARGET).dll.a
	rm -f $(AIM_OBJECTS) $(AIM_TARGET).dll
	rm -f $(ICQ_OBJECTS) $(ICQ_TARGET).dll

include $(PIDGIN_COMMON_TARGETS)