Ebuild for new re2 library: https://code.google.com/p/re2/ Reproducible: Always Steps to Reproduce:
Created attachment 224579 [details] dev-libs/libre2-100319 ebuild
Hello, The Gentoo Team would like to firstly thank you for your ebuild submission. We also apologize for not being able to accommodate you in a timely manner. There are simply too many new packages. Allow me to use this opportunity to introduce you to Gentoo Sunrise. The sunrise overlay[1] is a overlay for Gentoo which we allow trusted users to commit to and all users can have ebuilds reviewed by Gentoo devs for entry into the overlay. So, the sunrise team is suggesting that you look into this and submit your ebuild to the overlay where even *you* can commit to. =) Thanks, On behalf of the Gentoo Sunrise Team, Justin. [1]: http://www.gentoo.org/proj/en/sunrise/ [2]: http://overlays.gentoo.org/proj/sunrise/wiki/SunriseFaq
Created attachment 249910 [details] dev-libs/re2 I am attaching a mercurial.eclass based live ebuild for re2 (the official website lists no other releases). I believe the name re2 should be prefered to libre2 as appears from the the official website.
A nice page on regexps is at http://swtch.com/~rsc/regexp/ from RE2 author. It also allows fuzzy (approximate) matching.
I installed the -9999.ebuild on my ~x86 and "g++ -Wall" did not show any warning with gcc-4.5.2, wow. ;-) Could this go into the main tree instead of sunrise?
Created attachment 264779 [details] re2-9999.ebuild (install into /usr) The Makefile defines prefix=/usr/local so we have to overwrite its value. Once upstream changes that to PREFIX=/usr/local we break again. Probably force both variables from ebuild and not just 'prefix=/usr' as in this ebuild right now.
Created attachment 316643 [details] re2-20120629.ebuild New ebuild that uses snapshot. Planning add it to the sunrise.
Created attachment 316733 [details] dev-libs/libre2-120529.ebuild Ebuild with support to install 32-bit version of libre2 on amd64. It's needed by some 32-bit apps, for ex. OS Inferno.
Created attachment 317340 [details] re2-0_pre20120629.ebuild New ebuild, amd64 support added, test respects CXX now. Thanks to hasufell.
Created attachment 317342 [details, diff] re2-0_pre20120629-makefile.patch
This is now in the sunrise overlay. You can find it after review at: http://git.overlays.gentoo.org/gitweb/?p=proj/sunrise-reviewed.git;a=tree;f=dev-libs/re2
The Gentoo Chromium team might move this to the tree shortly; the latest version of Chromium uses a bundled copy of this library. I just need to see how much work it will be to unbundle it.
(In reply to comment #12) > The Gentoo Chromium team might move this to the tree shortly; the latest > version of Chromium uses a bundled copy of this library. I just need to see > how much work it will be to unbundle it. I think we can add it even before it gets unbundled in Chromium. However, we should use official tarballs, not some random thing from someone's github. I've asked upstream about this, see https://groups.google.com/d/topic/re2-dev/znoD8CrEV0Y/discussion
Jauhien's ebuild in sunrise is pretty good. I did some tweaking to avoid patching the Makefile and install some missing docs. Alternatively, if we can push some Makefile changes upstream, the ebuild does get a little simpler. My work is in my overlay, and I uploaded a snapshot to my devspace. https://bitbucket.org/floppym/floppym-overlay/src/default/dev-libs/re2 I'll wait until we hear about the tarballs before moving it to the tree.
(In reply to comment #14) > Alternatively, if we can push some Makefile changes upstream, the > ebuild does get a little simpler. If you have some patches, I can help with the upstreaming or pinging the upstream. > My work is in my overlay, and I uploaded a snapshot to my devspace. > > https://bitbucket.org/floppym/floppym-overlay/src/default/dev-libs/re2 > > I'll wait until we hear about the tarballs before moving it to the tree. Looks like we have at least one tarball on https://code.google.com/p/re2/downloads/list . I'm not yet sure how often new ones will appear. Looks like it can be moved to main tree if you want.
Added. Thanks everyone!
(In reply to comment #16) > Added. Thanks everyone! Any chance to add 32-bit support to this ebuild, to let me drop it from my overlay? 32-bit version of re2 library required to build OS Inferno (which is 32-bit only) linked with re2. Simple way is add USE flag 32bit and if it set add -m32 both to CPPFLAGS and LDFLAGS. Better way probably is install both 64- and 32-bit versions.
(In reply to comment #17) > (In reply to comment #16) > > Added. Thanks everyone! > > Any chance to add 32-bit support to this ebuild, to let me drop it from my > overlay? You probably mean 32-bit on 64-bit system, because the ebuild does have ~x86 keyword. Note that the proper solution for your case would be multilib portage rather than ad-hoc hacks in random ebuilds. > Simple way is add USE flag 32bit and if it set add -m32 both to CPPFLAGS and > LDFLAGS. Better way probably is install both 64- and 32-bit versions. Sorry, I'm not going to do that for re2. There are better technical alternatives like multilib portage.
(In reply to comment #18) > You probably mean 32-bit on 64-bit system, Yes. > Sorry, I'm not going to do that for re2. There are better technical > alternatives like multilib portage. AFAIK I'm using multilib profile (hardened/linux/amd64) and I see multilib in my USE flags (in emerge --info output). How this can help me to build 32-bit application linked with re2 library? Or how to build 32-bit version of re2 library using current ebuild in portage on my multilib system?
(In reply to comment #19) Paweł is referring to the "multilib-portage" project, which is a fork of the official portage package manager, and an overlay with a few supporting packages. You can find setup instructions here, and support in #gentoo-multilib-overlay. http://git.overlays.gentoo.org/gitweb/?p=proj/multilib-portage.git;a=blob;f=doc/portage-multilib-instructions