diff --git a/.travis.yml b/.travis.yml
index 9430365de..ee8290632 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,17 +1,30 @@
language: cpp
+branches:
+ except:
+ - latest-master
before_install:
- - export PSPDEV="$TRAVIS_BUILD_DIR/opt/pspsdk"
- - export PSPSDK="$PSPDEV/psp/sdk"
- - export PATH="$PATH:$PSPDEV/bin:$PSPSDK/bin"
- - export ANDROID="android-sdk-linux/tools/android"
+- export PSPDEV="$TRAVIS_BUILD_DIR/opt/pspsdk"
+- export PSPSDK="$PSPDEV/psp/sdk"
+- export PATH="$PATH:$PSPDEV/bin:$PSPSDK/bin"
+- export ANDROID="android-sdk-linux/tools/android"
install:
- - sudo apt-get update -qq
- - if [ `uname -m` = x86_64 ]; then sudo apt-get install -qq --force-yes libgd2-xpm ia32-libs ia32-libs-multiarch; fi
- - wget -O sdk.lzma http://sourceforge.net/projects/minpspw/files/SDK%20%2B%20devpak/pspsdk%200.11.2/minpspw_0.11.2-amd64.tar.lzma/download
- - tar -x --xz -f sdk.lzma
- - wget http://dl.google.com/android/ndk/android-ndk-r9-linux-x86_64.tar.bz2 -nv
- - wget http://dl.google.com/android/android-sdk_r22-linux.tgz -nv
- - tar --absolute-names -jxf android-ndk-r9-linux-x86_64.tar.bz2
- - tar -zxf android-sdk_r22-linux.tgz
- - echo yes | $ANDROID update sdk --filter 1,2,3,8 --no-ui --force > log.txt
+- sudo add-apt-repository ppa:tobydox/mingw -y
+- sudo apt-get update -qq
+- if [ `uname -m` = x86_64 ]; then sudo apt-get install -qq --force-yes libgd2-xpm ia32-libs ia32-libs-multiarch jq mingw32-x-gcc mingw32-x-qt; fi
+- sudo ln -s /opt/mingw32/bin/moc /opt/mingw32/bin/i686-w64-mingw32-moc
+- wget -O sdk.lzma http://sourceforge.net/projects/minpspw/files/SDK%20%2B%20devpak/pspsdk%200.11.2/minpspw_0.11.2-amd64.tar.lzma/download
+- tar -x --xz -f sdk.lzma
+- wget http://dl.google.com/android/ndk/android-ndk-r9-linux-x86_64.tar.bz2 -nv
+- wget http://dl.google.com/android/android-sdk_r22-linux.tgz -nv
+- tar --absolute-names -jxf android-ndk-r9-linux-x86_64.tar.bz2
+- tar -zxf android-sdk_r22-linux.tgz
+- $ANDROID list sdk --extended -a
+- echo yes | $ANDROID update sdk -a --filter "tools","platform-tools","build-tools-19.0.1","android-10" --no-ui --force > log.txt
+- sudo pip install pyjavaproperties
+script: ./travis-script.sh
+env:
+ global:
+ secure: "fJgWlCFbde96OSQNGKUmowGX+ERPeqP+n1EOMf1+FJzOU4DdkTLRAlV5+5qnEX9jB/3mWN6iPpmG1qEz/SdDG3KHxJYs4ZU/Lu485O24zZ/+GdYBNsrvhPD9ckPGEMLDa1foEVTDnW0Dlkz3BCFcszjhtXGUJv7v6Pj6LRk1Mg8="
+
script: "./travis-script.sh"
+after_success: ./upload-binaries.sh
diff --git a/JGE/Dependencies/lib/libjpeg-static-mt-debug.pdb b/JGE/Dependencies/lib/libjpeg-static-mt-debug.pdb
deleted file mode 100644
index 5e7dbba29..000000000
Binary files a/JGE/Dependencies/lib/libjpeg-static-mt-debug.pdb and /dev/null differ
diff --git a/JGE/Dependencies/lib/libjpeg-static-mt.pdb b/JGE/Dependencies/lib/libjpeg-static-mt.pdb
deleted file mode 100644
index 0c108332a..000000000
Binary files a/JGE/Dependencies/lib/libjpeg-static-mt.pdb and /dev/null differ
diff --git a/JGE/JGE.vcxproj b/JGE/JGE.vcxproj
index 567c398e3..f39975b77 100644
--- a/JGE/JGE.vcxproj
+++ b/JGE/JGE.vcxproj
@@ -73,7 +73,7 @@
MaxSpeed
OnlyExplicitInline
src/zipFS;Dependencies/SDL/include;Dependencies/include;$(JGEEXTRAS);../Boost;../projects/mtg/include;include;%(AdditionalIncludeDirectories)
- SDL_CONFIG;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)
+ TIXML_USE_STL; SDL_CONFIG;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)
true
MultiThreadedDLL
true
@@ -101,7 +101,7 @@
Disabled
src/zipFS;Dependencies/SDL/include;Dependencies/include;$(JGEEXTRAS);../Boost;../projects/mtg/include;include;%(AdditionalIncludeDirectories)
- SDL_CONFIG;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)
+ TIXML_USE_STL; SDL_CONFIG;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)
EnableFastChecks
MultiThreadedDLL
@@ -129,7 +129,7 @@
Full
OnlyExplicitInline
src/zipFS;Dependencies/SDL/include;Dependencies/include;$(JGEEXTRAS);../Boost;../projects/mtg/include;include;%(AdditionalIncludeDirectories)
- SDL_CONFIG;WIN32;NDEBUG;_LIB;_SECURE_SCL=0;_HAS_ITERATOR_DEBBUGING=0;%(PreprocessorDefinitions)
+ TIXML_USE_STL; SDL_CONFIG;WIN32;NDEBUG;_LIB;_SECURE_SCL=0;_HAS_ITERATOR_DEBBUGING=0;%(PreprocessorDefinitions)
true
MultiThreadedDLL
true
diff --git a/JGE/Makefile b/JGE/Makefile
index 2849fa678..3d86cc650 100644
--- a/JGE/Makefile
+++ b/JGE/Makefile
@@ -31,6 +31,7 @@ HGE_OBJS = src/hge/hgecolor.o src/hge/hgeparticle.o \
CXXFLAGS = -W -Wall -Werror -Wno-unused
+CXXFLAGS += -DTIXML_USE_STL
ifdef DEBUG
CXXFLAGS += -ggdb3
diff --git a/JGE/include/DebugRoutines.h b/JGE/include/DebugRoutines.h
index 1ce188214..43569b162 100644
--- a/JGE/include/DebugRoutines.h
+++ b/JGE/include/DebugRoutines.h
@@ -61,7 +61,7 @@ std::string ToHex(T* pointer)
{ \
std::ostringstream stream; \
stream << inString << std::endl; \
- OutputDebugString(stream.str().c_str()); \
+ OutputDebugStringA(stream.str().c_str()); \
}
#endif // QT_CONFIG
#endif // Win32, Linux
diff --git a/JGE/include/Downloader.h b/JGE/include/Downloader.h
new file mode 100644
index 000000000..96c643ae2
--- /dev/null
+++ b/JGE/include/Downloader.h
@@ -0,0 +1,128 @@
+#ifndef DOWNLOADER_H
+#define DOWNLOADER_H
+
+//-------------------------------------------------------------------------------------
+//
+// This class handles download of remote resources (any kind of file)
+// All the resources are stored locally in the userPath
+// For every resources, the downloader verifies if the resource was modifed
+// on the server before downloading the update. The Downloader maintains a catalogue
+// of resource downloaded to be able to check if they need to be updated.
+//
+// The interface can be used completly synchronously by the application and some
+// context or message loop is needed in the implementation of this interface
+//
+// Note that the Downloader could in theory by implemented on top of JNetwork.
+//
+//-------------------------------------------------------------------------------------
+#include
+#include
+#include
+#include
+#include