view Makefile.mingw @ 4057:68d942babdfa

[gaim-migrate @ 4267] I just came up with this idea. committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Tue, 10 Dec 2002 18:19:58 +0000
parents 0deae72976cb
children c3c36d2444af
line wrap: on
line source

# Makefile.mingw
# 
# Author: hermanator12002@yahoo.com
# Date 9/11/02
# Description: Top Makefile for win32 (mingw) port of Gaim
#

GAIM_SRC = ./src
GAIM_PROTOS = $(GAIM_SRC)/protocols
GAIM_PLUGINS = ./plugins
GAIM_PIXMAPS = ./pixmaps
GAIM_SOUNDS = ./sounds
GAIM_INSTALL_DIR = ./win32-install-dir
GTK_TOP = ../win32-dev/gtk_2_0
GTK_LIBS = $(GTK_TOP)/lib
PERL_TOP = ../win32-dev/perl56
IDLETRACKER_TOP = $(GAIM_SRC)/win32/IdleTracker
GTKRC_TOP = ../win32-dev/gtkrc
OSCAR = $(GAIM_PROTOS)/oscar
YAHOO = $(GAIM_PROTOS)/yahoo
MSN = $(GAIM_PROTOS)/msn
TOC = $(GAIM_PROTOS)/toc
IRC = $(GAIM_PROTOS)/irc
JABBER = $(GAIM_PROTOS)/jabber
NAPSTER = $(GAIM_PROTOS)/napster
GG = $(GAIM_PROTOS)/gg
PO = ./po

VERSION := $(shell cat ./VERSION)

NEEDED_DLLS = 		$(GTK_LIBS)/libgdk-win32-2.0-0.dll \
			$(GTK_LIBS)/libglib-2.0-0.dll \
			$(GTK_LIBS)/libintl-1.dll \
			$(GTK_LIBS)/iconv.dll \
			$(GTK_LIBS)/libgmodule-2.0-0.dll \
			$(GTK_LIBS)/libgtk-win32-2.0-0.dll \
			$(GTK_LIBS)/libgdk_pixbuf-2.0-0.dll \
			$(GTK_LIBS)/libgobject-2.0-0.dll \
			$(GTK_LIBS)/libgthread-2.0-0.dll \
			$(GTK_TOP)/bin/libjpeg.dll \
			$(GTK_TOP)/bin/libpng.dll \
			$(GTK_TOP)/bin/libtiff.dll \
			$(GTK_TOP)/bin/zlib.dll \
			$(GTK_LIBS)/libpango-1.0-0.dll \
			$(GTK_LIBS)/libpangoft2-1.0-0.dll \
			$(GTK_LIBS)/libpangowin32-1.0-0.dll \
			$(GTK_LIBS)/libatk-1.0-0.dll \
			$(PERL_TOP)/perl56.dll \
			$(IDLETRACKER_TOP)/IdleTrac.dll

# For Gtk 2.0.3
#			$(GTK_LIBS)/libjpeg6b.dll \
#			$(GTK_LIBS)/libpng-3.dll \
#			$(GTK_LIBS)/libtiff.dll \
#			$(GTK_LIBS)/libz.dll \

# For Gtk 2.0.6
#			$(GTK_TOP)/bin/libjpeg.dll \
#			$(GTK_TOP)/bin/libpng.dll \
#			$(GTK_TOP)/bin/libtiff.dll \
#			$(GTK_TOP)/bin/zlib.dll \




PIXMAPS_DIALOGS =	$(GAIM_PIXMAPS)/gaim_error.png \
			$(GAIM_PIXMAPS)/gaim_info.png \
			$(GAIM_PIXMAPS)/gaim_warning.png \
			$(GAIM_PIXMAPS)/gaim_question.png

PIXMAPS_MENUS =	$(GAIM_PIXMAPS)/about_menu.png \
			$(GAIM_PIXMAPS)/accounts-menu.png \
			$(GAIM_PIXMAPS)/import-menu.png \
			$(GAIM_PIXMAPS)/insert-image-small.png \
			$(GAIM_PIXMAPS)/insert-link-small.png

PIXMAPS_BUTTONS =	$(GAIM_PIXMAPS)/edit.png \
			$(GAIM_PIXMAPS)/accounts.png \
			$(GAIM_PIXMAPS)/change-bgcolor-small.png \
			$(GAIM_PIXMAPS)/change-fgcolor-small.png \
			$(GAIM_PIXMAPS)/preferences.png \
			$(GAIM_PIXMAPS)/signon.png \
			$(GAIM_PIXMAPS)/insert-image-small.png \
			$(GAIM_PIXMAPS)/insert-link-small.png \
			$(GAIM_PIXMAPS)/insert-smiley-small.png \
			$(GAIM_PIXMAPS)/text_bigger.png \
			$(GAIM_PIXMAPS)/text_normal.png \
			$(GAIM_PIXMAPS)/text_smaller.png 

PIXMAPS =		$(GAIM_PIXMAPS)/away.png \
			$(GAIM_PIXMAPS)/connect.png \
			$(GAIM_PIXMAPS)/msgpend.png \
			$(GAIM_PIXMAPS)/msgunread.png \
			$(GAIM_PIXMAPS)/offline.png \
			$(GAIM_PIXMAPS)/online.png \
			$(GAIM_PIXMAPS)/logo.png

