summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/pcre2
Commit message (Collapse)AuthorAgeFilesLines
* rtems: Fix pcre2 build (madvise undefined)Mikhail Svetkin2019-04-302-1/+29
| | | | | | | | | | | | | | | | | | | | | | | RTEMS does not have madvise. We can use only posix_madvise Change-Id: Ia18b7cd2d7f9db84331f7e2350d060b9e85b30c8 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Upgrade PCRE2 to 10.33Giuseppe D'Angelo2019-05-0235-4462/+7208
| | | | | | | Adjust also the attribution file. Change-Id: I27bdbcf07bdca51bb5ae169ca50dd63502f5468f Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Upgrade PCRE2 to 10.32Giuseppe D'Angelo2018-10-1835-4067/+4892
| | | | | | | [ChangeLog][Third-Party Code] PCRE2 was updated to version 10.32. Change-Id: Id3bf7df0003f626cd1135d0508a5a489ff02f1e5 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Document SLJIT part of pcre2Kai Koehne2018-09-062-0/+41
| | | | | | | | | | src/sljit features the BSD-2-Clause license, not the BSD-3-Clause one. [ChangeLog][Third-Party Components] Added documentation for the SLJIT part of pcre2, which is available under the BSD-2-Clause license. Change-Id: Ie1e981ef6eab2c8d2960919b66ac85b29450f919 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* PCRE2: upgrade to upstream version 10.31Giuseppe D'Angelo2018-07-2336-3126/+4863
| | | | | | | | [ChangeLog][Third-Party Code] PCRE2 was updated to version 10.31. Task-number: QTBUG-69271 Change-Id: I0be7c280029f781aa20add8f87868d59e3fa53da Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* pcre2: Disable JIT on windows on arm/arm64Martin Storsjö2018-01-231-0/+2
| | | | | | | | | | | | | | sljit, the JIT in pcre2, doesn't quite fully work on windows on arm yet (although the subset of functionality used by pcre2 might mostly work). On arm64, it fails to compile (although working around that failure is pretty easy), when using clang in MinGW mode (where __GNUC__ is defined, making the JIT auto-enabled). Disable it in these configurations until it has been fully tested and fixed upstream first. Change-Id: Ie9681cb7cdd1960586ba194c71e057eb918cb419 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2017-09-063-834/+1
|\ | | | | | | | | | | | | | | | | | | Conflicts: examples/opengl/qopenglwidget/main.cpp src/3rdparty/pcre2/src/pcre2_printint.c src/plugins/platforms/cocoa/qnsview.mm src/widgets/widgets/qcombobox.cpp Change-Id: I37ced9da1e8056f95851568bcc52cd5dc34f56af
| * PCRE2: remove pcre2_printint.c from the imported sourcesGiuseppe D'Angelo2017-09-052-833/+0
| | | | | | | | | | | | | | | | | | | | Follow up of fc37e0369929e265db4fa3b9fa75164d63d66d1e: while the file is #included from pcre2_compile.c, it's never actually compiled (seems to be about a debugging aid for developing PCRE2). So it's safe to get rid of it. Change-Id: I0affaad730e8c5678d3431e47d5fee0dbedc0e78 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * PCRE2: disable JIT on all UIKit platformsGiuseppe D'Angelo2017-09-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | Both iOS and tvOS need to have JIT disabled, so use the uikit qmake scope for that. This was already done for PCRE 1, but the corresponding change was lost for PCRE 2 (probably due to a bad merge). Change-Id: Iac7997880c13b34ced46c63b748980c6fb700a0f Task-number: QTBUG-62993 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * PCRE2: remove a source file from the .proGiuseppe D'Angelo2017-09-011-1/+0
| | | | | | | | | | | | | | | | | | | | pcre2_printint.c does not need to be compliled as a standalone source file, as it's #included from pcre2_compile.c. Apparently qmake does not detect this in all cases, and sometimes tries to compile pcre2_printint.c, resulting in compile errors. Change-Id: If494e5853b52ff1387bfb24f3847b73edcc837b7 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | PCRE2: upgrade to version 10.30Giuseppe D'Angelo2017-08-2350-17643/+20219
|/ | | | | | | | | Minimal adjustments to config.h are necessary. [ChangeLog][Third-Party Code] PCRE2 has been updated to version 10.30. Change-Id: Iaca6a5ceffe4f5029212411eca8e2965ca7d9410 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Update attribution file for changed command line paramHeiko Becker2017-04-071-1/+1
| | | | | | | | | 47c4d1378cc1eaffbc19c753726b36d2ff0decc0 changed the configuration command line parameter back to pcre, omitting the "2" which has been added after porting to PCRE2. Change-Id: Iadbd57725ab706cb4bae89c2decf8259bcad46b5 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* pcre2: Replace LGPL21 with LGPL license headerKai Koehne2017-02-281-13/+19
| | | | | | | | Also use canonical contact url. Change-Id: I61bf0990698a7021f1240deaf3eef2aff8f90a7e Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Document new PCRE2 libraryKai Koehne2017-02-011-0/+17
| | | | | | | | [ChangeLog][Third-Party Code] The PCRE sources that are bundled with Qt got updated to version 10.22. Change-Id: Ib334fb4e9766035fd120ef4ab3a249322adba8eb Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* PCRE2: port QRegularExpression to PCRE2Giuseppe D'Angelo2016-12-122-1/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PCRE1 is going towards EOL. PCRE2 is the way forward in terms of new features, performance, and security improvements. The APIs that QRegularExpression uses are similar so the required modifications aren't extensive. The biggest difference comes to JIT-compiling of the pattern. In PCRE1, JIT-compiling did not modify the processed PCRE pattern, but returned a new chunk of data. This allowed multiple threads to keep matching using the same processed data and NULL for the JIT data, until a thread JIT-compiled and atomically set the shared JIT data to the results of the compilation. In PCRE2, JIT-compiling _modifies_ the processed PCRE pattern in a way that it's thread unsafe [1]; the results of JIT-compilation are stored somewhere inside the processed pattern. This means the above approach cannot work -- a thread may be matching while another one JIT-compiles, causing a data race. While waiting for better workarounds from upstream, employ a read/write mutex to protect the matching from JIT-compilation. [1] https://lists.exim.org/lurker/message/20160104.105831.3cb25b39.en.html [ChangeLog][General] QRegularExpression now requires the PCRE2 library, at least version 10.20. Support for the PCRE1 library has been dropped. A copy of PCRE2 is shipped with Qt and will automatically be used on those platforms which lack it. Change-Id: I9fe11104230a096796df2d0bdcea861acf769f57 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* PCRE2: import of PCRE2 10.22Giuseppe D'Angelo2016-12-1155-0/+85150
| | | | | Change-Id: Ib2c6210568e8d2f313c5cfcdfdf0a2f09ee356db Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* PCRE2: create a config.hGiuseppe D'Angelo2016-12-111-0/+52
| | | | | Change-Id: I9417a29d14def4b5ac4be82ba99023bff7393102 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* PCRE2: add import script from tarballGiuseppe D'Angelo2016-12-111-0/+134
Change-Id: I09e2622ca2c78b290ecba97ae9fa7274bb7f67b6 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>