include(LyXPaths)
include(LyXMacros)
+if(release)
+ set(CMAKE_BUILD_TYPE TRUE)
+ set(release)
+endif(release)
+
find_package(Qt4 REQUIRED)
find_package(ZLIB REQUIRED)
-Building LyX with CMake\r
-\r
-For all builds:\r
-- CMake 2.4.2 or CVS version from www.cmake.org\r
-- install Qt 4 and make sure qmake 4 is found\r
-\r
-\r
-Building Visual C++ 2005 project files:\r
-- install Visual C++ 2005\r
-- install Platform SDK 2005, "Core" and "Web Workshop"\r
-- add include and library paths of the SDK to the IDE search paths,\r
- menu: Tools->Options->VC++ directories->Library files + Include files\r
-- install zlib (www.zlib.net) into %ProgramFiles%/GnuWin32/include+lib\r
- or %ProgramFiles%/zlib/include+lib\r
-- create a build directory, e.g. .../trunk/../build\r
-- call in the build directory 'cmake ..\trunk\development\cmake'\r
-- start lyx.sln\r
-\r
-TIPS: - rename Microsoft Visual Studio 8\VC\vcpackages\feacp.dll \r
- to disable Intellisense\r
- - the Release build links much faster\r
-\r
-\r
-Building with GCC/Linux:\r
-- create a build directory, e.g. .../trunk/../build\r
-- call in the build directory 'cmake ..\trunk\development\cmake'\r
-\r
-Building with GCC/Windows:\r
-- install zlib (www.zlib.net) into %ProgramFiles%/GnuWin32/include+lib\r
-- create a build directory, e.g. .../trunk/../build\r
-- call in the build directory 'cmake ..\trunk\development\cmake'\r
-\r
-\r
-To generate other build files call 'cmake'\r
-which shows a list of possibilities.\r
-\r
-\r
-The build process tries to find aspell and iconv on Windows \r
-in %ProgramFiles%/GnuWin32/ and in /usr/ or in /usr/local \r
-under Linux. If they are not found the support is disabled.\r
+Building LyX with CMake
+
+For all builds:
+- CMake 2.4.2 or CVS version from www.cmake.org
+- install Qt 4 and make sure qmake 4 is found
+
+
+Building Visual C++ 2005 project files:
+- install Visual C++ 2005
+- install Platform SDK 2005, "Core" and "Web Workshop"
+- add include and library paths of the SDK to the IDE search paths,
+ menu: Tools->Options->VC++ directories->Library files + Include files
+- install zlib (www.zlib.net) into %ProgramFiles%/GnuWin32/include+lib
+ or %ProgramFiles%/zlib/include+lib
+- create a build directory, e.g. .../trunk/../build
+- call in the build directory 'cmake ..\trunk\development\cmake'
+- start lyx.sln
+
+TIPS: - rename Microsoft Visual Studio 8\VC\vcpackages\feacp.dll
+ to disable Intellisense
+ - the Release build links much faster
+
+
+Building with GCC/Linux:
+- create a build directory, e.g. .../trunk/../build
+- call in the build directory 'cmake ..\trunk\development\cmake'
+
+Building with GCC/Windows:
+- install zlib (www.zlib.net) into %ProgramFiles%/GnuWin32/include+lib
+- create a build directory, e.g. .../trunk/../build
+- call in the build directory 'cmake ..\trunk\development\cmake'
+
+
+To generate other build files call 'cmake'
+which shows a list of possibilities.
+
+
+The build process tries to find aspell and iconv on Windows
+in %ProgramFiles%/GnuWin32/ and in /usr/ or in /usr/local
+under Linux. If they are not found the support is disabled.
# - Try to find ASPELL
# Once done this will define
#
-# ASPELL_FOUND - system has ASPELL
-# ASPELL_INCLUDE_DIR - the ASPELL include directory
-# ASPELL_LIBRARIES - The libraries needed to use ASPELL
-# ASPELL_DEFINITIONS - Compiler switches required for using ASPELL
+# ASPELL_FOUND - system has ASPELL
+# ASPELL_INCLUDE_DIR - the ASPELL include directory
+# ASPELL_LIBRARY - The libraries needed to use ASPELL
+# ASPELL_DEFINITIONS - Compiler switches required for using ASPELL
#
-if (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES)
- # Already in cache, be silent
- set(ASPELL_FIND_QUIETLY TRUE)
-endif (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES)
+if(WIN32)
+ file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _program_FILES_DIR)
+endif(WIN32)
+
+
+if (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARY)
+ # Already in cache, be silent
+ set(ASPELL_FIND_QUIETLY TRUE)
+endif (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARY)
FIND_PATH(ASPELL_INCLUDE_DIR aspell.h
- /usr/include
- /usr/local/include
- /usr/local/include/aspell
+ /usr/include
+ /usr/local/include
+ /usr/local/include/aspell
+ ${_program_FILES_DIR}/gnuwin32/include
)
-FIND_LIBRARY(ASPELL_LIBRARIES NAMES aspell aspell-15 libaspell
- PATHS
- /usr/lib
- /usr/local/lib
+FIND_LIBRARY(ASPELL_LIBRARY_RELEASE NAMES aspell aspell-15
+ PATHS
+ /usr/lib
+ /usr/local/lib
)
+# msvc makes a difference between debug and release
+if(MSVC)
+ find_library(ASPELL_LIBRARY_DEBUG NAMES aspelld
+ PATHS
+ ${_program_FILES_DIR}/kdewin32/lib)
+
+ if(MSVC_IDE)
+ if(NOT ASPELL_LIBRARY_DEBUG OR NOT ASPELL_LIBRARY_RELEASE)
+ SET(ASPELL_LIBRARY)
+ else(NOT ASPELL_LIBRARY_DEBUG OR NOT ASPELL_LIBRARY_RELEASE)
+ SET(ASPELL_LIBRARY optimized ${ASPELL_LIBRARY_RELEASE} debug ${ASPELL_LIBRARY_DEBUG})
+ endif(NOT ASPELL_LIBRARY_DEBUG OR NOT ASPELL_LIBRARY_RELEASE)
+ else(MSVC_IDE)
+ string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_TOLOWER)
+ if(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug)
+ set(ASPELL_LIBRARY ${ASPELL_LIBRARY_DEBUG})
+ else(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug)
+ set(ASPELL_LIBRARY ${ASPELL_LIBRARY_RELEASE})
+ endif(CMAKE_BUILD_TYPE_TOLOWER MATCHES debug)
+ endif(MSVC_IDE)
+else(MSVC)
+ set(ASPELL_LIBRARY ${ASPELL_LIBRARY_RELEASE})
+endif(MSVC)
-if (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES)
- set(ASPELL_FOUND TRUE)
-endif (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARIES)
+if (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARY)
+ set(ASPELL_FOUND TRUE)
+endif (ASPELL_INCLUDE_DIR AND ASPELL_LIBRARY)
if (ASPELL_FOUND)
- if (NOT ASPELL_FIND_QUIETLY)
- message(STATUS "Found ASPELL: ${ASPELL_LIBRARIES}")
- endif (NOT ASPELL_FIND_QUIETLY)
+ if (NOT ASPELL_FIND_QUIETLY)
+ message(STATUS "Found ASPELL: ${ASPELL_LIBRARY}")
+ endif (NOT ASPELL_FIND_QUIETLY)
else (ASPELL_FOUND)
- if (ASPELL_FIND_REQUIRED)
- message("aspell header: ${ASPELL_INCLUDE_DIR}")
- message("aspell lib : ${ASPELL_LIBRARIES}")
- message(FATAL_ERROR "Could NOT find ASPELL")
- endif (ASPELL_FIND_REQUIRED)
+ if (ASPELL_FIND_REQUIRED)
+ message("aspell header : ${ASPELL_INCLUDE_DIR}")
+ message("aspell lib release : ${ASPELL_LIBRARY_RELEASE}")
+ message("aspell lib debug : ${ASPELL_LIBRARY_DEBUG}")
+ if(MSVC_IDE)
+ # the ide needs the debug and release version
+ if(NOT ASPELL_LIBRARY_DEBUG OR NOT ASPELL_LIBRARY_RELEASE)
+ message(FATAL_ERROR "\nCould NOT find the debug AND release version of the aspell library.\nYou need to have both to use MSVC projects.\nPlease build and install both kdelibs/win/ libraries first.\n")
+ endif(NOT ASPELL_LIBRARY_DEBUG OR NOT ASPELL_LIBRARY_RELEASE)
+ endif(MSVC_IDE)
+ message(FATAL_ERROR "Could NOT find ASPELL")
+ endif (ASPELL_FIND_REQUIRED)
endif (ASPELL_FOUND)
-MARK_AS_ADVANCED(ASPELL_INCLUDE_DIR ASPELL_LIBRARIES)
+MARK_AS_ADVANCED(ASPELL_INCLUDE_DIR ASPELL_LIBRARY)
-\r
-if (ICONV_INCLUDE_DIR)\r
- # Already in cache, be silent\r
- set(ICONV_FIND_QUIETLY TRUE)\r
-endif (ICONV_INCLUDE_DIR)\r
-\r
-FIND_PATH(ICONV_INCLUDE_DIR iconv.h\r
- /usr/include\r
- /usr/local/include\r
-)\r
-\r
-set(POTENTIAL_ICONV_LIBS iconv libiconv)\r
-FIND_LIBRARY(ICONV_LIBRARY NAMES ${POTENTIAL_ICONV_LIBS}\r
-PATHS\r
- /usr/lib\r
- /usr/local/lib\r
-)\r
-\r
-if(WIN32)\r
- FIND_FILE(ICONV_DLL iconv.dll NO_DEFAULT_PATH ENV PATH)\r
- FIND_FILE(ICONV_DLL_HELP iconv.dll)\r
- IF(ICONV_FIND_REQUIRED)\r
- IF(NOT ICONV_DLL AND NOT ICONV_DLL_HELP)\r
- MESSAGE(FATAL_ERROR "Could not find iconv.dll, please add correct your PATH environment variable")\r
- ENDIF(NOT ICONV_DLL AND NOT ICONV_DLL_HELP)\r
- IF(NOT ICONV_DLL AND ICONV_DLL_HELP)\r
- GET_FILENAME_COMPONENT(ICONV_DLL_HELP ${ICONV_DLL_HELP} PATH)\r
- MESSAGE("Could not find iconv.dll in standard search path, please add ")\r
- MESSAGE("${ICONV_DLL_HELP} to your PATH environment variable.")\r
- MESSAGE(FATAL_ERROR)\r
- ENDIF(NOT ICONV_DLL AND ICONV_DLL_HELP)\r
- ENDIF(ICONV_FIND_REQUIRED)\r
-ELSE(WIN32)\r
- set(ICONV_DLL TRUE)\r
-endif(WIN32)\r
-\r
-\r
-IF (ICONV_INCLUDE_DIR AND ICONV_LIBRARY AND ICONV_DLL)\r
- SET(ICONV_FOUND TRUE)\r
-ENDIF (ICONV_INCLUDE_DIR AND ICONV_LIBRARY AND ICONV_DLL)\r
-\r
-IF (ICONV_FOUND)\r
- IF (NOT ICONV_FIND_QUIETLY)\r
- MESSAGE(STATUS "Found iconv: ${ICONV_LIBRARY}")\r
- ENDIF (NOT ICONV_FIND_QUIETLY)\r
-ELSE (ICONV_FOUND)\r
- IF (ICONV_FIND_REQUIRED)\r
- MESSAGE(STATUS "Looked for iconv library named ${POTENTIAL_ICONV_LIBS}.")\r
- MESSAGE(STATUS "Found no acceptable iconv library. This is fatal.")\r
- message("iconv header: ${ICONV_INCLUDE_DIR}")\r
- message("iconv lib : ${ICONV_LIBRARY}")\r
- MESSAGE(FATAL_ERROR "Could NOT find iconv library")\r
- ENDIF (ICONV_FIND_REQUIRED)\r
-ENDIF (ICONV_FOUND)\r
-\r
-MARK_AS_ADVANCED(ICONV_LIBRARY ICONV_INCLUDE_DIR)\r
+
+if (ICONV_INCLUDE_DIR)
+ # Already in cache, be silent
+ set(ICONV_FIND_QUIETLY TRUE)
+endif (ICONV_INCLUDE_DIR)
+
+FIND_PATH(ICONV_INCLUDE_DIR iconv.h
+ /usr/include
+ /usr/local/include
+)
+
+set(POTENTIAL_ICONV_LIBS iconv libiconv)
+FIND_LIBRARY(ICONV_LIBRARY NAMES ${POTENTIAL_ICONV_LIBS}
+PATHS
+ /usr/lib
+ /usr/local/lib
+)
+
+if(WIN32)
+ FIND_FILE(ICONV_DLL iconv.dll NO_DEFAULT_PATH ENV PATH)
+ FIND_FILE(ICONV_DLL_HELP iconv.dll)
+ IF(ICONV_FIND_REQUIRED)
+ IF(NOT ICONV_DLL AND NOT ICONV_DLL_HELP)
+ MESSAGE(FATAL_ERROR "Could not find iconv.dll, please add correct your PATH environment variable")
+ ENDIF(NOT ICONV_DLL AND NOT ICONV_DLL_HELP)
+ IF(NOT ICONV_DLL AND ICONV_DLL_HELP)
+ GET_FILENAME_COMPONENT(ICONV_DLL_HELP ${ICONV_DLL_HELP} PATH)
+ MESSAGE("Could not find iconv.dll in standard search path, please add ")
+ MESSAGE("${ICONV_DLL_HELP} to your PATH environment variable.")
+ MESSAGE(FATAL_ERROR)
+ ENDIF(NOT ICONV_DLL AND ICONV_DLL_HELP)
+ ENDIF(ICONV_FIND_REQUIRED)
+ELSE(WIN32)
+ set(ICONV_DLL TRUE)
+endif(WIN32)
+
+
+IF (ICONV_INCLUDE_DIR AND ICONV_LIBRARY AND ICONV_DLL)
+ SET(ICONV_FOUND TRUE)
+ENDIF (ICONV_INCLUDE_DIR AND ICONV_LIBRARY AND ICONV_DLL)
+
+IF (ICONV_FOUND)
+ IF (NOT ICONV_FIND_QUIETLY)
+ MESSAGE(STATUS "Found iconv: ${ICONV_LIBRARY}")
+ ENDIF (NOT ICONV_FIND_QUIETLY)
+ELSE (ICONV_FOUND)
+ IF (ICONV_FIND_REQUIRED)
+ MESSAGE(STATUS "Looked for iconv library named ${POTENTIAL_ICONV_LIBS}.")
+ MESSAGE(STATUS "Found no acceptable iconv library. This is fatal.")
+ message("iconv header: ${ICONV_INCLUDE_DIR}")
+ message("iconv lib : ${ICONV_LIBRARY}")
+ MESSAGE(FATAL_ERROR "Could NOT find iconv library")
+ ENDIF (ICONV_FIND_REQUIRED)
+ENDIF (ICONV_FOUND)
+
+MARK_AS_ADVANCED(ICONV_LIBRARY ICONV_INCLUDE_DIR)
-if (ZLIB_INCLUDE_DIR)\r
- # Already in cache, be silent\r
- set(ZLIB_FIND_QUIETLY TRUE)\r
-endif (ZLIB_INCLUDE_DIR)\r
-\r
-FIND_PATH(ZLIB_INCLUDE_DIR zlib.h\r
- /usr/include\r
- /usr/local/include\r
-)\r
-\r
-set(POTENTIAL_Z_LIBS z zlib zdll)\r
-FIND_LIBRARY(ZLIB_LIBRARY NAMES ${POTENTIAL_Z_LIBS}\r
-PATHS\r
- /usr/lib\r
- /usr/local/lib\r
-)\r
-\r
-IF (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY)\r
- SET(ZLIB_FOUND TRUE)\r
-ENDIF (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY)\r
-\r
-IF (ZLIB_FOUND)\r
- IF (NOT ZLIB_FIND_QUIETLY)\r
- MESSAGE(STATUS "Found Z: ${ZLIB_LIBRARY}")\r
- ENDIF (NOT ZLIB_FIND_QUIETLY)\r
-ELSE (ZLIB_FOUND)\r
- IF (ZLIB_FIND_REQUIRED)\r
- MESSAGE(STATUS "Looked for Z libraries named ${POTENTIAL_Z_LIBS}.")\r
- MESSAGE(STATUS "Found no acceptable Z library. This is fatal.")\r
- MESSAGE(FATAL_ERROR "Could NOT find z library")\r
- ENDIF (ZLIB_FIND_REQUIRED)\r
-ENDIF (ZLIB_FOUND)\r
-\r
-MARK_AS_ADVANCED(ZLIB_LIBRARY ZLIB_INCLUDE_DIR)\r
+if (ZLIB_INCLUDE_DIR)
+ # Already in cache, be silent
+ set(ZLIB_FIND_QUIETLY TRUE)
+endif (ZLIB_INCLUDE_DIR)
+
+FIND_PATH(ZLIB_INCLUDE_DIR zlib.h
+ /usr/include
+ /usr/local/include
+)
+
+set(POTENTIAL_Z_LIBS z zlib zdll)
+FIND_LIBRARY(ZLIB_LIBRARY NAMES ${POTENTIAL_Z_LIBS}
+PATHS
+ /usr/lib
+ /usr/local/lib
+)
+
+IF (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY)
+ SET(ZLIB_FOUND TRUE)
+ENDIF (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY)
+
+IF (ZLIB_FOUND)
+ IF (NOT ZLIB_FIND_QUIETLY)
+ MESSAGE(STATUS "Found Z: ${ZLIB_LIBRARY}")
+ ENDIF (NOT ZLIB_FIND_QUIETLY)
+ELSE (ZLIB_FOUND)
+ IF (ZLIB_FIND_REQUIRED)
+ MESSAGE(STATUS "Looked for Z libraries named ${POTENTIAL_Z_LIBS}.")
+ MESSAGE(STATUS "Found no acceptable Z library. This is fatal.")
+ MESSAGE(FATAL_ERROR "Could NOT find z library")
+ ENDIF (ZLIB_FIND_REQUIRED)
+ENDIF (ZLIB_FOUND)
+
+MARK_AS_ADVANCED(ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
-if(WIN32)\r
-\r
-file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _prog_path)\r
-\r
-set(_zlib_path ${_prog_path}/zlib)\r
-set(_iconv_path ${_prog_path}/iconv)\r
-set(_gnuwin32_dir ${_prog_path}/gnuwin32)\r
-\r
-set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} \r
- ${_gnuwin32_dir}/include\r
- ${_zlib_path}/include\r
- ${_iconv_path}/include\r
- )\r
- \r
-set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} \r
- ${_gnuwin32_dir}/lib\r
- ${_zlib_path}/lib\r
- ${_iconv_path}/lib\r
- )\r
-\r
-#chek_include_files path\r
-set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${_gnuwin32_dir}/include)\r
-\r
-\r
-else(WIN32)\r
-\r
- set(_prog_path ~/bin)\r
- \r
-endif(WIN32)\r
-\r
-\r
-GET_FILENAME_COMPONENT(lyx_dir_readme ${CMAKE_SOURCE_DIR}/../../README ABSOLUTE)\r
-GET_FILENAME_COMPONENT(TOP_SRC_DIR ${lyx_dir_readme} PATH)\r
-\r
-if(WIN32)\r
- set(locale_dir Resources/locale)\r
-else(WIN32) \r
- set(locale_dir share/locale)\r
-endif(WIN32)\r
-\r
-set(PREFIX ${_prog_path}/LyX)\r
-set(LOCAL_DIR ${PREFIX}/${locale_dir})\r
-\r
-#message(" PREFIX : ${PREFIX}")\r
-#message(" LOCAL_DIR : ${LOCAL_DIR}")\r
-#message(" TOP_SRC_DIR : ${TOP_SRC_DIR}")\r
-\r
-\r
-\r
+if(WIN32)
+
+file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _prog_path)
+
+set(_zlib_path ${_prog_path}/zlib)
+set(_iconv_path ${_prog_path}/iconv)
+set(_gnuwin32_dir ${_prog_path}/gnuwin32)
+
+set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH}
+ ${_gnuwin32_dir}/include
+ ${_zlib_path}/include
+ ${_iconv_path}/include
+ )
+
+set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH}
+ ${_gnuwin32_dir}/lib
+ ${_zlib_path}/lib
+ ${_iconv_path}/lib
+ )
+
+#chek_include_files path
+set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${_gnuwin32_dir}/include)
+
+
+else(WIN32)
+
+ set(_prog_path ~/bin)
+
+endif(WIN32)
+
+
+GET_FILENAME_COMPONENT(lyx_dir_readme ${CMAKE_SOURCE_DIR}/../../README ABSOLUTE)
+GET_FILENAME_COMPONENT(TOP_SRC_DIR ${lyx_dir_readme} PATH)
+
+if(WIN32)
+ set(locale_dir Resources/locale)
+else(WIN32)
+ set(locale_dir share/locale)
+endif(WIN32)
+
+set(PREFIX ${_prog_path}/LyX)
+set(LOCAL_DIR ${PREFIX}/${locale_dir})
+
+#message(" PREFIX : ${PREFIX}")
+#message(" LOCAL_DIR : ${LOCAL_DIR}")
+#message(" TOP_SRC_DIR : ${TOP_SRC_DIR}")
+
+
+
)
if(ASPELL_FOUND)
- target_link_libraries(lyx-qt4 ${ASPELL_LIBRARIES})
+ target_link_libraries(lyx-qt4 ${ASPELL_LIBRARY})
endif(ASPELL_FOUND)
-//autogenerated file by cmake\r
+//autogenerated file by cmake