all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Qt/KDE build system?
@ 2019-11-23 13:12 Hartmut Goebel
  2019-11-23 16:53 ` Ludovic Courtès
  0 siblings, 1 reply; 3+ messages in thread
From: Hartmut Goebel @ 2019-11-23 13:12 UTC (permalink / raw)
  To: Guix-devel

Hi,

I'm currently packaging some KDE applications and find myself adding
this to each of the package descriptions:

    (arguments
     `(#:modules ((guix build cmake-build-system)
                  (guix build qt-utils)
                  (guix build utils))
       #:imported-modules (,@%cmake-build-system-modules
                           (guix build qt-utils))
       #:phases
       (modify-phases %standard-phases
         (add-after 'install 'wrap-executable
           (lambda* (#:key outputs #:allow-other-keys)
             (let ((out (assoc-ref outputs "out")))
               (wrap-qt-program out "lskat"))
             #t)))))

IMHO it would make sense to have some Qt/KDE build system or a flag for
the cmake-build-system so these code replication can be avoided.

How shall de approach this?

-- 
Regards
Hartmut Goebel

| Hartmut Goebel          | h.goebel@crazy-compilers.com               |
| www.crazy-compilers.com | compilers which you thought are impossible |

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Qt/KDE build system?
  2019-11-23 13:12 Hartmut Goebel
@ 2019-11-23 16:53 ` Ludovic Courtès
  0 siblings, 0 replies; 3+ messages in thread
From: Ludovic Courtès @ 2019-11-23 16:53 UTC (permalink / raw)
  To: Hartmut Goebel; +Cc: Guix-devel

Hi!

Hartmut Goebel <h.goebel@crazy-compilers.com> skribis:

> I'm currently packaging some KDE applications and find myself adding
> this to each of the package descriptions:
>
>     (arguments
>      `(#:modules ((guix build cmake-build-system)
>                   (guix build qt-utils)
>                   (guix build utils))
>        #:imported-modules (,@%cmake-build-system-modules
>                            (guix build qt-utils))
>        #:phases
>        (modify-phases %standard-phases
>          (add-after 'install 'wrap-executable
>            (lambda* (#:key outputs #:allow-other-keys)
>              (let ((out (assoc-ref outputs "out")))
>                (wrap-qt-program out "lskat"))
>              #t)))))
>
> IMHO it would make sense to have some Qt/KDE build system or a flag for
> the cmake-build-system so these code replication can be avoided.

I agree.

> How shall de approach this?

I think you could come up with a ‘qt-build-system’ (is that an
appropriate name?) that simply adds the things above on top of
‘gnu-build-system’, similar to what ‘glib-or-gtk-build-system’ does.

HTH!

Ludo’.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Qt/KDE build system?
@ 2019-11-26 11:09 Hartmut Goebel
  0 siblings, 0 replies; 3+ messages in thread
From: Hartmut Goebel @ 2019-11-26 11:09 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel


[-- Attachment #1.1: Type: text/plain, Size: 1014 bytes --]

Hi,

Ludo wrote:

> I think you could come up with a ‘qt-build-system’ (is that an
> appropriate name?) that simply adds the things above on top of
> ‘gnu-build-system’, similar to what ‘glib-or-gtk-build-system’ does.

Many thanks for this valuable hint!

I've build a prototype and found two issues:

1. qt-build-system.scm is basically a copy of cmake-build-system.scm,
with just a few lines changed. IMHO this is not good, esp. in regard to
maintenance. I tried reusing variable using e.g. "(@ (guix build-systm
cmake) default-cmake)", but this said "symbol not found". Any other ideas?

2. The wrapper collects paths from *all* inputs, thus e.g. cmake will
become a dependency of *every* binary packages using qt-build-system.
(The current ((guix build utils) qt-warp) has the same issue.


-- 
Regards
Hartmut Goebel

| Hartmut Goebel          | h.goebel@crazy-compilers.com               |
| www.crazy-compilers.com | compilers which you thought are impossible |



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-11-26 11:10 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-26 11:09 Qt/KDE build system? Hartmut Goebel
  -- strict thread matches above, loose matches on Subject: below --
2019-11-23 13:12 Hartmut Goebel
2019-11-23 16:53 ` Ludovic Courtès

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.