See in line comments.

Bart Smaalders wrote:
> I'm sponsoring the attached fast-track for Stefan Teleman.
> The requested binding is patch/micro release, and the
> stability levels are as noted in the document.
>
> Materials are in the case directory.
>
> This case times out on 3/28/2007.
>
> - Bart
>
> ------------------------------------------------------------------------
>
> Including PCRE with Solaris
>
> Stefan Teleman <Stefan.Teleman at Sun.COM>
> 15 March 2007
>
> 1.    Summary and motivation
>
>       The inclusion of PHP5 has created a number of external library
>       dependency requirements. One of these dependencies is PCRE
>       [Perl-Compatible Regular Expressions] [1] [3].
>
>       According to PCRE's Home Page, "The PCRE library is a set of
>       functions that implement regular expression pattern matching
>       using the same syntax and semantics as Perl 5. PCRE has its own
>       native API, as well as a set of wrapper functions that correspond
>       to the POSIX regular expression API." [1] [2]
>
>       PCRE is used by many open source projects, including Apache, PHP,
>       KDE, Postfix, Nmap, etc. The inclusion of PCRE in Solaris would
>       facilitate the integration of other open source projects depending
>       on PCRE. PCRE was originally written by Philip Hazel at Cambridge
>       University, UK.
>
>       This FastTrack case proposes the integration of PCRE in Solaris.
>
>       PCRE is an Open Source project, and is developed outside of SMI.
>       As such, the SFW Consolidation is the natural choice for PCRE
>       integration.
>
>       This case seeks Micro/Patch Release Binding.
>
> 2.    Technical issues
>
>       2.1.    Key objects.
>
>       /usr/bin/pcregrep
>       /usr/bin/pcretest
>       /usr/bin/pcre-config
>
>       /usr/lib/libpcre.so.0.0.1
>       /usr/lib/libpcre.so.0 -> libpcre.so.0.0.1
>       /usr/lib/libpcre.so -> libpcre.so.0.0.1
>
>       /usr/lib/libpcrecpp.so.0.0.0
>       /usr/lib/libpcrecpp.so.0 -> libpcrecpp.so.0.0.0
>       /usr/lib/libpcrecpp.so -> libpcrecpp.so.0.0.0
>
>       /usr/lib/libpcreposix.so.0.0.0
>       /usr/lib/libpcreposix.so.0 -> libpcreposix.so.0.0.0
>       /usr/lib/libpcreposix.so -> libpcreposix.so.0.0.0
>   
What is the point of the multi-version names?

