mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 10:56:12 +01:00 
			
		
		
		
	 11aeef2aa2
			
		
	
	
	11aeef2aa2
	
	
	
		
			
			- When `libcurl` is installed in path out of default path, like on Windows, `include_directories` failed to find `curl/curl.h`. - Fix `cmake` by using modern syntax with imported target and `find_package` - Fix warnings treated as the errors - Remove `HASHICORP_HAVE_EXCEPTIONS` macro and related code - Add package to `Server` component in Windows - Tested with `$ ./mysql-test/mtr --suite=vault` - Closes PR #3068 - Reviewer: <wlad@mariadb.com> <julius.goryavsky@mariadb.com>
		
			
				
	
	
		
			121 lines
		
	
	
	
		
			4.8 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			121 lines
		
	
	
	
		
			4.8 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
| 
 | |
| IF(ESSENTIALS)
 | |
|  SET(CPACK_COMPONENTS_USED "Server;Client")
 | |
|  SET(CPACK_WIX_UI "MyWixUI_Mondo")
 | |
|  IF(CMAKE_SIZEOF_VOID_P MATCHES 8)
 | |
|   SET(CPACK_PACKAGE_FILE_NAME  "mariadb-essential-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}-winx64")
 | |
|  ELSE()
 | |
|   SET(CPACK_PACKAGE_FILE_NAME  "mariadb-essential-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}-win32")
 | |
|  ENDIF()
 | |
| ELSE()
 | |
|   SET(CPACK_COMPONENTS_USED 
 | |
|     "Server;Client;Development;SharedLibraries;Documentation;Readme;Common;connect-engine;ClientPlugins;gssapi-server;gssapi-client;aws-key-management;rocksdb-engine;backup;VCCRT")
 | |
| ENDIF()
 | |
| 
 | |
| SET( WIX_FEATURE_MySQLServer_EXTRA_FEATURES "DBInstance;SharedClientServerComponents")
 | |
| # Some components like Embedded are optional
 | |
| # We will build MSI without embedded if it was not selected for build
 | |
| #(need to modify CPACK_COMPONENTS_ALL for that)
 | |
| SET(CPACK_ALL)
 | |
| FOREACH(comp1 ${CPACK_COMPONENTS_USED})
 | |
|  SET(found)
 | |
|  FOREACH(comp2 ${CPACK_COMPONENTS_ALL})
 | |
|   IF(comp1 STREQUAL comp2)
 | |
|     SET(found 1)
 | |
|     BREAK()
 | |
|   ENDIF()
 | |
|  ENDFOREACH()
 | |
|  IF(found)
 | |
|    SET(CPACK_ALL ${CPACK_ALL} ${comp1})
 | |
|  ENDIF()
 | |
| ENDFOREACH()
 | |
| SET(CPACK_COMPONENTS_ALL ${CPACK_ALL})
 | |
| 
 | |
| # Always install (hidden), includes Readme files
 | |
| SET(CPACK_COMPONENT_GROUP_ALWAYSINSTALL_HIDDEN 1)
 | |
| SET(CPACK_COMPONENT_README_GROUP "AlwaysInstall")
 | |
| SET(CPACK_COMPONENT_COMMON_GROUP "AlwaysInstall")
 | |
| SET(CPACK_COMPONENT_VCCRT_GROUP "AlwaysInstall")
 | |
| 
 | |
| # Feature MySQL Server
 | |
| SET(CPACK_COMPONENT_GROUP_MYSQLSERVER_DISPLAY_NAME "MariaDB Server")
 | |
| SET(CPACK_COMPONENT_GROUP_MYSQLSERVER_EXPANDED "1")
 | |
| SET(CPACK_COMPONENT_GROUP_MYSQLSERVER_DESCRIPTION "Install server")
 | |
|  # Subfeature "Server" (hidden)
 | |
|  SET(CPACK_COMPONENT_SERVER_GROUP "MySQLServer")
 | |
|  SET(CPACK_COMPONENT_SERVER_HIDDEN 1)
 | |
|  # Subfeature "Client" 
 | |
|  SET(CPACK_COMPONENT_CLIENT_GROUP "MySQLServer")
 | |
|  SET(CPACK_COMPONENT_CLIENT_DISPLAY_NAME "Client Programs")
 | |
|  SET(CPACK_COMPONENT_CLIENT_DESCRIPTION 
 | |
|    "Various helpful (commandline) tools including the mysql command line client" )
 | |
|  # Subfeature "Debug binaries" 
 | |
|  SET(CPACK_COMPONENT_DEBUGBINARIES_GROUP "MySQLServer")
 | |
|  SET(CPACK_COMPONENT_DEBUGBINARIES_DISPLAY_NAME "Debug binaries")
 | |
|  SET(CPACK_COMPONENT_DEBUGBINARIES_DESCRIPTION 
 | |
|    "Debug/trace versions of executables and libraries" )
 | |
|  #SET(CPACK_COMPONENT_DEBUGBINARIES_WIX_LEVEL 2)
 | |
|  
 | |
|  # Subfeature "Backup"
 | |
|  SET(CPACK_COMPONENT_BACKUP_GROUP "MySQLServer")
 | |
|  SET(CPACK_COMPONENT_BACKUP_DISPLAY_NAME "Backup utilities")
 | |
|  SET(CPACK_COMPONENT_BACKUP_DESCRIPTION "Installs backup utilities(mariabackup and mbstream)")
 | |
| 
 | |
|  
 | |
|  #Miscellaneous (hidden) components, part of server / or client programs
 | |
|  FOREACH(comp connect-engine ClientPlugins gssapi-server gssapi-client aws-key-management rocksdb-engine plugin-hashicorp-key-management)
 | |
|    STRING(TOUPPER "${comp}" comp)
 | |
|    SET(CPACK_COMPONENT_${comp}_GROUP "MySQLServer")
 | |
|    SET(CPACK_COMPONENT_${comp}_HIDDEN 1)
 | |
|  ENDFOREACH()
 | |
| 
 | |
| #Feature "Devel"
 | |
| SET(CPACK_COMPONENT_GROUP_DEVEL_DISPLAY_NAME "Development Components")
 | |
| SET(CPACK_COMPONENT_GROUP_DEVEL_DESCRIPTION "Installs C/C++ header files and libraries")
 | |
|  #Subfeature "Development"
 | |
|  SET(CPACK_COMPONENT_DEVELOPMENT_GROUP "Devel")
 | |
|  SET(CPACK_COMPONENT_DEVELOPMENT_HIDDEN 1)
 | |
|  
 | |
|  #Subfeature "Shared libraries"
 | |
|  SET(CPACK_COMPONENT_SHAREDLIBRARIES_GROUP "Devel")
 | |
|  SET(CPACK_COMPONENT_SHAREDLIBRARIES_DISPLAY_NAME "Client C API library (shared)")
 | |
|  SET(CPACK_COMPONENT_SHAREDLIBRARIES_DESCRIPTION "Installs shared client library")
 | |
|  
 | |
|  #Subfeature "Embedded"
 | |
|  SET(CPACK_COMPONENT_EMBEDDED_GROUP "Devel")
 | |
|  SET(CPACK_COMPONENT_EMBEDDED_DISPLAY_NAME "Embedded server library")
 | |
|  SET(CPACK_COMPONENT_EMBEDDED_DESCRIPTION "Installs embedded server library")
 | |
|  SET(CPACK_COMPONENT_EMBEDDED_WIX_LEVEL 2)
 | |
| 
 | |
| #Feature Debug Symbols
 | |
| SET(CPACK_COMPONENT_GROUP_DEBUGSYMBOLS_DISPLAY_NAME "Debug Symbols")
 | |
| SET(CPACK_COMPONENT_GROUP_DEBUGSYMBOLS_DESCRIPTION "Installs Debug Symbols")
 | |
| SET(CPACK_COMPONENT_DEBUGSYMBOLS_WIX_LEVEL 2)
 | |
|  SET(CPACK_COMPONENT_DEBUGINFO_GROUP "DebugSymbols")
 | |
|  SET(CPACK_COMPONENT_DEBUGINFO_HIDDEN 1)
 | |
| 
 | |
| #Feature Documentation
 | |
| SET(CPACK_COMPONENT_DOCUMENTATION_DISPLAY_NAME "Documentation")
 | |
| SET(CPACK_COMPONENT_DOCUMENTATION_DESCRIPTION "Installs documentation")
 | |
| SET(CPACK_COMPONENT_DOCUMENTATION_WIX_LEVEL 2)
 | |
| 
 | |
| #Feature tests
 | |
| SET(CPACK_COMPONENT_TEST_DISPLAY_NAME "Tests")
 | |
| SET(CPACK_COMPONENT_TEST_DESCRIPTION "Installs unittests (requires Perl to run)")
 | |
| SET(CPACK_COMPONENT_TEST_WIX_LEVEL 2)
 | |
| 
 | |
| 
 | |
| #Feature Misc (hidden, installs only if everything is installed)
 | |
| SET(CPACK_COMPONENT_GROUP_MISC_HIDDEN 1)
 | |
| SET(CPACK_COMPONENT_GROUP_MISC_WIX_LEVEL 100)
 | |
|   SET(CPACK_COMPONENT_INIFILES_GROUP "Misc")
 | |
|   SET(CPACK_COMPONENT_SERVER_SCRIPTS_GROUP "Misc")
 | |
| 
 | |
| #Add Firewall exception for mysqld.exe
 | |
| SET(bin.mysqld.exe.FILE_EXTRA "
 | |
|   <FirewallException Id='firewallexception.mysqld.exe' Name='[ProductName]' Scope='any'
 | |
|        IgnoreFailure='yes' xmlns='http://schemas.microsoft.com/wix/FirewallExtension' 
 | |
|   />
 | |
|   "
 | |
| )
 | |
| 
 |