SOUNDS =		$(GAIM_SOUNDS)/leave.wav \
			$(GAIM_SOUNDS)/redalert.wav \
			$(GAIM_SOUNDS)/receive.wav \
			$(GAIM_SOUNDS)/send.wav \
			$(GAIM_SOUNDS)/arrive.wav


##
## Don't forget to change STATIC_PROTO_INIT, in config.h.mingw if you 
## change the status of a protocol (static/plugin)
##

OSCAR_TYPE = PLUGIN
YAHOO_TYPE = PLUGIN
MSN_TYPE = PLUGIN
TOC_TYPE = PLUGIN
IRC_TYPE = PLUGIN
JABBER_TYPE = PLUGIN
NAPSTER_TYPE = PLUGIN
GG_TYPE = PLUGIN

all:
	cp config.h.mingw config.h
	$(MAKE) TYPE='$(OSCAR_TYPE)' -C $(OSCAR) -f Makefile.mingw
	$(MAKE) TYPE='$(YAHOO_TYPE)' -C $(YAHOO) -f Makefile.mingw
	$(MAKE) TYPE='$(MSN_TYPE)' -C $(MSN) -f Makefile.mingw
	$(MAKE) TYPE='$(TOC_TYPE)' -C $(TOC) -f Makefile.mingw
	$(MAKE) TYPE='$(IRC_TYPE)' -C $(IRC) -f Makefile.mingw
	$(MAKE) TYPE='$(JABBER_TYPE)' -C $(JABBER) -f Makefile.mingw
	$(MAKE) TYPE='$(GG_TYPE)' -C $(GG) -f Makefile.mingw
	$(MAKE) -C $(GAIM_SRC) -f Makefile.mingw
	$(MAKE) -C $(GAIM_PLUGINS) -f Makefile.mingw


install: all
	mkdir -p $(GAIM_INSTALL_DIR)/plugins
	mkdir -p $(GAIM_INSTALL_DIR)/pixmaps/gaim/dialogs
	mkdir -p $(GAIM_INSTALL_DIR)/pixmaps/gaim/buttons
	mkdir -p $(GAIM_INSTALL_DIR)/pixmaps/gaim/menus
	mkdir -p $(GAIM_INSTALL_DIR)/sounds/gaim
	$(MAKE) -C $(PO) -f Makefile.mingw install
	$(MAKE) -C $(GAIM_SRC) -f Makefile.mingw install
	$(MAKE) -C $(GAIM_PLUGINS) -f Makefile.mingw install
	$(MAKE) TYPE='$(OSCAR_TYPE)' -C $(OSCAR) -f Makefile.mingw install
	$(MAKE) TYPE='$(YAHOO_TYPE)' -C $(YAHOO) -f Makefile.mingw install
	$(MAKE) TYPE='$(MSN_TYPE)' -C $(MSN) -f Makefile.mingw install
	$(MAKE) TYPE='$(TOC_TYPE)' -C $(TOC) -f Makefile.mingw install
	$(MAKE) TYPE='$(IRC_TYPE)' -C $(IRC) -f Makefile.mingw install
	$(MAKE) TYPE='$(JABBER_TYPE)' -C $(JABBER) -f Makefile.mingw install
	$(MAKE) TYPE='$(GG_TYPE)' -C $(GG) -f Makefile.mingw install
	cp $(NEEDED_DLLS) $(GAIM_INSTALL_DIR)
	cp $(PIXMAPS_DIALOGS) $(GAIM_INSTALL_DIR)/pixmaps/gaim/dialogs
	cp $(PIXMAPS_BUTTONS) $(GAIM_INSTALL_DIR)/pixmaps/gaim/buttons
	cp $(PIXMAPS_MENUS) $(GAIM_INSTALL_DIR)/pixmaps/gaim/menus
	cp $(PIXMAPS) $(GAIM_INSTALL_DIR)/pixmaps/gaim
	cp $(SOUNDS) $(GAIM_INSTALL_DIR)/sounds/gaim
	mkdir -p $(GAIM_INSTALL_DIR)/lib/gtk-2.0
	cp -R $(GTK_LIBS)/gtk-2.0/2.0.0 $(GAIM_INSTALL_DIR)/lib/gtk-2.0
	cp -R $(GTK_LIBS)/pango $(GAIM_INSTALL_DIR)/lib
	cp -R $(GTK_TOP)/etc $(GAIM_INSTALL_DIR)
	cp $(GAIM_SRC)/win32/themes/gtkrc $(GAIM_INSTALL_DIR)/etc/gtk-2.0

installer:
	makensis.exe /DGAIM_VERSION="$(VERSION)" gaim-installer.nsi

clean:
	$(MAKE) -C $(PO) -f Makefile.mingw clean
	$(MAKE) -C $(OSCAR) -f Makefile.mingw clean
	$(MAKE) -C $(YAHOO) -f Makefile.mingw clean
	$(MAKE) -C $(MSN) -f Makefile.mingw clean
	$(MAKE) -C $(TOC) -f Makefile.mingw clean
	$(MAKE) -C $(IRC) -f Makefile.mingw clean
	$(MAKE) -C $(JABBER) -f Makefile.mingw clean
	$(MAKE) -C $(GG) -f Makefile.mingw clean
	$(MAKE) -C $(GAIM_SRC) -f Makefile.mingw clean
	$(MAKE) -C $(GAIM_PLUGINS) -f Makefile.mingw clean
	rm -rf config.h $(GAIM_INSTALL_DIR)
	rm -rf gaim*.exe