[Bug 868578] Review Request: re2 - C++ fast alternative to backtracking RE engines

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Product: Fedora
https://bugzilla.redhat.com/show_bug.cgi?id=868578

Mathieu Bridon <bochecha@xxxxxxxxxxxxxxxxx> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
              Flags|                            |fedora-review+

--- Comment #12 from Mathieu Bridon <bochecha@xxxxxxxxxxxxxxxxx> ---
Differences between this new submission and the previous one:
----------
--- 868578-re2.old/srpm/re2.spec    2013-02-14 12:50:50.829422617 +0800
+++ 868578-re2/srpm/re2.spec    2013-02-18 11:44:51.036537713 +0800
@@ -1,64 +1,52 @@
-#
 Name:           re2
 Version:        20130115
-Release:        1%{?dist}
+Release:        2%{?dist}

 Summary:        C++ fast alternative to backtracking RE engines

-Group:          System Environment/Libraries 
+Group:          System Environment/Libraries
 License:        BSD
 URL:            http://code.google.com/p/%{name}/
 Source0:        http://re2.googlecode.com/files/%{name}-%{version}.tgz
 BuildRoot:      %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)

 %description
-RE2 is a fast, safe, thread-friendly alternative to backtracking
-regular expression engines like those used in PCRE, Perl, and
-Python. It is a C++ library.
-
-Backtracking engines are typically full of features and convenient
-syntactic sugar but can be forced into taking exponential amounts of
-time on even small inputs. RE2 uses automata theory to guarantee that
-regular expression searches run in time linear in the size of the
-input. RE2 implements memory limits, so that searches can be
-constrained to a fixed amount of memory. RE2 is engineered to use a
-small fixed C++ stack footprint no matter what inputs or regular
-expressions it must process; thus RE2 is useful in multi-threaded
-environments where thread stacks cannot grow arbitrarily large.
-
-On large inputs, RE2 is often much faster than backtracking engines;
-its use of automata theory lets it apply additional optimization that
-the others cannot.
-
-RE2 supports sub-match extraction, but not back references.
-
-If you absolutely need backreferences and generalized assertions, then
-RE2 is not for you, but you might be interested in irregexp, Google
-Chrome's regular expression engine.
+RE2 is a C++ library providing a fast, safe, thread-friendly alternative to
+backtracking regular expression engines like those used in PCRE, Perl, and
+Python.
+
+Backtracking engines are typically full of features and convenient syntactic
+sugar but can be forced into taking exponential amounts of time on even small
+inputs.
+
+In contrast, RE2 uses automata theory to guarantee that regular expression
+searches run in time linear in the size of the input, at the expense of some
+missing features (e.g back references and generalized assertions).

 %package        devel
-Summary:        Header files, libraries and development helper tools for
%{name}
+Summary:        C++ header files and library symbolic links for %{name}
 Group:          Development/Libraries
 Requires:       %{name}%{?_isa} = %{version}-%{release}
-Requires:       pkgconfig

 %description    devel
-This package contains the header files, shared libraries and
-development helper tools for %{name}. If you would like to develop
-programs using %{name}, you will need to install %{name}-devel.
+This package contains the C++ header files and symbolic links to the shared
+libraries for %{name}. If you would like to develop programs using %{name},
+you will need to install %{name}-devel.


 %prep
 %setup -q -n %{name}

 %build
-CXXFLAGS="${CXXFLAGS:-%optflags}"; export CXXFLAGS
-LDFLAGS="${LDFLAGS:-%__global_ldflags}"; export LDFLAGS
-make %{?_smp_mflags} CXXFLAGS='%optflags' LDFLAGS='%__global_ldflags'
includedir=%{_includedir} libdir=%{_libdir}
+# The -pthread flag issue has been submitted upstream:
+# http://groups.google.com/forum/?fromgroups=#!topic/re2-dev/bkUDtO5l6Lo
+CXXFLAGS="${CXXFLAGS:-%optflags}"
+LDFLAGS="${LDFLAGS:-%__global_ldflags} -pthread"
+make %{?_smp_mflags} CXXFLAGS="$CXXFLAGS" LDFLAGS="$LDFLAGS"
includedir=%{_includedir} libdir=%{_libdir}

 %install
 rm -rf $RPM_BUILD_ROOT
-make install DESTDIR=$RPM_BUILD_ROOT includedir=%{_includedir}
libdir=%{_libdir}
+make install INSTALL="install -p" DESTDIR=$RPM_BUILD_ROOT
includedir=%{_includedir} libdir=%{_libdir}

 # Suppress the static library
 find $RPM_BUILD_ROOT -name 'lib%{name}.a' -exec rm -f {} \;
@@ -78,12 +66,14 @@
 %{_libdir}/lib%{name}.so.*

 %files devel
-%doc LICENSE README
 %{_includedir}/%{name}
 %{_libdir}/lib%{name}.so


 %changelog
+* Sun Feb 17 2013 Denis Arnaud <denis.arnaud_fedora@xxxxxxx> 20130115-2
+- Took into account the feedback from review request (#868578).
+
 * Sun Feb 10 2013 Denis Arnaud <denis.arnaud_fedora@xxxxxxx> 20130115-1
 - The download source comes now directly from the project.

----------

This addresses all the issues I had with the previous package.

Approved.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=P9JmQHLO0Z&a=cc_unsubscribe
_______________________________________________
package-review mailing list
package-review@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/package-review



[Index of Archives]     [Fedora Legacy]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]