view src/Makefile.mingw @ 5999:44b7e2530c05

[gaim-migrate @ 6447] Added the Homepage field to the Trepia tooltip, and added a Visit Homepage link to those buddies that have a homepage set. Credit goes to SimGuy. Also, fixed a bug where empty fields in the XML packets weren't causing the values to be set NULL. Rather, they were just empty strings. This caused blank entries in the tooltips and other such annoyances. committer: Tailor Script <tailor@pidgin.im>
author Christian Hammond <chipx86@chipx86.com>
date Thu, 03 Jul 2003 03:09:08 +0000
parents bb7723f0b4b9
children ba3847f74387
line wrap: on
line source

#
# Makefile.mingw
#
# Description: Makefile for win32 (mingw) version of Gaim
#

#
# PATHS
#

INCLUDE_DIR :=		.
GTK_TOP :=		../../win32-dev/gtk_2_0
GAIM_TOP :=		..
GAIM_SRC :=		.
ASPELL_TOP :=		../../win32-dev/aspell-dev-0-50-3-3
GTKSPELL_TOP :=		../../win32-dev/gtkspell-2.0.4
IDLETRACK_TOP :=	$(GAIM_TOP)/src/win32/IdleTracker
GAIM_INSTALL_DIR :=	$(GAIM_TOP)/win32-install-dir
MINGW_PLUS_DIR :=	$(GAIM_SRC)/win32/mingw_plus

##
## VARIABLE DEFINITIONS
##

TARGET = gaim

# Compiler and Linker Options

CFLAGS =

DEFINES =

LDFLAGS = -mconsole -mwindows

#-mconsole
#-mwindows

##
## INCLUDE  MAKEFILES
##

include $(GAIM_TOP)/src/win32/global.mak

##
## INCLUDE PATHS
##

INCLUDE_PATHS =		-I$(INCLUDE_DIR) \
			-I$(INCLUDE_DIR)/win32 \
			-I$(MINGW_PLUS_DIR) \
			-I$(IDLETRACK_TOP) \
			-I$(GAIM_TOP) \
			-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$(ASPELL_TOP)/include \
			-I$(GTKSPELL_TOP)


LIB_PATHS =		-L$(GTK_TOP)/lib \
			-L$(GAIM_SRC) \
			-L$(IDLETRACK_TOP) \
			-L$(ASPELL_TOP)/lib

##
##  SOURCES, OBJECTS
##

DLL_C_SRC =		about.c \
			account.c \
			accountopt.c \
			away.c \
			blist.c \
			browser.c \
			buddy_chat.c \
			connection.c \
			conversation.c \
			core.c \
			debug.c \
			dialogs.c \
			dnd-hints.c \
			event.c \
			ft.c \
			gaim-disclosure.c \
			gaimrc.c \
			gtkaccount.c \
			gtkblist.c \
			gtkconn.c \
			gtkconv.c \
			gtkcellrendererprogress.c \
			gtkdebug.c \
			gtkft.c \
			gtkimhtml.c \
			gtknotify.c \
			gtkplugin.c \
			gtkpounce.c \
			gtkprefs.c \
			gtkrequest.c \
			gtksound.c \
			gtkutils.c \
			html.c \
			idle.c \
			log.c \
			main.c \
			md5.c \
			notify.c \
			plugin.c \
			pounce.c \
			prefs.c \
			proxy.c \
			prpl.c \
			request.c \
			server.c \
			sound.c \
			stock.c \
			themes.c \
			util.c \
			win32/win32dep.c \
			win32/MinimizeToTray.c \
			win32/libc_interface.c \
			win32/systray.c \
			win32/wspell.c \
			win32/untar.c

RC_SRC =		win32/gaimrc.rc

EXE_C_SRC = 		win_gaim.c

DLL_OBJECTS = $(DLL_C_SRC:%.c=%.o) 

EXE_OBJECTS = $(EXE_C_SRC:%.c=%.o) $(RC_SRC:%.rc=%.o) 

##
## LIBRARIES
##

DLL_LIBS =		-lgtk-win32-2.0 \
			-lpango-1.0 \
			-lglib-2.0 \
			-lgdk-win32-2.0 \
			-lgobject-2.0 \
			-lintl \
			-lgmodule-2.0 \
			-lgdk_pixbuf-2.0 \
			-lws2_32 \
			-liberty \
			-lwinmm \
			-llibz \
			-lidletrack
			

EXE_LIBS =		-lgaim \
			-lglib-2.0

##
## RULES
##

# How to make a C file
%.o: %.c
	$(CC) $(CFLAGS) $(INCLUDE_PATHS) $(DEFINES) -c $< -o $@

# How to make an RC file
%.o: %.rc
	windres -i $< -o $@

##
## TARGET DEFINITIONS
##

.PHONY: all clean

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

install:
	cp $(GAIM_SRC)/gaim.exe $(GAIM_SRC)/gaim.dll $(GAIM_INSTALL_DIR)

$(IDLETRACK_TOP)/idletrack.dll:
	$(MAKE) -C $(IDLETRACK_TOP) -f Makefile.mingw

#
# BUILD DLL
#

$(TARGET).lib $(TARGET).dll: $(DLL_OBJECTS) $(IDLETRACK_TOP)/idletrack.dll
	$(CC) -shared $(DLL_OBJECTS) $(LIB_PATHS) $(DLL_LIBS) $(DLL_LD_FLAGS) -Wl,--out-implib,$(TARGET).lib -o $(TARGET).dll

#
# BUILD EXE
#

$(TARGET).exe: $(TARGET).dll $(EXE_OBJECTS)
	$(CC) $(LDFLAGS) $(EXE_OBJECTS) $(LIB_PATHS) $(EXE_LIBS) -o $(TARGET).exe

##
## CLEAN RULES
##

clean:
	$(MAKE) -C $(IDLETRACK_TOP) -f Makefile.mingw clean
	rm -rf *.o ./win32/*.o
	rm -rf $(TARGET).dll
	rm -rf $(TARGET).lib
	rm -rf $(TARGET).exe