view libpurple/protocols/oscar/Makefile.mingw @ 27845:975fc5f64438

Ignore buddies with invalid emails in the membership list or address book, which, to be honest, were probably caused by older versions of Pidgin that were not checking and sending the invalid buddies anyway. Fixes #9505.
author Elliott Sales de Andrade <qulogic@pidgin.im>
date Thu, 06 Aug 2009 05:25:23 +0000
parents f2baa434a977
children d14ad586601c
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		\
	clientlogin.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)