gaim/gaim

file isExecutable
This seems to make sense to me; if there's anything wrong with it, let me know
#
# Makefile.mingw
#
# Description: Makefile for perl plugin loader plugin.
#
#
# PATHS
#
GTK_TOP := ../../../win32-dev/gtk_2_0
GAIM_TOP := ../..
PERL_LIB_DIR := ../../../win32-dev/perl58
PERL_INCLUDE := $(PERL_LIB_DIR)/CORE
GAIM_INSTALL_DIR := $(GAIM_TOP)/win32-install-dir
DLL_INSTALL_DIR := $(GAIM_INSTALL_DIR)/plugins
##
## VARIABLE DEFINITIONS
##
TARGET = perl
CC := gcc.exe
# Compiler Options
CFLAGS =
DEFINES =
##
## INCLUDE MAKEFILES
##
include $(GAIM_TOP)/src/win32/global.mak
# Perl headers with /* /* */ type comments.. Turn off warnings.
CFLAGS += -Wno-comment
##
## INCLUDE PATHS
##
INCLUDE_PATHS += -I. \
-I$(GAIM_TOP) \
-I$(GAIM_TOP)/src \
-I$(GAIM_TOP)/src/win32 \
-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$(PERL_INCLUDE)
LIB_PATHS = -L$(GTK_TOP)/lib \
-L$(GAIM_TOP)/src \
-L$(PERL_LIB_DIR)
##
## SOURCES, OBJECTS
##
C_SRC = perl.c \
perl-common.c \
perl-handlers.c
OBJECTS = $(C_SRC:%.c=%.o)
##
## LIBRARIES
##
LIBS = -lgtk-win32-2.0 \
-lglib-2.0 \
-lgdk-win32-2.0 \
-lgmodule-2.0 \
-lgobject-2.0 \
-lws2_32 \
-lintl \
-lgaim \
-lperl58
##
## RULES
##
# How to make a C file
%.o: %.c
$(CC) $(CFLAGS) $(DEFINES) $(INCLUDE_PATHS) -o $@ -c $<
##
## TARGET DEFINITIONS
##
.PHONY: all clean
all: $(TARGET).dll
$(MAKE) -C ./common -f Makefile.mingw
install:
cp $(TARGET).dll $(DLL_INSTALL_DIR)
$(MAKE) -C ./common -f Makefile.mingw install
##
## BUILD Dependencies
##
$(GAIM_TOP)/src/gaim.lib:
$(MAKE) -C $(GAIM_TOP)/src -f Makefile.mingw gaim.lib
##
## BUILD DLL
##
$(TARGET).dll: $(OBJECTS) $(GAIM_TOP)/src/gaim.lib
$(CC) -shared $(OBJECTS) $(LIB_PATHS) $(LIBS) $(DLL_LD_FLAGS) -Wl,--export-all-symbols -Wl,--out-implib,$(TARGET).lib -o $(TARGET).dll
##
## CLEAN RULES
##
clean:
rm -rf *.o
rm -rf $(TARGET).dll $(TARGET).lib
$(MAKE) -C ./common -f Makefile.mingw clean