win_pp.mak
author John Bailey <rekkanoryo@rekkanoryo.org>
Sun Aug 30 20:10:58 2009 -0400 (2009-08-30)
changeset 1046 93089a7ce7f6
parent 244 6ba2244767a5
child 1161 5f4a790f067d
permissions -rw-r--r--
Merge
datallah@244
     1
-include $(PP_TOP)/local.mak
datallah@136
     2
datallah@244
     3
PIDGIN_TREE_TOP ?=	$(PP_TOP)/../../..
datallah@244
     4
GTK_TOP :=		$(PIDGIN_TREE_TOP)/../win32-dev/gtk_2_0
datallah@244
     5
DLL_ZIP_DIR :=		$(PP_TOP)/win32-dist
datallah@136
     6
datallah@244
     7
PP_VERSION := $(shell cat ${PP_TOP}/VERSION)
datallah@244
     8
PP_CONFIG_H := $(PP_TOP)/pp_config.h
datallah@136
     9
datallah@244
    10
include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak
datallah@136
    11
datallah@244
    12
DEFINES += -DPP_VERSION=\"$(PP_VERSION)\"
datallah@136
    13
datallah@136
    14
##
datallah@136
    15
## INCLUDE PATHS
datallah@136
    16
##
datallah@136
    17
datallah@136
    18
INCLUDE_PATHS +=	-I. \
datallah@136
    19
			-I$(GTK_TOP)/include \
datallah@136
    20
			-I$(GTK_TOP)/include/gtk-2.0 \
datallah@136
    21
			-I$(GTK_TOP)/include/glib-2.0 \
datallah@136
    22
			-I$(GTK_TOP)/include/pango-1.0 \
datallah@136
    23
			-I$(GTK_TOP)/include/atk-1.0 \
datallah@136
    24
			-I$(GTK_TOP)/include/freetype2 \
datallah@136
    25
			-I$(GTK_TOP)/lib/glib-2.0/include \
datallah@136
    26
			-I$(GTK_TOP)/lib/gtk-2.0/include \
datallah@244
    27
			-I$(PURPLE_TOP) \
datallah@244
    28
			-I$(PURPLE_TOP)/win32 \
datallah@244
    29
			-I$(PIDGIN_TOP) \
datallah@244
    30
			-I$(PIDGIN_TOP)/win32 \
datallah@244
    31
			-I$(PIDGIN_TREE_TOP)
datallah@136
    32
datallah@136
    33
datallah@136
    34
LIB_PATHS =		\
datallah@136
    35
			-L$(GTK_TOP)/lib \
datallah@244
    36
			-L$(PURPLE_TOP) \
datallah@244
    37
			-L$(PIDGIN_TOP)
datallah@136
    38
datallah@136
    39
##
datallah@136
    40
##  SOURCES, OBJECTS
datallah@136
    41
##
datallah@136
    42
datallah@244
    43
PP_SRC ?= $(PP).c
datallah@136
    44
datallah@136
    45
datallah@244
    46
PP_OBJ = $(PP_SRC:%.c=%.o)
datallah@136
    47
datallah@136
    48
##
datallah@136
    49
## LIBRARIES
datallah@136
    50
##
datallah@136
    51
datallah@136
    52
PLUGIN_LIBS = \
datallah@136
    53
	-lgtk-win32-2.0 \
datallah@136
    54
	-lgdk-win32-2.0 \
datallah@244
    55
	-lgdk_pixbuf-2.0 \
datallah@136
    56
	-lglib-2.0 \
datallah@244
    57
	-lpango-1.0 \
datallah@136
    58
	-lgmodule-2.0 \
datallah@136
    59
	-lgobject-2.0 \
datallah@136
    60
	-lws2_32 \
datallah@136
    61
	-lintl \
datallah@244
    62
	-lpurple \
datallah@244
    63
	-lpidgin
datallah@136
    64
datallah@136
    65
##
datallah@136
    66
## RULES
datallah@136
    67
##
datallah@136
    68
datallah@136
    69
# How to make a C file
datallah@136
    70
%.o: %.c
datallah@136
    71
	$(CC) $(CFLAGS) $(INCLUDE_PATHS) $(DEFINES) -c $< -o $@
datallah@136
    72
datallah@136
    73
##
datallah@136
    74
## TARGET DEFINITIONS
datallah@136
    75
##
datallah@136
    76
datallah@136
    77
.PHONY: all clean install install_zip
datallah@136
    78
datallah@244
    79
all: $(PP).dll
datallah@136
    80
datallah@244
    81
$(PP_CONFIG_H): $(PP_TOP)/pp_config.h.mingw
datallah@244
    82
	cp $(PP_TOP)/pp_config.h.mingw $(PP_CONFIG_H)
datallah@136
    83
datallah@136
    84
$(DLL_ZIP_DIR):
datallah@331
    85
	mkdir -p $(DLL_ZIP_DIR)
datallah@136
    86
datallah@331
    87
install: all $(PIDGIN_INSTALL_PLUGINS_DIR)
datallah@331
    88
	cp $(PP).dll $(PIDGIN_INSTALL_PLUGINS_DIR)
datallah@136
    89
datallah@136
    90
install_zip: $(DLL_ZIP_DIR) all
datallah@244
    91
	cp $(PP).dll $(DLL_ZIP_DIR)
datallah@136
    92
datallah@331
    93
$(PP_OBJ): $(PP_CONFIG_H) $(PURPLE_VERSION_H)
datallah@136
    94
datallah@136
    95
##
datallah@136
    96
## BUILD DLL
datallah@136
    97
##
datallah@136
    98
datallah@244
    99
$(PP).dll: $(PP_OBJ) $(PURPLE_DLL).a $(PIDGIN_DLL).a
datallah@244
   100
	$(CC) -shared $(PP_OBJ) $(LIB_PATHS) $(PLUGIN_LIBS) $(DLL_LD_FLAGS) -o $(PP).dll
datallah@136
   101
datallah@136
   102
datallah@136
   103
##
datallah@136
   104
## CLEAN RULES
datallah@136
   105
##
datallah@136
   106
datallah@136
   107
clean:
datallah@136
   108
	rm -rf *.o
datallah@244
   109
	rm -rf $(PP).dll
datallah@136
   110
datallah@331
   111
include $(PIDGIN_COMMON_TARGETS)