view libpurple/protocols/zephyr/Makefile.mingw @ 18035:c168d1ae2012

A patch from Norbert Buchmuller: "There's a 'setstatus' command implemented in 'gaim-remote', but there's no 'getstatus'. For some tasks (eg. setting status to 'offline' on hibernation and restoring it on resume) it would be useful if such command existed." I'm not sure if we're considering this API or not. committer: Richard Laager <rlaager@wiktel.com>
author Norbert Buchmuller <norbi@nix.hu>
date Sun, 03 Jun 2007 19:34:16 +0000
parents 1843c0180fbe
children
line wrap: on
line source

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

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

TARGET = libzephyr
KRB4_TOP := $(WIN32_DEV_TOP)/kfw-2.6.3-final.fixed
USE_KRB4 := false
DEFINES += -DWIN32 -DKRB5_SYSTYPES__
TYPE = PLUGIN

ifeq ($(USE_KRB4),true)
  DEFINES += -DZEPHYR_USES_KERBEROS
endif

# 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$(ZEPHYR_ROOT) \
			-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)

ifeq ($(USE_KRB4), true)
   INCLUDE_PATHS += -I$(KRB4_TOP)/inc/krb4
endif

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

ifeq ($(USE_KRB4), true)
  LIB_PATHS+=-L$(KRB4_TOP)/lib/i386
endif

##
##  SOURCES, OBJECTS
##
C_SRC =			ZAsyncLocate.c \
			ZCkAuth.c \
			ZCkIfNot.c \
			ZClosePort.c \
			ZCmpUID.c \
			ZCmpUIDP.c \
			ZFlsLocs.c \
			ZFlsSubs.c \
			ZFmtAuth.c \
			ZFmtList.c \
			ZFmtNotice.c \
			ZFmtRaw.c \
			ZFmtRawLst.c \
			ZFmtSmRLst.c \
			ZFmtSmRaw.c \
			ZFreeNot.c \
			ZGetLocs.c \
			ZGetSender.c \
			ZGetSubs.c \
			ZGetWGPort.c \
			ZIfNotice.c \
			ZInit.c \
			ZLocations.c \
			ZMakeAscii.c \
			ZMkAuth.c \
			ZNewLocU.c \
			ZOpenPort.c \
			ZParseNot.c \
			ZPeekIfNot.c \
			ZPeekNot.c \
			ZPeekPkt.c \
			ZPending.c \
			ZReadAscii.c \
			ZRecvNot.c \
			ZRecvPkt.c \
			ZRetSubs.c \
			ZSendList.c \
			ZSendNot.c \
			ZSendPkt.c \
			ZSendRLst.c \
			ZSendRaw.c \
			ZSetDest.c \
			ZSetFD.c \
			ZSetSrv.c \
			ZSubs.c \
			ZVariables.c \
			ZWait4Not.c \
			ZhmStat.c \
			Zinternal.c \
			error_message.c \
			et_name.c \
			init_et.c \
			zephyr_err.c \
			zephyr.c

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

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

ifeq ($(USE_KRB4),true)
  LIBS+= -lkrbv4w32
endif

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) -Wl,--enable-stdcall-fixup -o $(TARGET).dll

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

include $(PIDGIN_COMMON_TARGETS)