view src/protocols/sametime/Makefile.mingw @ 12919:248b8b39c671

[gaim-migrate @ 15272] Replace GaimBlistNodeAction with the more generic GaimMenuAction, this is in preparation for letting the chat room user list have extensible menus like the blist entries do. (I know it's not exactly the prettiest, and the callback isn't exactly type-safe, when we eventually gobjectify everything we can get some safety back by using (GObject, gpointer) but that's for later.) I'm planning to look into merging GaimPluginActions into GaimMenuActions as well. committer: Tailor Script <tailor@pidgin.im>
author Etan Reisner <pidgin@unreliablesource.net>
date Tue, 17 Jan 2006 23:22:19 +0000
parents 0438f853fc89
children
line wrap: on
line source

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

#
# PATHS
#

SAMETIME_ROOT :=	.
GTK_TOP :=		../../../../win32-dev/gtk_2_0
MEANWHILE_TOP:=		../../../../win32-dev/meanwhile-1.0.2
GAIM_TOP :=		../../..
GAIM_INSTALL_DIR :=	$(GAIM_TOP)/win32-install-dir

##
## VARIABLE DEFINITIONS
##

TARGET = libsametime

NEEDED_DLLS = $(MEANWHILE_TOP)/bin/libmeanwhile-1.dll

# 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$(SAMETIME_ROOT) \
			-I$(MEANWHILE_TOP)/include/meanwhile \
			-I$(GTK_TOP)/include \
			-I$(GTK_TOP)/include/glib-2.0 \
			-I$(GTK_TOP)/lib/glib-2.0/include \
			-I$(GAIM_TOP)/src \
			-I$(GAIM_TOP)/src/win32 \
			-I$(GAIM_TOP)

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


##
##  SOURCES, OBJECTS
##

C_SRC =		sametime.c

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


##
## LIBRARIES
##

LIBS =		\
		-lglib-2.0 \
		-lintl \
		-lws2_32 \
		-lmeanwhile \
		-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 $(SAMETIME_ROOT)/$(TARGET).dll $(DLL_INSTALL_DIR)
	cp $(NEEDED_DLLS) $(GAIM_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