From addf8d97982918732b15ad9da19be689a2432b76 Mon Sep 17 00:00:00 2001 From: Thomas Bernard Date: Fri, 4 Jan 2019 21:00:56 +0100 Subject: [PATCH] Win32/msvc: build with libtiff --- project/msvc/grafx2-win32.vcxproj | 13 +++++++------ project/msvc/grafx2-win32.vcxproj.filters | 3 +++ project/msvc/grafx2.vcxproj | 5 +++-- project/msvc/grafx2.vcxproj.filters | 3 +++ project/msvc/libraries.props | 2 ++ src/tifformat.c | 22 +++++++++++++++++++++- 6 files changed, 39 insertions(+), 9 deletions(-) diff --git a/project/msvc/grafx2-win32.vcxproj b/project/msvc/grafx2-win32.vcxproj index fd4d3604..6fc3310b 100644 --- a/project/msvc/grafx2-win32.vcxproj +++ b/project/msvc/grafx2-win32.vcxproj @@ -53,13 +53,13 @@ Disabled NOTTF;__ENABLE_LUA__;_CRT_SECURE_NO_WARNINGS;_USE_MATH_DEFINES;WIN32;_DEBUG;%(PreprocessorDefinitions) 4244 - $(PNGIncDir);$(LuaIncDir);%(AdditionalIncludeDirectories) + $(TIFFIncDir);$(PNGIncDir);$(LuaIncDir);%(AdditionalIncludeDirectories) MultiThreadedDebug true - lua53.lib;libpng16.lib;zlib.lib;%(AdditionalDependencies) - $(PNGLibDirDebug);$(LuaLibDir);%(AdditionalLibraryDirectories) + libtiff.lib;lua53.lib;libpng16.lib;zlib.lib;%(AdditionalDependencies) + $(TIFFLibDir);$(PNGLibDirDebug);$(LuaLibDir);%(AdditionalLibraryDirectories) @@ -70,15 +70,15 @@ true NOTTF;__ENABLE_LUA__;_CRT_SECURE_NO_WARNINGS;_USE_MATH_DEFINES;WIN32;NDEBUG;%(PreprocessorDefinitions) 4244 - $(PNGIncDir);$(LuaIncDir);%(AdditionalIncludeDirectories) + $(TIFFIncDir);$(PNGIncDir);$(LuaIncDir);%(AdditionalIncludeDirectories) MultiThreaded true true true - lua53.lib;libpng16.lib;zlib.lib;%(AdditionalDependencies) - $(PNGLibDirRelease);$(LuaLibDir);%(AdditionalLibraryDirectories) + libtiff.lib;lua53.lib;libpng16.lib;zlib.lib;%(AdditionalDependencies) + $(TIFFLibDir);$(PNGLibDirRelease);$(LuaLibDir);%(AdditionalLibraryDirectories) @@ -133,6 +133,7 @@ + diff --git a/project/msvc/grafx2-win32.vcxproj.filters b/project/msvc/grafx2-win32.vcxproj.filters index 8c013acb..678145fb 100644 --- a/project/msvc/grafx2-win32.vcxproj.filters +++ b/project/msvc/grafx2-win32.vcxproj.filters @@ -186,6 +186,9 @@ Fichiers sources + + Fichiers sources + diff --git a/project/msvc/grafx2.vcxproj b/project/msvc/grafx2.vcxproj index 1b580d42..9bf5abc2 100644 --- a/project/msvc/grafx2.vcxproj +++ b/project/msvc/grafx2.vcxproj @@ -56,7 +56,7 @@ Level3 Disabled - USE_SDL;NOTTF;__ENABLE_LUA__;__no_pnglib__;_CRT_SECURE_NO_WARNINGS;_USE_MATH_DEFINES;WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions) + USE_SDL;NOTTF;__ENABLE_LUA__;__no_pnglib__;__no_tifflib__;_CRT_SECURE_NO_WARNINGS;_USE_MATH_DEFINES;WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions) $(SDLImageIncDir);$(SDLIncDir);$(LuaIncDir);%(AdditionalIncludeDirectories) 4244;%(DisableSpecificWarnings) @@ -75,7 +75,7 @@ MaxSpeed true true - USE_SDL;NOTTF;__ENABLE_LUA__;__no_pnglib__;_CRT_SECURE_NO_WARNINGS;_USE_MATH_DEFINES;WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions) + USE_SDL;NOTTF;__ENABLE_LUA__;__no_pnglib__;__no_tifflib__;_CRT_SECURE_NO_WARNINGS;_USE_MATH_DEFINES;WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions) $(SDLImageIncDir);$(SDLIncDir);$(LuaIncDir);;%(AdditionalIncludeDirectories) 4244;%(DisableSpecificWarnings) @@ -204,6 +204,7 @@ + diff --git a/project/msvc/grafx2.vcxproj.filters b/project/msvc/grafx2.vcxproj.filters index 0fe3804d..235e2e2d 100644 --- a/project/msvc/grafx2.vcxproj.filters +++ b/project/msvc/grafx2.vcxproj.filters @@ -367,5 +367,8 @@ Fichiers sources + + Fichiers sources + \ No newline at end of file diff --git a/project/msvc/libraries.props b/project/msvc/libraries.props index f8ac9b5f..edb6632f 100644 --- a/project/msvc/libraries.props +++ b/project/msvc/libraries.props @@ -11,5 +11,7 @@ ..\..\..\..\lpng1634 ..\..\..\..\lpng1634\projects\vstudio\Debug Library ..\..\..\..\lpng1634\projects\vstudio\Release Library + ..\..\..\..\tiff-4.0.10\libtiff + ..\..\..\..\tiff-4.0.10\libtiff diff --git a/src/tifformat.c b/src/tifformat.c index 8a800243..ac4655f7 100644 --- a/src/tifformat.c +++ b/src/tifformat.c @@ -27,6 +27,13 @@ #ifndef __no_tifflib__ +#ifdef _MSC_VER +#include +#if _MSC_VER < 1900 +#define snprintf _snprintf +#define fileno _fileno +#endif +#endif #include #include "global.h" #include "io.h" @@ -350,8 +357,9 @@ void Load_TIFF_Sub(T_IO_Context * context, TIFF * tif, unsigned long file_size) /// Load TIFF from file void Load_TIFF(T_IO_Context * context) { - FILE * file; TIFF * tif; +#if !defined(WIN32) + FILE * file; File_error = 1; @@ -366,6 +374,18 @@ void Load_TIFF(T_IO_Context * context) } fclose(file); } +#else + char filename[MAX_PATH_CHARACTERS]; // filename with full path + + File_error = 1; + Get_full_filename(filename, context->File_name, context->File_directory); + tif = TIFFOpen(filename, "r"); + if (tif != NULL) + { + Load_TIFF_Sub(context, tif, File_length(filename)); + TIFFClose(tif); + } +#endif }