Mercurial > pidgin
view src/Makefile.mingw @ 11184:044645e8a679
[gaim-migrate @ 13296]
.cvsignore files are used to "ignore" files that you don't want
in your CVS repository. This typically includes files created
during the build processes, temp files created by editors, etc.
committer: Tailor Script <tailor@pidgin.im>
| author | Mark Doliner <mark@kingant.net> |
|---|---|
| date | Wed, 03 Aug 2005 02:59:39 +0000 |
| parents | af2a4d5b9afe |
| children | 480183b6a191 |
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.6 IDLETRACK_TOP := $(GAIM_TOP)/src/win32/IdleTracker GAIM_INSTALL_DIR := $(GAIM_TOP)/win32-install-dir MINGW_PLUS_DIR := $(GAIM_SRC)/win32/mingw_plus NSS_DIR := ../../win32-dev/nss-3.9 NSPR_DIR := ../../win32-dev/nspr-4.4.1 ## ## VARIABLE DEFINITIONS ## TARGET = gaim # Compiler and Linker Options CFLAGS = DEFINES = LDFLAGS = -mwindows #-mconsole #-mwindows WINDRES := windres ## ## 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) \ -I$(NSS_DIR)/include \ -I$(NSPR_DIR)/include LIB_PATHS = -L$(GTK_TOP)/lib \ -L$(GAIM_SRC) \ -L$(IDLETRACK_TOP) \ -L$(ASPELL_TOP)/lib \ -L$(NSS_DIR)/lib \ -L$(NSPR_DIR)/lib ## ## SOURCES, OBJECTS ## DLL_C_SRC = \ account.c \ accountopt.c \ blist.c \ buddyicon.c \ cipher.c \ cmds.c \ connection.c \ conversation.c \ core.c \ debug.c \ eventloop.c \ ft.c \ gtkaccount.c \ gtkblist.c \ gtkconn.c \ gtkconv.c \ gtkcellrendererprogress.c \ gtkdebug.c \ gtkdialogs.c \ gtkdnd-hints.c \ gtkeventloop.c \ gtkft.c \ gtkgaim-disclosure.c \ gtkimhtml.c \ gtkimhtmltoolbar.c \ gtklog.c \ gtkmain.c \ gtknotify.c \ gtkplugin.c \ gtkpluginpref.c \ gtkpounce.c \ gtkprefs.c \ gtkprivacy.c \ gtkrequest.c \ gtkroomlist.c \ gtksavedstatuses.c \ gtksound.c \ gtksourceiter.c \ gtkstatusbox.c \ gtkstatusselector.c \ gtkstock.c \ gtkthemes.c \ gtkutils.c \ idle.c \ imgstore.c \ log.c \ mime.c \ network.c \ notify.c \ plugin.c \ pluginpref.c \ pounce.c \ prefs.c \ privacy.c \ proxy.c \ prpl.c \ request.c \ roomlist.c \ savedstatuses.c \ server.c \ signals.c \ sound.c \ sslconn.c \ status.c \ stringref.c \ util.c \ value.c \ xmlnode.c \ win32/win32dep.c \ win32/MinimizeToTray.c \ win32/libc_interface.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 \ -latk-1.0 \ -lpango-1.0 \ -lglib-2.0 \ -lgthread-2.0 \ -lgdk-win32-2.0 \ -lgobject-2.0 \ -lintl \ -lgmodule-2.0 \ -lgdk_pixbuf-2.0 \ -lws2_32 \ -liberty \ -lwinmm \ -lz \ -lidletrack \ -lnss3 \ -lnspr4 \ -lssl3 EXE_LIBS = ## ## 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: all 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
