Bug 190929

Summary: split lrelease/lupdate out of devel/qt4-linguist
Product: Ports & Packages Reporter: Dmitry Marakasov <amdmi3>
Component: Individual Port(s)Assignee: freebsd-kde (group) <kde>
Status: Closed FIXED    
Severity: Affects Many People CC: amdmi3, kde, koobs, makc, robbak, tcberner
Priority: --- Keywords: feature, needs-patch
Version: LatestFlags: koobs: maintainer-feedback? (kde)
Hardware: Any   
OS: Any   
Attachments:
Description Flags
initial patch to splitout tools none

Description Dmitry Marakasov freebsd_committer freebsd_triage 2014-06-11 12:34:18 UTC
Many Qt ports require lrelease/lupdate to compile their translations. These programs are provided by qt4-linguist port, however that port provided much more that just these utilities, namely GUI applications for translation and pulls in many heavyweight depends, such as qt4-gui, qt4-assistant (which in turn pulls qt4-webkit, xml, network, sql etc.). With that, compiling a simple CLI application which just uses qt4-corelib (astro/gpsbabel for example) pulls in too much unneeded heavyweight and gui stuff.

That said, lrelease/lupdate should be split out of qt4-linguist, and corresponding USE_QT4 item added so qt applications using nls may be build without pulling extraneous depends.
Comment 1 Kubilay Kocak freebsd_committer freebsd_triage 2015-02-23 05:21:04 UTC
I just hit this with net-p2p/bitcoin, which uses linguist_build for exactly this reason, which then results (among others) in the following dependency chain:

linguist_build -> linguist -> designer -> webkit

+1 on splitting out lrelease & lupdate
Comment 2 Tobias Berner 2015-02-23 21:58:55 UTC
Created attachment 153399 [details]
initial patch to splitout tools

[propably still needs some work].
Comment 3 commit-hook freebsd_committer freebsd_triage 2015-02-24 21:39:40 UTC
A commit references this bug:

Author: makc
Date: Tue Feb 24 21:39:23 UTC 2015
New revision: 379843
URL: https://svnweb.freebsd.org/changeset/ports/379843

Log:
  Introduce new USE_QT4 component linguisttools for lrelease/lupdate tools
  split from from devel/qt4-linguist (similar to Qt 5 ports). These console
  tools are often used for localization support in Qt ports, having them
  standalone is quite useful. This work is based on Tobias Berner patch [1].

  PR:             190929 [1]
  Requested by:	amdmi3, koobs

Changes:
  head/CHANGES
  head/Mk/bsd.qt.mk
  head/UPDATING
  head/devel/qt4/Makefile
  head/devel/qt4-linguist/Makefile
  head/devel/qt4-linguist/files/patch-tools_linguist_linguist.pro
  head/devel/qt4-linguist/pkg-plist
  head/devel/qt4-linguisttools/
  head/devel/qt4-linguisttools/Makefile
  head/devel/qt4-linguisttools/files/
  head/devel/qt4-linguisttools/files/patch-tools_linguist_lrelease_lrelease.pro
  head/devel/qt4-linguisttools/files/patch-tools_linguist_lrelease_main.cpp
  head/devel/qt4-linguisttools/pkg-plist
  head/misc/qt4-l10n/Makefile
Comment 4 Max Brazhnikov freebsd_committer freebsd_triage 2015-02-24 21:51:04 UTC
Folks, feel free to convert existing ports.
Tobias, thanks for patch!
Comment 5 Kubilay Kocak freebsd_committer freebsd_triage 2015-02-25 13:19:54 UTC
Yes, thank you Tobias :)
Comment 6 Dmitry Marakasov freebsd_committer freebsd_triage 2015-02-26 09:08:52 UTC
Thank you!