2021-10-01 04:03:56 +08:00
# Reminder for myself and everybody else:
2022-02-02 07:03:34 +08:00
# Qt cross module dependency information within the Qt respository is wrong and/or incomplete.
2021-10-01 04:03:56 +08:00
# Always check the toplevel CMakeLists.txt for the find_package call and search for linkage against the Qt:: targets
2022-02-02 07:03:34 +08:00
# Often enough certain (bigger) dependencies are only used to build examples and/or tests.
2021-10-01 04:03:56 +08:00
# As such getting the correct dependency information relevant for vcpkg requires a manual search/check
#set(QT_IS_LATEST ON)
2021-06-02 02:05:59 +08:00
## All above goes into the qt_port_hashes in the future
include ( "${CMAKE_CURRENT_LIST_DIR}/cmake/qt_install_submodule.cmake" )
2022-02-02 07:03:34 +08:00
set ( ${ PORT } _PATCHES
a l l o w _ o u t s i d e _ p r e f i x . p a t c h
2021-06-22 04:45:33 +08:00
c l a n g - c l _ s o u r c e _ l o c a t i o n . p a t c h
2021-10-01 04:03:56 +08:00
c o n f i g _ i n s t a l l . p a t c h
d o n t _ f o r c e _ c m a k e c a c h e . p a t c h
f i x _ c m a k e _ b u i l d . p a t c h
h a r f b u z z . p a t c h
f i x _ e g l . p a t c h
2021-06-02 02:05:59 +08:00
)
if ( NOT VCPKG_USE_HEAD_VERSION AND NOT QT_IS_LATEST )
list ( APPEND ${ PORT } _PATCHES
2021-10-01 04:03:56 +08:00
)
2021-06-02 02:05:59 +08:00
endif ( )
if ( VCPKG_TARGET_IS_WINDOWS AND NOT "doubleconversion" IN_LIST FEATURES )
message ( FATAL_ERROR "${PORT} requires feature doubleconversion on windows!" )
endif ( )
2022-02-02 07:03:34 +08:00
# Features can be found via searching for qt_feature in all configure.cmake files in the source:
2021-06-02 02:05:59 +08:00
# The files also contain information about the Platform for which it is searched
2022-02-16 12:24:55 +08:00
# Always use FEATURE_<feature> in vcpkg_cmake_configure
2021-06-02 02:05:59 +08:00
# (using QT_FEATURE_X overrides Qts condition check for the feature.)
# Theoretically there is a feature for every widget to enable/disable it but that is way to much for vcpkg
set ( input_vars doubleconversion freetype harfbuzz libb2 jpeg libmd4c png sql-sqlite )
set ( INPUT_OPTIONS )
foreach ( _input IN LISTS input_vars )
if ( _input MATCHES "(png|jpeg)" )
list ( APPEND INPUT_OPTIONS -DINPUT_lib ${ _input } :STRING= )
2022-02-16 12:24:55 +08:00
elseif ( _input MATCHES "(sql-sqlite)" ) # Not yet used by the cmake build
2021-06-02 02:05:59 +08:00
else ( )
list ( APPEND INPUT_OPTIONS -DINPUT_ ${ _input } :STRING= )
endif ( )
if ( "${_input}" IN_LIST FEATURES )
string ( APPEND INPUT_OPTIONS system )
elseif ( _input STREQUAL "libb2" AND NOT VCPKG_TARGET_IS_WINDOWS )
string ( APPEND INPUT_OPTIONS system )
elseif ( _input STREQUAL "libmd4c" )
string ( APPEND INPUT_OPTIONS qt ) # libmd4c is not yet in VCPKG (but required by qtdeclarative)
else ( )
string ( APPEND INPUT_OPTIONS no )
endif ( )
endforeach ( )
# General features:
vcpkg_check_features ( OUT_FEATURE_OPTIONS FEATURE_OPTIONS
F E A T U R E S
2022-02-16 12:24:55 +08:00
" a p p s t o r e - c o m p l i a n t " F E A T U R E _ a p p s t o r e _ c o m p l i a n t
2021-06-02 02:05:59 +08:00
" z s t d " F E A T U R E _ z s t d
" f r a m e w o r k " F E A T U R E _ f r a m e w o r k
" c o n c u r r e n t " F E A T U R E _ c o n c u r r e n t
2021-10-01 04:03:56 +08:00
" c o n c u r r e n t " F E A T U R E _ f u t u r e
" c o n c u r r e n t " F E A T U R E _ t h r e a d
2021-06-02 02:05:59 +08:00
" d b u s " F E A T U R E _ d b u s
" g u i " F E A T U R E _ g u i
" n e t w o r k " F E A T U R E _ n e t w o r k
" s q l " F E A T U R E _ s q l
" w i d g e t s " F E A T U R E _ w i d g e t s
#"xml" FEATURE_xml # Required to build moc
" t e s t l i b " F E A T U R E _ t e s t l i b
I N V E R T E D _ F E A T U R E S
" z s t d " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ Z S T D
" d b u s " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ W r a p D B u s 1
)
list ( APPEND FEATURE_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_Libudev:BOOL=ON )
list ( APPEND FEATURE_OPTIONS -DFEATURE_xml:BOOL=ON )
2022-02-16 12:24:55 +08:00
if ( VCPKG_QT_NAMESPACE )
list ( APPEND FEATURE_OPTIONS "-DQT_NAMESPACE:STRING=${VCPKG_QT_NAMESPACE}" )
2022-02-02 07:03:34 +08:00
endif ( )
2021-06-02 02:05:59 +08:00
# Corelib features:
vcpkg_check_features ( OUT_FEATURE_OPTIONS FEATURE_CORE_OPTIONS
F E A T U R E S
" d o u b l e c o n v e r s i o n " F E A T U R E _ d o u b l e c o n v e r s i o n
" g l i b " F E A T U R E _ g l i b
" i c u " F E A T U R E _ i c u
" p c r e 2 " F E A T U R E _ p c r e 2
I N V E R T E D _ F E A T U R E S
#"doubleconversion" CMAKE_DISABLE_FIND_PACKAGE_WrapDoubleConversion # Required
" i c u " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ I C U
#"pcre2" CMAKE_DISABLE_FIND_PACKAGE_WrapSystemPCRE2 # Bug in qt cannot be deactivated
" g l i b " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ G L I B 2
)
list ( APPEND FEATURE_CORE_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_LTTngUST:BOOL=ON )
list ( APPEND FEATURE_CORE_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_PPS:BOOL=ON )
list ( APPEND FEATURE_CORE_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_Slog2:BOOL=ON )
list ( APPEND FEATURE_CORE_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_Libsystemd:BOOL=ON )
# Network features:
vcpkg_check_features ( OUT_FEATURE_OPTIONS FEATURE_NET_OPTIONS
F E A T U R E S
" o p e n s s l " F E A T U R E _ o p e n s s l
" b r o t l i " F E A T U R E _ b r o t l i
I N V E R T E D _ F E A T U R E S
" b r o t l i " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ W r a p B r o t l i
" o p e n s s l " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ W r a p O p e n S S L
)
if ( "openssl" IN_LIST FEATURES )
list ( APPEND FEATURE_NET_OPTIONS -DINPUT_openssl=linked )
else ( )
list ( APPEND FEATURE_NET_OPTIONS -DINPUT_openssl=no )
endif ( )
list ( APPEND FEATURE_NET_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_Libproxy:BOOL=ON )
list ( APPEND FEATURE_NET_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_GSSAPI:BOOL=ON )
# Gui features:
vcpkg_check_features ( OUT_FEATURE_OPTIONS FEATURE_GUI_OPTIONS
F E A T U R E S
" f r e e t y p e " F E A T U R E _ f r e e t y p e # required on windows
" h a r f b u z z " F E A T U R E _ h a r f b u z z
" f o n t c o n f i g " F E A T U R E _ f o n t c o n f i g # NOT WINDOWS
" j p e g " F E A T U R E _ j p e g
" p n g " F E A T U R E _ p n g
#"opengl" INPUT_opengl=something
2022-02-16 12:24:55 +08:00
" x l i b " F E A T U R E _ x l i b
" x k b " F E A T U R E _ x k b c o m m o n
" x c b " F E A T U R E _ x c b
" x c b - x l i b " F E A T U R E _ x c b _ x l i b
" x k b c o m m o n - x 1 1 " F E A T U R E _ x k b c o m m o n _ x 1 1
" x r e n d e r " F E A T U R E _ x r e n d e r # requires FEATURE_xcb_native_painting; otherwise disabled.
" x r e n d e r " F E A T U R E _ x c b _ n a t i v e _ p a i n t i n g # experimental
2021-06-02 02:05:59 +08:00
I N V E R T E D _ F E A T U R E S
" v u l k a n " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ V u l k a n
" e g l " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ E G L
" f o n t c o n f i g " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ F o n t c o n f i g
#"freetype" CMAKE_DISABLE_FIND_PACKAGE_WrapSystemFreetype # Bug in qt cannot be deactivated
" h a r f b u z z " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ W r a p S y s t e m H a r f b u z z
" j p e g " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ J P E G
" p n g " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ P N G
" x l i b " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ X 1 1
" x k b " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ X K B
" x c b " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ X C B
" x c b - x l i b " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ X 1 1 _ X C B
" x k b c o m m o n - x 1 1 " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ X K B _ C O M M O N _ X 1 1
" x r e n d e r " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ X R e n d e r
# There are more X features but I am unsure how to safely disable them! Most of them seem to be found automaticall with find_package(X11)
)
if ( "xcb" IN_LIST FEATURES )
list ( APPEND FEATURE_GUI_OPTIONS -DINPUT_xcb=yes )
else ( )
list ( APPEND FEATURE_GUI_OPTIONS -DINPUT_xcb=no )
endif ( )
if ( "xkb" IN_LIST FEATURES )
list ( APPEND FEATURE_GUI_OPTIONS -DINPUT_xkbcommon=yes )
else ( )
list ( APPEND FEATURE_GUI_OPTIONS -DINPUT_xkbcommon=no )
endif ( )
list ( APPEND FEATURE_GUI_OPTIONS )
list ( APPEND FEATURE_GUI_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_ATSPI2:BOOL=ON )
list ( APPEND FEATURE_GUI_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_DirectFB:BOOL=ON )
list ( APPEND FEATURE_GUI_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_Libdrm:BOOL=ON )
list ( APPEND FEATURE_GUI_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_gbm:BOOL=ON )
list ( APPEND FEATURE_GUI_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_Libinput:BOOL=ON )
list ( APPEND FEATURE_GUI_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_Mtdev:BOOL=ON )
list ( APPEND FEATURE_GUI_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_GLESv2:BOOL=ON ) # only used if INPUT_opengl is correctly set
list ( APPEND FEATURE_GUI_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_Tslib:BOOL=ON )
# sql-drivers features:
vcpkg_check_features ( OUT_FEATURE_OPTIONS FEATURE_SQLDRIVERS_OPTIONS
F E A T U R E S
" s q l - s q l i t e " F E A T U R E _ s y s t e m _ s q l i t e
I N V E R T E D _ F E A T U R E S
" s q l - p s q l " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ P o s t g r e S Q L
" s q l - s q l i t e " C M A K E _ D I S A B L E _ F I N D _ P A C K A G E _ S Q L i t e 3
# "sql-db2" FEATURE_sql-db2
# "sql-ibase" FEATURE_sql-ibase
# "sql-mysql" FEATURE_sql-mysql
# "sql-oci" FEATURE_sql-oci
# "sql-odbc" FEATURE_sql-odbc
)
set ( DB_LIST DB2 MySQL Oracle ODBC )
foreach ( _db IN LISTS DB_LIST )
list ( APPEND FEATURE_SQLDRIVERS_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_ ${ _db } :BOOL=ON )
endforeach ( )
# printsupport features:
# vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_PRINTSUPPORT_OPTIONS
# )
list ( APPEND FEATURE_PRINTSUPPORT_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_CUPS:BOOL=ON )
# widgets features:
# vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_WIDGETS_OPTIONS
# "gtk3" FEATURE_gtk3
2022-02-02 07:03:34 +08:00
# There are a lot of additional features here to deactivate parts of widgets.
2021-06-02 02:05:59 +08:00
# )
list ( APPEND FEATURE_WIDGETS_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_GTK3:BOOL=ON )
2022-02-02 07:03:34 +08:00
set ( TOOL_NAMES
a n d r o i d d e p l o y q t
a n d r o i d t e s t r u n n e r
c m a k e _ a u t o m o c _ p a r s e r
m o c
q d b u s c p p 2 x m l
q d b u s x m l 2 c p p
q l a l r
q m a k e
q m a k e 6
q v k g e n
r c c
t r a c e g e n
2021-06-02 02:05:59 +08:00
u i c
2021-10-01 04:03:56 +08:00
q t p a t h s
q t p a t h s 6
2021-06-02 02:05:59 +08:00
)
qt_install_submodule ( PATCHES ${ ${PORT } _PATCHES}
T O O L _ N A M E S $ { T O O L _ N A M E S }
C O N F I G U R E _ O P T I O N S
#--trace-expand
$ { F E A T U R E _ O P T I O N S }
$ { F E A T U R E _ C O R E _ O P T I O N S }
$ { F E A T U R E _ N E T _ O P T I O N S }
$ { F E A T U R E _ G U I _ O P T I O N S }
$ { F E A T U R E _ S Q L D R I V E R S _ O P T I O N S }
$ { F E A T U R E _ P R I N T S U P P O R T _ O P T I O N S }
$ { F E A T U R E _ W I D G E T S _ O P T I O N S }
$ { I N P U T _ O P T I O N S }
- D Q T _ U S E _ B U N D L E D _ B u n d l e d F r e e t y p e : B O O L = F A L S E
- D Q T _ U S E _ B U N D L E D _ B u n d l e d H a r f b u z z : B O O L = F A L S E
- D Q T _ U S E _ B U N D L E D _ B u n d l e d L i b p n g : B O O L = F A L S E
- D Q T _ U S E _ B U N D L E D _ B u n d l e d P c r e 2 : B O O L = F A L S E
- D I N P U T _ b u n d l e d _ x c b _ x i n p u t : S T R I N G = n o
- D F E A T U R E _ f o r c e _ d e b u g _ i n f o : B O O L = O N
- D F E A T U R E _ r e l o c a t a b l e : B O O L = O N
C O N F I G U R E _ O P T I O N S _ R E L E A S E
C O N F I G U R E _ O P T I O N S _ D E B U G
- D F E A T U R E _ d e b u g : B O O L = O N
2022-02-16 12:24:55 +08:00
C O N F I G U R E _ O P T I O N S _ M A Y B E _ U N U S E D
F E A T U R E _ a p p s t o r e _ c o m p l i a n t # only used for android/ios
2021-06-02 02:05:59 +08:00
)
# Install CMake helper scripts
if ( QT_IS_LATEST )
2022-02-02 07:03:34 +08:00
set ( port_details "${CMAKE_CURRENT_LIST_DIR}/cmake/qt_port_details-latest.cmake" )
2021-06-02 02:05:59 +08:00
else ( )
2022-02-02 07:03:34 +08:00
set ( port_details "${CMAKE_CURRENT_LIST_DIR}/cmake/qt_port_details.cmake" )
2021-06-02 02:05:59 +08:00
endif ( )
file ( INSTALL
" $ { p o r t _ d e t a i l s } "
D E S T I N A T I O N
" $ { C U R R E N T _ P A C K A G E S _ D I R } / s h a r e / $ { P O R T } "
R E N A M E
" q t _ p o r t _ d e t a i l s . c m a k e "
)
file ( COPY
" $ { C M A K E _ C U R R E N T _ L I S T _ D I R } / c m a k e / q t _ i n s t a l l _ c o p y r i g h t . c m a k e "
" $ { C M A K E _ C U R R E N T _ L I S T _ D I R } / c m a k e / q t _ i n s t a l l _ s u b m o d u l e . c m a k e "
D E S T I N A T I O N
" $ { C U R R E N T _ P A C K A G E S _ D I R } / s h a r e / $ { P O R T } "
)
qt_stop_on_update ( )
set ( script_files qt-cmake qt-cmake-private qt-cmake-standalone-test qt-configure-module qt-internal-configure-tests )
2021-10-01 04:03:56 +08:00
if ( CMAKE_HOST_WIN32 )
2021-06-02 02:05:59 +08:00
set ( script_suffix .bat )
else ( )
set ( script_suffix )
endif ( )
2022-02-02 07:03:34 +08:00
set ( other_files
2021-10-01 04:03:56 +08:00
t a r g e t _ q t . c o n f
2022-02-02 07:03:34 +08:00
q t - c m a k e - p r i v a t e - i n s t a l l . c m a k e
2021-06-02 02:05:59 +08:00
s y n c q t . p l
a n d r o i d _ c m a k e l i s t _ p a t c h e r . s h
a n d r o i d _ e m u l a t o r _ l a u n c h e r . s h
e n s u r e _ p r o _ f i l e . c m a k e
)
foreach ( _config debug release )
if ( _config MATCHES "debug" )
set ( path_suffix debug/ )
else ( )
set ( path_suffix )
endif ( )
if ( NOT EXISTS "${CURRENT_PACKAGES_DIR}/${path_suffix}bin" )
continue ( )
endif ( )
2021-06-22 04:45:33 +08:00
file ( MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/Qt6/bin/${path_suffix}" )
2021-06-02 02:05:59 +08:00
foreach ( script IN LISTS script_files )
if ( EXISTS "${CURRENT_PACKAGES_DIR}/${path_suffix}bin/${script}${script_suffix}" )
2021-06-22 04:45:33 +08:00
set ( target_script "${CURRENT_PACKAGES_DIR}/tools/Qt6/bin/${path_suffix}${script}${script_suffix}" )
2021-06-02 02:05:59 +08:00
file ( RENAME "${CURRENT_PACKAGES_DIR}/${path_suffix}bin/${script}${script_suffix}" "${target_script}" )
file ( READ "${target_script}" _contents )
if ( _config MATCHES "debug" )
string ( REPLACE "\\..\\share\\" "\\..\\..\\..\\..\\share\\" _contents "${_contents}" )
else ( )
string ( REPLACE "\\..\\share\\" "\\..\\..\\..\\share\\" _contents "${_contents}" )
endif ( )
file ( WRITE "${target_script}" "${_contents}" )
endif ( )
endforeach ( )
foreach ( other IN LISTS other_files )
if ( EXISTS "${CURRENT_PACKAGES_DIR}/${path_suffix}bin/${other}" )
2021-06-22 04:45:33 +08:00
file ( RENAME "${CURRENT_PACKAGES_DIR}/${path_suffix}bin/${other}" "${CURRENT_PACKAGES_DIR}/tools/Qt6/bin/${path_suffix}${other}" )
2021-06-02 02:05:59 +08:00
endif ( )
endforeach ( )
endforeach ( )
if ( VCPKG_LIBRARY_LINKAGE STREQUAL "static" )
2021-10-01 04:03:56 +08:00
if ( VCPKG_CROSSCOMPILING )
file ( REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin/qmake" "${CURRENT_PACKAGES_DIR}/debug/bin/qmake" ) # qmake has been moved so this is the qmake helper script
endif ( )
2021-06-02 02:05:59 +08:00
file ( GLOB_RECURSE _bin_files "${CURRENT_PACKAGES_DIR}/bin/*" )
2022-02-02 07:03:34 +08:00
if ( NOT _bin_files ) # Only clean if empty otherwise let vcpkg throw and error.
2021-06-02 02:05:59 +08:00
file ( REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin/" "${CURRENT_PACKAGES_DIR}/debug/bin/" )
endif ( )
endif ( )
file ( REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/Qt6/QtBuildInternals" )
if ( NOT VCPKG_TARGET_IS_OSX )
file ( REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/Qt6/macos" )
endif ( )
2021-06-22 04:45:33 +08:00
if ( NOT VCPKG_TARGET_IS_IOS )
file ( REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/Qt6/ios" )
2022-02-02 07:03:34 +08:00
endif ( )
2021-06-02 02:05:59 +08:00
2021-12-10 10:19:33 +08:00
file ( RELATIVE_PATH installed_to_host "${CURRENT_INSTALLED_DIR}" "${CURRENT_HOST_INSTALLED_DIR}" )
file ( RELATIVE_PATH host_to_installed "${CURRENT_HOST_INSTALLED_DIR}" "${CURRENT_INSTALLED_DIR}" )
if ( installed_to_host )
string ( APPEND installed_to_host "/" )
string ( APPEND host_to_installed "/" )
endif ( )
2021-06-02 02:05:59 +08:00
set ( _file "${CMAKE_CURRENT_LIST_DIR}/qt.conf.in" )
2021-12-10 10:19:33 +08:00
set ( REL_PATH "" )
2022-02-16 12:24:55 +08:00
set ( REL_HOST_TO_DATA "\${CURRENT_INSTALLED_DIR}/" )
2021-12-10 10:19:33 +08:00
configure_file ( "${_file}" "${CURRENT_PACKAGES_DIR}/tools/Qt6/qt_release.conf" @ONLY ) # For vcpkg-qmake
2021-06-02 02:05:59 +08:00
set ( BACKUP_CURRENT_INSTALLED_DIR "${CURRENT_INSTALLED_DIR}" )
set ( BACKUP_CURRENT_HOST_INSTALLED_DIR "${CURRENT_HOST_INSTALLED_DIR}" )
set ( CURRENT_INSTALLED_DIR "./../../../" )
2021-12-10 10:19:33 +08:00
set ( CURRENT_HOST_INSTALLED_DIR "${CURRENT_INSTALLED_DIR}${installed_to_host}" )
## Configure installed qt.conf
set ( REL_HOST_TO_DATA "${host_to_installed}" )
2021-06-22 04:45:33 +08:00
configure_file ( "${_file}" "${CURRENT_PACKAGES_DIR}/tools/Qt6/bin/qt.conf" )
2021-06-02 02:05:59 +08:00
set ( REL_PATH debug/ )
2021-06-22 04:45:33 +08:00
configure_file ( "${_file}" "${CURRENT_PACKAGES_DIR}/tools/Qt6/bin/qt.debug.conf" )
2021-12-10 10:19:33 +08:00
2021-06-02 02:05:59 +08:00
set ( CURRENT_INSTALLED_DIR "${BACKUP_CURRENT_INSTALLED_DIR}" )
set ( CURRENT_HOST_INSTALLED_DIR "${BACKUP_CURRENT_HOST_INSTALLED_DIR}" )
2022-02-16 12:24:55 +08:00
set ( REL_HOST_TO_DATA "\${CURRENT_INSTALLED_DIR}/" )
2021-12-10 10:19:33 +08:00
configure_file ( "${_file}" "${CURRENT_PACKAGES_DIR}/tools/Qt6/qt_debug.conf" @ONLY ) # For vcpkg-qmake
2021-06-02 02:05:59 +08:00
if ( VCPKG_TARGET_IS_WINDOWS )
set ( _DLL_FILES brotlicommon brotlidec bz2 freetype harfbuzz libpng16 )
set ( DLLS_TO_COPY )
foreach ( _file IN LISTS _DLL_FILES )
if ( EXISTS "${CURRENT_INSTALLED_DIR}/bin/${_file}.dll" )
list ( APPEND DLLS_TO_COPY "${CURRENT_INSTALLED_DIR}/bin/${_file}.dll" )
endif ( )
endforeach ( )
2021-06-22 04:45:33 +08:00
file ( COPY ${ DLLS_TO_COPY } DESTINATION "${CURRENT_PACKAGES_DIR}/tools/Qt6/bin" )
2021-06-02 02:05:59 +08:00
endif ( )
2021-06-22 04:45:33 +08:00
file ( INSTALL "${CMAKE_CURRENT_LIST_DIR}/qmake.debug.bat" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/Qt6/bin" )
2021-06-02 02:05:59 +08:00
set ( hostinfofile "${CURRENT_PACKAGES_DIR}/share/Qt6HostInfo/Qt6HostInfoConfig.cmake" )
file ( READ "${hostinfofile}" _contents )
2021-06-22 04:45:33 +08:00
string ( REPLACE [[set(QT6_HOST_INFO_LIBEXECDIR "bin" ) ] ] [ [ set ( QT6_HOST_INFO_LIBEXECDIR "tools/Qt6/bin" ) ] ] _ c o n t e n t s " $ { _ c o n t e n t s } " )
string ( REPLACE [[set(QT6_HOST_INFO_BINDIR "bin" ) ] ] [ [ set ( QT6_HOST_INFO_BINDIR "tools/Qt6/bin" ) ] ] _ c o n t e n t s " $ { _ c o n t e n t s } " )
2021-06-02 02:05:59 +08:00
file ( WRITE "${hostinfofile}" "${_contents}" )
set ( coretools "${CURRENT_PACKAGES_DIR}/share/Qt6CoreTools/Qt6CoreTools.cmake" )
if ( EXISTS "${coretools}" )
file ( READ "${coretools}" _contents )
2021-06-22 04:45:33 +08:00
string ( REPLACE [[ "${_IMPORT_PREFIX}/tools/Qt6/bin/qmake.exe" ]] [[ "${_IMPORT_PREFIX}/tools/Qt6/bin/qmake.debug.bat" ]] _contents "${_contents}" )
2021-06-02 02:05:59 +08:00
file ( WRITE "${coretools}" "${_contents}" )
endif ( )