I believe ld 
will                                                                            
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                
I think ld will bind to multi-version name.  I don't think you want to 
do this
on Solaris.
>       /usr/include/pcre/pcre.h
>       /usr/include/pcre/pcre_scanner.h
>       /usr/include/pcre/pcre_stringpiece.h
>       /usr/include/pcre/pcrecpp.h
>       /usr/include/pcre/pcrecpparg.h
>       /usr/include/pcre/pcreposix.h
>
>       The original PCRE implementation installs header files under the
>       ${PREFIX}/include location. For the purpose of Solaris integration,
>       we propose to change the default header file installation location
>       to /usr/include/pcre/*.h. The motivation for this change is avoidance
>       of namespace pollution in /usr/include.
>
>       /usr/share/man/man1/pcregrep.1
>       /usr/share/man/man1/pcretest.1
>       /usr/share/man/man3/pcre.3
>
>       2.2.    Functionality
>
>       PCRE implements library calls allowing Perl-like regular expression
>       pattern matching from within C or C++. Prior to PCRE, Perl-compatible
>       regular expressions and pattern matching were not available outside
>       of Perl itself.
>
>       PCRE's core functionality is provided by two executables [pcregrep
>       and pcretest] and three shared libraries: libpcre.so.0.0.1,
>       libpcrecpp.so.0.0.0 and libpcreposix.so.0.0.0.
>
>       Key aspecs of PCRE's functionality are discussed below.
>
>       pcregrep is a variant of grep which supports Perl-compatible re's.
>
>       pcretest is a test harness program. It enables testing of RE pattern
>       matching, without having to recompile a program.
>
>       libpcre.so.0.0.1 implements the Perl-Compatible portion of PCRE. Perl
>       Regular Expressions [perlre] are an implementation of Kleene Algebra
>       applied to free text. Perl RE's differ from traditional UNIX RE or
>       POSIX RE in their pattern matching syntax, by adding significantly
>       more operators and operator modifiers to their algebra. PERL RE's
>       inherit from UNIX and POSIX RE.
>
>       libpcreposix.so.0.0.0 implements the POSIX-Compatible portion of PCRE.
>       POSIX RE's extend the UNIX RE operator set, and simplify somewhat
>       pattern matching syntax rules.
>
>       libpcrecpp.so.0.0.0 is the C++ wrapper library around libpcre.so.0.0.1
>       and libpcreposix.so.0.0.0. libpcrecpp.so implements two Classes:
>       class RE and class RE_Options. These classes do not implement any
>       additional functionality than what is provided by libpcre.so.0.0.1
>       and libpcreposix.so.0.0.0.
>
> 3.    Interfaces
>
>       3.1.    Interface Stability
>
>       PCRE is an Open Source project [1], developed and maintained external
>       to SMI. PCRE makes no promises or guarantees about API or ABI
>       compatibility between releases. Moreover, there have been several
>       known cases of ABI breakage between different PCRE releases.
>
>       3.2.    Imported interfaces
>
>       libpcre.so.0.0.1 and libpcreposix.so.0.0.0 imports Standard C Library
>       Interfaces. libpcrecpp.so.0.0.0 imports Standard C++ Library
>       Interfaces, and depends on libCrun.so.1 and libCstd.so.1. No network
>       library interfaces, or any other Solaris interfaces, are used by PCRE.
>
>       NAME                    STABILITY               NOTES
>
>       C++ 5.3                 Committed               LSARC/2001/284
>
>       3.3.    Exported interfaces
>
>       NAME                    STABILITY               NOTES
>
>       SUNWpcre                Uncommitted             Package name
>
>       /usr/bin/pcregrep       Uncommitted             Executable location
>       /usr/bin/pcretest       Uncommitted             Executable location
>
>       /usr/lib/libpcre.so.0.0.1       Uncommitted     Shared library
>       /usr/lib/libpcre.so.0           Uncommitted     Symbolic link
>       /usr/lib/libpcre.so             Uncommitted     Symbolic link
>
>       /usr/lib/libpcreposix.so.0.0.0  Uncommitted     Shared library
>       /usr/lib/libpcreposix.so.0      Uncommitted     Symbolic link
>       /usr/lib/libpcre.so             Uncommitted     Symbolic link
>
>       /usr/lib/libpcrecpp.so.0.0.0    Uncommitted     Shared library
>       /usr/lib/libpcrecpp.so.0        Uncommitted     Symbolic link
>       /usr/lib/libpcrecpp.so          Uncommitted     Symbolic link
>
>       /usr/share/man/man1/pcregrep.1  Uncommitted     Manual Page
>       /usr/share/man/man1/pcretest.1  Uncommitted     Manual Page
>       /usr/share/man/man3/pcre.3      Uncommitted     Manual Page
>       /usr/share/man/man3/pcre_compile.3      Uncommitted     Manual Page
>       /usr/share/man/man3/pcre_compile2.3     Uncommitted     Manual Page
>       /usr/share/man/man3/pcre_config.3       Uncommitted     Manual Page
>       /usr/share/man/man3/pcre_copy_named_substring.3         Uncommitted     
> Manual Page
>       /usr/share/man/man3/pcre_copy_substring.3       Uncommitted     Manual 
> Page
>       /usr/share/man/man3/pcre_dfa_exec.3     Uncommitted     Manual Page
>       /usr/share/man/man3/pcre_exec.3         Uncommitted     Manual Page
>       /usr/share/man/man3/pcre_free_substring.3       Uncommitted     Manual 
> Page
>       /usr/share/man/man3/pcre_free_substring_list.3  Uncommitted     Manual 
> Page
>       /usr/share/man/man3/pcre_fullinfo.3     Uncommitted     Manual Page
>       /usr/share/man/man3/pcre_get_named_substring.3  Uncommitted     Manual 
> Page
>       /usr/share/man/man3/pcre_get_stringnumber.3     Uncommitted     Manual 
> Page
>       /usr/share/man/man3/pcre_get_stringtable_entries.3      Uncommitted     
> Manual Page
>       /usr/share/man/man3/pcre_get_substring.3        Uncommitted     Manual 
> Page
>       /usr/share/man/man3/pcre_get_substring_list.3   Uncommitted     Manual 
> Page
>       /usr/share/man/man3/pcre_info.3         Uncommitted     Manual Page
>       /usr/share/man/man3/pcre_maketables.3   Uncommitted     Manual Page
>       /usr/share/man/man3/pcre_refcount.3     Uncommitted     Manual Page
>       /usr/share/man/man3/pcre_study.3        Uncommitted     Manual Page
>       /usr/share/man/man3/pcre_version.3      Uncommitted     Manual Page
>       /usr/share/man/man3/pcreapi.3           Uncommitted     Manual Page
>       /usr/share/man/man3/pcrebuild.3         Uncommitted     Manual Page
>       /usr/share/man/man3/pcrecallout.3       Uncommitted     Manual Page
>       /usr/share/man/man3/pcrecompat.3        Uncommitted     Manual Page
>       /usr/share/man/man3/pcrecpp.3           Uncommitted     Manual Page
>       /usr/share/man/man3/pcrematching.3      Uncommitted     Manual Page
>       /usr/share/man/man3/pcrepartial.3       Uncommitted     Manual Page
>       /usr/share/man/man3/pcrepattern.3       Uncommitted     Manual Page
>       /usr/share/man/man3/pcreperform.3       Uncommitted     Manual Page
>       /usr/share/man/man3/pcreposix.3         Uncommitted     Manual Page
>       /usr/share/man/man3/pcreprecompile.3    Uncommitted     Manual Page
>       /usr/share/man/man3/pcresample.3        Uncommitted     Manual Page
>       /usr/share/man/man3/pcrestack.3         Uncommitted     Manual Page
>   
Two things here...

By Solaris conventions, shouldn't these all be in man3pcre (or something 
like that)?

Its a bit strange to see the actual man page in an interface table.  Can 
I read this as
that the interface defined on this page is what is being declared 
Uncommitted?

> 7.    References
>
>       [1]     http://www.pcre.org/
>       [2]     http://www.unix.org/version3/ieee_std.html
>       [3]     http://www.perl.com/doc/manual/html/pod/perlre.html
>
>   

-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<http://mail.opensolaris.org/pipermail/opensolaris-arc/attachments/20070321/dcda6cd2/attachment.html>

Reply via email to