From b5e0e433cc1288f3176474ff49ccfd69b914c194 Mon Sep 17 00:00:00 2001 From: Konstantin Ritt Date: Fri, 20 Mar 2015 17:02:15 +0400 Subject: Build bundled PCRE copy as qt_helper_lib We already have an infrastructure for that. Change-Id: I9110b74dcf7f93362586687da6f112e72cb663a4 Reviewed-by: Oswald Buddenhagen --- src/3rdparty/pcre.pri | 33 ------------------------------ src/3rdparty/pcre/pcre.pro | 44 ++++++++++++++++++++++++++++++++++++++++ src/3rdparty/pcre_dependency.pri | 7 +++++++ src/corelib/tools/tools.pri | 8 ++------ src/src.pro | 14 +++++++++++-- 5 files changed, 65 insertions(+), 41 deletions(-) delete mode 100644 src/3rdparty/pcre.pri create mode 100644 src/3rdparty/pcre/pcre.pro create mode 100644 src/3rdparty/pcre_dependency.pri diff --git a/src/3rdparty/pcre.pri b/src/3rdparty/pcre.pri deleted file mode 100644 index be63002ffb..0000000000 --- a/src/3rdparty/pcre.pri +++ /dev/null @@ -1,33 +0,0 @@ -DEFINES += PCRE_HAVE_CONFIG_H - -win32:DEFINES += PCRE_STATIC -ios:DEFINES += PCRE_DISABLE_JIT -qnx:DEFINES += PCRE_DISABLE_JIT -winrt:DEFINES += PCRE_DISABLE_JIT - -INCLUDEPATH += $$PWD/pcre -SOURCES += \ - $$PWD/pcre/pcre16_byte_order.c \ - $$PWD/pcre/pcre16_chartables.c \ - $$PWD/pcre/pcre16_compile.c \ - $$PWD/pcre/pcre16_config.c \ - $$PWD/pcre/pcre16_dfa_exec.c \ - $$PWD/pcre/pcre16_exec.c \ - $$PWD/pcre/pcre16_fullinfo.c \ - $$PWD/pcre/pcre16_get.c \ - $$PWD/pcre/pcre16_globals.c \ - $$PWD/pcre/pcre16_jit_compile.c \ - $$PWD/pcre/pcre16_maketables.c \ - $$PWD/pcre/pcre16_newline.c \ - $$PWD/pcre/pcre16_ord2utf16.c \ - $$PWD/pcre/pcre16_refcount.c \ - $$PWD/pcre/pcre16_string_utils.c \ - $$PWD/pcre/pcre16_study.c \ - $$PWD/pcre/pcre16_tables.c \ - $$PWD/pcre/pcre16_ucd.c \ - $$PWD/pcre/pcre16_utf16_utils.c \ - $$PWD/pcre/pcre16_valid_utf16.c \ - $$PWD/pcre/pcre16_version.c \ - $$PWD/pcre/pcre16_xclass.c - -TR_EXCLUDE += $$PWD/* diff --git a/src/3rdparty/pcre/pcre.pro b/src/3rdparty/pcre/pcre.pro new file mode 100644 index 0000000000..1735fb3314 --- /dev/null +++ b/src/3rdparty/pcre/pcre.pro @@ -0,0 +1,44 @@ +TARGET = qtpcre + +CONFIG += \ + static \ + hide_symbols \ + exceptions_off rtti_off warn_off + +load(qt_helper_lib) + +DEFINES += PCRE_HAVE_CONFIG_H + +# platform/compiler specific definitions +win32: DEFINES += PCRE_STATIC +ios|qnx|winrt: DEFINES += PCRE_DISABLE_JIT + +SOURCES += \ + $$PWD/pcre16_byte_order.c \ + $$PWD/pcre16_chartables.c \ + $$PWD/pcre16_compile.c \ + $$PWD/pcre16_config.c \ + $$PWD/pcre16_dfa_exec.c \ + $$PWD/pcre16_exec.c \ + $$PWD/pcre16_fullinfo.c \ + $$PWD/pcre16_get.c \ + $$PWD/pcre16_globals.c \ + $$PWD/pcre16_jit_compile.c \ + $$PWD/pcre16_maketables.c \ + $$PWD/pcre16_newline.c \ + $$PWD/pcre16_ord2utf16.c \ + $$PWD/pcre16_refcount.c \ + $$PWD/pcre16_string_utils.c \ + $$PWD/pcre16_study.c \ + $$PWD/pcre16_tables.c \ + $$PWD/pcre16_ucd.c \ + $$PWD/pcre16_utf16_utils.c \ + $$PWD/pcre16_valid_utf16.c \ + $$PWD/pcre16_version.c \ + $$PWD/pcre16_xclass.c + +HEADERS += \ + $$PWD/config.h \ + $$PWD/pcre.h \ + $$PWD/pcre_internal.h \ + $$PWD/ucp.h diff --git a/src/3rdparty/pcre_dependency.pri b/src/3rdparty/pcre_dependency.pri new file mode 100644 index 0000000000..2a3c99c7ed --- /dev/null +++ b/src/3rdparty/pcre_dependency.pri @@ -0,0 +1,7 @@ +pcre { + win32: DEFINES += PCRE_STATIC + INCLUDEPATH += $$PWD/pcre + LIBS_PRIVATE += -L$$QT_BUILD_TREE/lib -lqtpcre$$qtPlatformTargetSuffix() +} else { + LIBS_PRIVATE += -lpcre16 +} diff --git a/src/corelib/tools/tools.pri b/src/corelib/tools/tools.pri index bf20154b56..5de0c09a4d 100644 --- a/src/corelib/tools/tools.pri +++ b/src/corelib/tools/tools.pri @@ -176,14 +176,10 @@ contains(QT_CONFIG,icu) { } !contains(QT_DISABLED_FEATURES, regularexpression) { + include($$PWD/../../3rdparty/pcre_dependency.pri) + HEADERS += tools/qregularexpression.h SOURCES += tools/qregularexpression.cpp - - pcre { - include($$PWD/../../3rdparty/pcre.pri) - } else { - LIBS_PRIVATE += -lpcre16 - } } INCLUDEPATH += ../3rdparty/harfbuzz/src diff --git a/src/src.pro b/src/src.pro index cb388ae4fc..3dd9f8c9ce 100644 --- a/src/src.pro +++ b/src/src.pro @@ -1,5 +1,7 @@ TEMPLATE = subdirs +load(qfeatures) + src_tools_bootstrap.subdir = tools/bootstrap src_tools_bootstrap.target = sub-bootstrap src_tools_bootstrap.CONFIG = host_build @@ -81,6 +83,9 @@ src_testlib.subdir = $$PWD/testlib src_testlib.target = sub-testlib src_testlib.depends = src_corelib # src_gui & src_widgets are not build-depends +src_3rdparty_pcre.subdir = $$PWD/3rdparty/pcre +src_3rdparty_pcre.target = sub-3rdparty-pcre + src_3rdparty_harfbuzzng.subdir = $$PWD/3rdparty/harfbuzz-ng src_3rdparty_harfbuzzng.target = sub-3rdparty-harfbuzzng src_3rdparty_harfbuzzng.depends = src_corelib # for the Qt atomics @@ -123,7 +128,12 @@ src_plugins.depends = src_sql src_xml src_network src_android.subdir = $$PWD/android # this order is important -SUBDIRS += src_tools_bootstrap src_tools_moc src_tools_rcc src_corelib src_tools_qlalr +SUBDIRS += src_tools_bootstrap src_tools_moc src_tools_rcc +!contains(QT_DISABLED_FEATURES, regularexpression):pcre { + SUBDIRS += src_3rdparty_pcre + src_corelib.depends += src_3rdparty_pcre +} +SUBDIRS += src_corelib src_tools_qlalr TOOLS = src_tools_moc src_tools_rcc src_tools_qlalr win32:SUBDIRS += src_winmain SUBDIRS += src_network src_sql src_xml src_testlib @@ -172,7 +182,7 @@ android:!android-no-sdk: SUBDIRS += src_android TR_EXCLUDE = \ src_tools_bootstrap src_tools_moc src_tools_rcc src_tools_uic src_tools_qlalr \ src_tools_bootstrap_dbus src_tools_qdbusxml2cpp src_tools_qdbuscpp2xml \ - src_3rdparty_harfbuzzng + src_3rdparty_pcre src_3rdparty_harfbuzzng sub-tools.depends = $$TOOLS QMAKE_EXTRA_TARGETS = sub-tools -- cgit v1.2.3