view src/protocols/sametime/Makefile.mingw @ 12986:4e9935a539db

[gaim-migrate @ 15339] We need to figure this out so that things don't break again. The new plugin dependency unload code assumed that all plugins would have ids set, this was true for most plugins, but both the perl and tcl loaders didn't set id for perl and tcl plugins. And I didn't see any code in my quick looking which actually verified (m)any parts of the struct. committer: Tailor Script <tailor@pidgin.im>
author Etan Reisner <pidgin@unreliablesource.net>
date Sun, 22 Jan 2006 07:09:06 +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