qt5: reduce closure size
First, closure size is reduced by including the static libraries in $out instead of trying to move them to $dev. The Qt build system cannot handle libraries being split between different prefixes. Previously, the static libraries were moved into $dev and the shared libraries were symlinked from $out to $dev to fool the build system. However, this causes $dev to be retained at runtime. Instead, we now keep the static libraries in $out. Fortunately, the static libraries are not very large anyway. Second, we build with QT_NO_DEBUG defined unless debugging is enabled. This causes some assertions to be removed; when assertions are included, they pull paths from $dev into the runtime closure by using the __FILE__ macro. We also now patch qtbase to remove even more assertions when QT_NO_DEBUG is defined.
This commit is contained in:
@@ -4,7 +4,6 @@ qtDocPrefix=@qtDocPrefix@
|
||||
|
||||
. @fix_qt_builtin_paths@
|
||||
. @fix_qt_module_paths@
|
||||
. @fix_qt_static_libs@
|
||||
|
||||
providesQtRuntime() {
|
||||
[ -d "$1/$qtPluginPrefix" ] || [ -d "$1/$qtQmlPrefix" ]
|
||||
@@ -67,12 +66,3 @@ postPatchMkspecs() {
|
||||
if [ -z "$dontPatchMkspecs" ]; then
|
||||
postPhases="${postPhases}${postPhases:+ }postPatchMkspecs"
|
||||
fi
|
||||
|
||||
postMoveQtStaticLibs() {
|
||||
if [ "z${!outputLib}" != "z${!outputDev}" ]; then
|
||||
fixQtStaticLibs "${!outputLib}" "${!outputDev}"
|
||||
fi
|
||||
}
|
||||
if [ -z "$dontMoveQtStaticLibs" ]; then
|
||||
postPhases="${postPhases}${postPhases:+ }postMoveQtStaticLibs"
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user