From: Peter Seiderer <ps.report@gmx.net>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v2 1/2] qt5tools: new package
Date: Thu, 4 Feb 2016 22:07:05 +0100 [thread overview]
Message-ID: <20160204220705.0f227f46@gmx.net> (raw)
In-Reply-To: <20160204213823.463b5e1f@free-electrons.com>
Hello Thomas,
On Thu, 4 Feb 2016 21:38:23 +0100, Thomas Petazzoni <thomas.petazzoni@free-electrons.com> wrote:
> Hello Peter,
>
> On Thu, 4 Feb 2016 21:20:39 +0100, Peter Seiderer wrote:
>
> > > Ok, so you say they are host programs, i.e built to be executed on the
> > > host. It is somewhat weird that they are built by a target package, but
> > > since it's already the case with the qt5base package providing qmake
> > > and other tools, I guess that's OK.
> >
> > Not sure, but I think for a 'real' host-qt5tools package a host-qt5base
> > package would be needed?
>
> Yes, and we are not going to do that. If qt5tools by default already
> builds those linguist tools for the host machine, then that's fine,
> it's like qt5base that automatically builds qmake for the host, and the
> Qt libraries for the target.
O.k, thanks for clarification...
>
> > > It *may* be needed if pixeltool directly calls libpng functions, in
> > > order to make this dependency clear. But isn't pixeltool only using
> > > qt5base PNG functions ?
> >
> > Pixeltools just saves images (hardcoded) as png files...
>
> This does not really answer the question. The question is really
> whether pixeltools uses only the Qt5 PNG functions, or directly the
> libpng functions.
Sorry for not being precise here, pixeltools uses only Qt5 PNG functions
(via QPixmap.save(name, "PNG"))...
>
> > > > +# linguist tools compile conditionally on qtHaveModule(qmldevtools-private)
> > > > +ifeq ($(BR2_PACKAGE_QT5DECLARATIVE),y)
> > > > +QT5TOOLS_DEPENDENCIES += qt5declarative
> > > > +endif
> > >
> > > linguist tools are built for the host according to what you're saying.
> > > So how can they use a target package ?
> >
> > The condition qtHaveModule(qmldevtools-private) is only used to
> > decide if lupdate will support parsing qml files (via setting
> > QT_NO_QML define), no linking against target qt5 libs...
>
> OK. Can you indicate this as a comment above this condition?
O.k., will do...
>
> > > > +ifeq ($(BR2_PACKAGE_QT5TOOLS_LINGUIST_TOOLS),y)
> > > > +define QT5TOOLS_BUILD_CMDS_LINGUIST_TOOLS
> > > > + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/src/linguist/lconvert
> > > > + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/src/linguist/lrelease
> > > > + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/src/linguist/lupdate
> > > > +endef
> > > > +define QT5TOOLS_INSTALL_STAGING_CMDS_LINGUIST_TOOLS
> > > > + cp -dpf $(@D)/bin/lconvert $(STAGING_DIR)/usr/bin
> > > > + cp -dpf $(@D)/bin/lrelease $(STAGING_DIR)/usr/bin
> > > > + cp -dpf $(@D)/bin/lupdate $(STAGING_DIR)/usr/bin
> > >
> > > So they are host tools, but you install them in $(STAGING_DIR) where we
> > > install only target binaries ? This looks weird.
> >
> > Did first try to install to $(HOST_DIR)/usr/bin but this breaks
> > my use case (from .pro file):
> >
> > updateqm.input = TRANSLATIONS
> > updateqm.output = Languages/${QMAKE_FILE_BASE}.qm
> > updateqm.variable_out = PRE_TARGETDEPS
> > updateqm.commands = $$[QT_INSTALL_BINS]/lrelease -markuntranslated \"$$LITERAL_HASH\" -idbased ${QMAKE_FILE_IN} -qm ${QMAKE_FILE_OUT}
> > updateqm.CONFIG += no_link
> > QMAKE_EXTRA_COMPILERS += updateqm
> >
> > which works with the prebuild qt5 packages for linux and windows, so
> > I decided to install to the staging dir, maybe changing the
> > QT_INSTALL_BINS path is better?
>
> Having host binaries in $(STAGING_DIR) is really not good. So yes,
> maybe QT_INSTALL_BINS should point to $(HOST_DIR)/usr/bin/.
Will take a look and try to change QT_INSTALL_BINS, hope it breaks no
other usage...
Regards,
Peter
>
> Thanks a lot!
>
> Thomas
next prev parent reply other threads:[~2016-02-04 21:07 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-03 22:01 [Buildroot] [PATCH v2 1/2] qt5tools: new package Peter Seiderer
2016-02-03 22:44 ` Thomas Petazzoni
2016-02-04 20:20 ` Peter Seiderer
2016-02-04 20:38 ` Thomas Petazzoni
2016-02-04 21:07 ` Peter Seiderer [this message]
2016-02-04 21:13 ` Thomas Petazzoni
2016-02-04 21:32 ` Peter Seiderer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160204220705.0f227f46@gmx.net \
--to=ps.report@gmx.net \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox