view libgaim/plugins/ssl/Makefile.mingw @ 14224:ab8a105eff62

[gaim-migrate @ 16905] First step of getting wingaim working again. libgaim and gtk are compiling. The protocols aren't compiling yet. There are a number of things that are compiling, but should be cleaned up. committer: Tailor Script <tailor@pidgin.im>
author Daniel Atallah <daniel.atallah@gmail.com>
date Sun, 20 Aug 2006 16:49:37 +0000
parents 60b1bc8dbf37
children 8793fc8f7064
line wrap: on
line source

#
# Makefile.mingw
#
# Description: Makefile for ssl plugin.
#

#
# PATHS
#

GTK_TOP :=		../../../../win32-dev/gtk_2_0
GAIM_TOP :=		../../..
LIBGAIM_TOP :=		../..
GAIM_INSTALL_DIR :=	$(GAIM_TOP)/win32-install-dir
DLL_INSTALL_DIR :=	$(GAIM_INSTALL_DIR)/plugins
NSS_DIR :=              ../../../../win32-dev/nss-3.9
NSPR_DIR :=             ../../../../win32-dev/nspr-4.4.1

##
## VARIABLE DEFINITIONS
##

TARGET = ssl
TARGET_NSS = ssl-nss

NEEDED_DLLS =		$(NSS_DIR)/lib/nss3.dll \
			$(NSS_DIR)/lib/nssckbi.dll \
			$(NSS_DIR)/lib/softokn3.dll \
			$(NSS_DIR)/lib/ssl3.dll \
			$(NSPR_DIR)/lib/nspr4.dll \
			$(NSPR_DIR)/lib/plc4.dll \
			$(NSPR_DIR)/lib/plds4.dll

# Compiler Options

CFLAGS =

DEFINES =

##
## INCLUDE  MAKEFILES
##

include $(LIBGAIM_TOP)/win32/global.mak

##
## 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$(LIBGAIM_TOP) \
			-I$(LIBGAIM_TOP)/win32 \
			-I$(GAIM_TOP) \
			-I$(NSS_DIR)/include \
			-I$(NSPR_DIR)/include

LIB_PATHS =		-L$(GTK_TOP)/lib \
			-L$(LIBGAIM_TOP) \
			-L$(NSS_DIR)/lib \
			-L$(NSPR_DIR)/lib

##
##  SOURCES, OBJECTS
##

C_SRC =			ssl.c

C_SRC_NSS =		ssl-nss.c


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

OBJECTS_NSS = $(C_SRC_NSS:%.c=%.o)


##
## LIBRARIES
##

LIBS =	\
			-lglib-2.0 \
			-lws2_32 \
			-lintl \
			-lgaim \
			-lnss3 \
			-lnspr4 \
			-lssl3


##
## RULES
##

# How to make a C file

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

##
## TARGET DEFINITIONS
##

.PHONY: all clean

all: $(TARGET).dll $(TARGET_NSS).dll

install:
	cp $(TARGET).dll $(DLL_INSTALL_DIR)
	cp $(TARGET_NSS).dll $(DLL_INSTALL_DIR)
	cp $(NEEDED_DLLS) $(GAIM_INSTALL_DIR)

##
## BUILD Dependencies
##

$(LIBGAIM_TOP)/libgaim.dll.a:
	$(MAKE) -C $(LIBGAIM_TOP) -f Makefile.mingw libgaim.dll.a

##
## BUILD DLL
##

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

$(TARGET_NSS).dll: $(OBJECTS_NSS) $(LIBGAIM_TOP)/libgaim.dll.a
	$(CC) -shared $(OBJECTS_NSS) $(LIB_PATHS) $(LIBS) $(DLL_LD_FLAGS) -o $(TARGET_NSS).dll

##
## CLEAN RULES
##

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