# Description: Makefile for win32 (mingw) version of libpurple include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak NEEDED_DLLS = $(CYRUS_SASL_TOP
)/bin/libsasl.dll
$(CYRUS_SASL_TOP
)/bin/sasl2/saslANONYMOUS.dll
\ $(CYRUS_SASL_TOP
)/bin/sasl2/saslCRAMMD5.dll
\ $(CYRUS_SASL_TOP
)/bin/sasl2/saslDIGESTMD5.dll
\ $(CYRUS_SASL_TOP
)/bin/sasl2/saslGSSAPI.dll
\ $(CYRUS_SASL_TOP
)/bin/sasl2/saslLOGIN.dll
\ $(CYRUS_SASL_TOP
)/bin/sasl2/saslPLAIN.dll
-I
$(GTK_TOP
)/include/glib-2.0
\ -I
$(GTK_TOP
)/lib/glib-2.0/include
\ -I
$(JSON_GLIB_TOP
)/include/json-glib-1.0
\ -I
$(LIBXML2_TOP
)/include/libxml2
\ -I
$(NSS_TOP
)/include/nspr4
\ -I
$(NSS_TOP
)/include/nss3
\ -I
$(GNUTLS_TOP
)/include
\ LIB_PATHS += -L
$(GTK_TOP
)/lib
\ BUILT_SRC = marshallers.c
enums.c
RC_SRC = win32/libpurplerc.rc
OBJECTS = $(C_SRC:%.c
=%.o
) $(RC_SRC:%.rc
=%.o
) include $(PIDGIN_COMMON_RULES) .PHONY: all install install_shallow clean $(MAKE_at
) $(MAKE
) -C
$(PURPLE_PROTOS_TOP
) -f
$(MINGW_MAKEFILE
) $(MAKE_at
) $(MAKE
) -C
$(PURPLE_PLUGINS_TOP
) -f
$(MINGW_MAKEFILE
) install_shallow: $(PURPLE_INSTALL_DIR) $(TARGET).
dll cp
$(TARGET
).dll
$(PURPLE_INSTALL_DIR
) cp
$(NEEDED_DLLS
) $(PURPLE_INSTALL_DIR
) mkdir
-p
$(PURPLE_INSTALL_DIR
)/sasl2
cp
$(CYRUS_SASL_PLUGINS
) $(PURPLE_INSTALL_DIR
)/sasl2
install: install_shallow all $(MAKE_at
) $(MAKE
) -C
$(PURPLE_PROTOS_TOP
) -f
$(MINGW_MAKEFILE
) install
$(MAKE_at
) $(MAKE
) -C
$(PURPLE_PLUGINS_TOP
) -f
$(MINGW_MAKEFILE
) install
./win32/libpurplerc.rc: ./
win32/
libpurplerc.
rc.
in $(PIDGIN_TREE_TOP)/
VERSION @sed
-e
's/@PURPLE_VERSION@/$(PURPLE_VERSION)/g' \ $(OBJECTS): $(PURPLE_CONFIG_H) $(PURPLE_VERSION_H) $(PURPLE_PURPLE_H) marshallers.h: marshallers.
list @
$(GLIB_GENMARSHAL
) --prefix
=purple_smarshal
$<
--header
>
marshallers.h
marshallers.c: marshallers.
list marshallers.
h @echo
"#include \"marshallers.h\"" >
marshallers.c
@
$(GLIB_GENMARSHAL
) --prefix
=purple_smarshal
$<
--body
>>
marshallers.c
enums.h: enums.
h.
in $(ENUM_HEADERS) @
$(GLIB_MKENUMS
) --template
enums.h.in
$(ENUM_HEADERS
) >
enums.h
enums.c: enums.
c.
in enums.
h $(ENUM_HEADERS) @
$(GLIB_MKENUMS
) --template
enums.c.in
$(ENUM_HEADERS
) >
enums.c
$(TARGET).dll $(TARGET).dll.a: $(OBJECTS) $(CC
) -shared
$(OBJECTS
) $(LIB_PATHS
) $(LIBS
) $(DLL_LD_FLAGS
) -Wl,--output-def,
$(TARGET
).def,--out-implib,
$(TARGET
).dll.a
-o
$(TARGET
).dll
rm
-f
$(OBJECTS
) $(RC_SRC
) $(PURPLE_VERSION_H
) $(PURPLE_PURPLE_H
) marshallers.h
marshallers.c
enums.h
enums.c
rm
-f
$(TARGET
).dll
$(TARGET
).dll.a
$(TARGET
).def
$(MAKE_at
) $(MAKE
) -C
$(PURPLE_PROTOS_TOP
) -f
$(MINGW_MAKEFILE
) clean
$(MAKE_at
) $(MAKE
) -C
$(PURPLE_PLUGINS_TOP
) -f
$(MINGW_MAKEFILE
) clean
include $(PIDGIN_COMMON_TARGETS)