Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 1 | DESCRIPTION = "The PCRE library is a set of functions that implement regular \ |
| 2 | expression pattern matching using the same syntax and semantics as Perl 5. PCRE \ |
| 3 | has its own native API, as well as a set of wrapper functions that correspond \ |
| 4 | to the POSIX regular expression API." |
| 5 | SUMMARY = "Perl Compatible Regular Expressions" |
| 6 | HOMEPAGE = "http://www.pcre.org" |
| 7 | SECTION = "devel" |
| 8 | LICENSE = "BSD" |
| 9 | LIC_FILES_CHKSUM = "file://LICENCE;md5=7e4937814aee14758c1c95b59c80c44d" |
| 10 | SRC_URI = "${SOURCEFORGE_MIRROR}/project/pcre/pcre/${PV}/pcre-${PV}.tar.bz2 \ |
| 11 | file://pcre-cross.patch \ |
| 12 | file://fix-pcre-name-collision.patch \ |
| 13 | file://run-ptest \ |
| 14 | file://Makefile \ |
| 15 | " |
| 16 | |
Patrick Williams | f1e5d69 | 2016-03-30 15:21:19 -0500 | [diff] [blame] | 17 | SRC_URI[md5sum] = "00aabbfe56d5a48b270f999b508c5ad2" |
| 18 | SRC_URI[sha256sum] = "b9e02d36e23024d6c02a2e5b25204b3a4fa6ade43e0a5f869f254f49535079df" |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 19 | |
| 20 | S = "${WORKDIR}/pcre-${PV}" |
| 21 | |
| 22 | PROVIDES += "pcre" |
| 23 | DEPENDS += "bzip2 zlib" |
| 24 | |
Patrick Williams | f1e5d69 | 2016-03-30 15:21:19 -0500 | [diff] [blame] | 25 | PACKAGECONFIG ??= "pcre8" |
| 26 | |
| 27 | PACKAGECONFIG[pcre8] = "--enable-pcre8,--disable-pcre8" |
| 28 | PACKAGECONFIG[pcre16] = "--enable-pcre16,--disable-pcre16" |
| 29 | PACKAGECONFIG[pcre32] = "--enable-pcre32,--disable-pcre32" |
Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 30 | PACKAGECONFIG[pcretest-readline] = "--enable-pcretest-libreadline,--disable-pcretest-libreadline,readline," |
| 31 | |
| 32 | BINCONFIG = "${bindir}/pcre-config" |
| 33 | |
| 34 | inherit autotools binconfig-disabled ptest |
| 35 | |
| 36 | EXTRA_OECONF = "\ |
| 37 | --enable-newline-is-lf \ |
| 38 | --enable-rebuild-chartables \ |
| 39 | --enable-utf8 \ |
| 40 | --with-link-size=2 \ |
| 41 | --with-match-limit=10000000 \ |
| 42 | " |
| 43 | |
| 44 | # Set LINK_SIZE in BUILD_CFLAGS given that the autotools bbclass use it to |
| 45 | # set CFLAGS_FOR_BUILD, required for the libpcre build. |
| 46 | BUILD_CFLAGS =+ "-DLINK_SIZE=2 -I${B}" |
| 47 | CFLAGS += "-D_REENTRANT" |
| 48 | CXXFLAGS_append_powerpc = " -lstdc++" |
| 49 | |
| 50 | PACKAGES =+ "libpcrecpp libpcreposix pcregrep pcregrep-doc pcretest pcretest-doc" |
| 51 | |
| 52 | SUMMARY_libpcrecpp = "${SUMMARY} - C++ wrapper functions" |
| 53 | SUMMARY_libpcreposix = "${SUMMARY} - C wrapper functions based on the POSIX regex API" |
| 54 | SUMMARY_pcregrep = "grep utility that uses perl 5 compatible regexes" |
| 55 | SUMMARY_pcregrep-doc = "grep utility that uses perl 5 compatible regexes - docs" |
| 56 | SUMMARY_pcretest = "program for testing Perl-comatible regular expressions" |
| 57 | SUMMARY_pcretest-doc = "program for testing Perl-comatible regular expressions - docs" |
| 58 | |
| 59 | FILES_libpcrecpp = "${libdir}/libpcrecpp.so.*" |
| 60 | FILES_libpcreposix = "${libdir}/libpcreposix.so.*" |
| 61 | FILES_pcregrep = "${bindir}/pcregrep" |
| 62 | FILES_pcregrep-doc = "${mandir}/man1/pcregrep.1" |
| 63 | FILES_pcretest = "${bindir}/pcretest" |
| 64 | FILES_pcretest-doc = "${mandir}/man1/pcretest.1" |
| 65 | |
| 66 | BBCLASSEXTEND = "native nativesdk" |
| 67 | |
| 68 | do_install_ptest() { |
| 69 | t=${D}${PTEST_PATH} |
| 70 | cp ${WORKDIR}/Makefile $t |
| 71 | cp -r ${S}/testdata $t |
| 72 | for i in pcre_stringpiece_unittest pcregrep pcretest; \ |
| 73 | do cp ${B}/.libs/$i $t; \ |
| 74 | done |
| 75 | for i in RunTest RunGrepTest test-driver; \ |
| 76 | do cp ${S}/$i $t; \ |
| 77 | done |
| 78 | } |