]> git.lyx.org Git - lyx.git/blobdiff - development/cmake/CMakeLists.txt
Integrate texrow with otexstream in order to perform automatic line
[lyx.git] / development / cmake / CMakeLists.txt
index ef193a4a635a195e3d7b662891e5e4b5cf2ea13d..7ea2eafecbc80a692329b914195974e6562ba8f8 100644 (file)
@@ -66,8 +66,8 @@ LYX_OPTION(CONCEPT_CHECKS "Enable concept-checks" OFF GCC)
 LYX_OPTION(CONSOLE "Show console on Windows" ON MSVC)
 LYX_OPTION(VLD "Use VLD with MSVC" OFF MSVC)
 LYX_OPTION(WALL "Enable all warnings" OFF MSVC)
-LYX_OPTION(LYX_CONFIGURE_CHECKS "Also run configure checks for MSVC" OFF MSVC)
-
+LYX_OPTION(CONFIGURE_CHECKS "Also run configure checks for MSVC" OFF MSVC)
+LYX_OPTION(3RDPARTY_DOWNLOAD "Download precompiled 3rd party libraries for MSVC 10" OFF MSVC)
 
 # Check option dependencies
 if(LYX_CPACK)
@@ -76,7 +76,9 @@ endif()
 
 if(LYX_INSTALL)
        set(LYX_NLS ON)
-       set(LYX_ASPELL ON)
+       if(NOT LYX_3RDPARTY_DOWNLOAD)
+               set(LYX_ASPELL ON)
+       endif()
        if (WIN32)
                set(LYX_HUNSPELL ON)
        endif()
@@ -92,6 +94,39 @@ else()
        set(LYX_MERGE_REBUILD OFF)
 endif()
 
+if(LYX_3RDPARTY_DOWNLOAD)
+       message(STATUS)
+       set(LYX_3RDPARTY_DIR ${CMAKE_BINARY_DIR}/msvc10-deps)
+       message(STATUS "Using downloaded 3rd party libraries in ${LYX_3RDPARTY_DIR}")
+       set(3rdparty_files
+               crt-msvc2010-x86.zip 
+               dict-hunspell-all.zip 
+               dtl-modified-msvc2010-x86.zip 
+               dvipost-1.1-modified-msvc2010-x86.zip 
+               gettext-tools-0.18.1-x86.zip 
+               ghostscript-8.71-msvc2010-x86.zip 
+               hunspell-1.2.11-msvc2010-x86.zip 
+               iconv-1.13.1-msvc2010-x86.zip 
+               imagemagick-6.6.3-0-modified-msvc2010-x86.zip 
+               libintl-0.18.1-msvc2010-x86.zip 
+               netpbm-pnmcrop-10.27-x86.zip 
+               pdftools-msvc2010-x86.zip 
+               pdfview-x86.zip 
+               python-2.6.5-msvc2010-x86.zip 
+               thes-mythes-all.zip 
+               zlib-1.2.5-msvc2010-x86.zip)
+       foreach(it ${3rdparty_files})
+               set(already_downloaded already_downloaded-NOTFOUND CACHE PATH "downloaded" FORCE)
+               find_file(already_downloaded ${it} "${LYX_3RDPARTY_DIR}/downloads")
+               if(NOT already_downloaded)
+                       message(STATUS "Downloading ${it} ...")
+                       file(DOWNLOAD ftp://ftp.devel.lyx.org/pub/contrib/windows/bin/${it} ${LYX_3RDPARTY_DIR}/downloads/${it} SHOW_PROGRESS)
+                       execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf ${LYX_3RDPARTY_DIR}/downloads/${it}
+                                     WORKING_DIRECTORY ${LYX_3RDPARTY_DIR})
+               endif()
+       endforeach()
+       set(GNUWIN32_DIR ${LYX_3RDPARTY_DIR})
+endif()
 
 
 message(STATUS)
@@ -191,7 +226,7 @@ if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
                endif()
        endif()
        if(WIN32)
-               set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/LYX_INSTALLED CACHE PATH "LyX default install prefix" FORCE)
+               set(CMAKE_INSTALL_PREFIX LYX_INSTALLED CACHE PATH "LyX default install prefix" FORCE)
        endif()
 endif()
 
@@ -491,6 +526,9 @@ set(CPACK_PACKAGE_VERSION_MAJOR "${LYX_MAJOR_VERSION}")
 set(CPACK_PACKAGE_VERSION_MINOR "${LYX_MINOR_VERSION}")
 FILE(STRINGS "${TOP_SRC_DIR}/development/cmake/LyX_summary.txt" CPACK_PACKAGE_DESCRIPTION_SUMMARY)
 
+set(CPACK_SOURCE_GENERATOR TGZ ZIP TBZ2)
+set(CPACK_SOURCE_INSTALLED_DIRECTORIES "${TOP_SRC_DIR};/") # http://www.mail-archive.com/cmake@cmake.org/msg33720.html
+
 set(CPACK_PACKAGE_INSTALL_DIRECTORY "CMake ${LYX_INSTALL_SUFFIX}")
 #
 # needed by rpm