mirror of
				https://github.com/neovim/neovim.git
				synced 2025-10-26 04:17:01 +00:00 
			
		
		
		
	 f05a2891d3
			
		
	
	f05a2891d3
	
	
	
		
			
			Problem:
Dirs "config", "packaging", and "third-party" are all closely related
but this is not obvious from the layout. This adds friction for new
contributors.
Solution:
- rename config/ to cmake.config/
- rename test/config/ to test/cmakeconfig/ because it is used in Lua
  tests: require('test.cmakeconfig.paths').
- rename packaging/ to cmake.packaging/
- rename third-party/ to cmake.deps/ (parallel with .deps/)
		
	
		
			
				
	
	
		
			65 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
| set(CPACK_PACKAGE_NAME "Neovim")
 | |
| set(CPACK_PACKAGE_VENDOR "neovim.io")
 | |
| set(CPACK_PACKAGE_FILE_NAME "nvim")
 | |
| 
 | |
| # From the GitHub About section
 | |
| set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Vim-fork focused on extensibility and usability.")
 | |
| 
 | |
| set(CPACK_PACKAGE_INSTALL_DIRECTORY ${CPACK_PACKAGE_NAME})
 | |
| 
 | |
| # Pull the versions defined with the top level CMakeLists.txt
 | |
| set(CPACK_PACKAGE_VERSION_MAJOR ${NVIM_VERSION_MAJOR})
 | |
| set(CPACK_PACKAGE_VERSION_MINOR ${NVIM_VERSION_MINOR})
 | |
| set(CPACK_PACKAGE_VERSION_PATCH ${NVIM_VERSION_PATCH})
 | |
| 
 | |
| # CPACK_VERBATIM_VARIABLES ensures that the variables prefixed with *CPACK_*
 | |
| # are correctly passed to the cpack program.
 | |
| # This should always be set to true.
 | |
| set(CPACK_VERBATIM_VARIABLES TRUE)
 | |
| 
 | |
| set(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE.txt")
 | |
| set(CPACK_RESOURCE_FILE_README ${PROJECT_SOURCE_DIR}/README.md)
 | |
| 
 | |
| 
 | |
| if(WIN32)
 | |
|   set(CPACK_PACKAGE_FILE_NAME "nvim-win64")
 | |
|   set(CPACK_GENERATOR ZIP WIX)
 | |
| 
 | |
|   # WIX
 | |
|   # CPACK_WIX_UPGRADE_GUID should be set, but should never change.
 | |
|   # CPACK_WIX_PRODUCT_GUID should not be set (leave as default to auto-generate).
 | |
| 
 | |
|   # The following guid is just a randomly generated guid that's been pasted here.
 | |
|   # It has no special meaning other than to supply it to WIX.
 | |
|   set(CPACK_WIX_UPGRADE_GUID "207A1A70-7B0C-418A-A153-CA6883E38F4D")
 | |
|   set(CPACK_WIX_PRODUCT_ICON ${CMAKE_CURRENT_LIST_DIR}/neovim.ico)
 | |
| 
 | |
|   # We use a wix patch to add further options to the installer. At present, it's just to add neovim to the path
 | |
|   # on installation, however, it can be extended.
 | |
|   # See: https://cmake.org/cmake/help/v3.7/module/CPackWIX.html#variable:CPACK_WIX_PATCH_FILE
 | |
|   list(APPEND CPACK_WIX_EXTENSIONS WixUtilExtension)
 | |
|   list(APPEND CPACK_WIX_PATCH_FILE ${CMAKE_CURRENT_LIST_DIR}/WixPatch.xml)
 | |
| elseif(APPLE)
 | |
|   set(CPACK_PACKAGE_FILE_NAME "nvim-macos")
 | |
|   set(CPACK_GENERATOR TGZ)
 | |
|   set(CPACK_PACKAGE_ICON ${CMAKE_CURRENT_LIST_DIR}/neovim.icns)
 | |
| elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
 | |
|   set(CPACK_PACKAGE_FILE_NAME "nvim-linux64")
 | |
|   set(CPACK_GENERATOR TGZ DEB)
 | |
|   set(CPACK_DEBIAN_PACKAGE_NAME "Neovim") # required
 | |
|   set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Neovim.io") # required
 | |
| 
 | |
|   # Automatically compute required shared lib dependencies.
 | |
|   # Unfortunately, you "just need to know" that this has a hidden
 | |
|   # dependency on dpkg-shlibdeps whilst using a debian based host.
 | |
|   set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS TRUE)
 | |
| else()
 | |
|   set(CPACK_GENERATOR TGZ)
 | |
| endif()
 | |
| 
 | |
| # CPack variables are loaded in on the call to include(CPack). If you set
 | |
| # variables *after* the inclusion, they don't get updated within the CPack
 | |
| # config. Note that some CPack commands should still be run after it, such
 | |
| # as cpack_add_component().
 | |
| include(CPack)
 |