diff src/protocols/oscar/Makefile.mingw @ 3630:9682c0e022c6

[gaim-migrate @ 3753] Yeah this will probably break a lot of shit knowing my luck. But hey, I really don't care what people thnk. committer: Tailor Script <tailor@pidgin.im>
author Rob Flynn <gaim@robflynn.com>
date Fri, 11 Oct 2002 03:14:01 +0000
parents
children 21d16e3164eb
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/protocols/oscar/Makefile.mingw	Fri Oct 11 03:14:01 2002 +0000
@@ -0,0 +1,175 @@
+#
+# Makefile.mingw
+#
+# Description: Makefile for win32 (mingw) version of liboscar
+#
+
+#
+# PATHS
+#
+
+OSCAR_ROOT :=		.
+GTK_TOP :=		../../../../win32-dev/gtk_2_0
+GAIM_TOP :=		../../..
+GAIM_INSTALL_DIR :=	$(GAIM_TOP)/win32-install-dir
+
+##
+## VARIABLE DEFINITIONS
+##
+
+TARGET = liboscar
+
+VERSION := $(shell cat $(GAIM_TOP)/VERSION)
+
+# Compiler Options
+
+CC = gcc.exe $(GCOPTS)
+
+# Only use -g flag when building STATIC version
+CFLAGS = -O2 -Wall -Werror
+
+DEFINES = 		-DHAVE_CONFIG_H \
+			-DVERSION=\"$(VERSION)\" \
+			-DAIM_BUILDDATE=\"`date +%Y%m%d`\" \
+			-DAIM_BUILDTIME=\"`date +%H%M%S`\" 
+
+# 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 PATHS
+##
+
+INCLUDE_PATHS +=	-I$(OSCAR_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 =			admin.c		\
+			adverts.c	\
+			auth.c 		\
+			bos.c 		\
+			buddylist.c	\
+			chat.c		\
+			chatnav.c	\
+			conn.c		\
+			ft.c		\
+			icq.c		\
+			im.c		\
+			info.c		\
+			invite.c	\
+			meta.c		\
+			misc.c		\
+			msgcookie.c	\
+			popups.c	\
+			rxhandlers.c	\
+			rxqueue.c	\
+			search.c	\
+			service.c	\
+			snac.c		\
+			ssi.c		\
+			stats.c		\
+			tlv.c		\
+			translate.c	\
+			txqueue.c	\
+			util.c		\
+			oscar.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 -lintl -lws2_32 -liberty -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 $(OSCAR_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).def: $(OBJECTS)
+	dlltool --dllname $(TARGET).dll -z $(TARGET).def --export-all-symbols $(OBJECTS)
+
+$(TARGET).base: $(OBJECTS) $(GAIM_TOP)/src/gaim.lib
+	gcc -mdll -o junk.tmp -Wl,--base-file,$@ $(OBJECTS) $(LIB_PATHS) $(LIBS)
+	rm -rf junk.tmp
+
+$(TARGET).exp: $(TARGET).def $(TARGET).base
+	dlltool --dllname $(TARGET).dll --base-file $(TARGET).base \
+		--output-exp $(TARGET).exp --def $(TARGET).def
+	rm -rf $(TARGET).base
+
+$(TARGET).dll: $(OBJECTS) $(TARGET).exp $(GAIM_TOP)/src/gaim.lib
+	dlltool -D $(TARGET).dll -d $(TARGET).def -l $(TARGET).lib
+	gcc -mdll -o $(TARGET).dll $(OBJECTS) -Wl,$(TARGET).exp $(LIB_PATHS) $(LIBS)
+	rm -rf $(TARGET).exp
+
+##
+## CLEAN RULES
+##
+
+clean:
+	rm -rf *.o
+	rm -rf $(TARGET).dll
+	rm -rf $(TARGET).lib
+	rm -rf $(TARGET).def