diff options
author | Bruno Coudoin <bruno.coudoin@free.fr> | 2009-07-09 23:56:16 (GMT) |
---|---|---|
committer | Bruno Coudoin <bruno.coudoin@free.fr> | 2009-07-09 23:56:16 (GMT) |
commit | 2903863ed501180811da624090e5ce2c9b50c9c8 (patch) | |
tree | b65e65bb72d7ee133dc2b423be5bb17e54e6e35e | |
parent | b773fa88eff6fba180498b2cef077947c00f13f4 (diff) |
Updated windows compilation process.
-rw-r--r-- | Makefile.mingw | 138 | ||||
-rw-r--r-- | Makefile.mingw.in | 42 |
2 files changed, 25 insertions, 155 deletions
diff --git a/Makefile.mingw b/Makefile.mingw deleted file mode 100644 index a077cee..0000000 --- a/Makefile.mingw +++ /dev/null @@ -1,138 +0,0 @@ -# Makefile.mingw -# -# Author: Bruno Coudoin (from GAIM example) -# Description: Top Makefile for win32 (mingw) port of GCompris -# - -VERSION = "8.3.12" - -pkgdatadir = gcompris - -GCOMPRIS_SRC = ./src/gcompris -GCOMPRIS_BOARDS = ./src/boards -GCOMPRIS_INSTALL_DIR = ./win32-install-dir - -include global_win32.mak - -# These will be copied in the win32-install-dir ready to be packaged. -NEEDED_DLLS = $(GNUCAP_TOP)/src/MSW/gnucap.exe \ - $(GNUCHESS_TOP)/bin/gnuchess.exe \ - $(GNUCHESS_TOP)/bin/libreadline.dll \ - $(GNUCHESS_TOP)/bin/pthreadGC2.dll \ - $(FREETYPE_TOP)/bin/freetype6.dll \ - $(GTK_TOP)/bin/gspawn-win32-helper.exe \ - $(ICONV_TOP)/bin/iconv.dll \ - $(GTK_TOP)/bin/intl.dll \ - $(GTK_TOP)/bin/libexpat.dll \ - $(GTK_TOP)/bin/jpeg62.dll \ - $(GTK_TOP)/bin/libatk-1.0-0.dll \ - $(GTK_TOP)/bin/libcairo-2.dll \ - $(FONTCONFIG_TOP)/bin/libfontconfig-1.dll \ - $(GTK_TOP)/bin/libgdk-win32-2.0-0.dll \ - $(GTK_TOP)/bin/libgdk_pixbuf-2.0-0.dll \ - $(GTK_TOP)/bin/libglib-2.0-0.dll \ - $(GTK_TOP)/bin/libgmodule-2.0-0.dll \ - $(GTK_TOP)/bin/libgobject-2.0-0.dll \ - $(GTK_TOP)/bin/libgthread-2.0-0.dll \ - $(GTK_TOP)/bin/libgtk-win32-2.0-0.dll \ - $(GTK_TOP)/bin/libpango-1.0-0.dll \ - $(GTK_TOP)/bin/libpangocairo-1.0-0.dll \ - $(GTK_TOP)/bin/libpangoft2-1.0-0.dll \ - $(GTK_TOP)/bin/libpangowin32-1.0-0.dll \ - $(GTK_TOP)/bin/libpng12-0.dll \ - $(GTK_TOP)/bin/zlib1.dll \ - $(GTK_TOP)/bin/libgio-2.0-0.dll \ - $(LIBXML2_TOP)/bin/libxml2.dll \ - $(PYTHON_TOP)/python24.dll \ - $(SDL_TOP)/bin/SDL.dll \ - $(SDL_TOP)/bin/SDL_mixer.dll \ - $(SDL_TOP)/bin/libogg-0.dll \ - $(SDL_TOP)/bin/libvorbis-0.dll \ - $(SDL_TOP)/bin/libvorbisfile-3.dll \ - $(SQLITE_TOP)/sqlite3.dll \ - $(MSVCR71_DLL) - -NEEDED_FILES = README \ - README.mingw \ - COPYING \ - ChangeLog - -## -## - -all: - cp config.h.mingw config.h - $(MAKE) -C ./src/libart_lgpl -f Makefile.mingw - $(MAKE) -C ./src/libgnomecanvas -f Makefile.mingw - $(MAKE) -C $(GCOMPRIS_BOARDS) -f Makefile.mingw - $(MAKE) -C $(GCOMPRIS_SRC) -f Makefile.mingw - - -install: all - mkdir -p $(GCOMPRIS_INSTALL_DIR)/share - $(MAKE) -C $(GCOMPRIS_BOARDS) -f Makefile.mingw install - $(MAKE) -C $(GCOMPRIS_SRC) -f Makefile.mingw install - cp -r $(GCOMPRIS_BOARDS)/python $(GCOMPRIS_INSTALL_DIR)/share/gcompris - rm -f $(GCOMPRIS_INSTALL_DIR)/share/gcompris/python/Makefile* - rm -f $(GCOMPRIS_INSTALL_DIR)/share/gcompris/python/gcompris/Makefile* - rm -f $(GCOMPRIS_INSTALL_DIR)/share/gcompris/python/admin/Makefile* - cp -r $(GCOMPRIS_BOARDS)/python $(GCOMPRIS_INSTALL_DIR)/share/gcompris - rm -f $(GCOMPRIS_INSTALL_DIR)/share/gcompris/python/Makefile* - rm -f $(GCOMPRIS_INSTALL_DIR)/share/gcompris/python/gcompris/Makefile* - rm -f $(GCOMPRIS_INSTALL_DIR)/share/gcompris/python/admin/Makefile* - - -# Copy mandatory files for the package in the package directory -prepack: - mkdir -p $(GCOMPRIS_INSTALL_DIR)/GTK - cp $(NEEDED_DLLS) $(GCOMPRIS_INSTALL_DIR) - cp $(NEEDED_FILES) $(GCOMPRIS_INSTALL_DIR) - cp -r $(GTK_TOP)/etc $(GCOMPRIS_INSTALL_DIR) - mkdir -p $(GCOMPRIS_INSTALL_DIR)/GTK/share - cp -r $(GTK_TOP)/share/themes $(GCOMPRIS_INSTALL_DIR)/share - mkdir -p $(GCOMPRIS_INSTALL_DIR)/lib - cp -r $(GTK_TOP)/lib/gtk-2.0 $(GCOMPRIS_INSTALL_DIR)/lib - -# THIS STAGE MUST BE DONE ON WINDOWS -python: - cp $(PYTHON_TOP)/DLLs/tcl84.dll $(GCOMPRIS_INSTALL_DIR) - cp $(PYTHON_TOP)/DLLs/tk84.dll $(GCOMPRIS_INSTALL_DIR) - cp tools/py2exe/gcompris.py $(GCOMPRIS_INSTALL_DIR) - cp tools/py2exe/setup.py $(GCOMPRIS_INSTALL_DIR) - cd $(GCOMPRIS_INSTALL_DIR);$(PYTHON_TOP)/python.exe setup.py py2exe;cp dist/library.zip python24.zip;cp dist/*.pyd .;rm -rf dist build;rm -f gcompris.py*;cd .. - rm -f $(GCOMPRIS_INSTALL_DIR)/tcl84.dll - rm -f $(GCOMPRIS_INSTALL_DIR)/tk84.dll - -installer: - $(MAKENSIS) gcompris-installer.nsi - -clean: - $(MAKE) -C $(GCOMPRIS_SRC) -f Makefile.mingw clean - $(MAKE) -C $(GCOMPRIS_BOARDS) -f Makefile.mingw clean - $(MAKE) -C ./src/libart_lgpl -f Makefile.mingw clean - $(MAKE) -C ./src/libgnomecanvas -f Makefile.mingw clean - rm -rf config.h - rm -rf gcompris*.exe - -# -# Run this on Linux to prepare datadir for windows -# -prep: - mkdir $(GCOMPRIS_INSTALL_DIR) - - mkdir -p $(GCOMPRIS_INSTALL_DIR)/share/$(pkgdatadir)/boards - cd boards ; tar cf - --exclude "Makefile.in" --exclude "*.in" --exclude "*~" --exclude "Makefile" --exclude "Makefile.am" --exclude .svn --exclude .xvpics * | ( cd ../$(GCOMPRIS_INSTALL_DIR)/share/$(pkgdatadir)/boards ; tar xf -) ; cd .. ; - @echo "-------------------------------------------------------------------------------" - @echo " WARNING: MAKE SURE TO HAVE RUN A MAKE INSTALL OF GCOMPRIS IN /USR/LOCAL FIRST" - @echo "-------------------------------------------------------------------------------" - mkdir -p $(GCOMPRIS_INSTALL_DIR)/share/locale - cp -r /usr/local/share/locale/* $(GCOMPRIS_INSTALL_DIR)/share/locale/ - @echo "Remove other .mo file not from gcompris" - find ./win32-install-dir/share/locale/ -name \*.mo | grep -v gcompris.mo | xargs rm -f - @echo "Copy pixmap" - mkdir $(GCOMPRIS_INSTALL_DIR)/share/pixmaps - cp gcompris.png $(GCOMPRIS_INSTALL_DIR)/share/pixmaps - @echo remove tuxpaint activity - rm -f $(GCOMPRIS_INSTALL_DIR)/share/$(pkgdatadir)/boards/tuxpaint.xml - @echo "Create the file gcompris-win-prepack.tar.gz" - tar --exclude "Makefile.in" --exclude "*.in" --exclude "*~" --exclude "Makefile" --exclude "Makefile.am" --exclude .svn --exclude .xvpics -czf gcompris-win-prepack.tar.gz win32-install-dir nsis tools Makefile.mingw config.h.mingw diff --git a/Makefile.mingw.in b/Makefile.mingw.in index bdf5f6f..8d21a1e 100644 --- a/Makefile.mingw.in +++ b/Makefile.mingw.in @@ -21,7 +21,6 @@ NEEDED_DLLS = $(GNUCHESS_TOP)/bin/pthreadGC2.dll \ $(FONTCONFIG_TOP)/bin/libfontconfig-1.dll \ $(FREETYPE_TOP)/bin/freetype6.dll \ $(GNUCAP_TOP)/src/MSW/gnucap.exe \ - $(GNUWIN32_TOP)/bin/libintl-2.dll \ $(GTK_TOP)/bin/gspawn-win32-helper.exe \ $(GTK_TOP)/bin/intl.dll \ $(GTK_TOP)/bin/jpeg62.dll \ @@ -39,9 +38,10 @@ NEEDED_DLLS = $(GNUCHESS_TOP)/bin/pthreadGC2.dll \ $(GTK_TOP)/bin/libpangocairo-1.0-0.dll \ $(GTK_TOP)/bin/libpangoft2-1.0-0.dll \ $(GTK_TOP)/bin/libpangowin32-1.0-0.dll \ + $(GTK_TOP)/bin/libgio-2.0-0.dll \ $(GTK_TOP)/bin/libpng12-0.dll \ $(GTK_TOP)/bin/zlib1.dll \ - $(ICONV_TOP)/bin/libiconv-2.dll \ + $(ICONV_TOP)/bin/iconv.dll \ $(LIBXML2_TOP)/bin/libxml2.dll \ $(MSVCR71_DLL) \ $(SDL_TOP)/bin/SDL.dll \ @@ -59,15 +59,20 @@ NEEDED_FILES = README \ ## ## -all: +all: Makefile.mingw cp config.h.mingw config.h $(MAKE) -C ./src/libart_lgpl -f Makefile.mingw $(MAKE) -C ./src/libgnomecanvas -f Makefile.mingw $(MAKE) -C $(GCOMPRIS_BOARDS) -f Makefile.mingw $(MAKE) -C $(GCOMPRIS_SRC) -f Makefile.mingw +Makefile.mingw: Makefile.mingw.in + ./config.status Makefile.mingw -install: all +gcompris-installer.nsi: gcompris-installer.nsi.in + ./config.status gcompris-installer.nsi + +install: all Makefile.mingw mkdir -p $(GCOMPRIS_INSTALL_DIR)/share $(MAKE) -C $(GCOMPRIS_SRC) -f Makefile.mingw install cp -r $(GCOMPRIS_BOARDS)/python $(GCOMPRIS_INSTALL_DIR)/share/gcompris @@ -81,7 +86,7 @@ install: all # Copy mandratory files for the package in the package directory -prepack: +prepack: Makefile.mingw mkdir -p $(GCOMPRIS_INSTALL_DIR)/GTK cp $(NEEDED_DLLS) $(GCOMPRIS_INSTALL_DIR) cp $(NEEDED_FILES) $(GCOMPRIS_INSTALL_DIR) @@ -89,23 +94,23 @@ prepack: mkdir -p $(GCOMPRIS_INSTALL_DIR)/GTK/share cp -r $(GTK_TOP)/share/themes $(GCOMPRIS_INSTALL_DIR)/share mkdir -p $(GCOMPRIS_INSTALL_DIR)/lib - cp -r $(GTK_TOP)/lib/locale $(GCOMPRIS_INSTALL_DIR)/lib + cp -r $(GTK_TOP)/share/locale $(GCOMPRIS_INSTALL_DIR)/lib cp -r $(GTK_TOP)/lib/gtk-2.0 $(GCOMPRIS_INSTALL_DIR)/lib - cp -r $(GTK_TOP)/lib/pango $(GCOMPRIS_INSTALL_DIR)/lib -python: +python: Makefile.mingw cp $(PYTHON_TOP)/DLLs/tcl84.dll $(GCOMPRIS_INSTALL_DIR) cp $(PYTHON_TOP)/DLLs/tk84.dll $(GCOMPRIS_INSTALL_DIR) + cp $(PYTHON_TOP)/DLLs/python24.dll $(GCOMPRIS_INSTALL_DIR) cp tools/py2exe/gcompris.py $(GCOMPRIS_INSTALL_DIR) cp tools/py2exe/setup.py $(GCOMPRIS_INSTALL_DIR) cd $(GCOMPRIS_INSTALL_DIR);$(PYTHON_TOP)/python.exe setup.py py2exe;cp dist/library.zip python24.zip;cp dist/*.pyd .;rm -rf dist build;rm -f gcompris.py*;cd .. rm -f $(GCOMPRIS_INSTALL_DIR)/tcl84.dll rm -f $(GCOMPRIS_INSTALL_DIR)/tk84.dll -installer: +installer: Makefile.mingw gcompris-installer.nsi $(MAKENSIS) gcompris-installer.nsi -clean: +clean: Makefile.mingw $(MAKE) -C ./src/libart_lgpl -f Makefile.mingw clean $(MAKE) -C ./src/libgnomecanvas -f Makefile.mingw clean $(MAKE) -C $(GCOMPRIS_SRC) -f Makefile.mingw clean @@ -116,11 +121,10 @@ clean: # # Run this on Linux to prepare datadir for windows # -prep: - mkdir $(GCOMPRIS_INSTALL_DIR) - +prep: Makefile.mingw + mkdir -p $(GCOMPRIS_INSTALL_DIR) mkdir -p $(GCOMPRIS_INSTALL_DIR)/share/$(pkgdatadir)/boards - cd boards ; tar cf - --exclude "Makefile.in" --exclude "*.in" --exclude "*~" --exclude "Makefile" --exclude "Makefile.am" --exclude .svn --exclude .xvpics * | ( cd ../$(GCOMPRIS_INSTALL_DIR)/share/$(pkgdatadir)/boards ; tar xf -) ; cd .. ; + cd boards ; tar cf - --exclude "Makefile.in" --exclude "*.in" --exclude "*~" --exclude "Makefile" --exclude "Makefile.am" --exclude .svn * | ( cd ../$(GCOMPRIS_INSTALL_DIR)/share/$(pkgdatadir)/boards ; tar xf -) ; cd .. ; @echo "-------------------------------------------------------------------------------" @echo " WARNING: MAKE SURE TO HAVE RUN A MAKE INSTALL OF GCOMPRIS IN /USR/LOCAL FIRST" @echo "-------------------------------------------------------------------------------" @@ -129,9 +133,13 @@ prep: @echo "Remove other .mo file not from gcompris" find ./win32-install-dir/share/locale/ -name \*.mo | grep -v gcompris.mo | xargs rm -f @echo "Copy pixmap" - mkdir $(GCOMPRIS_INSTALL_DIR)/share/pixmaps + mkdir -p $(GCOMPRIS_INSTALL_DIR)/share/pixmaps cp gcompris.png $(GCOMPRIS_INSTALL_DIR)/share/pixmaps @echo remove tuxpaint activity rm -f $(GCOMPRIS_INSTALL_DIR)/share/$(pkgdatadir)/boards/tuxpaint.xml - @echo "Create the file gcompris-win-prepack.tar.gz" - tar --exclude "Makefile.in" --exclude "*.in" --exclude "*~" --exclude "Makefile" --exclude "Makefile.am" --exclude .svn --exclude .xvpics -czf gcompris-win-prepack.tar.gz win32-install-dir nsis tools Makefile.mingw config.h.mingw + find $(GCOMPRIS_INSTALL_DIR) -name "Makefile*" -exec rm -f {} \; + find $(GCOMPRIS_INSTALL_DIR) -name "*.in" -exec rm -f {} \; + find $(GCOMPRIS_INSTALL_DIR) -name "*~" -exec rm -f {} \; + cp -r nsis tools Makefile.mingw config.h.mingw $(GCOMPRIS_INSTALL_DIR) + mkdir -p $(GCOMPRIS_INSTALL_DIR)/nsis/translations + cp "/usr/share/nsis/Contrib/Language files"/* $(GCOMPRIS_INSTALL_DIR)/nsis/translations |