Add lrelease to the depends
This includes a minimal qt build without gui
This commit is contained in:
parent
427e74cb46
commit
5244b6fe5c
|
@ -435,8 +435,18 @@ add_definitions(-DAUTO_INITIALIZE_EASYLOGGINGPP)
|
||||||
|
|
||||||
# Generate header for embedded translations
|
# Generate header for embedded translations
|
||||||
add_subdirectory(translations)
|
add_subdirectory(translations)
|
||||||
|
#=======
|
||||||
|
## Generate header for embedded translations, use target toolchain if depends, otherwise use the
|
||||||
|
## lrelease and lupdate binaries from the host
|
||||||
|
#include(ExternalProject)
|
||||||
|
#ExternalProject_Add(generate_translations_header
|
||||||
|
# SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/translations"
|
||||||
|
# BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/translations"
|
||||||
|
# STAMP_DIR ${LRELEASE_PATH}
|
||||||
|
# CMAKE_ARGS -DLRELEASE_PATH=${LRELEASE_PATH}
|
||||||
|
# INSTALL_COMMAND cmake -E echo "")
|
||||||
|
#>>>>>>> b1f43170... Add lrelease to the depends
|
||||||
include_directories("${CMAKE_CURRENT_BINARY_DIR}/translations")
|
include_directories("${CMAKE_CURRENT_BINARY_DIR}/translations")
|
||||||
|
|
||||||
add_subdirectory(external)
|
add_subdirectory(external)
|
||||||
|
|
||||||
# Final setup for libunbound
|
# Final setup for libunbound
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
packages:=boost openssl libevent zeromq cppzmq zlib expat ldns cppzmq readline libiconv
|
packages:=boost openssl libevent zeromq cppzmq zlib expat ldns cppzmq readline libiconv qt
|
||||||
native_packages := native_ccache
|
native_packages := native_ccache
|
||||||
|
|
||||||
wallet_packages=bdb
|
wallet_packages=bdb
|
||||||
|
|
|
@ -0,0 +1,150 @@
|
||||||
|
PACKAGE=qt
|
||||||
|
$(package)_version=5.7.1
|
||||||
|
$(package)_download_path=http://download.qt.io/official_releases/qt/5.7/$($(package)_version)/submodules
|
||||||
|
$(package)_suffix=opensource-src-$($(package)_version).tar.gz
|
||||||
|
$(package)_file_name=qtbase-$($(package)_suffix)
|
||||||
|
$(package)_sha256_hash=95f83e532d23b3ddbde7973f380ecae1bac13230340557276f75f2e37984e410
|
||||||
|
$(package)_dependencies=openssl zlib
|
||||||
|
$(package)_build_subdir=qtbase
|
||||||
|
$(package)_qt_libs=corelib
|
||||||
|
$(package)_patches=pidlist_absolute.patch fix_qt_pkgconfig.patch qfixed-coretext.patch
|
||||||
|
|
||||||
|
$(package)_qttranslations_file_name=qttranslations-$($(package)_suffix)
|
||||||
|
$(package)_qttranslations_sha256_hash=3a15aebd523c6d89fb97b2d3df866c94149653a26d27a00aac9b6d3020bc5a1d
|
||||||
|
|
||||||
|
$(package)_qttools_file_name=qttools-$($(package)_suffix)
|
||||||
|
$(package)_qttools_sha256_hash=22d67de915cb8cd93e16fdd38fa006224ad9170bd217c2be1e53045a8dd02f0f
|
||||||
|
|
||||||
|
$(package)_extra_sources = $($(package)_qttranslations_file_name)
|
||||||
|
$(package)_extra_sources += $($(package)_qttools_file_name)
|
||||||
|
|
||||||
|
define $(package)_set_vars
|
||||||
|
$(package)_config_opts_release = -release
|
||||||
|
$(package)_config_opts_debug = -debug
|
||||||
|
$(package)_config_opts += -bindir $(build_prefix)/bin
|
||||||
|
$(package)_config_opts += -c++std c++11
|
||||||
|
$(package)_config_opts += -confirm-license
|
||||||
|
$(package)_config_opts += -dbus-runtime
|
||||||
|
$(package)_config_opts += -no-alsa
|
||||||
|
$(package)_config_opts += -no-audio-backend
|
||||||
|
$(package)_config_opts += -no-cups
|
||||||
|
$(package)_config_opts += -no-egl
|
||||||
|
$(package)_config_opts += -no-eglfs
|
||||||
|
$(package)_config_opts += -no-feature-style-windowsmobile
|
||||||
|
$(package)_config_opts += -no-feature-style-windowsce
|
||||||
|
$(package)_config_opts += -no-freetype
|
||||||
|
$(package)_config_opts += -no-gif
|
||||||
|
$(package)_config_opts += -no-glib
|
||||||
|
$(package)_config_opts += -no-gstreamer
|
||||||
|
$(package)_config_opts += -no-icu
|
||||||
|
$(package)_config_opts += -no-iconv
|
||||||
|
$(package)_config_opts += -no-kms
|
||||||
|
$(package)_config_opts += -no-linuxfb
|
||||||
|
$(package)_config_opts += -no-libudev
|
||||||
|
$(package)_config_opts += -no-mitshm
|
||||||
|
$(package)_config_opts += -no-mtdev
|
||||||
|
$(package)_config_opts += -no-pulseaudio
|
||||||
|
$(package)_config_opts += -no-openvg
|
||||||
|
$(package)_config_opts += -no-reduce-relocations
|
||||||
|
$(package)_config_opts += -no-qml-debug
|
||||||
|
$(package)_config_opts += -no-sql-db2
|
||||||
|
$(package)_config_opts += -no-sql-ibase
|
||||||
|
$(package)_config_opts += -no-sql-oci
|
||||||
|
$(package)_config_opts += -no-sql-tds
|
||||||
|
$(package)_config_opts += -no-sql-mysql
|
||||||
|
$(package)_config_opts += -no-sql-odbc
|
||||||
|
$(package)_config_opts += -no-sql-psql
|
||||||
|
$(package)_config_opts += -no-sql-sqlite
|
||||||
|
$(package)_config_opts += -no-sql-sqlite2
|
||||||
|
$(package)_config_opts += -no-use-gold-linker
|
||||||
|
$(package)_config_opts += -no-xinput2
|
||||||
|
$(package)_config_opts += -no-xrender
|
||||||
|
$(package)_config_opts += -nomake examples
|
||||||
|
$(package)_config_opts += -nomake tests
|
||||||
|
$(package)_config_opts += -opensource
|
||||||
|
$(package)_config_opts += -openssl-linked
|
||||||
|
$(package)_config_opts += -optimized-qmake
|
||||||
|
$(package)_config_opts += -pch
|
||||||
|
$(package)_config_opts += -pkg-config
|
||||||
|
$(package)_config_opts += -qt-libpng
|
||||||
|
$(package)_config_opts += -qt-libjpeg
|
||||||
|
$(package)_config_opts += -qt-pcre
|
||||||
|
$(package)_config_opts += -system-zlib
|
||||||
|
$(package)_config_opts += -reduce-exports
|
||||||
|
$(package)_config_opts += -static
|
||||||
|
$(package)_config_opts += -silent
|
||||||
|
$(package)_config_opts += -v
|
||||||
|
$(package)_config_opts += -no-feature-printer
|
||||||
|
$(package)_config_opts += -no-feature-printdialog
|
||||||
|
$(package)_config_opts += -no-gui
|
||||||
|
$(package)_config_opts += -no-freetype
|
||||||
|
$(package)_config_opts += -no-sm
|
||||||
|
$(package)_config_opts += -no-fontconfig
|
||||||
|
$(package)_config_opts += -no-opengl
|
||||||
|
$(package)_config_opts += -no-xkb
|
||||||
|
$(package)_config_opts += -no-xcb
|
||||||
|
$(package)_config_opts += -no-xshape
|
||||||
|
$(package)_build_env = QT_RCC_TEST=1
|
||||||
|
endef
|
||||||
|
|
||||||
|
define $(package)_fetch_cmds
|
||||||
|
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_download_file),$($(package)_file_name),$($(package)_sha256_hash)) && \
|
||||||
|
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qttranslations_file_name),$($(package)_qttranslations_file_name),$($(package)_qttranslations_sha256_hash)) && \
|
||||||
|
$(call fetch_file,$(package),$($(package)_download_path),$($(package)_qttools_file_name),$($(package)_qttools_file_name),$($(package)_qttools_sha256_hash))
|
||||||
|
endef
|
||||||
|
|
||||||
|
define $(package)_extract_cmds
|
||||||
|
mkdir -p $($(package)_extract_dir) && \
|
||||||
|
echo "$($(package)_sha256_hash) $($(package)_source)" > $($(package)_extract_dir)/.$($(package)_file_name).hash && \
|
||||||
|
echo "$($(package)_qttranslations_sha256_hash) $($(package)_source_dir)/$($(package)_qttranslations_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
|
||||||
|
echo "$($(package)_qttools_sha256_hash) $($(package)_source_dir)/$($(package)_qttools_file_name)" >> $($(package)_extract_dir)/.$($(package)_file_name).hash && \
|
||||||
|
$(build_SHA256SUM) -c $($(package)_extract_dir)/.$($(package)_file_name).hash && \
|
||||||
|
mkdir qtbase && \
|
||||||
|
tar --strip-components=1 -xf $($(package)_source) -C qtbase && \
|
||||||
|
mkdir qttranslations && \
|
||||||
|
tar --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qttranslations_file_name) -C qttranslations && \
|
||||||
|
mkdir qttools && \
|
||||||
|
tar --strip-components=1 -xf $($(package)_source_dir)/$($(package)_qttools_file_name) -C qttools
|
||||||
|
endef
|
||||||
|
|
||||||
|
|
||||||
|
define $(package)_preprocess_cmds
|
||||||
|
sed -i.old "s|updateqm.commands = \$$$$\$$$$LRELEASE|updateqm.commands = $($(package)_extract_dir)/qttools/bin/lrelease|" qttranslations/translations/translations.pro && \
|
||||||
|
sed -i.old "/updateqm.depends =/d" qttranslations/translations/translations.pro && \
|
||||||
|
patch -p1 < $($(package)_patch_dir)/pidlist_absolute.patch && \
|
||||||
|
patch -p1 < $($(package)_patch_dir)/fix_qt_pkgconfig.patch && \
|
||||||
|
patch -p1 < $($(package)_patch_dir)/qfixed-coretext.patch && \
|
||||||
|
echo "!host_build: QMAKE_CFLAGS += $($(package)_cflags) $($(package)_cppflags)" >> qtbase/mkspecs/common/gcc-base.conf && \
|
||||||
|
echo "!host_build: QMAKE_CXXFLAGS += $($(package)_cxxflags) $($(package)_cppflags)" >> qtbase/mkspecs/common/gcc-base.conf && \
|
||||||
|
echo "!host_build: QMAKE_LFLAGS += $($(package)_ldflags)" >> qtbase/mkspecs/common/gcc-base.conf
|
||||||
|
endef
|
||||||
|
|
||||||
|
define $(package)_config_cmds
|
||||||
|
export PKG_CONFIG_SYSROOT_DIR=/ && \
|
||||||
|
export PKG_CONFIG_LIBDIR=$(host_prefix)/lib/pkgconfig && \
|
||||||
|
export PKG_CONFIG_PATH=$(host_prefix)/share/pkgconfig && \
|
||||||
|
./configure $($(package)_config_opts) && \
|
||||||
|
echo "host_build: QT_CONFIG ~= s/system-zlib/zlib" >> mkspecs/qconfig.pri && \
|
||||||
|
echo "CONFIG += force_bootstrap" >> mkspecs/qconfig.pri && \
|
||||||
|
$(MAKE) sub-src-clean && \
|
||||||
|
cd ../qttranslations && ../qtbase/bin/qmake qttranslations.pro -o Makefile && \
|
||||||
|
cd translations && ../../qtbase/bin/qmake translations.pro -o Makefile && cd ../.. &&\
|
||||||
|
cd qttools/src/linguist/lrelease/ && ../../../../qtbase/bin/qmake lrelease.pro -o Makefile
|
||||||
|
endef
|
||||||
|
|
||||||
|
define $(package)_build_cmds
|
||||||
|
$(MAKE) -C src $(addprefix sub-,$($(package)_qt_libs)) && \
|
||||||
|
$(MAKE) -C ../qttools/src/linguist/lrelease && \
|
||||||
|
$(MAKE) -C ../qttranslations
|
||||||
|
endef
|
||||||
|
|
||||||
|
define $(package)_stage_cmds
|
||||||
|
$(MAKE) -C src INSTALL_ROOT=$($(package)_staging_dir) $(addsuffix -install_subtargets,$(addprefix sub-,$($(package)_qt_libs))) && cd .. &&\
|
||||||
|
$(MAKE) -C qttools/src/linguist/lrelease INSTALL_ROOT=$($(package)_staging_dir) install_target && \
|
||||||
|
$(MAKE) -C qttranslations INSTALL_ROOT=$($(package)_staging_dir) install_subtargets
|
||||||
|
endef
|
||||||
|
|
||||||
|
define $(package)_postprocess_cmds
|
||||||
|
rm -rf native/mkspecs/ native/lib/ lib/cmake/ && \
|
||||||
|
rm -f lib/lib*.la lib/*.prl plugins/*/*.prl
|
||||||
|
endef
|
|
@ -0,0 +1,11 @@
|
||||||
|
--- old/qtbase/mkspecs/features/qt_module.prf
|
||||||
|
+++ new/qtbase/mkspecs/features/qt_module.prf
|
||||||
|
@@ -245,7 +245,7 @@
|
||||||
|
load(qt_targets)
|
||||||
|
|
||||||
|
# this builds on top of qt_common
|
||||||
|
-!internal_module:!lib_bundle:if(unix|mingw) {
|
||||||
|
+unix|mingw {
|
||||||
|
CONFIG += create_pc
|
||||||
|
QMAKE_PKGCONFIG_DESTDIR = pkgconfig
|
||||||
|
host_build: \
|
|
@ -0,0 +1,37 @@
|
||||||
|
diff -dur old/qtbase/src/plugins/platforms/windows/qwindowscontext.h new/qtbase/src/plugins/platforms/windows/qwindowscontext.h
|
||||||
|
--- old/qtbase/src/plugins/platforms/windows/qwindowscontext.h
|
||||||
|
+++ new/qtbase/src/plugins/platforms/windows/qwindowscontext.h
|
||||||
|
@@ -136,10 +136,18 @@
|
||||||
|
inline void init();
|
||||||
|
|
||||||
|
typedef HRESULT (WINAPI *SHCreateItemFromParsingName)(PCWSTR, IBindCtx *, const GUID&, void **);
|
||||||
|
+#if defined(Q_CC_MINGW) && (!defined(__MINGW64_VERSION_MAJOR) || __MINGW64_VERSION_MAJOR < 3)
|
||||||
|
+ typedef HRESULT (WINAPI *SHGetKnownFolderIDList)(const GUID &, DWORD, HANDLE, ITEMIDLIST **);
|
||||||
|
+#else
|
||||||
|
typedef HRESULT (WINAPI *SHGetKnownFolderIDList)(const GUID &, DWORD, HANDLE, PIDLIST_ABSOLUTE *);
|
||||||
|
+#endif
|
||||||
|
typedef HRESULT (WINAPI *SHGetStockIconInfo)(int , int , _SHSTOCKICONINFO *);
|
||||||
|
typedef HRESULT (WINAPI *SHGetImageList)(int, REFIID , void **);
|
||||||
|
+#if defined(Q_CC_MINGW) && (!defined(__MINGW64_VERSION_MAJOR) || __MINGW64_VERSION_MAJOR < 3)
|
||||||
|
+ typedef HRESULT (WINAPI *SHCreateItemFromIDList)(const ITEMIDLIST *, REFIID, void **);
|
||||||
|
+#else
|
||||||
|
typedef HRESULT (WINAPI *SHCreateItemFromIDList)(PCIDLIST_ABSOLUTE, REFIID, void **);
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
SHCreateItemFromParsingName sHCreateItemFromParsingName;
|
||||||
|
SHGetKnownFolderIDList sHGetKnownFolderIDList;
|
||||||
|
diff -dur old/qtbase/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp new/qtbase/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp
|
||||||
|
--- old/qtbase/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp
|
||||||
|
+++ new/qtbase/src/plugins/platforms/windows/qwindowsdialoghelpers.cpp
|
||||||
|
@@ -1016,7 +1016,11 @@
|
||||||
|
qWarning() << __FUNCTION__ << ": Invalid CLSID: " << url.path();
|
||||||
|
return Q_NULLPTR;
|
||||||
|
}
|
||||||
|
+#if defined(Q_CC_MINGW) && (!defined(__MINGW64_VERSION_MAJOR) || __MINGW64_VERSION_MAJOR < 3)
|
||||||
|
+ ITEMIDLIST *idList;
|
||||||
|
+#else
|
||||||
|
PIDLIST_ABSOLUTE idList;
|
||||||
|
+#endif
|
||||||
|
HRESULT hr = QWindowsContext::shell32dll.sHGetKnownFolderIDList(uuid, 0, 0, &idList);
|
||||||
|
if (FAILED(hr)) {
|
||||||
|
qErrnoWarning("%s: SHGetKnownFolderIDList(%s)) failed", __FUNCTION__, qPrintable(url.toString()));
|
|
@ -0,0 +1,34 @@
|
||||||
|
From dbdd5f0ffbce52c8b789ed09f1aa3f1da6c02e23 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
|
||||||
|
Date: Fri, 30 Mar 2018 11:58:16 -0700
|
||||||
|
Subject: [PATCH] QCoreTextFontEngine: Fix build with Xcode 9.3
|
||||||
|
|
||||||
|
Apple LLVM version 9.1.0 (clang-902.0.39.1)
|
||||||
|
|
||||||
|
Error message:
|
||||||
|
|
||||||
|
.../qfontengine_coretext.mm:827:20: error: qualified reference to
|
||||||
|
'QFixed' is a constructor name rather than a type in this context
|
||||||
|
return QFixed::QFixed(int(CTFontGetUnitsPerEm(ctfont)));
|
||||||
|
|
||||||
|
Change-Id: Iebe26b3b087a16b10664208fc8851cbddb47f043
|
||||||
|
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
|
||||||
|
---
|
||||||
|
src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git old/qtbase/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm new/qtbase/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
|
||||||
|
index 25ff69d877d..98b753eff96 100644
|
||||||
|
--- old/qtbase/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
|
||||||
|
+++ new/qtbase/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
|
||||||
|
@@ -824,7 +824,7 @@ void QCoreTextFontEngine::getUnscaledGlyph(glyph_t glyph, QPainterPath *path, gl
|
||||||
|
|
||||||
|
QFixed QCoreTextFontEngine::emSquareSize() const
|
||||||
|
{
|
||||||
|
- return QFixed::QFixed(int(CTFontGetUnitsPerEm(ctfont)));
|
||||||
|
+ return QFixed(int(CTFontGetUnitsPerEm(ctfont)));
|
||||||
|
}
|
||||||
|
|
||||||
|
QFontEngine *QCoreTextFontEngine::cloneWithSize(qreal pixelSize) const
|
||||||
|
--
|
||||||
|
2.16.3
|
|
@ -10,17 +10,14 @@ SET(CMAKE_FIND_ROOT_PATH @prefix@ /usr)
|
||||||
|
|
||||||
SET(ENV{PKG_CONFIG_PATH} @prefix@/lib/pkgconfig)
|
SET(ENV{PKG_CONFIG_PATH} @prefix@/lib/pkgconfig)
|
||||||
|
|
||||||
SET(THREADS_PTHREAD_ARG "2" CACHE STRING "Forcibly set by CMakeLists.txt." FORCE)
|
SET(LRELEASE_PATH @prefix@/native/bin CACHE FILEPATH "path to lrelease" FORCE)
|
||||||
|
|
||||||
SET(Readline_ROOT_DIR @prefix@)
|
SET(Readline_ROOT_DIR @prefix@)
|
||||||
|
|
||||||
SET(LIBUNWIND_INCLUDE_DIR @prefix@/include)
|
SET(LIBUNWIND_INCLUDE_DIR @prefix@/include)
|
||||||
SET(LIBUNWIND_LIBRARIES @prefix@/lib/libunwind.a)
|
SET(LIBUNWIND_LIBRARIES @prefix@/lib/libunwind.a)
|
||||||
SET(LIBUNWIND_LIBRARY_DIRS @prefix@/lib)
|
SET(LIBUNWIND_LIBRARY_DIRS @prefix@/lib)
|
||||||
|
|
||||||
#SET(UNBOUND_INCLUDE_DIR @prefix@/include)
|
|
||||||
#SET(UNBOUND_LIBRARIES @prefix@/lib)
|
|
||||||
#SET(UNBOUND_LIBRARY @prefix@/lib/libunbound.a)
|
|
||||||
|
|
||||||
SET(ZMQ_INCLUDE_PATH @prefix@/include)
|
SET(ZMQ_INCLUDE_PATH @prefix@/include)
|
||||||
SET(ZMQ_LIB @prefix@/lib/libzmq.a)
|
SET(ZMQ_LIB @prefix@/lib/libzmq.a)
|
||||||
|
|
||||||
|
|
|
@ -42,7 +42,12 @@ IF(NOT CMAKE_CROSSCOMPILING)
|
||||||
add_executable(generate_translations_header generate_translations_header.c)
|
add_executable(generate_translations_header generate_translations_header.c)
|
||||||
ENDIF(NOT CMAKE_CROSSCOMPILING)
|
ENDIF(NOT CMAKE_CROSSCOMPILING)
|
||||||
|
|
||||||
find_program(LRELEASE lrelease)
|
if(LRELEASE_PATH STREQUAL "")
|
||||||
|
find_program(LRELEASE lrelease)
|
||||||
|
else()
|
||||||
|
set(LRELEASE ${LRELEASE_PATH}/lrelease)
|
||||||
|
endif()
|
||||||
|
|
||||||
if(LRELEASE STREQUAL "LRELEASE-NOTFOUND")
|
if(LRELEASE STREQUAL "LRELEASE-NOTFOUND")
|
||||||
set(ts_files "")
|
set(ts_files "")
|
||||||
message(WARNING "lrelease program not found, translation files not built")
|
message(WARNING "lrelease program not found, translation files not built")
|
||||||
|
@ -68,7 +73,7 @@ string(REPLACE ".ts" ".qm" qm_files "${ts_files}")
|
||||||
|
|
||||||
add_custom_command(TARGET generate_translations_header
|
add_custom_command(TARGET generate_translations_header
|
||||||
POST_BUILD
|
POST_BUILD
|
||||||
COMMAND generate_translations_header ${qm_files}
|
COMMAND ./generate_translations_header ${qm_files}
|
||||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BIN_DIR}"
|
WORKING_DIRECTORY "${CMAKE_CURRENT_BIN_DIR}"
|
||||||
COMMENT "Generating embedded translations header")
|
COMMENT "Generating embedded translations header")
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue