3
SET(CPACK_COMPONENTS_USED "Server;Client")
4
SET(CPACK_WIX_UI "MyWixUI_Mondo")
5
IF(CMAKE_SIZEOF_VOID_P MATCHES 8)
6
SET(CPACK_PACKAGE_FILE_NAME "mariadb-essential-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}-winx64")
8
SET(CPACK_PACKAGE_FILE_NAME "mariadb-essential-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}-win32")
11
SET(CPACK_COMPONENTS_USED
12
"Server;Client;Development;SharedLibraries;Embedded;Documentation;IniFiles;Readme;Debuginfo;Common")
15
SET( WIX_FEATURE_MySQLServer_EXTRA_FEATURES "DBInstance;SharedClientServerComponents")
16
# Some components like Embedded are optional
17
# We will build MSI without embedded if it was not selected for build
18
#(need to modify CPACK_COMPONENTS_ALL for that)
20
FOREACH(comp1 ${CPACK_COMPONENTS_USED})
22
FOREACH(comp2 ${CPACK_COMPONENTS_ALL})
23
IF(comp1 STREQUAL comp2)
29
SET(CPACK_ALL ${CPACK_ALL} ${comp1})
32
SET(CPACK_COMPONENTS_ALL ${CPACK_ALL})
34
# Always install (hidden), includes Readme files
35
SET(CPACK_COMPONENT_GROUP_ALWAYSINSTALL_HIDDEN 1)
36
SET(CPACK_COMPONENT_README_GROUP "AlwaysInstall")
37
SET(CPACK_COMPONENT_COMMON_GROUP "AlwaysInstall")
39
# Feature MySQL Server
40
SET(CPACK_COMPONENT_GROUP_MYSQLSERVER_DISPLAY_NAME "MariaDB Server")
41
SET(CPACK_COMPONENT_GROUP_MYSQLSERVER_EXPANDED "1")
42
SET(CPACK_COMPONENT_GROUP_MYSQLSERVER_DESCRIPTION "Install server")
43
# Subfeature "Server" (hidden)
44
SET(CPACK_COMPONENT_SERVER_GROUP "MySQLServer")
45
SET(CPACK_COMPONENT_SERVER_HIDDEN 1)
47
SET(CPACK_COMPONENT_CLIENT_GROUP "MySQLServer")
48
SET(CPACK_COMPONENT_CLIENT_DISPLAY_NAME "Client Programs")
49
SET(CPACK_COMPONENT_CLIENT_DESCRIPTION
50
"Various helpful (commandline) tools including the mysql command line client" )
51
# Subfeature "Debug binaries"
52
SET(CPACK_COMPONENT_DEBUGBINARIES_GROUP "MySQLServer")
53
SET(CPACK_COMPONENT_DEBUGBINARIES_DISPLAY_NAME "Debug binaries")
54
SET(CPACK_COMPONENT_DEBUGBINARIES_DESCRIPTION
55
"Debug/trace versions of executables and libraries" )
56
#SET(CPACK_COMPONENT_DEBUGBINARIES_WIX_LEVEL 2)
59
#Subfeature "Data Files"
60
SET(CPACK_COMPONENT_DATAFILES_GROUP "MySQLServer")
61
SET(CPACK_COMPONENT_DATAFILES_DISPLAY_NAME "Server data files")
62
SET(CPACK_COMPONENT_DATAFILES_DESCRIPTION "Server data files" )
63
SET(CPACK_COMPONENT_DATAFILES_HIDDEN 1)
67
SET(CPACK_COMPONENT_GROUP_DEVEL_DISPLAY_NAME "Development Components")
68
SET(CPACK_COMPONENT_GROUP_DEVEL_DESCRIPTION "Installs C/C++ header files and libraries")
69
#Subfeature "Development"
70
SET(CPACK_COMPONENT_DEVELOPMENT_GROUP "Devel")
71
SET(CPACK_COMPONENT_DEVELOPMENT_HIDDEN 1)
73
#Subfeature "Shared libraries"
74
SET(CPACK_COMPONENT_SHAREDLIBRARIES_GROUP "Devel")
75
SET(CPACK_COMPONENT_SHAREDLIBRARIES_DISPLAY_NAME "Client C API library (shared)")
76
SET(CPACK_COMPONENT_SHAREDLIBRARIES_DESCRIPTION "Installs shared client library")
78
#Subfeature "Embedded"
79
SET(CPACK_COMPONENT_EMBEDDED_GROUP "Devel")
80
SET(CPACK_COMPONENT_EMBEDDED_DISPLAY_NAME "Embedded server library")
81
SET(CPACK_COMPONENT_EMBEDDED_DESCRIPTION "Installs embedded server library")
82
SET(CPACK_COMPONENT_EMBEDDED_WIX_LEVEL 2)
84
#Feature Debug Symbols
85
SET(CPACK_COMPONENT_GROUP_DEBUGSYMBOLS_DISPLAY_NAME "Debug Symbols")
86
SET(CPACK_COMPONENT_GROUP_DEBUGSYMBOLS_DESCRIPTION "Installs Debug Symbols")
87
SET(CPACK_COMPONENT_DEBUGSYMBOLS_WIX_LEVEL 2)
88
SET(CPACK_COMPONENT_DEBUGINFO_GROUP "DebugSymbols")
89
SET(CPACK_COMPONENT_DEBUGINFO_HIDDEN 1)
91
#Feature Documentation
92
SET(CPACK_COMPONENT_DOCUMENTATION_DISPLAY_NAME "Documentation")
93
SET(CPACK_COMPONENT_DOCUMENTATION_DESCRIPTION "Installs documentation")
94
SET(CPACK_COMPONENT_DOCUMENTATION_WIX_LEVEL 2)
97
SET(CPACK_COMPONENT_TEST_DISPLAY_NAME "Tests")
98
SET(CPACK_COMPONENT_TEST_DESCRIPTION "Installs unittests (requires Perl to run)")
99
SET(CPACK_COMPONENT_TEST_WIX_LEVEL 2)
102
#Feature Misc (hidden, installs only if everything is installed)
103
SET(CPACK_COMPONENT_GROUP_MISC_HIDDEN 1)
104
SET(CPACK_COMPONENT_GROUP_MISC_WIX_LEVEL 100)
105
SET(CPACK_COMPONENT_INIFILES_GROUP "Misc")
106
SET(CPACK_COMPONENT_SERVER_SCRIPTS_GROUP "Misc")
108
#Add Firewall exception for mysqld.exe
109
SET(bin.mysqld.exe.FILE_EXTRA "
110
<FirewallException Id='firewallexception.mysqld.exe' Name='[ProductName]' Scope='any'
111
IgnoreFailure='yes' xmlns='http://schemas.microsoft.com/wix/FirewallExtension'
3
SET(CPACK_COMPONENTS_USED "Server;Client")
4
SET(CPACK_WIX_UI "MyWixUI_Mondo")
5
IF(CMAKE_SIZEOF_VOID_P MATCHES 8)
6
SET(CPACK_PACKAGE_FILE_NAME "mariadb-essential-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}-winx64")
8
SET(CPACK_PACKAGE_FILE_NAME "mariadb-essential-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}-win32")
11
SET(CPACK_COMPONENTS_USED
12
"Server;Client;Development;SharedLibraries;Embedded;Documentation;IniFiles;Readme;Debuginfo;Common")
15
SET( WIX_FEATURE_MySQLServer_EXTRA_FEATURES "DBInstance;SharedClientServerComponents")
16
# Some components like Embedded are optional
17
# We will build MSI without embedded if it was not selected for build
18
#(need to modify CPACK_COMPONENTS_ALL for that)
20
FOREACH(comp1 ${CPACK_COMPONENTS_USED})
22
FOREACH(comp2 ${CPACK_COMPONENTS_ALL})
23
IF(comp1 STREQUAL comp2)
29
SET(CPACK_ALL ${CPACK_ALL} ${comp1})
32
SET(CPACK_COMPONENTS_ALL ${CPACK_ALL})
34
# Always install (hidden), includes Readme files
35
SET(CPACK_COMPONENT_GROUP_ALWAYSINSTALL_HIDDEN 1)
36
SET(CPACK_COMPONENT_README_GROUP "AlwaysInstall")
37
SET(CPACK_COMPONENT_COMMON_GROUP "AlwaysInstall")
39
# Feature MySQL Server
40
SET(CPACK_COMPONENT_GROUP_MYSQLSERVER_DISPLAY_NAME "MariaDB Server")
41
SET(CPACK_COMPONENT_GROUP_MYSQLSERVER_EXPANDED "1")
42
SET(CPACK_COMPONENT_GROUP_MYSQLSERVER_DESCRIPTION "Install server")
43
# Subfeature "Server" (hidden)
44
SET(CPACK_COMPONENT_SERVER_GROUP "MySQLServer")
45
SET(CPACK_COMPONENT_SERVER_HIDDEN 1)
47
SET(CPACK_COMPONENT_CLIENT_GROUP "MySQLServer")
48
SET(CPACK_COMPONENT_CLIENT_DISPLAY_NAME "Client Programs")
49
SET(CPACK_COMPONENT_CLIENT_DESCRIPTION
50
"Various helpful (commandline) tools including the mysql command line client" )
51
# Subfeature "Debug binaries"
52
SET(CPACK_COMPONENT_DEBUGBINARIES_GROUP "MySQLServer")
53
SET(CPACK_COMPONENT_DEBUGBINARIES_DISPLAY_NAME "Debug binaries")
54
SET(CPACK_COMPONENT_DEBUGBINARIES_DESCRIPTION
55
"Debug/trace versions of executables and libraries" )
56
#SET(CPACK_COMPONENT_DEBUGBINARIES_WIX_LEVEL 2)
59
#Subfeature "Data Files"
60
SET(CPACK_COMPONENT_DATAFILES_GROUP "MySQLServer")
61
SET(CPACK_COMPONENT_DATAFILES_DISPLAY_NAME "Server data files")
62
SET(CPACK_COMPONENT_DATAFILES_DESCRIPTION "Server data files" )
63
SET(CPACK_COMPONENT_DATAFILES_HIDDEN 1)
67
SET(CPACK_COMPONENT_GROUP_DEVEL_DISPLAY_NAME "Development Components")
68
SET(CPACK_COMPONENT_GROUP_DEVEL_DESCRIPTION "Installs C/C++ header files and libraries")
69
#Subfeature "Development"
70
SET(CPACK_COMPONENT_DEVELOPMENT_GROUP "Devel")
71
SET(CPACK_COMPONENT_DEVELOPMENT_HIDDEN 1)
73
#Subfeature "Shared libraries"
74
SET(CPACK_COMPONENT_SHAREDLIBRARIES_GROUP "Devel")
75
SET(CPACK_COMPONENT_SHAREDLIBRARIES_DISPLAY_NAME "Client C API library (shared)")
76
SET(CPACK_COMPONENT_SHAREDLIBRARIES_DESCRIPTION "Installs shared client library")
78
#Subfeature "Embedded"
79
SET(CPACK_COMPONENT_EMBEDDED_GROUP "Devel")
80
SET(CPACK_COMPONENT_EMBEDDED_DISPLAY_NAME "Embedded server library")
81
SET(CPACK_COMPONENT_EMBEDDED_DESCRIPTION "Installs embedded server library")
82
SET(CPACK_COMPONENT_EMBEDDED_WIX_LEVEL 2)
84
#Feature Debug Symbols
85
SET(CPACK_COMPONENT_GROUP_DEBUGSYMBOLS_DISPLAY_NAME "Debug Symbols")
86
SET(CPACK_COMPONENT_GROUP_DEBUGSYMBOLS_DESCRIPTION "Installs Debug Symbols")
87
SET(CPACK_COMPONENT_DEBUGSYMBOLS_WIX_LEVEL 2)
88
SET(CPACK_COMPONENT_DEBUGINFO_GROUP "DebugSymbols")
89
SET(CPACK_COMPONENT_DEBUGINFO_HIDDEN 1)
91
#Feature Documentation
92
SET(CPACK_COMPONENT_DOCUMENTATION_DISPLAY_NAME "Documentation")
93
SET(CPACK_COMPONENT_DOCUMENTATION_DESCRIPTION "Installs documentation")
94
SET(CPACK_COMPONENT_DOCUMENTATION_WIX_LEVEL 2)
97
SET(CPACK_COMPONENT_TEST_DISPLAY_NAME "Tests")
98
SET(CPACK_COMPONENT_TEST_DESCRIPTION "Installs unittests (requires Perl to run)")
99
SET(CPACK_COMPONENT_TEST_WIX_LEVEL 2)
102
#Feature Misc (hidden, installs only if everything is installed)
103
SET(CPACK_COMPONENT_GROUP_MISC_HIDDEN 1)
104
SET(CPACK_COMPONENT_GROUP_MISC_WIX_LEVEL 100)
105
SET(CPACK_COMPONENT_INIFILES_GROUP "Misc")
106
SET(CPACK_COMPONENT_SERVER_SCRIPTS_GROUP "Misc")
108
#Add Firewall exception for mysqld.exe
109
SET(bin.mysqld.exe.FILE_EXTRA "
110
<FirewallException Id='firewallexception.mysqld.exe' Name='[ProductName]' Scope='any'
111
IgnoreFailure='yes' xmlns='http://schemas.microsoft.com/wix/FirewallExtension'