mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-22 01:59:02 +00:00
cmake: update TODO list, move svnrvison code, remove duplicated code
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38806 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
e307b60811
commit
1924463981
@ -118,11 +118,6 @@ if(LYX_INSTALL)
|
||||
set(LYX_NLS ON)
|
||||
if (WIN32)
|
||||
set(LYX_HUNSPELL ON)
|
||||
message(STATUS "Configuring NSIS files")
|
||||
configure_file(development/Win32/packaging/installer/lyx.nsi.cmake ${CMAKE_BINARY_DIR}/installer/lyx.nsi @ONLY)
|
||||
configure_file(development/Win32/packaging/installer/settings.nsh.cmake ${CMAKE_BINARY_DIR}/installer/settings-cmake.nsh @ONLY)
|
||||
configure_file(development/Win32/packaging/installer/include/declarations.nsh.cmake ${CMAKE_BINARY_DIR}/installer/declarations-cmake.nsh @ONLY)
|
||||
message(STATUS "NSIS files are created in ${CMAKE_BINARY_DIR}/installer")
|
||||
endif()
|
||||
set(LYX_CONSOLE OFF)
|
||||
set(LYX_PACKAGE_SUFFIX ON)
|
||||
@ -224,6 +219,24 @@ foreach(_c_l ${_config_lines} )
|
||||
endif()
|
||||
endforeach(_c_l)
|
||||
|
||||
# Find the revision number and use it as the release in rpm-package-build.
|
||||
# This way we may omit the otherwise needed "--force" parameter when
|
||||
# installing from that rpm package.
|
||||
FIND_PROGRAM(LYX_SVNVERSION svnversion)
|
||||
#message(STATUS "svnversion = ${LYX_SVNVERSION}")
|
||||
if(LYX_SVNVERSION)
|
||||
# TODO revision number has nothing to do with cpack vars: split out
|
||||
EXECUTE_PROCESS(COMMAND ${LYX_SVNVERSION} WORKING_DIRECTORY "${TOP_SRC_DIR}" OUTPUT_VARIABLE CPACK_RPM_PACKAGE_RELEASE OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
# We use this value also to set the package-patch-value
|
||||
if(CPACK_RPM_PACKAGE_RELEASE MATCHES "^\([0-9]+\)")
|
||||
set(CPACK_PACKAGE_VERSION_PATCH ${CMAKE_MATCH_1}) # TODO this is not the patch level
|
||||
set(LYX_REVISION_VERSION ${CMAKE_MATCH_1})
|
||||
endif()
|
||||
else()
|
||||
set(LYX_REVISION_VERSION svn) #TODO use date
|
||||
endif()
|
||||
|
||||
|
||||
|
||||
if(LYX_PROGRAM_SUFFIX)
|
||||
set(PROGRAM_SUFFIX "${LYX_INSTALL_SUFFIX}")
|
||||
@ -311,6 +324,13 @@ set(LYX_ABS_INSTALLED_LOCALEDIR "${LYX_ABS_INSTALLED_DATADIR}/${LYX_DATA_SUBDIR}
|
||||
set(LYX_ABS_TOP_SRCDIR "${TOP_SRC_DIR}")
|
||||
|
||||
|
||||
if(LYX_INSTALL AND WIN32)
|
||||
message(STATUS "Configuring NSIS files")
|
||||
configure_file(development/Win32/packaging/installer/lyx.nsi.cmake ${CMAKE_BINARY_DIR}/installer/lyx.nsi @ONLY)
|
||||
configure_file(development/Win32/packaging/installer/settings.nsh.cmake ${CMAKE_BINARY_DIR}/installer/settings-cmake.nsh @ONLY)
|
||||
configure_file(development/Win32/packaging/installer/include/declarations.nsh.cmake ${CMAKE_BINARY_DIR}/installer/declarations-cmake.nsh @ONLY)
|
||||
message(STATUS "NSIS files are created in ${CMAKE_BINARY_DIR}/installer")
|
||||
endif()
|
||||
|
||||
if(NOT GROUP_CODE)
|
||||
#set(GROUP_CODE "The Golden Code")
|
||||
@ -634,13 +654,9 @@ set(CPACK_PACKAGE_VERSION_MAJOR "${LYX_MAJOR_VERSION}")
|
||||
set(CPACK_PACKAGE_VERSION_MINOR "${LYX_MINOR_VERSION}")
|
||||
FILE(STRINGS "${TOP_SRC_DIR}/${LYX_CMAKE_DIR}/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}")
|
||||
|
||||
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
|
||||
#
|
||||
# needed by rpm
|
||||
set(CPACK_SET_DESTDIR "ON")
|
||||
@ -670,39 +686,18 @@ endif()
|
||||
set(CPACK_PACKAGE_DESCRIPTION_FILE "${TOP_SRC_DIR}/${LYX_CMAKE_DIR}/LyX_description.txt")
|
||||
set(CPACK_RESOURCE_FILE_LICENSE "${TOP_SRC_DIR}/${LYX_CMAKE_DIR}/LyX_license.txt")
|
||||
|
||||
# Find the revision number and use it as the release in rpm-package-build.
|
||||
# This way we may omit the otherwise needed "--force" parameter when
|
||||
# installing from that rpm package.
|
||||
FIND_PROGRAM(LYX_SVNVERSION svnversion)
|
||||
#message(STATUS "svnversion = ${LYX_SVNVERSION}")
|
||||
if(LYX_SVNVERSION)
|
||||
EXECUTE_PROCESS(COMMAND ${LYX_SVNVERSION} WORKING_DIRECTORY "${TOP_SRC_DIR}" OUTPUT_VARIABLE CPACK_RPM_PACKAGE_RELEASE OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
# We use this value also to set the package-patch-value
|
||||
if(CPACK_RPM_PACKAGE_RELEASE MATCHES "^\([0-9]+\)")
|
||||
set(CPACK_PACKAGE_VERSION_PATCH ${CMAKE_MATCH_1}) # TODO this is not the patch level
|
||||
set(LYX_REVISION_VERSION ${CMAKE_MATCH_1})
|
||||
endif()
|
||||
else()
|
||||
set(LYX_REVISION_VERSION svn) #TODO use date
|
||||
endif()
|
||||
|
||||
|
||||
# we do not have a readme or welcome data,
|
||||
# so we do not provide infofiles for
|
||||
# CPACK_RESOURCE_FILE_README and CPACK_RESOURCE_FILE_WELCOME
|
||||
|
||||
if(UNIX)
|
||||
set(CPACK_SOURCE_GENERATOR TGZ TBZ2)
|
||||
elseif(WIN32)
|
||||
set(CPACK_SOURCE_GENERATOR ZIP)
|
||||
endif()
|
||||
# sources
|
||||
set(CPACK_SOURCE_INSTALLED_DIRECTORIES "${TOP_SRC_DIR};/") # http://www.mail-archive.com/cmake@cmake.org/msg33720.html
|
||||
|
||||
|
||||
set(CPACK_STRIP_FILES 1)
|
||||
|
||||
# sources
|
||||
set(CPACK_SOURCE_INSTALLED_DIRECTORIES "${TOP_SRC_DIR};/") # http://www.mail-archive.com/cmake@cmake.org/msg33720.html
|
||||
|
||||
|
||||
|
||||
if(LYX_CPACK)
|
||||
|
@ -1,25 +1,26 @@
|
||||
|
||||
|
||||
Defaults:
|
||||
* NLS disabled by default.
|
||||
* DONE: NLS should be enabled by default.
|
||||
* Eventually, cmake without option should generate a makefile that has reasonable defaults for everything
|
||||
(nls, spellcheck, build type, ...), at least when released.
|
||||
|
||||
|
||||
Help:
|
||||
* I do not know how to have a list of variables from the command line
|
||||
* DONE: I do not know how to have a list of variables from the command line
|
||||
(before I actually run it). cmake --help is not useful.
|
||||
* how can I see what the command line was. With autoconf I'd just
|
||||
do "make V=1", what shall I do with cmake?
|
||||
|
||||
|
||||
Bug fixing
|
||||
* Run in place, without using LYX_DIR_20x
|
||||
* DONE: Run in place, without using LYX_DIR_21x
|
||||
copy the resources (bind/ ui/ layouts/ dicts/ thes/ ...) to the build stage (?)
|
||||
This is what I do: copy them from an autotools install into the cmake project.
|
||||
Package.cpp and config.h.cmake has to be fixed.
|
||||
* check that .tar.gz and .xz are identical to those from autotools
|
||||
* Fix libintl, LYX_EXTERNAL_LIBINTL=OFF triggers compilation in intl even when LYX_NLS is OFF
|
||||
* DONE: Fix libintl, LYX_EXTERNAL_LIBINTL=OFF triggers compilation in intl even when LYX_NLS is OFF
|
||||
* *.po are too often generated by Visual Studio
|
||||
|
||||
|
||||
Documentation
|
||||
@ -32,25 +33,26 @@ Documentation
|
||||
Features
|
||||
* I would like to see a BUILD_TYPE flag like in autotools, with automatic selection from lyx version
|
||||
* Disbale merging selectively
|
||||
* Make .dmg
|
||||
* Bundles for Mac OSX
|
||||
* STARTED: Make .dmg
|
||||
* STARTED: Bundles for Mac OSX
|
||||
with support for universal binaries (don't know if it currently is a problem to build them)
|
||||
* from the maintainer point of view these task are needed:
|
||||
- .po remerge of strings in po/ (ie "make update-po")
|
||||
- DONE: *.po remerge of strings in po/ (ie "make update-po")
|
||||
- tarball creation, most notably i dont see any list of files which should go into tarball, we dont want everything to go there
|
||||
(ie "make distcheck" to check tree is prepared for release, "make dist" for actual release)
|
||||
these are nice to have and present in autotools, though not critical
|
||||
- target for regenaration of lfuns manual would be nice (ie make lfundoc)
|
||||
- target for doxygen generation (ie make doxydoc)
|
||||
* DONE: get patch version from configure.ac (regex)
|
||||
|
||||
|
||||
Cleanup
|
||||
* stdlib-debug mode should be merged with windows debug mode, since it is the same basically
|
||||
* I do not like the weird paths where built files go. I really cannot find my way there
|
||||
* DONE: I do not like the weird paths where built files go. I really cannot find my way there
|
||||
* Shouldn't we use lower case names everywhere (when possible)?
|
||||
Then the cmake files doesn't look that antiquated. And seeing an uppercase variable means
|
||||
that this variable wasn't introduced by lyx and is a cmake default name.
|
||||
* port 'development/cmake/doc/ReplaceValues.pl' to python
|
||||
* DONE: port 'development/cmake/doc/ReplaceValues.pl' to python
|
||||
* split master CMakeLists somehow: cpack, pcs, warnings, dependencies, defaults, install, options, ...
|
||||
remove dependencies between these modules
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user