# # Makefile.mingw # # Description: Makefile for win32 (mingw) version of GCompris # # # PATHS # GCOMPRIS_TOP := ../.. INCLUDE_DIR := . CANVAS_TOP := $(GCOMPRIS_TOP)/src LIBART_TOP := $(GCOMPRIS_TOP)/src/libart_lgpl GCOMPRIS_SRC := . GCOMPRIS_INSTALL_DIR := $(GCOMPRIS_TOP)/win32-install-dir ## ## VARIABLE DEFINITIONS ## TARGET = gcompris # Compiler and Linker Options CFLAGS = DEFINES = LDFLAGS = -mwindows -mno-cygwin -mms-bitfields #-mconsole #-mwindows ## ## INCLUDE MAKEFILES ## include $(GCOMPRIS_TOP)/global_win32.mak ## ## INCLUDE PATHS ## INCLUDE_PATHS += -I$(INCLUDE_DIR) \ -I$(GTK_TOP)/include \ -I$(GTK_TOP)/include/gtk-2.0 \ -I$(GLIB_TOP)/include/glib-2.0 \ -I$(GTK_TOP)/include/pango-1.0 \ -I$(GTK_TOP)/include/atk-1.0 \ -I$(GLIB_TOP)/lib/glib-2.0/include \ -I$(GTK_TOP)/lib/gtk-2.0/include \ -I$(CANVAS_TOP) \ -I$(GTK_TOP)/include/atk-1.0 \ -I$(LIBART_TOP) \ -I$(GTK_TOP)/include/freetype2 \ -I$(SDL_TOP)/include/SDL \ -I$(LIBXML2_TOP)/include \ -I$(CAIRO_TOP)/include/cairo \ -I$(SQLITE_TOP) \ -I$(GCOMPRIS_TOP) \ -I$(GCOMPRIS_TOP)/src/boards \ -I$(ICONV_TOP)/include LIB_PATHS = -L$(GTK_TOP)/lib \ -L$(GLIB_TOP)/lib \ -L$(LIBXML2_TOP)/lib \ -L$(SDL_TOP)/lib \ -L$(CANVAS_TOP) \ -L$(PYTHON_TOP)/libs \ -L$(SQLITE_TOP) \ -L$(ICONV_TOP)/lib \ -L$(GCOMPRIS_TOP)/src/gcompris ## ## SOURCES, OBJECTS ## EXE_C_SRC = \ about.c \ anim.c \ bar.c \ binreloc.c \ board.c \ board_config.c \ board_config_combo.c \ board_config_common.c \ board_config_radio.c \ board_config_textview.c \ board_config_wordlist.c \ bonus.c \ config.c \ dialog.c \ drag.c \ file_selector.c \ gameutil.c \ gcompris.c \ gcompris_alphabeta.c \ gcompris_confirm.c \ gcompris_db.c \ gcompris_im.c \ gc_net.c \ help.c \ images_selector.c \ log.c \ menu.c \ pixbuf_util.c \ profile.c \ properties.c \ score.c \ skin.c \ soundutil.c \ soundutil_sdl.c \ sdlplayer.c \ timer.c \ wordlist.c RC_SRC = gcomprisrc.rc EXE_OBJECTS = $(EXE_C_SRC:%.c=%.o) $(RC_SRC:%.rc=%.o) ## ## LIBRARIES ## EXE_LIBS = ../boards/libboards.a \ ../libgnomecanvas/libgnomecanvas.a \ ../libart_lgpl/libart_lgpl.a \ -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 \ -lxml2 \ -lSDLmain -lSDL -lSDL_mixer \ -lpangoft2-1.0 \ -liconv \ -lpython24 \ -lsqlite3 ## ## 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 install: all cp $(GCOMPRIS_SRC)/gcompris.exe $(GCOMPRIS_INSTALL_DIR) # # BUILD EXE # $(TARGET).exe: $(EXE_OBJECTS) ../boards/libboards.a $(CC) $(LDFLAGS) $(EXE_OBJECTS) $(LIB_PATHS) $(EXE_LIBS) -o $(TARGET).exe ## ## CLEAN RULES ## clean: rm -rf *.o rm -rf $(TARGET).exe