From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.77) (envelope-from ) id 1SrkVX-0006H8-ES for garchives@archives.gentoo.org; Thu, 19 Jul 2012 06:46:43 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 80AAFE05F8; Thu, 19 Jul 2012 06:46:33 +0000 (UTC) Received: from mail-vc0-f181.google.com (mail-vc0-f181.google.com [209.85.220.181]) by pigeon.gentoo.org (Postfix) with ESMTP id 6C9CFE059B for ; Thu, 19 Jul 2012 06:45:40 +0000 (UTC) Received: by vcbfl17 with SMTP id fl17so1882120vcb.40 for ; Wed, 18 Jul 2012 23:45:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:reply-to:sender:date:x-google-sender-auth:message-id :subject:from:to:content-type; bh=LK+Oq0F+3NuwvD9pq2gze1fLP0DgWyWw+4GDCAidEVk=; b=yaM7IdywByG19DFgQiotOrBSBrSPjVk+PEG/v+PSAuAt0FipZmN7TjxAaE/ilK7x9+ dpEBbbK7ApQAQGUFNfksctqWzZ9AkNkAcrumZy1dEkzxx5ddbWiNutgG1P0SiEwfDjO8 k8SVEZbONIaLZo/xCzbySldoSqFFyUXqnXmuv72ZmKJhL0yxaNkF3ekd7KUWzzu8Fucu ZqgBV0JFUZoI/ipiJGcohpmK8iMFgQoC8D0RaaB7tGz1fXKVd8E79uI8DG5I8ndekEfu sAnLLh9qS3+5nhoLeLMyzpAUaSPt1+bNBhgiqgIBil0jpEnixUjccVPUQtmP99bNWc0R CU7w== Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 Received: by 10.221.11.197 with SMTP id pf5mr355640vcb.29.1342680339956; Wed, 18 Jul 2012 23:45:39 -0700 (PDT) Sender: yngwin@gmail.com Received: by 10.58.169.10 with HTTP; Wed, 18 Jul 2012 23:45:39 -0700 (PDT) Date: Thu, 19 Jul 2012 14:45:39 +0800 X-Google-Sender-Auth: LCiJEF4OWU-8CLylL2_QaI7-v2o Message-ID: Subject: [gentoo-dev] RFC: l10n.eclass From: Ben de Groot To: gentoo-dev@lists.gentoo.org Content-Type: multipart/mixed; boundary=bcaec54ee84ab5c2d904c52920da X-Archives-Salt: ec95a0b3-b006-4b65-84cb-c98b6887da71 X-Archives-Hash: 14af70ebea5d46dd9d29c72fc1a195a7 --bcaec54ee84ab5c2d904c52920da Content-Type: text/plain; charset=UTF-8 Today I would like to present to you my proposal for a new eclass with helper functions for treating localizations: l10n.eclass (see the attached file or [1]). Its functionality can be used in other eclasses (such as qt4-r2 and cmake-utils) as well as directly in ebuilds. In order to keep the code simple, and prevent double loops and extra variables (such as currently used in the media-video/smplayer ebuild), I am proposing that we should add any missing long-form locales to profiles/desc/linguas.desc (e.g. 'de_DE' in addition to short 'de'). This also means that users may have to expand their LINGUAS setting in make.conf (e.g. LINGUAS="de en" -> LINGUAS="de de_DE en en_US") to cover the different variants used in packages. If you have any comments, spot any mistakes, or have proposals for improvement, I would love to hear it! I would especially love from maintainers of complicated packages such as libreoffice-l10n, if there is any additional functionality that we could include in this eclass to make their job simpler. 1: https://gitorious.org/gentoo-qt/qt/blobs/master/eclass/l10n.eclass -- Cheers, Ben | yngwin Gentoo developer Gentoo Qt project lead, Gentoo Wiki admin --bcaec54ee84ab5c2d904c52920da Content-Type: application/octet-stream; name="l10n.eclass" Content-Disposition: attachment; filename="l10n.eclass" Content-Transfer-Encoding: base64 X-Attachment-Id: f_h4tglqp20 IyBDb3B5cmlnaHQgMTk5OS0yMDEyIEdlbnRvbyBGb3VuZGF0aW9uCiMgRGlzdHJpYnV0ZWQgdW5k ZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2MgojICRIZWFk ZXI6ICQKCiMgQEVDTEFTUzogbDEwbi5lY2xhc3MKIyBATUFJTlRBSU5FUjoKIyBCZW4gZGUgR3Jv b3QgPHluZ3dpbkBnZW50b28ub3JnPgojIEBCTFVSQjogY29udmVuaWVuY2UgZnVuY3Rpb25zIHRv IGhhbmRsZSBsb2NhbGl6YXRpb25zCiMgQERFU0NSSVBUSU9OOgojIFRoZSBsMTBuIChsb2NhbGl6 YXRpb24pIGVjbGFzcyBvZmZlcnMgYSBudW1iZXIgb2YgZnVuY3Rpb25zIHRvIG1vcmUKIyBjb252 ZW5pZW50bHkgaGFuZGxlIGxvY2FsaXphdGlvbnMgKHRyYW5zbGF0aW9ucykgb2ZmZXJlZCBieSBw YWNrYWdlcy4KIyBUaGVzZSBhcmUgbWVhbnQgdG8gcHJldmVudCBjb2RlIGR1cGxpY2F0aW9uIGZv ciBzdWNoIGJvcmluZyB0YXNrcyBhcwojIGRldGVybWluaW5nIHRoZSBjcm9zcy1zZWN0aW9uIGJl dHdlZW4gdGhlIHVzZXIncyBzZXQgTElOR1VBUyBhbmQgd2hhdAojIGlzIG9mZmVyZWQgYnkgdGhl IHBhY2thZ2U7IGFuZCBnZW5lcmF0aW5nIHRoZSByaWdodCBsaXN0IG9mIGxpbmd1YXNfKgojIFVT RSBmbGFncy4KCiMgQEVDTEFTUy1WQVJJQUJMRTogUExPQ0FMRVMKIyBAREVGQVVMVF9VTlNFVAoj IEBERVNDUklQVElPTjoKIyBWYXJpYWJsZSBsaXN0aW5nIHRoZSBsb2NhbGVzIGZvciB3aGljaCBs b2NhbGl6YXRpb25zIGFyZSBvZmZlcmVkIGJ5CiMgdGhlIHBhY2thZ2UuIENoZWNrIHByb2ZpbGVz L2Rlc2MvbGluZ3Vhcy5kZXNjIHRvIHNlZSBpZiB0aGUgbG9jYWxlcwojIGFyZSBsaXN0ZWQgdGhl cmUuIEFkZCBhbnkgbWlzc2luZyBvbmVzIHRoZXJlLgojCiMgRXhhbXBsZTogUExPQ0FMRVM9ImN5 IGRlIGVsX0dSIGVuX1VTIHB0X0JSIHZpIHpoX0NOIgoKIyBARUNMQVNTLVZBUklBQkxFOiBQTE9D QUxFX0JBQ0tVUAojIEBERUZBVUxUX1VOU0VUCiMgQERFU0NSSVBUSU9OOgojIEluIHNvbWUgY2Fz ZXMgdGhlIHBhY2thZ2UgZmFpbHMgd2hlbiBub25lIG9mIHRoZSBvZmZlcmVkIFBMT0NBTEVTIGFy ZQojIHNlbGVjdGVkIGJ5IHRoZSB1c2VyLiBJbiB0aGF0IGNhc2UgdGhpcyB2YXJpYWJsZSBzaG91 bGQgYmUgc2V0IHRvIGEKIyBkZWZhdWx0IGxvY2FsZSAodXN1YWxseSAnZW4nIG9yICdlbl9VUycp IGFzIGJhY2t1cC4KIwojIEV4YW1wbGU6IFBMT0NBTEVfQkFDS1VQPSJlbl9VUyIKCiMgQWRkIGxp bmd1YXMgdXNlZmxhZ3MKW1sgLW4gIiR7UExPQ0FMRVN9IiBdXSAmJiBJVVNFKz0iICQocHJpbnRm ICdsaW5ndWFzXyVzICcgJHtQTE9DQUxFU30pIgoKIyBARlVOQ1RJT046IGwxMG5fZm9yX2VhY2hf bG9jYWxlX2RvCiMgQFVTQUdFOiA8ZnVuY3Rpb24+CiMgQERFU0NSSVBUSU9OOgojIENvbnZlbmll bmNlIGZ1bmN0aW9uIGZvciBwcm9jZXNzaW5nIGxvY2FsaXphdGlvbnMuIFRoZSBwYXJhbWV0ZXIg c2hvdWxkCiMgYmUgYSBmdW5jdGlvbiAoZGVmaW5lZCBpbiB0aGUgY29uc3VtaW5nIGVjbGFzcyBv ciBlYnVpbGQpIHdoaWNoIHRha2VzCiMgYW4gaW5kaXZpZHVhbCBsb2NhbGl6YXRpb24gYXMgKGxh c3QpIHBhcmFtZXRlci4KIwojIEV4YW1wbGU6IGwxMG5fZm9yX2VhY2hfbG9jYWxlX2RvIGluc3Rh bGxfbG9jYWxlCmwxMG5fZm9yX2VhY2hfbG9jYWxlX2RvKCkgewoJbG9jYWwgeGxvY3M9Cgl4bG9j cz0kKGwxMG5fZ2V0X2xpbmd1YXNfY3Jvc3NzZWN0aW9uKQoJaWYgW1sgLW4gIiR7eGxvY3N9IiBd XTsgdGhlbgoJCWxvY2FsIHgKCQlmb3IgeCBpbiAke3hsb2NzfTsgZG8KCQkJJHtAfSAke3h9IHx8 IGRpZSAiZmFpbGVkIHRvIHByb2Nlc3MgJHt4fSBsb2NhbGUiCgkJZG9uZQoJZmkKfQoKIyBARlVO Q1RJT046IGwxMG5fZm9yX2VhY2hfdW5zZWxlY3RlZF9sb2NhbGVfZG8KIyBAVVNBR0U6IDxmdW5j dGlvbj4KIyBAREVTQ1JJUFRJT046CiMgQ29tcGxlbWVudGFyeSB0byBsMTBuX2Zvcl9lYWNoX2xv Y2FsZV9kbywgdGhpcyBmdW5jdGlvbiB3aWxsIHByb2Nlc3MKIyBsb2NhbGVzIHRoYXQgYXJlIG5v dCBzZWxlY3RlZC4gVGhpcyBjb3VsZCBiZSB1c2VkIGZvciBleGFtcGxlIHRvIHJlbW92ZQojIGxv Y2FsZXMgZnJvbSBhIE1ha2VmaWxlLCB0byBwcmV2ZW50IHRoZW0gZnJvbSBiZWluZyBidWlsdCBu ZWVkbGVzc2x5LgpsMTBuX2Zvcl9lYWNoX3Vuc2VsZWN0ZWRfbG9jYWxlX2RvKCkgewoJbG9jYWwg bz0geD0KCW89JChqb2luIC12IDEgPChlY2hvICIke1BMT0NBTEVTLy8gLyQnXG4nfSIpIDwoZWNo byAiJHtMSU5HVUFTLy8gLyQnXG4nfSIpICkKCW89JHtvLy8kJ1xuJy8nICd9CgllaW5mbyAiVW5z ZWxlY3RlZCBsb2NhbGVzIGFyZTogJHtvfSIKCWlmIFtbIC1uICIke299IiBdXTsgdGhlbgoJCWZv ciB4IGluICR7b307IGRvCgkJCSR7QH0gJHt4fSB8fCBkaWUgImZhaWxlZCB0byBwcm9jZXNzIHVu c2VsZWN0ZWQgJHt4fSBsb2NhbGUiCgkJZG9uZQoJZmkKfQoKIyBARlVOQ1RJT046IGwxMG5fZmlu ZF9wbG9jYWxlc19jaGFuZ2VzCiMgQFVTQUdFOiA8dHJhbnNsYXRpb25zIGRpcj4gPGZpbGVuYW1l IHByZSBwYXR0ZXJuPiA8ZmlsZW5hbWUgcG9zdCBwYXR0ZXJuPgojIEBERVNDUklQVElPTjoKIyBF YnVpbGQgbWFpbnRlbmFuY2UgaGVscGVyIGZ1bmN0aW9uIHRvIGZpbmQgY2hhbmdlcyBpbiBwYWNr YWdlIG9mZmVyZWQKIyBsb2NhbGVzIHdoZW4gZG9pbmcgYSB2ZXJzaW9uIGJ1bXAuIFRoaXMgY291 bGQgYmUgYWRkZWQgZm9yIGV4YW1wbGUgdG8KIyBzcmNfcHJlcGFyZQojCiMgRXhhbXBsZTogbDEw bl9maW5kX3Bsb2NhbGVzX2NoYW5nZXMgIiR7U30vc3JjL3RyYW5zbGF0aW9ucyIgIiR7UE59XyIg Jy50cycKbDEwbl9maW5kX3Bsb2NhbGVzX2NoYW5nZXMoKSB7CglbWyAkIyAtbmUgMyBdXSAmJiBk aWUgIkV4YWN0bHkgMyBhcmd1bWVudHMgYXJlIG5lZWRlZCEiCgllaW5mbyAiTG9va2luZyBpbiAk ezF9IGZvciBuZXcgbG9jYWxlcyAuLi4iCglwdXNoZCAiJHsxfSIgPi9kZXYvbnVsbCB8fCBkaWUg IkNhbm5vdCBhY2Nlc3MgJHsxfSIKCWxvY2FsIGN1cnJlbnQ9IHg9Cglmb3IgeCBpbiAkezJ9KiR7 M30gOyBkbwoJCXg9JHt4IyIkezJ9In0KCQl4PSR7eCUiJHszfSJ9CgkJY3VycmVudCs9IiR7eH0g IgoJZG9uZQoJcG9wZCA+L2Rldi9udWxsCglpZiBbWyAke1BMT0NBTEVTfSAhPSAke2N1cnJlbnQl W1s6c3BhY2U6XV19IF1dIDsgdGhlbgoJCWVpbmZvICJUaGVyZSBhcmUgY2hhbmdlcyBpbiBsb2Nh bGVzISBUaGlzIGVidWlsZCBzaG91bGQgYmUgdXBkYXRlZCB0bzoiCgkJZWluZm8gIlBMT0NBTEVT PVwiJHtjdXJyZW50JVtbOnNwYWNlOl1dfVwiIgoJZmkKfQoKIyBARlVOQ1RJT046IGwxMG5fZ2V0 X2xpbmd1YXNfY3Jvc3NzZWN0aW9uCiMgQERFU0NSSVBUSU9OOgojIERldGVybWluZSB0aGUgY3Jv c3Mtc2VjdGlvbiBvZiB1c2VyLXNldCBMSU5HVUFTIGFuZCB0aGUgbG9jYWxlcyB3aGljaAojIHRo ZSBwYWNrYWdlIG9mZmVycyAobGlzdGVkIGluIFBMT0NBTEVTKSwgYW5kIHJldHVybiB0aGVtLiBJ biBjYXNlIG5vCiMgbG9jYWxlcyBhcmUgc2VsZWN0ZWQsIGZhbGwgYmFjayBvbiBQTE9DQUxFX0JB Q0tVUC4gVGhpcyBmdW5jdGlvbiBpcwojIG5vcm1hbGx5IHVzZWQgaW50ZXJuYWxseSBpbiB0aGlz IGVjbGFzcywgbm90IGJ5IGwxMG4uZWNsYXNzIGNvbnN1bWVycy4KbDEwbl9nZXRfbGluZ3Vhc19j cm9zc3NlY3Rpb24oKSB7Cglsb2NhbCBsYW5nPSBsb2M9IHhsb2M9Cglmb3IgbGFuZyBpbiAke0xJ TkdVQVN9OyBkbwoJCWZvciBsb2MgaW4gJHtQTE9DQUxFU307IGRvCgkJCVtbICR7bGFuZ30gPT0g JHtsb2N9IF1dICYmIHhsb2MrPSIke2xvY30gIgoJCWRvbmUKCWRvbmUKCXhsb2M9JHt4bG9jOi0k UExPQ0FMRV9CQUNLVVB9CglwcmludGYgIiVzIiAiJHt4bG9jfSIKfQo= --bcaec54ee84ab5c2d904c52920da--