view src/protocols/yahoo/Makefile.mingw @ 10867:5727afad0fb8

[gaim-migrate @ 12553] sf patch #991208, from Arun A Tharuvai "Here's a patch, against current CVS, to build and compile zephyr on Windows, with, or without Kerberos 4 Authentication. In order to be built (and run) with Kerberos 4 authentication, the Kerberos for Windows SDK (version 2.6.3 is the current version) (licensed under the MIT license) and runtimes, both available from http://web.mit.edu/kerberos/www/dist/index.html#KFW2.6.3 Also, USE_KRB4 should be set to true in the attached Makefile.mingw As on the UNIX side, an external 'zhm' binary needs to run for zephyr to work. Source and a win32 executable (using code from gaim's libzephyr, and also MIT's zephyr distribution), can be found at http://web.mit.edu/aatharuv/www/zhm-windows.html" I decided not to make zephyr compiled by default in Windows. If you want to compile it, I think you you can modify the root Makefile.mingw or cd to the src/protocols/zephyr/ directory and run "make -f Makefile.mingw" using make from mingw committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Mon, 25 Apr 2005 01:53:01 +0000
parents a7a2c27248af
children 5d3f8d9e8f92
line wrap: on
line source

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

#
# PATHS
#

INCLUDE_DIR :=		.
GTK_TOP :=		../../../../win32-dev/gtk_2_0
GAIM_TOP :=		../../..
YAHOO_ROOT :=		.
GAIM_INSTALL_DIR :=	$(GAIM_TOP)/win32-install-dir

##
## VARIABLE DEFINITIONS
##

TARGET = libyahoo

# Compiler Options

CFLAGS =

DEFINES =

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


##
## INCLUDE  MAKEFILES
##

include $(GAIM_TOP)/src/win32/global.mak

##
## INCLUDE PATHS
##

INCLUDE_PATHS +=	-I$(YAHOO_ROOT) \
			-I$(GTK_TOP)/include \
			-I$(GTK_TOP)/include/gtk-2.0 \
			-I$(GTK_TOP)/include/glib-2.0 \
			-I$(GTK_TOP)/include/pango-1.0 \
			-I$(GTK_TOP)/include/atk-1.0 \
			-I$(GTK_TOP)/lib/glib-2.0/include \
			-I$(GTK_TOP)/lib/gtk-2.0/include \
			-I$(GAIM_TOP)/src \
			-I$(GAIM_TOP)/src/win32 \
			-I$(GAIM_TOP)


LIB_PATHS =		-L$(GTK_TOP)/lib \
			-L$(GAIM_TOP)/src


##
##  SOURCES, OBJECTS
##

C_SRC =			yahoo.c \
			yahoo_auth.c \
			yahoochat.c \
			yahoo_filexfer.c \
			yahoo_packet.c \
			yahoo_profile.c \
			yahoo_picture.c \
			yahoo_friend.c \
			ycht.c \
			crypt.c \
			util.c


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


##
## LIBRARIES
##

LIBS =			-lgtk-win32-2.0 \
			-lglib-2.0 \
			-lgdk-win32-2.0 \
			-lgmodule-2.0 \
			-lgobject-2.0 \
			-lws2_32 \
			-lintl \
			-lgaim


##
## RULES
##

# How to make a C file

%.o: %.c
	$(CC) $(CFLAGS) $(DEFINES) $(INCLUDE_PATHS) -o $@ -c $<

##
## TARGET DEFINITIONS
##

.PHONY: all clean

all: $(TARGET).dll

install:
	cp $(YAHOO_ROOT)/$(TARGET).dll $(DLL_INSTALL_DIR)


##
## BUILD Dependencies
##

$(GAIM_TOP)/src/gaim.lib:
	$(MAKE) -C $(GAIM_TOP)/src -f Makefile.mingw gaim.lib

##
## BUILD DLL
##

$(TARGET).dll: $(OBJECTS) $(GAIM_TOP)/src/gaim.lib
	$(CC) -shared $(OBJECTS) $(LIB_PATHS) $(LIBS) $(DLL_LD_FLAGS) -Wl,--out-implib,$(TARGET).lib -o $(TARGET).dll


##
## CLEAN RULES
##

clean:
	rm -rf *.o
	rm -rf $(TARGET).dll
	rm -rf $(TARGET).lib