Changeset View
Changeset View
Standalone View
Standalone View
depends/packages/qt.mk
Show First 20 Lines • Show All 138 Lines • ▼ Show 20 Lines | |||||
$(package)_config_opts_linux = -xcb | $(package)_config_opts_linux = -xcb | ||||
$(package)_config_opts_linux += -no-xcb-xlib | $(package)_config_opts_linux += -no-xcb-xlib | ||||
$(package)_config_opts_linux += -no-feature-xlib | $(package)_config_opts_linux += -no-feature-xlib | ||||
$(package)_config_opts_linux += -system-freetype | $(package)_config_opts_linux += -system-freetype | ||||
$(package)_config_opts_linux += -fontconfig | $(package)_config_opts_linux += -fontconfig | ||||
$(package)_config_opts_linux += -no-feature-vulkan | $(package)_config_opts_linux += -no-feature-vulkan | ||||
$(package)_config_opts_linux += -dbus-runtime | $(package)_config_opts_linux += -dbus-runtime | ||||
$(package)_config_opts_linux += OPENSSL_LIBS="-lssl -lcrypto -lpthread" | $(package)_config_opts_linux += OPENSSL_LIBS="-lssl -lcrypto -lpthread" | ||||
$(package)_config_opts_arm_linux += -platform linux-g++ -xplatform bitcoin-linux-g++ | $(package)_config_opts_linux += -platform linux-g++ -xplatform bitcoin-linux-g++ | ||||
$(package)_config_opts_i686_linux = -xplatform linux-g++-32 | |||||
$(package)_config_opts_x86_64_linux = -xplatform linux-g++-64 | |||||
$(package)_config_opts_aarch64_linux = -xplatform linux-aarch64-gnu-g++ | |||||
$(package)_config_opts_mingw32 = -no-dbus | $(package)_config_opts_mingw32 = -no-dbus | ||||
$(package)_config_opts_mingw32 += -no-freetype | $(package)_config_opts_mingw32 += -no-freetype | ||||
$(package)_config_opts_mingw32 += -xplatform win32-g++ | $(package)_config_opts_mingw32 += -xplatform win32-g++ | ||||
$(package)_config_opts_mingw32 += "QMAKE_CFLAGS = '$($(package)_cflags) $($(package)_cppflags)'" | $(package)_config_opts_mingw32 += "QMAKE_CFLAGS = '$($(package)_cflags) $($(package)_cppflags)'" | ||||
$(package)_config_opts_mingw32 += "QMAKE_CXXFLAGS = '$($(package)_cflags) $($(package)_cppflags)'" | $(package)_config_opts_mingw32 += "QMAKE_CXXFLAGS = '$($(package)_cflags) $($(package)_cppflags)'" | ||||
$(package)_config_opts_mingw32 += "QMAKE_LFLAGS = '$($(package)_ldflags)'" | $(package)_config_opts_mingw32 += "QMAKE_LFLAGS = '$($(package)_ldflags)'" | ||||
$(package)_config_opts_mingw32 += -device-option CROSS_COMPILE="$(host)-" | $(package)_config_opts_mingw32 += -device-option CROSS_COMPILE="$(host)-" | ||||
$(package)_config_opts_mingw32 += -pch | $(package)_config_opts_mingw32 += -pch | ||||
Show All 22 Lines | |||||
# Preprocessing steps work as follows: | # Preprocessing steps work as follows: | ||||
# | # | ||||
# 1. Apply our patches to the extracted source. See each patch for more info. | # 1. Apply our patches to the extracted source. See each patch for more info. | ||||
# | # | ||||
# 2. Create a macOS-Clang-Linux mkspec using our mac-qmake.conf. | # 2. Create a macOS-Clang-Linux mkspec using our mac-qmake.conf. | ||||
# | # | ||||
# 3. After making a copy of the mkspec for the linux-arm-gnueabi host, named | # 3. After making a copy of the mkspec for the linux-arm-gnueabi host, named | ||||
# bitcoin-linux-g++, replace instances of linux-arm-gnueabi with $(host). This | # bitcoin-linux-g++, replace tool names with $($($(package)_type)_TOOL). | ||||
# way we can generically support hosts like riscv64-linux-gnu, which Qt doesn't | |||||
# ship a mkspec for. See it's usage in config_opts_* above. | |||||
# | # | ||||
# 4. Put our C, CXX and LD FLAGS into gcc-base.conf. Only used for non-host builds. | # 4. Put our C, CXX and LD FLAGS into gcc-base.conf. Only used for non-host builds. | ||||
# | # | ||||
# 5. Do similar for the win32-g++ mkspec. | # 5. In clang.conf, swap out clang & clang++, for our compiler + flags. See #17466. | ||||
# | |||||
# 6. In clang.conf, swap out clang & clang++, for our compiler + flags. See #17466. | |||||
# | |||||
# 7. Adjust a regex in toolchain.prf, to accomodate Guix's usage of | |||||
# CROSS_LIBRARY_PATH. See core#15277. | |||||
define $(package)_preprocess_cmds | define $(package)_preprocess_cmds | ||||
cp $($(package)_patch_dir)/qt.pro qt.pro && \ | cp $($(package)_patch_dir)/qt.pro qt.pro && \ | ||||
cp $($(package)_patch_dir)/qttools_src.pro qttools/src/src.pro && \ | cp $($(package)_patch_dir)/qttools_src.pro qttools/src/src.pro && \ | ||||
patch -p1 -i $($(package)_patch_dir)/dont_hardcode_pwd.patch && \ | patch -p1 -i $($(package)_patch_dir)/dont_hardcode_pwd.patch && \ | ||||
patch -p1 -i $($(package)_patch_dir)/fix_qt_pkgconfig.patch && \ | patch -p1 -i $($(package)_patch_dir)/fix_qt_pkgconfig.patch && \ | ||||
patch -p1 -i $($(package)_patch_dir)/no-xlib.patch && \ | patch -p1 -i $($(package)_patch_dir)/no-xlib.patch && \ | ||||
patch -p1 -i $($(package)_patch_dir)/dont_hardcode_x86_64.patch && \ | patch -p1 -i $($(package)_patch_dir)/dont_hardcode_x86_64.patch && \ | ||||
patch -p1 -i $($(package)_patch_dir)/qtbase-moc-ignore-gcc-macro.patch && \ | patch -p1 -i $($(package)_patch_dir)/qtbase-moc-ignore-gcc-macro.patch && \ | ||||
patch -p1 -i $($(package)_patch_dir)/fix_montery_include.patch && \ | patch -p1 -i $($(package)_patch_dir)/fix_montery_include.patch && \ | ||||
patch -p1 -i $($(package)_patch_dir)/rcc_hardcode_timestamp.patch && \ | patch -p1 -i $($(package)_patch_dir)/rcc_hardcode_timestamp.patch && \ | ||||
patch -p1 -i $($(package)_patch_dir)/duplicate_lcqpafonts.patch && \ | patch -p1 -i $($(package)_patch_dir)/duplicate_lcqpafonts.patch && \ | ||||
patch -p1 -i $($(package)_patch_dir)/fast_fixed_dtoa_no_optimize.patch && \ | patch -p1 -i $($(package)_patch_dir)/fast_fixed_dtoa_no_optimize.patch && \ | ||||
patch -p1 -i $($(package)_patch_dir)/guix_cross_lib_path.patch && \ | patch -p1 -i $($(package)_patch_dir)/guix_cross_lib_path.patch && \ | ||||
mkdir -p qtbase/mkspecs/macx-clang-linux &&\ | mkdir -p qtbase/mkspecs/macx-clang-linux &&\ | ||||
cp -f qtbase/mkspecs/macx-clang/qplatformdefs.h qtbase/mkspecs/macx-clang-linux/ &&\ | cp -f qtbase/mkspecs/macx-clang/qplatformdefs.h qtbase/mkspecs/macx-clang-linux/ &&\ | ||||
cp -f $($(package)_patch_dir)/mac-qmake.conf qtbase/mkspecs/macx-clang-linux/qmake.conf && \ | cp -f $($(package)_patch_dir)/mac-qmake.conf qtbase/mkspecs/macx-clang-linux/qmake.conf && \ | ||||
cp -r qtbase/mkspecs/linux-arm-gnueabi-g++ qtbase/mkspecs/bitcoin-linux-g++ && \ | cp -r qtbase/mkspecs/linux-arm-gnueabi-g++ qtbase/mkspecs/bitcoin-linux-g++ && \ | ||||
sed -i.old "s/arm-linux-gnueabi-/$(host)-/g" qtbase/mkspecs/bitcoin-linux-g++/qmake.conf && \ | sed -i.old "s|arm-linux-gnueabi-gcc|$($($(package)_type)_CC)|" qtbase/mkspecs/bitcoin-linux-g++/qmake.conf && \ | ||||
sed -i.old "s|arm-linux-gnueabi-g++|$($($(package)_type)_CXX)|" qtbase/mkspecs/bitcoin-linux-g++/qmake.conf && \ | |||||
sed -i.old "s|arm-linux-gnueabi-ar|$($($(package)_type)_AR)|" qtbase/mkspecs/bitcoin-linux-g++/qmake.conf && \ | |||||
sed -i.old "s|arm-linux-gnueabi-objcopy|$($($(package)_type)_OBJCOPY)|" qtbase/mkspecs/bitcoin-linux-g++/qmake.conf && \ | |||||
sed -i.old "s|arm-linux-gnueabi-nm|$($($(package)_type)_NM)|" qtbase/mkspecs/bitcoin-linux-g++/qmake.conf && \ | |||||
sed -i.old "s|arm-linux-gnueabi-strip|$($($(package)_type)_STRIP)|" qtbase/mkspecs/bitcoin-linux-g++/qmake.conf && \ | |||||
echo "!host_build: QMAKE_CFLAGS += $($(package)_cflags) $($(package)_cppflags)" >> qtbase/mkspecs/common/gcc-base.conf && \ | 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_CXXFLAGS += $($(package)_cxxflags) $($(package)_cppflags)" >> qtbase/mkspecs/common/gcc-base.conf && \ | ||||
echo "!host_build: QMAKE_LFLAGS += $($(package)_ldflags)" >> qtbase/mkspecs/common/gcc-base.conf && \ | echo "!host_build: QMAKE_LFLAGS += $($(package)_ldflags)" >> qtbase/mkspecs/common/gcc-base.conf && \ | ||||
sed -i.old "s|QMAKE_CC = \$$$$\$$$${CROSS_COMPILE}clang|QMAKE_CC = $($(package)_cc)|" qtbase/mkspecs/common/clang.conf && \ | sed -i.old "s|QMAKE_CC = \$$$$\$$$${CROSS_COMPILE}clang|QMAKE_CC = $($(package)_cc)|" qtbase/mkspecs/common/clang.conf && \ | ||||
sed -i.old "s|QMAKE_CXX = \$$$$\$$$${CROSS_COMPILE}clang++|QMAKE_CXX = $($(package)_cxx)|" qtbase/mkspecs/common/clang.conf | sed -i.old "s|QMAKE_CXX = \$$$$\$$$${CROSS_COMPILE}clang++|QMAKE_CXX = $($(package)_cxx)|" qtbase/mkspecs/common/clang.conf | ||||
endef | endef | ||||
define $(package)_config_cmds | define $(package)_config_cmds | ||||
Show All 21 Lines |