view libpurple/protocols/msn/Makefile.mingw @ 24338:9b253ce969d0

msn_slplink_remove_slpcall() shouldn't be responsible for setting slpcall->slplink to NULL. In fact, msn_slp_call_destroy() shouldn't even call msn_slplink_remove_slpcall() until it knows that it doesn't need the slplink anymore. So move the call to msn_slplink_remove_slpcall() further down in that function. Now we no longer need the return value from msn_switchboard_release(). That return value, by the way, was dumb. If you're no longer using the MsnSwitchBoard then you're not using it and you shouldn't care if it was destroyed or not.
author Mark Doliner <mark@kingant.net>
date Thu, 13 Nov 2008 07:22:39 +0000
parents 96e78c0fa32b
children 027f342110b6
line wrap: on
line source

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

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

TARGET = libmsn
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)

##
##  SOURCES, OBJECTS
##
C_SRC =			cmdproc.c \
			command.c \
			contact.c\
			dialog.c \
			directconn.c \
			error.c \
			group.c \
			history.c \
			httpconn.c \
			msg.c \
			msn.c \
			nexus.c \
			notification.c \
			object.c \
			oim.c\
			page.c \
			servconn.c \
			session.c \
			slp.c \
			slpcall.c \
			slplink.c \
			slpmsg.c \
			soap.c\
			state.c \
			switchboard.c \
			sync.c \
			table.c \
			transaction.c \
			user.c \
			userlist.c \
			msnutils.c

OBJECTS = $(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

install: all $(DLL_INSTALL_DIR)
	cp $(TARGET).dll $(DLL_INSTALL_DIR)

$(OBJECTS): $(PURPLE_CONFIG_H)

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

##
## CLEAN RULES
##
clean:
	rm -f $(OBJECTS)
	rm -f $(TARGET).dll

include $(PIDGIN_COMMON_TARGETS)