diff --git a/build/android/Makefile b/build/android/Makefile
index 060ca48d7..250626a5c 100644
--- a/build/android/Makefile
+++ b/build/android/Makefile
@@ -178,7 +178,7 @@ OPENSSL_TIMESTAMP = $(OPENSSL_DIR)timestamp
OPENSSL_TIMESTAMP_INT = $(ROOT)/deps/openssl_timestamp
OPENSSL_URL = http://www.openssl.org/source/openssl-$(OPENSSL_VERSION).tar.gz
-CURL_VERSION = 7.47.1
+CURL_VERSION = 7.48.0
CURL_DIR = $(ROOT)/deps/curl-$(CURL_VERSION)
CURL_LIB = $(CURL_DIR)/lib/.libs/libcurl.a
CURL_TIMESTAMP = $(CURL_DIR)/timestamp
diff --git a/build/windows_vs2015/build.bat b/build/windows_vs2015/build.bat
deleted file mode 100644
index e926e0995..000000000
--- a/build/windows_vs2015/build.bat
+++ /dev/null
@@ -1,9 +0,0 @@
-call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86
-SET EnableNuGetPackageRestore=true
-python build.py > build.log
-
-::SET PATH=%PATH%;"C:\Program Files (x86)\CMake\bin";"C:\Program Files (x86)\MSBuild\14.0\Bin";"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\";"C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\";"C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools";"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin"
-::::SET INCLUDE="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include";"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\atlmfc\include";"C:\Program Files (x86)\Windows Kits\10\Include\10.0.10150.0\ucrt\"; "C:\Program Files (x86)\Windows Kits\8.1\Include\um\";"C:\Program Files\Microsoft SDKs\Windows\v7.1\Include";
-::SET INCLUDE="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include";"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\atlmfc\include";"C:\Program Files (x86)\Windows Kits\10\Include\10.0.10150.0\ucrt\";"C:\Program Files\Microsoft SDKs\Windows\v7.1\Include";
-::::SET LIB="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\";"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\atlmfc\lib\"; "C:\Program Files (x86)\Windows Kits\8.1\Include\um\";"C:\Program Files\Microsoft SDKs\Windows\v7.1\Lib";
-::SET LIB="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\";"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\atlmfc\lib\"; "C:\Program Files\Microsoft SDKs\Windows\v7.1\Lib";
diff --git a/build/windows_vs2015/build.py b/build/windows_vs2015/build.py
index 43cecf387..33423d6f9 100644
--- a/build/windows_vs2015/build.py
+++ b/build/windows_vs2015/build.py
@@ -64,7 +64,7 @@ LEVELDB_VERSION = "1.16.0.5"
CRC32C_VERSION = "1.0.4"
SNAPPY_VERSION = "1.1.1.7"
irrlicht = "irrlicht-1.8.1"
-curl = "curl-7.47.0"
+curl = "curl-7.48.0"
openal = "openal-soft-1.17.2"
libogg = "libogg-{}".format(LIBOGG_VERSION)
libvorbis = "libvorbis-1.3.5"
@@ -90,6 +90,22 @@ def main():
build_type = "Release"
if len(sys.argv) > 1 and sys.argv[1] == "debug":
build_type = "Debug"
+ build_arch = "x86"
+ msbuild_platform = build_arch
+
+ if len(sys.argv) > 2 and sys.argv[2] == "amd64":
+ build_arch = "amd64"
+ msbuild_platform = "x64"
+
+ msbuild_platform_zlib = "win32"
+ if build_arch == "amd64":
+ msbuild_platform_zlib = "x64"
+
+
+ cmake_add = ""
+ if build_arch == "amd64":
+ cmake_add = " -A X64 "
+
msbuild = which("MSBuild.exe")
cmake = which("cmake.exe")
vcbuild = which("vcbuild.exe")
@@ -115,8 +131,8 @@ def main():
if not os.path.exists(irrlicht):
print("Irrlicht not found, downloading.")
zip_path = "{}.zip".format(irrlicht)
- #urllib.request.urlretrieve("http://downloads.sourceforge.net/irrlicht/{}.zip".format(irrlicht), zip_path)
- urllib.request.urlretrieve("http://pkgs.fedoraproject.org/repo/pkgs/irrlicht/irrlicht-1.8.1.zip/db97cce5e92da9b053f4546c652e9bd5/irrlicht-1.8.1.zip".format(irrlicht), zip_path)
+ urllib.request.urlretrieve("http://downloads.sourceforge.net/irrlicht/{}.zip".format(irrlicht), zip_path)
+ #urllib.request.urlretrieve("http://pkgs.fedoraproject.org/repo/pkgs/irrlicht/irrlicht-1.8.1.zip/db97cce5e92da9b053f4546c652e9bd5/irrlicht-1.8.1.zip".format(irrlicht), zip_path)
extract_zip(zip_path, ".")
os.chdir(os.path.join(irrlicht, "source", "Irrlicht"))
# sorry but this breaks the build
@@ -125,7 +141,7 @@ def main():
#patch("Irrlicht11.0.vcxproj", "; _ITERATOR_DEBUG_LEVEL=0", "")
if patch_toolset:
patch("Irrlicht11.0.vcxproj", "v110", "v140")
- os.system('MSBuild Irrlicht11.0.vcxproj /p:Configuration="Static lib - {}"'.format(build_type))
+ os.system('MSBuild Irrlicht11.0.vcxproj /p:Configuration="Static lib - {build_type}" /p:Platform="{msbuild_platform}"'.format(build_type=build_type, msbuild_platform=msbuild_platform))
os.chdir(os.path.join("..", "..", ".."))
if not os.path.exists(curl):
@@ -145,8 +161,8 @@ def main():
extract_tar(tar_path, ".")
print("building openal")
os.chdir(os.path.join(openal, "build"))
- os.system("cmake .. -DFORCE_STATIC_VCRT=1 -DLIBTYPE=STATIC")
- os.system("MSBuild ALL_BUILD.vcxproj /p:Configuration={}".format(build_type))
+ os.system("cmake .. -DFORCE_STATIC_VCRT=1 -DLIBTYPE=STATIC {cmake_add}".format(cmake_add=cmake_add))
+ os.system('MSBuild ALL_BUILD.vcxproj /p:Configuration="{build_type}" /p:Platform="{msbuild_platform}"'.format(build_type=build_type, msbuild_platform=msbuild_platform))
os.chdir(os.path.join("..", ".."))
if not os.path.exists(libogg):
@@ -161,7 +177,7 @@ def main():
patch("libogg_static.vcxproj", 'StaticLibrary', 'StaticLibraryv140')
os.system("devenv /upgrade libogg_static.vcxproj")
- os.system("MSBuild libogg_static.vcxproj /p:Configuration={}".format(build_type))
+ os.system('MSBuild libogg_static.vcxproj /p:Configuration="{build_type}" /p:Platform="{msbuild_platform}"'.format(build_type=build_type, msbuild_platform=msbuild_platform))
os.chdir(os.path.join("..", "..", ".."))
if not os.path.exists(libvorbis):
@@ -187,7 +203,7 @@ def main():
patch(os.path.join("vorbisdec", "vorbisdec_static.vcxproj"), 'Application', 'Applicationv140')
os.system("devenv /upgrade vorbis_static.sln")
- os.system("MSBuild vorbis_static.sln /p:Configuration={}".format(build_type))
+ os.system('MSBuild vorbis_static.sln /p:Configuration="{build_type}" /p:Platform="{msbuild_platform_zlib}"'.format(build_type=build_type, msbuild_platform_zlib=msbuild_platform_zlib))
os.chdir(os.path.join("..", "..", ".."))
if not os.path.exists(zlib):
@@ -215,7 +231,7 @@ def main():
patch("testzlib.vcxproj", "v110", "v140")
patch("miniunz.vcxproj", "v110", "v140")
- os.system("MSBuild zlibvc.sln /p:Configuration={} /p:Platform=win32".format(build_type))
+ os.system('MSBuild zlibvc.sln /p:Configuration={build_type} /p:Platform="{msbuild_platform_zlib}"'.format(build_type=build_type, msbuild_platform_zlib=msbuild_platform_zlib))
os.chdir(os.path.join("..", "..", "..", ".."))
if not os.path.exists(freetype):
@@ -230,7 +246,7 @@ def main():
patch("freetype.vcxproj", "v100", "v140")
os.system("devenv /upgrade freetype.vcxproj")
- os.system('MSBuild freetype.vcxproj /p:Configuration="{} Multithreaded"'.format(build_type))
+ os.system('MSBuild freetype.vcxproj /p:Configuration="{build_type} Multithreaded" /p:Platform="{msbuild_platform}"'.format(build_type=build_type, msbuild_platform=msbuild_platform))
os.chdir(os.path.join("..", "..", "..", ".."))
if not os.path.exists(luajit):
@@ -293,7 +309,7 @@ def main():
# patch("msgpack_vc8.vcproj", 'RuntimeLibrary="3"', 'RuntimeLibrary="1"')
# # use newer compiler, won't link otherwise
# os.system("vcupgrade msgpack_vc8.vcproj")
- # os.system("MSBuild msgpack_vc8.vcxproj /p:Configuration={}".format(build_type))
+ # os.system('MSBuild msgpack_vc8.vcxproj /p:Configuration="{build_type}" /p:Platform="{msbuild_platform}"'.format(build_type=build_type, msbuild_platform=msbuild_platform))
# os.chdir("..")
if not os.path.exists("leveldb.nupkg"):
@@ -324,7 +340,7 @@ def main():
#os.chdir(sqlite)
#os.system("cmake . -DFORCE_STATIC_VCRT=1 -DLIBTYPE=STATIC")
- #os.system("MSBuild ALL_BUILD.vcxproj /p:Configuration={}".format(build_type))
+ #os.system("MSBuild ALL_BUILD.vcxproj /p:Configuration="{build_type}" /p:Platform="{msbuild_platform}"'.format(build_type=build_type, msbuild_platform=msbuild_platform))
#os.chdir("..")
@@ -340,6 +356,7 @@ def main():
if not os.path.exists("project"):
os.mkdir("project")
os.chdir("project")
+
cmake_string = r"""
-DCMAKE_BUILD_TYPE={build_type}
-DRUN_IN_PLACE=1
@@ -351,20 +368,20 @@ def main():
-DOPENAL_INCLUDE_DIR=..\deps\{openal}\include\AL\
-DOPENAL_LIBRARY=..\deps\{openal}\build\{build_type}\OpenAL32.lib;..\deps\{openal}\build\{build_type}\common.lib
-DOGG_INCLUDE_DIR=..\deps\{libogg}\include\
- -DOGG_LIBRARY=..\deps\{libogg}\win32\VS2010\Win32\{build_type}\libogg_static.lib
+ -DOGG_LIBRARY=..\deps\{libogg}\win32\VS2010\{ogg_arch}\{build_type}\libogg_static.lib
-DVORBIS_INCLUDE_DIR=..\deps\{libvorbis}\include\
- -DVORBIS_LIBRARY=..\deps\{libvorbis}\win32\VS2010\Win32\{build_type}\libvorbis_static.lib
- -DVORBISFILE_LIBRARY=..\deps\{libvorbis}\win32\VS2010\Win32\{build_type}\libvorbisfile_static.lib
+ -DVORBIS_LIBRARY=..\deps\{libvorbis}\win32\VS2010\{vorbis_arch}\{build_type}\libvorbis_static.lib
+ -DVORBISFILE_LIBRARY=..\deps\{libvorbis}\win32\VS2010\{vorbis_arch}\{build_type}\libvorbisfile_static.lib
-DZLIB_INCLUDE_DIR=..\deps\{zlib}\
- -DZLIB_LIBRARIES=..\deps\{zlib}\contrib\vstudio\vc11\x86\ZlibStat{build_type}\zlibstat.lib
+ -DZLIB_LIBRARIES=..\deps\{zlib}\contrib\vstudio\vc11\{curl_arch}\ZlibStat{build_type}\zlibstat.lib
-DFREETYPE_INCLUDE_DIR_freetype2=..\deps\{freetype}\include\
-DFREETYPE_INCLUDE_DIR_ft2build=..\deps\{freetype}\include\
- -DFREETYPE_LIBRARY=..\deps\{freetype}\objs\vc2010\win32\{freetype_lib}
+ -DFREETYPE_LIBRARY=..\deps\{freetype}\objs\vc2010\{freetype_arch}\{freetype_lib}
-DLUA_LIBRARY=..\deps\{luajit}\src\lua51.lib
-DLUA_INCLUDE_DIR=..\deps\{luajit}\src\
-DENABLE_CURL=1
- -DCURL_LIBRARY=..\deps\{curl}\builds\libcurl-vc-x86-{build_type}-static-ipv6-sspi-winssl\lib\{curl_lib}
- -DCURL_INCLUDE_DIR=..\deps\{curl}\builds\libcurl-vc-x86-{build_type}-static-ipv6-sspi-winssl\include
+ -DCURL_LIBRARY=..\deps\{curl}\builds\libcurl-vc-{curl_arch}-{build_type}-static-ipv6-sspi-winssl\lib\{curl_lib}
+ -DCURL_INCLUDE_DIR=..\deps\{curl}\builds\libcurl-vc-{curl_arch}-{build_type}-static-ipv6-sspi-winssl\include
-DGETTEXT_INCLUDE_DIR=C:\usr\include\
-DGETTEXT_LIBRARY=C:\usr\lib\intl.lib
-DICONV_LIBRARY=C:\usr\lib\iconv.lib
@@ -373,8 +390,13 @@ def main():
-DENABLE_LEVELDB=1
-DFORCE_LEVELDB=1
-DENABLE_SQLITE3=1
+ {cmake_add}
""".format(
curl_lib="libcurl_a.lib" if build_type != "Debug" else "libcurl_a_debug.lib",
+ curl_arch="x86" if build_arch == "x86" else "x64",
+ vorbis_arch="Win32" if build_arch == "x86" else "x64",
+ ogg_arch="Win32" if build_arch == "x86" else "X64",
+ freetype_arch="win32" if build_arch == "x86" else "X64",
freetype_lib="freetype261MT.lib" if build_type != "Debug" else "freetype261MT_D.lib",
build_type=build_type,
irrlicht=irrlicht,
@@ -385,6 +407,7 @@ def main():
libogg=libogg,
libvorbis=libvorbis,
curl=curl,
+ cmake_add=cmake_add,
#msgpack=msgpack,
#msgpack_suffix="d" if build_type == "Debug" else "",
).replace("\n", "")
@@ -393,9 +416,8 @@ def main():
# -DMSGPACK_INCLUDE_DIR=..\deps\{msgpack}\include\
# -DMSGPACK_LIBRARY=..\deps\{msgpack}\lib\msgpack{msgpack_suffix}.lib
-
os.system(r"cmake ..\..\.. " + cmake_string)
- patch(os.path.join("src", "freeminer.vcxproj"), "", r";$(DXSDK_DIR)\Lib\x86")
+ patch(os.path.join("src", "freeminer.vcxproj"), "", r";$(DXSDK_DIR)\Lib\{}".format(msbuild_platform))
#patch(os.path.join("src", "sqlite", "sqlite3.vcxproj"), "MultiThreadedDebugDLL", "MultiThreadedDebug")
# wtf, cmake?
patch(os.path.join("src", "enet", "enet.vcxproj"), "MultiThreadedDLL", "MultiThreaded")
diff --git a/build/windows_vs2015/build_32.bat b/build/windows_vs2015/build_32.bat
new file mode 100644
index 000000000..4c031527a
--- /dev/null
+++ b/build/windows_vs2015/build_32.bat
@@ -0,0 +1,3 @@
+call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86
+SET EnableNuGetPackageRestore=true
+python build.py > build.log
diff --git a/build/windows_vs2015/build_64.bat b/build/windows_vs2015/build_64.bat
new file mode 100644
index 000000000..25ad55c97
--- /dev/null
+++ b/build/windows_vs2015/build_64.bat
@@ -0,0 +1,5 @@
+echo NOT FINIHSED
+
+call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
+SET EnableNuGetPackageRestore=true
+python build.py release amd64 > build.log
diff --git a/cmake/Modules/FindIrrlicht.cmake b/cmake/Modules/FindIrrlicht.cmake
index 8dda15722..6b50c1591 100644
--- a/cmake/Modules/FindIrrlicht.cmake
+++ b/cmake/Modules/FindIrrlicht.cmake
@@ -14,7 +14,11 @@ if(NOT IRRLICHT_SOURCE_DIR STREQUAL "")
if(WIN32)
if(MSVC)
+ if(CMAKE_CL_64)
+ set(IRRLICHT_SOURCE_DIR_LIBS "${IRRLICHT_SOURCE_DIR}/lib/Win64-visualstudio")
+ else()
set(IRRLICHT_SOURCE_DIR_LIBS "${IRRLICHT_SOURCE_DIR}/lib/Win32-visualstudio")
+ endif()
set(IRRLICHT_LIBRARY_NAMES Irrlicht.lib)
else()
set(IRRLICHT_SOURCE_DIR_LIBS "${IRRLICHT_SOURCE_DIR}/lib/Win32-gcc")
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index c9a7cfc44..11bb2c1ad 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -133,7 +133,6 @@ if(MSVC)
# Flags for C files (sqlite)
# /MT = Link statically with standard library stuff
set(CMAKE_C_FLAGS_RELEASE "/O2 /Ob2 /MT")
-
else()
# Probably GCC
if(APPLE)
diff --git a/src/defaultsettings.cpp b/src/defaultsettings.cpp
index 40ae3c5ce..015151dfd 100644
--- a/src/defaultsettings.cpp
+++ b/src/defaultsettings.cpp
@@ -167,7 +167,7 @@ void fm_set_default_settings(Settings *settings) {
settings->setDefault("cloud_height", "300"); // "120"
settings->setDefault("enable_zoom_cinematic", "true");
settings->setDefault("wanted_fps", android ? "25" : "30");
- settings->setDefault("viewing_range_max", android ? "500" : "10000" /*itos(MAX_MAP_GENERATION_LIMIT)*/); // "240"
+ settings->setDefault("viewing_range_max", ((win32 && !win64) || android) ? "300" : "10000" /*itos(MAX_MAP_GENERATION_LIMIT)*/); // "240"
settings->setDefault("shadows", "0");
settings->setDefault("zoom_fov", "15");
settings->setDefault("farmesh", android ? "2" : "0");