commit 584c3a6f7bd3fefbabdcae7d1e702f7d1055c844
Author: Peter Kümmel <[email protected]>
Date:   Wed Dec 9 17:59:47 2015 +0100

    build with msvc2013

diff --git a/CMakeLists.txt b/CMakeLists.txt
index e8b7361..d03194a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -611,16 +611,27 @@ include_directories(${TOP_BINARY_DIR} ${TOP_SRC_DIR}/src)
 set(Spelling_FOUND OFF)
 set(Include_used_spellchecker)   # String will be inserted into config.h
 
+if(LYX_3RDPARTY_BUILD)
+    add_subdirectory(src/3rdparty/hunspell)
+    add_definitions(-DHUNSPELL_STATIC)
+    set(HUNSPELL_FOUND ON)
+    message(STATUS "  * Hunspell:")
+    message(STATUS "     - include: ${HUNSPELL_INCLUDE_DIR}")
+    message(STATUS "     - library: ${HUNSPELL_LIBRARY}")
+endif()
+
 foreach(_spell "ASPELL" "Enchant" "Hunspell")
   string(TOUPPER ${_spell} _upspell)
-  find_package(${_spell})
+  if (NOT ${_upspell}_FOUND)
+    find_package(${_spell})
+  endif()
   if (${_upspell}_FOUND)
     include_directories(${${_upspell}_INCLUDE_DIR})
     set(Spelling_FOUND ON)
     message(STATUS "Building with USE_${_upspell}")
     set(Include_used_spellchecker "${Include_used_spellchecker}#define 
USE_${_upspell} 1\n")
   else()
-    if(LYX_${_upspell} AND NOT LYX_HUNSPELL)
+    if(LYX_${_upspell})
       message(FATAL_ERROR "Required ${_spell} devel package not found")
     else()
       message(STATUS "${_upspell} not found, building without ${_spell} 
support")
@@ -628,14 +639,6 @@ foreach(_spell "ASPELL" "Enchant" "Hunspell")
   endif()
 endforeach()
 
-if(LYX_HUNSPELL AND NOT HUNSPELL_FOUND)
-    add_subdirectory(src/3rdparty/hunspell)
-    set(Spelling_FOUND ON)
-endif()
-message(STATUS "  * Hunspell:")
-message(STATUS "     - include: ${HUNSPELL_INCLUDE_DIR}")
-message(STATUS "     - library: ${HUNSPELL_LIBRARY}")
-
 
 find_package(PythonInterp 2.7 QUIET)
 if(PYTHONINTERP_FOUND)
@@ -674,11 +677,8 @@ if(UNIX)
     find_package(ZLIB REQUIRED)
 endif()
 
-if(NOT ICONV_FOUND)
+if(LYX_3RDPARTY_BUILD)
     add_subdirectory(src/3rdparty/libiconv)
-endif()
-
-if(NOT ZLIB_FOUND)
     add_subdirectory(src/3rdparty/zlib)
 endif()
 
diff --git a/src/3rdparty/hunspell/CMakeLists.txt 
b/src/3rdparty/hunspell/CMakeLists.txt
index 856f1e9..0000eac 100644
--- a/src/3rdparty/hunspell/CMakeLists.txt
+++ b/src/3rdparty/hunspell/CMakeLists.txt
@@ -7,7 +7,12 @@ set(HUNSPELL_VERSION 1.3.3)
 
 set(SRCDIR ${CMAKE_CURRENT_SOURCE_DIR}/${HUNSPELL_VERSION}/src)
 
-include_directories(./ ${SRCDIR}/hunspell ${SRCDIR}/parsers ${SRCDIR}/tools 
${SRCDIR}/win_api)
+include_directories(./ ${SRCDIR}/hunspell ${SRCDIR}/parsers ${SRCDIR}/tools)
+
+if(WIN32)
+    include_directories(${SRCDIR}/win_api)
+    set(HUNCONFIG ${SRCDIR}/win_api/config.h)
+endif()
 
 # LIBS
 set(SRCS
@@ -45,8 +50,11 @@ set(HEADERS
     ${SRCDIR}/hunspell/replist.hxx
     ${SRCDIR}/hunspell/hunvisapi.h)
 
-add_library(hunspell STATIC ${HEADERS} ${SRCS})
+add_definitions(-DHUNSPELL_STATIC)
+add_library(hunspell STATIC ${HEADERS} ${SRCS} ${HUNCONFIG})
 
 set(HUNSPELL_LIBRARY hunspell CACHE STRING "Hunspell library" FORCE)
 set(HUNSPELL_INCLUDE_DIR ${SRCDIR} CACHE STRING "Hunspell include dir" FORCE)
-set(HUNSPELL_FOUND CACHE STRING "Hunspell found" FORCE)
\ No newline at end of file
+set(HUNSPELL_FOUND CACHE STRING "Hunspell found" FORCE)
+
+set_target_properties(hunspell PROPERTIES FOLDER "3rd_party")
diff --git a/src/3rdparty/libiconv/CMakeLists.txt 
b/src/3rdparty/libiconv/CMakeLists.txt
index e092828..65046e7 100644
--- a/src/3rdparty/libiconv/CMakeLists.txt
+++ b/src/3rdparty/libiconv/CMakeLists.txt
@@ -25,18 +25,20 @@ set(BROKEN_WCHAR_H 0)
 set(HAVE_WCHAR_T 0)
 
 set(BINDIR ${CMAKE_BINARY_DIR}/libiconv)
-configure_file(config.h.cmake ${BINDIR}/config.h)
-configure_file(${SRCDIR}/include/iconv.h.build.in ${BINDIR}/include/iconv.h)
+configure_file(config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h)
+configure_file(${SRCDIR}/include/iconv.h.build.in 
${CMAKE_CURRENT_BINARY_DIR}/iconv.h)
+
 configure_file(${SRCDIR}/libcharset/include/libcharset.h.in 
${BINDIR}/include/libcharset.h)
 configure_file(${SRCDIR}/srclib/uniwidth.in.h ${BINDIR}/srclib/uniwidth.h)
 configure_file(${SRCDIR}/srclib/unitypes.in.h ${BINDIR}/srclib/unitypes.h)
+configure_file(${SRCDIR}/include/iconv.h.in ${BINDIR}/include/iconv.h)
 
 # Dirty fix for MinGW
 if(MINGW)
   add_definitions(-DELOOP=0 -DHAVE_DECL_STRERROR_R=0)
 endif ()
 
-include_directories( ${BINDIR}/include ${SRCDIR}/include ${SRCDIR}/srclib)
+include_directories( ${CMAKE_CURRENT_BINARY_DIR} ${BINDIR}/include 
${SRCDIR}/include ${SRCDIR}/srclib)
 add_definitions(-Dset_relocation_prefix=libcharset_set_relocation_prefix 
-Drelocate=libcharset_relocate -DHAVE_CONFIG_H -DINSTALLPREFIX=NULL 
-DNO_XMALLOC -DBUILDING_LIBCHARSET -DINSTALLDIR="" -DLIBDIR="" 
-DENABLE_RELOCATABLE=1 -DIN_LIBRARY)
 
 # libcharset
@@ -51,3 +53,5 @@ set_target_properties(iconv PROPERTIES COMPILE_FLAGS 
-DBUILDING_LIBICONV)
 set(ICONV_INCLUDE_DIR ${BINDIR}/include CACHE STRING "libiconv include  dir" 
FORCE)
 set(ICONV_LIBRARY iconv CACHE STRING "libiconv library" FORCE)
 set(ICONV_FOUND iconv CACHE STRING "libiconv found" FORCE)
+
+set_target_properties(iconv PROPERTIES FOLDER "3rd_party")
diff --git a/src/3rdparty/libiconv/configure.cmake 
b/src/3rdparty/libiconv/configure.cmake
index 497450e..f5f73cd 100644
--- a/src/3rdparty/libiconv/configure.cmake
+++ b/src/3rdparty/libiconv/configure.cmake
@@ -242,8 +242,12 @@ set ( HAVE_SIGNED_SIG_ATOMIC_T 1 )
 set ( HAVE_SIGNED_WINT_T 1)
 set ( HAVE_SIGSET_T )
 
+if(MSVC)
+set ( HAVE_VISIBILITY 0 )
+else()
 set ( HAVE_VISIBILITY 1 )
-set ( ICONV_CONST "" )
+endif()
+set ( ICONV_CONST "const" )
 set ( INSTALLPREFIX "" )
 set ( MALLOC_0_IS_NONNULL 1 )
 set ( HAVE_WORKING_O_NOATIME 0 )
diff --git a/src/3rdparty/zlib/CMakeLists.txt b/src/3rdparty/zlib/CMakeLists.txt
index 9f93095..de6de6a 100644
--- a/src/3rdparty/zlib/CMakeLists.txt
+++ b/src/3rdparty/zlib/CMakeLists.txt
@@ -157,3 +157,4 @@ set(ZLIB_LIBRARY zlibstatic CACHE STRING "Zlib library" 
FORCE)
 set(ZLIB_INCLUDE_DIR  ${SRCDIR} CACHE STRING "Zlib include dir" FORCE)
 set(ZLIB_FOUND CACHE STRING "Zlib found" FORCE )
 
+set_target_properties(zlibstatic PROPERTIES FOLDER "3rd_party")

Reply via email to