Mercurial > pidgin.yaz
diff libgaim/Makefile.mingw @ 14315:8793fc8f7064
[gaim-migrate @ 17008]
Lee Roach revamped the win32 makefiles. This makes me happy, they were in dire need of some loving.
This makes life a great deal easier for anyone who wants to build out-of-tree plugins.
committer: Tailor Script <tailor@pidgin.im>
author | Daniel Atallah <daniel.atallah@gmail.com> |
---|---|
date | Wed, 23 Aug 2006 21:34:43 +0000 |
parents | c54ea2572de9 |
children | fd45915c6988 |
line wrap: on
line diff
--- a/libgaim/Makefile.mingw Wed Aug 23 18:50:46 2006 +0000 +++ b/libgaim/Makefile.mingw Wed Aug 23 21:34:43 2006 +0000 @@ -1,63 +1,33 @@ # # Makefile.mingw # -# Description: Makefile for win32 (mingw) version of Gaim -# - -# -# PATHS +# Description: Makefile for win32 (mingw) version of libGaim # -GTK_TOP := ../../win32-dev/gtk_2_0 -GAIM_TOP := .. -LIBGAIM_TOP := . -PLUGINS_TOP := $(LIBGAIM_TOP)/plugins -PROTOCOLS_TOP := $(LIBGAIM_TOP)/protocols -GAIM_INSTALL_DIR := $(GAIM_TOP)/win32-install-dir -LIBXML2_DIR := ../../win32-dev/libxml2 - -NEEDED_DLLS = $(LIBXML2_DIR)/bin/libxml2.dll - - -## -## VARIABLE DEFINITIONS -## +GAIM_TOP := .. +include $(GAIM_TOP)/libgaim/win32/global.mak TARGET = libgaim - -# Compiler and Linker Options - -CFLAGS = - -DEFINES = - -## -## INCLUDE MAKEFILES -## - -include $(LIBGAIM_TOP)/win32/global.mak +NEEDED_DLLS = $(LIBXML2_TOP)/bin/libxml2.dll ## ## INCLUDE PATHS ## - INCLUDE_PATHS = \ - -I$(LIBGAIM_TOP) \ - -I$(LIBGAIM_TOP)/win32 \ + -I$(GAIM_LIB_TOP) \ + -I$(GAIM_LIB_TOP)/win32 \ -I$(GAIM_TOP) \ -I$(GTK_TOP)/include \ -I$(GTK_TOP)/include/glib-2.0 \ -I$(GTK_TOP)/lib/glib-2.0/include \ - -I$(LIBXML2_DIR)/include + -I$(LIBXML2_TOP)/include LIB_PATHS = -L$(GTK_TOP)/lib \ - -L$(LIBGAIM_TOP) \ - -L$(LIBXML2_DIR)/lib + -L$(LIBXML2_TOP)/lib ## ## SOURCES, OBJECTS ## - C_SRC = \ account.c \ accountopt.c \ @@ -106,13 +76,11 @@ win32/libc_interface.c \ win32/win32dep.c - OBJECTS = $(C_SRC:%.c=%.o) ## ## LIBRARIES ## - LIBS = \ -lglib-2.0 \ -lgthread-2.0 \ @@ -123,44 +91,36 @@ -liberty \ -lxml2 -## -## RULES -## - -# How to make a C file -%.o: %.c - $(CC) $(CFLAGS) $(INCLUDE_PATHS) $(DEFINES) -c $< -o $@ +include $(GAIM_COMMON_RULES) ## ## TARGET DEFINITIONS ## - -.PHONY: all clean include_path +.PHONY: all clean all: $(TARGET).dll - $(MAKE) -C $(PROTOCOLS_TOP) -f Makefile.mingw - $(MAKE) -C $(PLUGINS_TOP) -f Makefile.mingw + $(MAKE) -C $(GAIM_PROTOS_TOP) -f $(GAIM_WIN32_MAKEFILE) + $(MAKE) -C $(GAIM_LIB_PLUGINS_TOP) -f $(GAIM_WIN32_MAKEFILE) -install: all - $(MAKE) -C $(PROTOCOLS_TOP) -f Makefile.mingw install - $(MAKE) -C $(PLUGINS_TOP) -f Makefile.mingw install - cp $(LIBGAIM_TOP)/$(TARGET).dll $(GAIM_INSTALL_DIR) +install: all $(GAIM_INSTALL_DIR) + $(MAKE) -C $(GAIM_PROTOS_TOP) -f $(GAIM_WIN32_MAKEFILE) install + $(MAKE) -C $(GAIM_LIB_PLUGINS_TOP) -f $(GAIM_WIN32_MAKEFILE) install + cp $(TARGET).dll $(GAIM_INSTALL_DIR) cp $(NEEDED_DLLS) $(GAIM_INSTALL_DIR) -# -# BUILD DLL -# -$(TARGET).dll.a $(TARGET).dll: -$(TARGET).dll.a $(TARGET).dll: $(OBJECTS) +$(OBJECTS): $(GAIM_CONFIG_H) + +$(TARGET).dll $(TARGET).dll.a: $(OBJECTS) $(CC) -shared $(OBJECTS) $(LIB_PATHS) $(LIBS) $(DLL_LD_FLAGS) -Wl,--out-implib,$(TARGET).dll.a -o $(TARGET).dll ## ## CLEAN RULES ## - clean: - rm -rf *.o ./win32/*.o + rm -rf $(OBJECTS) rm -rf $(TARGET).dll rm -rf $(TARGET).dll.a - $(MAKE) -C $(PROTOCOLS_TOP) -f Makefile.mingw clean - $(MAKE) -C $(PLUGINS_TOP) -f Makefile.mingw clean + $(MAKE) -C $(GAIM_PROTOS_TOP) -f $(GAIM_WIN32_MAKEFILE) clean + $(MAKE) -C $(GAIM_LIB_PLUGINS_TOP) -f $(GAIM_WIN32_MAKEFILE) clean + +include $(GAIM_COMMON_TARGETS)