diff libgaim/plugins/perl/common/Makefile.mingw @ 14192:60b1bc8dbf37

[gaim-migrate @ 16863] Renamed 'core' to 'libgaim' committer: Tailor Script <tailor@pidgin.im>
author Evan Schoenberg <evan.s@dreskin.net>
date Sat, 19 Aug 2006 01:50:10 +0000
parents
children 8793fc8f7064
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/libgaim/plugins/perl/common/Makefile.mingw	Sat Aug 19 01:50:10 2006 +0000
@@ -0,0 +1,142 @@
+#
+# Makefile.mingw
+#
+# Description: Makefile for Gaim perl module.
+#
+
+TARGET = Gaim
+AUTOSPLIT = lib/auto/Gaim/autosplit.ix
+
+##
+## TOOLS
+##
+
+CC := gcc
+PERL := /cygdrive/c/perl/bin/perl
+
+##
+## PATHS
+##
+
+EXTUTILS := C:/perl/lib/ExtUtils
+GAIM_TOP := ../../..
+GTK_TOP := ../../../../win32-dev/gtk_2_0
+PERL_TOP := ../../../../win32-dev/perl58
+PERL_PLUGIN_TOP := ..
+GAIM_INSTALL_DIR :=	$(GAIM_TOP)/win32-install-dir
+PERLMOD_INSTALL_DIR :=	$(GAIM_INSTALL_DIR)/perlmod
+
+
+INCLUDE_PATHS =		-I. \
+			-I$(GAIM_TOP) \
+			-I$(GAIM_TOP)/src \
+			-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/gtk-2.0/include \
+			-I$(GTK_TOP)/lib/glib-2.0/include \
+			-I$(PERL_TOP)/CORE
+
+LIB_PATHS = 		-L$(PERL_TOP) \
+			-L$(PERL_PLUGIN_TOP) \
+			-L$(GAIM_TOP)/src \
+			-L$(GTK_TOP)/lib
+
+
+##
+##  SOURCES, OBJECTS
+##
+
+XS_FILES =		Account.xs \
+				AccountOpts.xs \
+				BuddyIcon.xs \
+				BuddyList.xs \
+				Cipher.xs \
+				Cmds.xs \
+				Connection.xs \
+				Conversation.xs \
+				Debug.xs \
+				FT.xs \
+				Gaim.xs \
+				ImgStore.xs \
+				Log.xs \
+				Network.xs \
+				Notify.xs \
+				Plugin.xs \
+				PluginPref.xs \
+				Pounce.xs \
+				Prefs.xs \
+				Privacy.xs \
+				Proxy.xs \
+				Prpl.xs \
+				Request.xs \
+				Roomlist.xs \
+				SSLConn.xs \
+				SavedStatuses.xs \
+				Signal.xs \
+				Server.xs \
+				Sound.xs \
+				Status.xs \
+				Stringref.xs \
+				Util.xs \
+				XMLNode.xs \
+
+FALLBACKS =		const-c.inc const-xs.inc
+
+C_FILES = $(XS_FILES:%.xs=%.c)
+
+OBJECTS = $(C_FILES:%.c=%.o)
+
+##
+## LIBRARIES
+##
+
+LIBS =			-lperl58 \
+			-lperl \
+			-lgaim \
+			-lglib-2.0
+
+##
+## RULES
+##
+
+# How to make a C file
+%.o: %.c
+	$(CC) $(CFLAGS) $(INCLUDE_PATHS) $(DEFINES) -c $< -o $@
+
+# How to make a XS file
+%.c: %.xs
+	$(PERL) $(EXTUTILS)/xsubpp -typemap $(EXTUTILS)/typemap -typemap typemap $< > $@
+
+%.inc:
+	cp fallback/$@ ./
+
+##
+## TARGETS
+##
+
+.PHONY: all clean
+
+all: $(TARGET).dll $(AUTOSPLIT)
+	
+install:
+	rm -rf $(PERLMOD_INSTALL_DIR)
+	cp -R lib $(PERLMOD_INSTALL_DIR)
+	cp $(TARGET).dll $(PERLMOD_INSTALL_DIR)
+	
+$(AUTOSPLIT): Gaim.pm
+	mkdir -p ./lib/auto
+	cp Gaim.pm ./lib
+	$(PERL) -MAutoSplit -e 'autosplit("lib/Gaim.pm")'
+
+$(TARGET).dll: $(FALLBACKS) $(OBJECTS)
+	$(CC) -shared $(OBJECTS) $(LIB_PATHS) $(LIBS) -o $(TARGET).dll
+
+##
+## CLEAN
+##
+
+clean:
+	rm -rf *.o $(TARGET).dll $(FALLBACKS) lib