Commit graph

29 commits

Author SHA1 Message Date
Thomas Tuegel 5590e365e4
qtbase: Check for wrapQtAppsHook in setupHook 2021-01-25 15:56:15 -06:00
Thomas Tuegel 67b7cffaec
wrapQtAppsHook: only run the hook once 2021-01-25 15:56:15 -06:00
Thomas Tuegel 7744998f04
qtbase: Set cmakeFlags and NIX_CFLAGS_COMPILE in setupHook 2021-01-25 15:56:05 -06:00
Thomas Tuegel b80ce0aeca
qmake: Select debug or release build
The qmake hook sets its own `CONFIG+=debug` or `CONFIG+=release` depending on
how `qtbase` was built. We no longer rely on using the custom deriver for this
feature.
2021-01-24 09:51:34 -06:00
Graham Bennett 8e4e38cdcd octave: Fix libtool framework link failure on Darwin
This fix moves linker flags of the form `-framework foo` from dependency_libs to
inherited_linker_flags, since libtool doesn't understand them.  See #96977 for
details.

Fixes #96977
2020-09-06 20:24:14 +01:00
Bjørn Forsman 9e144d5527 wrap-qt-apps-hook.sh: wrap binaries in ./sbin/
wrap-qt-apps-hook.sh runs before move-sbin.sh, so programs in ./sbin are
currently not wrapped. Fix it.
2019-12-08 20:44:29 +01:00
John Ericson ef43c5f5d9 wrap-qt-apps-hook: qtWrapperArgs may be undefined 2019-11-17 15:48:39 -05:00
John Ericson 784c3dc0f9 qt5 qmake setup hook: qmakeFlags may be undefined 2019-11-08 13:28:59 -05:00
John Ericson 9b274e2962 qtbase-setup-hook: postPhases may be undefined
My earlier sed missed this because it already had `{..}`.
2019-11-02 19:23:44 -04:00
John Ericson b7f4bda282 treewide: *Phase(s)? variables are optional
If these aren't defined, the stdenv defaults are used in the `*Phase`
case, or no extra phases are done, in the `*Phases` case.
2019-11-01 14:44:44 -04:00
John Ericson 2811b032d6 treewide: Make still dont* Variables are optional in most cases
Go beyond the obvious setup hooks now, with a bit of sed, with a skipped case:

 - cc-wrapper's `dontlink`, because it already is handled.

Also, in nix files escaping was manually added.

EMP
2019-11-01 14:44:44 -04:00
John Ericson 1290e532ea treewide: Make more dont* variables OK to be undefined in setup hooks 2019-11-01 14:44:44 -04:00
Thomas Tuegel a2e3bef2e5
Merge pull request #69086 from ttuegel/qt-5.12.4
Qt 5.12.4
2019-09-26 05:24:08 -05:00
worldofpeace 15e99a06a8 wrapQtAppsHook: correct skip directories heuristic 2019-09-20 19:10:02 -04:00
Thomas Tuegel 756b46a449
fix-qmake-libtool.sh 2019-09-19 07:39:11 -05:00
Thomas Tuegel bddca5a91a
qmake-hook.sh: qmakeFlags is an array 2019-09-19 07:39:11 -05:00
Bjørn Forsman d6e65ec4a0 wrapQtAppsHook: skip directories
Prevents messages like this in the build log:

  grep: <PATH>/bin: Is a directory
2019-09-13 16:53:11 +02:00
Bjørn Forsman c6d516dfc4 wrapQtAppsHook: use patchelf --print-interpreter instead of isELFExec
Some executables are built as PIEs (e.g. keepassxc) and are technically
isELFDyn, not isELFExec. Without this change those executables will not
be wrapped.
2019-09-13 16:53:11 +02:00
Florian Klink 88146a095f wrapQtAppsHook: use isELFExec
This ensures we only wrap executables, not shared libraries
2019-08-17 16:45:57 +02:00
worldofpeace 7d6ab0ad7a wrapQtAppsHook: use isELF
We should still prevent things like
scripts from being wrapped.
2019-07-17 15:53:15 -04:00
worldofpeace 4908d382ae wrapQtAppsHook: remove isQtApp
This was preventing dolphin from being wrapped.
2019-07-16 20:37:43 -04:00
worldofpeace 6c057aea5c wrapQtAppsHook: wrap binaries in libexec 2019-07-16 17:26:17 -04:00
Thomas Tuegel f79fd2e826
wrapQtAppsHook: wrap Qt applications for runtime dependencies 2019-07-05 10:41:41 -05:00
Thomas Tuegel 04239641b5
Merge branch 'bugfix/qt-5/closure-size-static-libs' into merge/qt-5.10.0 2018-01-15 18:49:27 -06:00
Thomas Tuegel 75d2a7dc4d
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.
2018-01-15 18:48:37 -06:00
John Ericson 046f091e0d treewide: Don't use envHook anymore
This commits needs a MAJOR audit as I oftentimes just guessed which of
`$hostOffset`, `$targetOffset`, or a fixed offset should be used.
2017-12-30 22:04:22 -05:00
Orivej Desh f568450637 qmake: enable parallel building of qmake projects by default 2017-12-07 08:52:42 +00:00
John Ericson da19c34d0f stdenv setup: Always use both propagated files
This continues #23374, which always kept around both attributes, by
always including both propagated files: `propgated-native-build-inputs`
and `propagated-build-inputs`. `nativePkgs` and `crossPkgs` are still
defined as before, however, so this change should only barely
observable.

This is an incremental step to fully keeping the dependencies separate
in all cases.
2017-11-21 10:44:44 -05:00
Thomas Tuegel fe0ab944db
qt5: factor out common definitions and remove symlink farm
The module definitions are factored out and shared between qt56 and qt59. The
symlink farm which was created during builds is no longer needed.
2017-11-07 07:18:46 -06:00