Hi Kent,
> -----Original Message-----
> From: Kent Boortz [mailto:kent.boortz@stripped]
> Sent: Montag, 16. Mai 2011 12:55
> To: commits@stripped
> Subject: bzr commit into mysql-5.5 branch (kent.boortz:3387)
>
> #At file:///net/helheim/store/bteam/bzr/kent/wix-5.6/mysql-5.5/ based on
> revid:andrei.elkin@stripped
>
> 3387 Kent Boortz 2011-05-16
> - Changes needed to use newer WiX version
> - Added an alterantive search path for WiX components
> - Added a custom welcome dialog to include the copyright line
> - Excluded some binaries to make package smaller, in effect makig
the
> "essentials" package obsolete
> - Added a bit more error checking when running the WiX tools
>
> WiX changes done by Johannes Taxacher"
>
> modified:
> packaging/WiX/ca/CMakeLists.txt
> packaging/WiX/create_msi.cmake.in
> packaging/WiX/custom_ui.wxs
> packaging/WiX/extra.wxs.in
> === modified file 'packaging/WiX/create_msi.cmake.in'
> --- a/packaging/WiX/create_msi.cmake.in 2010-11-20 14:47:50 +0000
> +++ b/packaging/WiX/create_msi.cmake.in 2011-05-16 10:54:57 +0000
>
> +LIST(APPEND EXCLUDE_DIRS
> + bin/debug
> + data/test
> + lib/plugin/debug
> + mysql-test
> + scripts
> + sql-bench
> +)
> +
> +LIST(APPEND EXCLUDE_FILES
> + bin/echo.exe
> + bin/mysql_client_test_embedded.exe
> + bin/mysqld-debug.exe
> + bin/mysqltest_embedded.exe
> + bin/replace.exe
> + lib/debug/mysqlserver.lib
> + lib/libmysqld.dll
> + lib/libmysqld.lib
> + lib/mysqlserver.lib
> + lib/mysqlservices.lib
> +)
You do not want embedded to be in the MSI at all? No mysqld-debug either ?
You can do it much simpler than per-hand filtering. Just exclude
corresponding components from CPackWixConfig.cmake. This will also have a
big advantage that there won't be empty features (Debug Symbols, etc) shown
in the MSI selection tree during the installation. I'm talking about a
change like below - I just removed Embedded,DebugInfo,DebugBinaries from
CPACK_COMPONENTS_USED.
=== modified file 'packaging/WiX/CPackWixConfig.cmake'
--- packaging/WiX/CPackWixConfig.cmake 2010-07-24 15:26:45 +0000
+++ packaging/WiX/CPackWixConfig.cmake 2011-05-16 17:54:15 +0000
@@ -9,7 +9,7 @@
ENDIF()
ELSE()
SET(CPACK_COMPONENTS_USED
-
"Server;Client;DataFiles;Development;SharedLibraries;Embedded;Debuginfo;Docu
mentation;IniFiles;Readme;Server_Scripts;DebugBinaries")
+
"Server;Client;DataFiles;Development;SharedLibraries;Documentation;IniFiles;
Readme;Server_Scripts ")
ENDIF()
This won't exclude echo.exe or replace.exe. To exclude them for MSI, but
retain for ZIP, you'd need to specify a COMPONENT for MYSQL_ADD_EXECUTABLE
that is not in the list above. You can do it like below:
=== modified file 'client/CMakeLists.txt'
--- client/CMakeLists.txt 2010-09-20 14:17:32 +0000
+++ client/CMakeLists.txt 2011-05-16 18:07:11 +0000
@@ -66,7 +66,7 @@
# "WIN32" also covers 64 bit. "echo" is used in some files below
"mysql-test/".
IF(WIN32)
- MYSQL_ADD_EXECUTABLE(echo echo.c)
+ MYSQL_ADD_EXECUTABLE(echo echo.c COMPONENT Junk)
ENDIF(WIN32)
SET_TARGET_PROPERTIES (mysqlcheck mysqldump mysqlimport mysql_upgrade
mysqlshow mysqlslap
Now, if you want to exclude echo.exe from ZIP as well, just use
ADD_EXECUTABLE instead of MYSQL_ADD_EXECUTABLE - ADD_EXECUTABLE does not
automatically do INSTALL, so echo.exe won't be packaged.
Wlad