From ca9ff199d6024fa0ef26abcba920928215d77f38 Mon Sep 17 00:00:00 2001 From: Barath Kannan Date: Thu, 18 Jan 2018 10:02:56 +1100 Subject: [PATCH] append hyphen to qt5 module names --- ports/{qt53d => qt5-3d}/CONTROL | 4 +- ports/{qt53d => qt5-3d}/portfile.cmake | 0 ports/{qt5base => qt5-base}/CONTROL | 2 +- .../{qt5base => qt5-base}/configure_qt.cmake | 0 .../fix-system-pcre2.patch | 0 ports/{qt5base => qt5-base}/fixcmake.py | 0 ports/{qt5base => qt5-base}/install_qt.cmake | 0 ports/{qt5base => qt5-base}/portfile.cmake | 2 +- ports/{qt5base => qt5-base}/qt_debug.conf | 0 ports/{qt5base => qt5-base}/qt_release.conf | 0 ports/{qt5charts => qt5-charts}/CONTROL | 4 +- .../{qt5charts => qt5-charts}/portfile.cmake | 0 ports/{qt5datavis3d => qt5-datavis3d}/CONTROL | 4 +- .../portfile.cmake | 0 .../CONTROL | 4 +- .../portfile.cmake | 0 ports/{qt5gamepad => qt5-gamepad}/CONTROL | 4 +- .../portfile.cmake | 0 .../CONTROL | 4 +- .../portfile.cmake | 0 .../CONTROL | 2 +- .../fixcmake.py | 0 .../portfile.cmake | 0 .../qt_modular_library.cmake | 330 +++++++++--------- .../{qt5multimedia => qt5-multimedia}/CONTROL | 4 +- .../portfile.cmake | 0 ports/qt5-networkauth/CONTROL | 4 + .../portfile.cmake | 0 ports/{qt5scxml => qt5-scxml}/CONTROL | 4 +- ports/{qt5scxml => qt5-scxml}/portfile.cmake | 0 .../{qt5serialport => qt5-serialport}/CONTROL | 4 +- .../portfile.cmake | 0 ports/qt5-speech/CONTROL | 4 + .../{qt5speech => qt5-speech}/portfile.cmake | 0 ports/{qt5svg => qt5-svg}/CONTROL | 4 +- ports/{qt5svg => qt5-svg}/portfile.cmake | 0 ports/{qt5tools => qt5-tools}/CONTROL | 4 +- ports/{qt5tools => qt5-tools}/portfile.cmake | 0 .../CONTROL | 4 +- .../portfile.cmake | 0 .../{qt5websockets => qt5-websockets}/CONTROL | 4 +- .../portfile.cmake | 0 ports/{qt5winextras => qt5-winextras}/CONTROL | 4 +- .../portfile.cmake | 0 .../CONTROL | 4 +- .../portfile.cmake | 0 ports/qt5/CONTROL | 2 +- ports/qt5networkauth/CONTROL | 4 - ports/qt5speech/CONTROL | 4 - 49 files changed, 207 insertions(+), 207 deletions(-) rename ports/{qt53d => qt5-3d}/CONTROL (63%) rename ports/{qt53d => qt5-3d}/portfile.cmake (100%) rename ports/{qt5base => qt5-base}/CONTROL (93%) rename ports/{qt5base => qt5-base}/configure_qt.cmake (100%) rename ports/{qt5base => qt5-base}/fix-system-pcre2.patch (100%) rename ports/{qt5base => qt5-base}/fixcmake.py (100%) rename ports/{qt5base => qt5-base}/install_qt.cmake (100%) rename ports/{qt5base => qt5-base}/portfile.cmake (98%) rename ports/{qt5base => qt5-base}/qt_debug.conf (100%) rename ports/{qt5base => qt5-base}/qt_release.conf (100%) rename ports/{qt5charts => qt5-charts}/CONTROL (66%) rename ports/{qt5charts => qt5-charts}/portfile.cmake (100%) rename ports/{qt5datavis3d => qt5-datavis3d}/CONTROL (63%) rename ports/{qt5datavis3d => qt5-datavis3d}/portfile.cmake (100%) rename ports/{qt5declarative => qt5-declarative}/CONTROL (68%) rename ports/{qt5declarative => qt5-declarative}/portfile.cmake (100%) rename ports/{qt5gamepad => qt5-gamepad}/CONTROL (64%) rename ports/{qt5gamepad => qt5-gamepad}/portfile.cmake (100%) rename ports/{qt5imageformats => qt5-imageformats}/CONTROL (62%) rename ports/{qt5imageformats => qt5-imageformats}/portfile.cmake (100%) rename ports/{qt5modularscripts => qt5-modularscripts}/CONTROL (69%) rename ports/{qt5modularscripts => qt5-modularscripts}/fixcmake.py (100%) rename ports/{qt5modularscripts => qt5-modularscripts}/portfile.cmake (100%) rename ports/{qt5modularscripts => qt5-modularscripts}/qt_modular_library.cmake (97%) rename ports/{qt5multimedia => qt5-multimedia}/CONTROL (59%) rename ports/{qt5multimedia => qt5-multimedia}/portfile.cmake (100%) create mode 100644 ports/qt5-networkauth/CONTROL rename ports/{qt5networkauth => qt5-networkauth}/portfile.cmake (100%) rename ports/{qt5scxml => qt5-scxml}/CONTROL (66%) rename ports/{qt5scxml => qt5-scxml}/portfile.cmake (100%) rename ports/{qt5serialport => qt5-serialport}/CONTROL (60%) rename ports/{qt5serialport => qt5-serialport}/portfile.cmake (100%) create mode 100644 ports/qt5-speech/CONTROL rename ports/{qt5speech => qt5-speech}/portfile.cmake (100%) rename ports/{qt5svg => qt5-svg}/CONTROL (63%) rename ports/{qt5svg => qt5-svg}/portfile.cmake (100%) rename ports/{qt5tools => qt5-tools}/CONTROL (62%) rename ports/{qt5tools => qt5-tools}/portfile.cmake (100%) rename ports/{qt5virtualkeyboard => qt5-virtualkeyboard}/CONTROL (70%) rename ports/{qt5virtualkeyboard => qt5-virtualkeyboard}/portfile.cmake (100%) rename ports/{qt5websockets => qt5-websockets}/CONTROL (62%) rename ports/{qt5websockets => qt5-websockets}/portfile.cmake (100%) rename ports/{qt5winextras => qt5-winextras}/CONTROL (57%) rename ports/{qt5winextras => qt5-winextras}/portfile.cmake (100%) rename ports/{qt5xmlpatterns => qt5-xmlpatterns}/CONTROL (62%) rename ports/{qt5xmlpatterns => qt5-xmlpatterns}/portfile.cmake (100%) delete mode 100644 ports/qt5networkauth/CONTROL delete mode 100644 ports/qt5speech/CONTROL diff --git a/ports/qt53d/CONTROL b/ports/qt5-3d/CONTROL similarity index 63% rename from ports/qt53d/CONTROL rename to ports/qt5-3d/CONTROL index d157525eeb..9213e03567 100644 --- a/ports/qt53d/CONTROL +++ b/ports/qt5-3d/CONTROL @@ -1,4 +1,4 @@ -Source: qt53d +Source: qt5-3d Version: 5.9.2-0 Description: Qt5 3d Module - Functionality for near-realtime simulation systems with support for 2D and 3D rendering -Build-Depends: qt5modularscripts, qt5base, qt5declarative \ No newline at end of file +Build-Depends: qt5-modularscripts, qt5-base, qt5-declarative diff --git a/ports/qt53d/portfile.cmake b/ports/qt5-3d/portfile.cmake similarity index 100% rename from ports/qt53d/portfile.cmake rename to ports/qt5-3d/portfile.cmake diff --git a/ports/qt5base/CONTROL b/ports/qt5-base/CONTROL similarity index 93% rename from ports/qt5base/CONTROL rename to ports/qt5-base/CONTROL index 79523a21f6..f2a507e195 100644 --- a/ports/qt5base/CONTROL +++ b/ports/qt5-base/CONTROL @@ -1,4 +1,4 @@ -Source: qt5base +Source: qt5-base Version: 5.9.2-0 Description: Qt5 Application Framework Base Module. Includes Core, GUI, Widgets, Networking, SQL, Concurrent and other essential qt components. Build-Depends: zlib, libjpeg-turbo, libpng, freetype, pcre2, harfbuzz, sqlite3, libpq, double-conversion diff --git a/ports/qt5base/configure_qt.cmake b/ports/qt5-base/configure_qt.cmake similarity index 100% rename from ports/qt5base/configure_qt.cmake rename to ports/qt5-base/configure_qt.cmake diff --git a/ports/qt5base/fix-system-pcre2.patch b/ports/qt5-base/fix-system-pcre2.patch similarity index 100% rename from ports/qt5base/fix-system-pcre2.patch rename to ports/qt5-base/fix-system-pcre2.patch diff --git a/ports/qt5base/fixcmake.py b/ports/qt5-base/fixcmake.py similarity index 100% rename from ports/qt5base/fixcmake.py rename to ports/qt5-base/fixcmake.py diff --git a/ports/qt5base/install_qt.cmake b/ports/qt5-base/install_qt.cmake similarity index 100% rename from ports/qt5base/install_qt.cmake rename to ports/qt5-base/install_qt.cmake diff --git a/ports/qt5base/portfile.cmake b/ports/qt5-base/portfile.cmake similarity index 98% rename from ports/qt5base/portfile.cmake rename to ports/qt5-base/portfile.cmake index 02122f9cc8..bde9333924 100644 --- a/ports/qt5base/portfile.cmake +++ b/ports/qt5-base/portfile.cmake @@ -111,4 +111,4 @@ file(COPY ${CURRENT_PACKAGES_DIR}/debug/lib/qtmaind.prl DESTINATION ${CURRENT_PA file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/qtmaind.lib) file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/qtmaind.prl) -file(INSTALL ${SOURCE_PATH}/LICENSE.LGPLv3 DESTINATION ${CURRENT_PACKAGES_DIR}/share/qt5base RENAME copyright) +file(INSTALL ${SOURCE_PATH}/LICENSE.LGPLv3 DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) diff --git a/ports/qt5base/qt_debug.conf b/ports/qt5-base/qt_debug.conf similarity index 100% rename from ports/qt5base/qt_debug.conf rename to ports/qt5-base/qt_debug.conf diff --git a/ports/qt5base/qt_release.conf b/ports/qt5-base/qt_release.conf similarity index 100% rename from ports/qt5base/qt_release.conf rename to ports/qt5-base/qt_release.conf diff --git a/ports/qt5charts/CONTROL b/ports/qt5-charts/CONTROL similarity index 66% rename from ports/qt5charts/CONTROL rename to ports/qt5-charts/CONTROL index 7b97a82b88..6f71277b6f 100644 --- a/ports/qt5charts/CONTROL +++ b/ports/qt5-charts/CONTROL @@ -1,4 +1,4 @@ -Source: qt5charts +Source: qt5-charts Version: 5.9.2-0 Description: Qt5 Charts Module - UI components for displaying charts, driven by static or dynamic data models -Build-Depends: qt5modularscripts, qt5base \ No newline at end of file +Build-Depends: qt5-modularscripts, qt5-base diff --git a/ports/qt5charts/portfile.cmake b/ports/qt5-charts/portfile.cmake similarity index 100% rename from ports/qt5charts/portfile.cmake rename to ports/qt5-charts/portfile.cmake diff --git a/ports/qt5datavis3d/CONTROL b/ports/qt5-datavis3d/CONTROL similarity index 63% rename from ports/qt5datavis3d/CONTROL rename to ports/qt5-datavis3d/CONTROL index c3f2157f8a..cb4d7e393d 100644 --- a/ports/qt5datavis3d/CONTROL +++ b/ports/qt5-datavis3d/CONTROL @@ -1,4 +1,4 @@ -Source: qt5datavis3d +Source: qt5-datavis3d Version: 5.9.2-0 Description: Qt5 Data Visualization 3d Module - UI Components for creating 3D data visualizations -Build-Depends: qt5modularscripts, qt5base \ No newline at end of file +Build-Depends: qt5-modularscripts, qt5-base diff --git a/ports/qt5datavis3d/portfile.cmake b/ports/qt5-datavis3d/portfile.cmake similarity index 100% rename from ports/qt5datavis3d/portfile.cmake rename to ports/qt5-datavis3d/portfile.cmake diff --git a/ports/qt5declarative/CONTROL b/ports/qt5-declarative/CONTROL similarity index 68% rename from ports/qt5declarative/CONTROL rename to ports/qt5-declarative/CONTROL index 93014a5912..ad3ebf978a 100644 --- a/ports/qt5declarative/CONTROL +++ b/ports/qt5-declarative/CONTROL @@ -1,4 +1,4 @@ -Source: qt5declarative +Source: qt5-declarative Version: 5.9.2-0 Description: Qt5 Declarative (Quick 2) Module. Includes QtQuick, QtQuickParticles, QtQuickWidgets, QtQml, and QtPacketProtocol. -Build-Depends: qt5modularscripts, qt5base \ No newline at end of file +Build-Depends: qt5-modularscripts, qt5-base diff --git a/ports/qt5declarative/portfile.cmake b/ports/qt5-declarative/portfile.cmake similarity index 100% rename from ports/qt5declarative/portfile.cmake rename to ports/qt5-declarative/portfile.cmake diff --git a/ports/qt5gamepad/CONTROL b/ports/qt5-gamepad/CONTROL similarity index 64% rename from ports/qt5gamepad/CONTROL rename to ports/qt5-gamepad/CONTROL index 5228aa006d..977b48a8e2 100644 --- a/ports/qt5gamepad/CONTROL +++ b/ports/qt5-gamepad/CONTROL @@ -1,4 +1,4 @@ -Source: qt5gamepad +Source: qt5-gamepad Version: 5.9.2-0 Description: Qt5 Gamepad Module - Enables Qt applications to support the use of gamepad hardware -Build-Depends: qt5modularscripts, qt5base \ No newline at end of file +Build-Depends: qt5-modularscripts, qt5-base diff --git a/ports/qt5gamepad/portfile.cmake b/ports/qt5-gamepad/portfile.cmake similarity index 100% rename from ports/qt5gamepad/portfile.cmake rename to ports/qt5-gamepad/portfile.cmake diff --git a/ports/qt5imageformats/CONTROL b/ports/qt5-imageformats/CONTROL similarity index 62% rename from ports/qt5imageformats/CONTROL rename to ports/qt5-imageformats/CONTROL index 995dc59fcb..0406f0027f 100644 --- a/ports/qt5imageformats/CONTROL +++ b/ports/qt5-imageformats/CONTROL @@ -1,4 +1,4 @@ -Source: qt5imageformats +Source: qt5-imageformats Version: 5.9.2-0 Description: Qt5 Image Formats Module - Plugins for additional image formats: TIFF, MNG, TGA, WBMP -Build-Depends: qt5modularscripts, qt5base \ No newline at end of file +Build-Depends: qt5-modularscripts, qt5-base diff --git a/ports/qt5imageformats/portfile.cmake b/ports/qt5-imageformats/portfile.cmake similarity index 100% rename from ports/qt5imageformats/portfile.cmake rename to ports/qt5-imageformats/portfile.cmake diff --git a/ports/qt5modularscripts/CONTROL b/ports/qt5-modularscripts/CONTROL similarity index 69% rename from ports/qt5modularscripts/CONTROL rename to ports/qt5-modularscripts/CONTROL index 88c0379af9..ddbdea51ef 100644 --- a/ports/qt5modularscripts/CONTROL +++ b/ports/qt5-modularscripts/CONTROL @@ -1,3 +1,3 @@ -Source: qt5modularscripts +Source: qt5-modularscripts Version: 0 Description: Vcpkg helpers to package qt5 modules diff --git a/ports/qt5modularscripts/fixcmake.py b/ports/qt5-modularscripts/fixcmake.py similarity index 100% rename from ports/qt5modularscripts/fixcmake.py rename to ports/qt5-modularscripts/fixcmake.py diff --git a/ports/qt5modularscripts/portfile.cmake b/ports/qt5-modularscripts/portfile.cmake similarity index 100% rename from ports/qt5modularscripts/portfile.cmake rename to ports/qt5-modularscripts/portfile.cmake diff --git a/ports/qt5modularscripts/qt_modular_library.cmake b/ports/qt5-modularscripts/qt_modular_library.cmake similarity index 97% rename from ports/qt5modularscripts/qt_modular_library.cmake rename to ports/qt5-modularscripts/qt_modular_library.cmake index 336a3913da..cdffc58fa9 100644 --- a/ports/qt5modularscripts/qt_modular_library.cmake +++ b/ports/qt5-modularscripts/qt_modular_library.cmake @@ -1,166 +1,166 @@ -set(_qt5base_port_dir "${CMAKE_CURRENT_LIST_DIR}") - -function(qt_modular_library NAME HASH) - string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) - if(BUILDTREES_PATH_LENGTH GREATER 45) - message(WARNING "Qt5's buildsystem uses very long paths and may fail on your system.\n" - "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." - ) - endif() - - if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - message(FATAL_ERROR "Qt5 doesn't currently support static builds. Please use a dynamic triplet instead.") - endif() - - set(SRCDIR_NAME "${NAME}-5.9.2") - set(ARCHIVE_NAME "${NAME}-opensource-src-5.9.2") - set(ARCHIVE_EXTENSION ".tar.xz") - - set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/${SRCDIR_NAME}) - vcpkg_download_distfile(ARCHIVE_FILE - URLS "http://download.qt.io/official_releases/qt/5.9/5.9.2/submodules/${ARCHIVE_NAME}${ARCHIVE_EXTENSION}" - FILENAME ${SRCDIR_NAME}${ARCHIVE_EXTENSION} - SHA512 ${HASH} - ) - vcpkg_extract_source_archive(${ARCHIVE_FILE}) - if (EXISTS ${CURRENT_BUILDTREES_DIR}/src/${ARCHIVE_NAME}) - file(RENAME ${CURRENT_BUILDTREES_DIR}/src/${ARCHIVE_NAME} ${CURRENT_BUILDTREES_DIR}/src/${SRCDIR_NAME}) - endif() - - # This fixes issues on machines with default codepages that are not ASCII compatible, such as some CJK encodings - set(ENV{_CL_} "/utf-8") - - #Store build paths - set(DEBUG_DIR "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg") - set(RELEASE_DIR "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel") - - file(REMOVE_RECURSE "${DEBUG_DIR}" "${RELEASE_DIR}") - - #Find Python and add it to the path - vcpkg_find_acquire_program(PYTHON2) - get_filename_component(PYTHON2_EXE_PATH ${PYTHON2} DIRECTORY) - set(ENV{PATH} "${PYTHON2_EXE_PATH};$ENV{PATH}") - - file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}" NATIVE_INSTALLED_DIR) - file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}" NATIVE_PACKAGES_DIR) - - string(SUBSTRING "${NATIVE_INSTALLED_DIR}" 2 -1 INSTALLED_DIR_WITHOUT_DRIVE) - string(SUBSTRING "${NATIVE_PACKAGES_DIR}" 2 -1 PACKAGES_DIR_WITHOUT_DRIVE) - - #Configure debug - vcpkg_configure_qmake_debug( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/${SRCDIR_NAME} - ) - - #First generate the makefiles so we can modify them - vcpkg_build_qmake_debug(TARGETS qmake_all) - - #Store debug makefiles path - file(GLOB_RECURSE DEBUG_MAKEFILES ${DEBUG_DIR}/*Makefile*) - - foreach(DEBUG_MAKEFILE ${DEBUG_MAKEFILES}) - file(READ "${DEBUG_MAKEFILE}" _contents) - string(REPLACE "zlib.lib" "zlibd.lib" _contents "${_contents}") - string(REPLACE "installed\\${TARGET_TRIPLET}\\lib" "installed\\${TARGET_TRIPLET}\\debug\\lib" _contents "${_contents}") - string(REPLACE "/LIBPATH:${NATIVE_INSTALLED_DIR}\\debug\\lib qtmaind.lib" "shell32.lib /LIBPATH:${NATIVE_INSTALLED_DIR}\\debug\\lib\\manual-link qtmaind.lib /LIBPATH:${NATIVE_INSTALLED_DIR}\\debug\\lib" _contents "${_contents}") - file(WRITE "${DEBUG_MAKEFILE}" "${_contents}") - endforeach() - - #Build debug - vcpkg_build_qmake_debug() - - #Configure release - vcpkg_configure_qmake_release( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/${SRCDIR_NAME} - ) - - #First generate the makefiles so we can modify them - vcpkg_build_qmake_release(TARGETS qmake_all) - - #Store release makefile path - file(GLOB_RECURSE RELEASE_MAKEFILES ${RELEASE_DIR}/*Makefile*) - - foreach(RELEASE_MAKEFILE ${RELEASE_MAKEFILES}) - file(READ "${RELEASE_MAKEFILE}" _contents) - string(REPLACE "/LIBPATH:${NATIVE_INSTALLED_DIR}\\lib qtmain.lib" "shell32.lib /LIBPATH:${NATIVE_INSTALLED_DIR}\\lib\\manual-link qtmain.lib /LIBPATH:${NATIVE_INSTALLED_DIR}\\lib" _contents "${_contents}") - file(WRITE "${RELEASE_MAKEFILE}" "${_contents}") - endforeach() - - #Build release - vcpkg_build_qmake_release() - - #Fix the cmake files if they exist - if(EXISTS ${RELEASE_DIR}/lib/cmake) - vcpkg_execute_required_process( - COMMAND ${PYTHON2} ${_qt5base_port_dir}/fixcmake.py - WORKING_DIRECTORY ${RELEASE_DIR}/lib/cmake - LOGNAME fix-cmake - ) - endif() - - #Set the correct install directory to packages - foreach(MAKEFILE ${RELEASE_MAKEFILES} ${DEBUG_MAKEFILES}) - vcpkg_replace_string(${MAKEFILE} "(INSTALL_ROOT)${INSTALLED_DIR_WITHOUT_DRIVE}" "(INSTALL_ROOT)${PACKAGES_DIR_WITHOUT_DRIVE}") - endforeach() - - #Install the module files - vcpkg_build_qmake_debug(TARGETS install) - vcpkg_build_qmake_release(TARGETS install) - - #Remove extra cmake files - if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/cmake) - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake ${CURRENT_PACKAGES_DIR}/share/cmake) - endif() - if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) - endif() - - file(GLOB RELEASE_LIBS "${CURRENT_PACKAGES_DIR}/lib/*") - if(NOT RELEASE_LIBS) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib) - endif() - file(GLOB DEBUG_FILES "${CURRENT_PACKAGES_DIR}/debug/lib/*") - if(NOT DEBUG_FILES) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib) - endif() - - #Move release and debug dlls to the correct directory - if(EXISTS ${CURRENT_PACKAGES_DIR}/tools/qt5) - file(RENAME ${CURRENT_PACKAGES_DIR}/tools/qt5 ${CURRENT_PACKAGES_DIR}/tools/${PORT}) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/tools/qt5 ${CURRENT_PACKAGES_DIR}/debug/tools/${PORT}) - endif() - - file(GLOB RELEASE_DLLS ${CURRENT_PACKAGES_DIR}/tools/${PORT}/*.dll) - file(GLOB DEBUG_DLLS ${CURRENT_PACKAGES_DIR}/debug/tools/${PORT}/*.dll) - if (RELEASE_DLLS) - file(INSTALL ${RELEASE_DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/bin) - file(REMOVE ${RELEASE_DLLS}) - #Check if there are any binaries left over; if not - delete the directory - file(GLOB RELEASE_BINS ${CURRENT_PACKAGES_DIR}/tools/${PORT}/*) - if(NOT RELEASE_BINS) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/tools) - endif() - endif() - if(DEBUG_DLLS) - file(INSTALL ${DEBUG_DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/tools) - endif() - - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/qt5/debug/include) - - vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT}) - - #Find the relevant license file and install it - if(EXISTS "${SOURCE_PATH}/LICENSE.LGPLv3") - set(LICENSE_PATH "${SOURCE_PATH}/LICENSE.LGPLv3") - elseif(EXISTS "${SOURCE_PATH}/LICENSE.LGPL3") - set(LICENSE_PATH "${SOURCE_PATH}/LICENSE.LGPL3") - elseif(EXISTS "${SOURCE_PATH}/LICENSE.GPLv3") - set(LICENSE_PATH "${SOURCE_PATH}/LICENSE.GPLv3") - elseif(EXISTS "${SOURCE_PATH}/LICENSE.GPL3") - set(LICENSE_PATH "${SOURCE_PATH}/LICENSE.GPL3") - endif() - file(INSTALL ${LICENSE_PATH} DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) - +set(_qt5base_port_dir "${CMAKE_CURRENT_LIST_DIR}") + +function(qt_modular_library NAME HASH) + string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) + if(BUILDTREES_PATH_LENGTH GREATER 45) + message(WARNING "Qt5's buildsystem uses very long paths and may fail on your system.\n" + "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." + ) + endif() + + if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + message(FATAL_ERROR "Qt5 doesn't currently support static builds. Please use a dynamic triplet instead.") + endif() + + set(SRCDIR_NAME "${NAME}-5.9.2") + set(ARCHIVE_NAME "${NAME}-opensource-src-5.9.2") + set(ARCHIVE_EXTENSION ".tar.xz") + + set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/${SRCDIR_NAME}) + vcpkg_download_distfile(ARCHIVE_FILE + URLS "http://download.qt.io/official_releases/qt/5.9/5.9.2/submodules/${ARCHIVE_NAME}${ARCHIVE_EXTENSION}" + FILENAME ${SRCDIR_NAME}${ARCHIVE_EXTENSION} + SHA512 ${HASH} + ) + vcpkg_extract_source_archive(${ARCHIVE_FILE}) + if (EXISTS ${CURRENT_BUILDTREES_DIR}/src/${ARCHIVE_NAME}) + file(RENAME ${CURRENT_BUILDTREES_DIR}/src/${ARCHIVE_NAME} ${CURRENT_BUILDTREES_DIR}/src/${SRCDIR_NAME}) + endif() + + # This fixes issues on machines with default codepages that are not ASCII compatible, such as some CJK encodings + set(ENV{_CL_} "/utf-8") + + #Store build paths + set(DEBUG_DIR "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg") + set(RELEASE_DIR "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel") + + file(REMOVE_RECURSE "${DEBUG_DIR}" "${RELEASE_DIR}") + + #Find Python and add it to the path + vcpkg_find_acquire_program(PYTHON2) + get_filename_component(PYTHON2_EXE_PATH ${PYTHON2} DIRECTORY) + set(ENV{PATH} "${PYTHON2_EXE_PATH};$ENV{PATH}") + + file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}" NATIVE_INSTALLED_DIR) + file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}" NATIVE_PACKAGES_DIR) + + string(SUBSTRING "${NATIVE_INSTALLED_DIR}" 2 -1 INSTALLED_DIR_WITHOUT_DRIVE) + string(SUBSTRING "${NATIVE_PACKAGES_DIR}" 2 -1 PACKAGES_DIR_WITHOUT_DRIVE) + + #Configure debug + vcpkg_configure_qmake_debug( + SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/${SRCDIR_NAME} + ) + + #First generate the makefiles so we can modify them + vcpkg_build_qmake_debug(TARGETS qmake_all) + + #Store debug makefiles path + file(GLOB_RECURSE DEBUG_MAKEFILES ${DEBUG_DIR}/*Makefile*) + + foreach(DEBUG_MAKEFILE ${DEBUG_MAKEFILES}) + file(READ "${DEBUG_MAKEFILE}" _contents) + string(REPLACE "zlib.lib" "zlibd.lib" _contents "${_contents}") + string(REPLACE "installed\\${TARGET_TRIPLET}\\lib" "installed\\${TARGET_TRIPLET}\\debug\\lib" _contents "${_contents}") + string(REPLACE "/LIBPATH:${NATIVE_INSTALLED_DIR}\\debug\\lib qtmaind.lib" "shell32.lib /LIBPATH:${NATIVE_INSTALLED_DIR}\\debug\\lib\\manual-link qtmaind.lib /LIBPATH:${NATIVE_INSTALLED_DIR}\\debug\\lib" _contents "${_contents}") + file(WRITE "${DEBUG_MAKEFILE}" "${_contents}") + endforeach() + + #Build debug + vcpkg_build_qmake_debug() + + #Configure release + vcpkg_configure_qmake_release( + SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/${SRCDIR_NAME} + ) + + #First generate the makefiles so we can modify them + vcpkg_build_qmake_release(TARGETS qmake_all) + + #Store release makefile path + file(GLOB_RECURSE RELEASE_MAKEFILES ${RELEASE_DIR}/*Makefile*) + + foreach(RELEASE_MAKEFILE ${RELEASE_MAKEFILES}) + file(READ "${RELEASE_MAKEFILE}" _contents) + string(REPLACE "/LIBPATH:${NATIVE_INSTALLED_DIR}\\lib qtmain.lib" "shell32.lib /LIBPATH:${NATIVE_INSTALLED_DIR}\\lib\\manual-link qtmain.lib /LIBPATH:${NATIVE_INSTALLED_DIR}\\lib" _contents "${_contents}") + file(WRITE "${RELEASE_MAKEFILE}" "${_contents}") + endforeach() + + #Build release + vcpkg_build_qmake_release() + + #Fix the cmake files if they exist + if(EXISTS ${RELEASE_DIR}/lib/cmake) + vcpkg_execute_required_process( + COMMAND ${PYTHON2} ${_qt5base_port_dir}/fixcmake.py + WORKING_DIRECTORY ${RELEASE_DIR}/lib/cmake + LOGNAME fix-cmake + ) + endif() + + #Set the correct install directory to packages + foreach(MAKEFILE ${RELEASE_MAKEFILES} ${DEBUG_MAKEFILES}) + vcpkg_replace_string(${MAKEFILE} "(INSTALL_ROOT)${INSTALLED_DIR_WITHOUT_DRIVE}" "(INSTALL_ROOT)${PACKAGES_DIR_WITHOUT_DRIVE}") + endforeach() + + #Install the module files + vcpkg_build_qmake_debug(TARGETS install) + vcpkg_build_qmake_release(TARGETS install) + + #Remove extra cmake files + if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/cmake) + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share) + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake ${CURRENT_PACKAGES_DIR}/share/cmake) + endif() + if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) + endif() + + file(GLOB RELEASE_LIBS "${CURRENT_PACKAGES_DIR}/lib/*") + if(NOT RELEASE_LIBS) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib) + endif() + file(GLOB DEBUG_FILES "${CURRENT_PACKAGES_DIR}/debug/lib/*") + if(NOT DEBUG_FILES) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib) + endif() + + #Move release and debug dlls to the correct directory + if(EXISTS ${CURRENT_PACKAGES_DIR}/tools/qt5) + file(RENAME ${CURRENT_PACKAGES_DIR}/tools/qt5 ${CURRENT_PACKAGES_DIR}/tools/${PORT}) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/tools/qt5 ${CURRENT_PACKAGES_DIR}/debug/tools/${PORT}) + endif() + + file(GLOB RELEASE_DLLS ${CURRENT_PACKAGES_DIR}/tools/${PORT}/*.dll) + file(GLOB DEBUG_DLLS ${CURRENT_PACKAGES_DIR}/debug/tools/${PORT}/*.dll) + if (RELEASE_DLLS) + file(INSTALL ${RELEASE_DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/bin) + file(REMOVE ${RELEASE_DLLS}) + #Check if there are any binaries left over; if not - delete the directory + file(GLOB RELEASE_BINS ${CURRENT_PACKAGES_DIR}/tools/${PORT}/*) + if(NOT RELEASE_BINS) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/tools) + endif() + endif() + if(DEBUG_DLLS) + file(INSTALL ${DEBUG_DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/tools) + endif() + + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/qt5/debug/include) + + vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT}) + + #Find the relevant license file and install it + if(EXISTS "${SOURCE_PATH}/LICENSE.LGPLv3") + set(LICENSE_PATH "${SOURCE_PATH}/LICENSE.LGPLv3") + elseif(EXISTS "${SOURCE_PATH}/LICENSE.LGPL3") + set(LICENSE_PATH "${SOURCE_PATH}/LICENSE.LGPL3") + elseif(EXISTS "${SOURCE_PATH}/LICENSE.GPLv3") + set(LICENSE_PATH "${SOURCE_PATH}/LICENSE.GPLv3") + elseif(EXISTS "${SOURCE_PATH}/LICENSE.GPL3") + set(LICENSE_PATH "${SOURCE_PATH}/LICENSE.GPL3") + endif() + file(INSTALL ${LICENSE_PATH} DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) + endfunction() \ No newline at end of file diff --git a/ports/qt5multimedia/CONTROL b/ports/qt5-multimedia/CONTROL similarity index 59% rename from ports/qt5multimedia/CONTROL rename to ports/qt5-multimedia/CONTROL index b45f3f2975..6e68c399de 100644 --- a/ports/qt5multimedia/CONTROL +++ b/ports/qt5-multimedia/CONTROL @@ -1,4 +1,4 @@ -Source: qt5multimedia +Source: qt5-multimedia Version: 5.9.2-0 Description: Qt5 Multimedia Module - Classes and widgets for audio, video, radio and camera functionality -Build-Depends: qt5modularscripts, qt5base, qt5declarative +Build-Depends: qt5-modularscripts, qt5-base, qt5-declarative diff --git a/ports/qt5multimedia/portfile.cmake b/ports/qt5-multimedia/portfile.cmake similarity index 100% rename from ports/qt5multimedia/portfile.cmake rename to ports/qt5-multimedia/portfile.cmake diff --git a/ports/qt5-networkauth/CONTROL b/ports/qt5-networkauth/CONTROL new file mode 100644 index 0000000000..97cdfd865f --- /dev/null +++ b/ports/qt5-networkauth/CONTROL @@ -0,0 +1,4 @@ +Source: qt5-networkauth +Version: 5.9.2-0 +Description: Qt5 Network Authorization Module +Build-Depends: qt5-modularscripts, qt5-base diff --git a/ports/qt5networkauth/portfile.cmake b/ports/qt5-networkauth/portfile.cmake similarity index 100% rename from ports/qt5networkauth/portfile.cmake rename to ports/qt5-networkauth/portfile.cmake diff --git a/ports/qt5scxml/CONTROL b/ports/qt5-scxml/CONTROL similarity index 66% rename from ports/qt5scxml/CONTROL rename to ports/qt5-scxml/CONTROL index 4010ca304b..ed3f938122 100644 --- a/ports/qt5scxml/CONTROL +++ b/ports/qt5-scxml/CONTROL @@ -1,4 +1,4 @@ -Source: qt5scxml +Source: qt5-scxml Version: 5.9.2-0 Description: Qt5 SCXML Module - Provides classes and tools for creating state machines from SCXML files and embedding them in applications -Build-Depends: qt5modularscripts, qt5base, qt5declarative +Build-Depends: qt5-modularscripts, qt5-base, qt5-declarative diff --git a/ports/qt5scxml/portfile.cmake b/ports/qt5-scxml/portfile.cmake similarity index 100% rename from ports/qt5scxml/portfile.cmake rename to ports/qt5-scxml/portfile.cmake diff --git a/ports/qt5serialport/CONTROL b/ports/qt5-serialport/CONTROL similarity index 60% rename from ports/qt5serialport/CONTROL rename to ports/qt5-serialport/CONTROL index eb87231e0d..5887105d80 100644 --- a/ports/qt5serialport/CONTROL +++ b/ports/qt5-serialport/CONTROL @@ -1,4 +1,4 @@ -Source: qt5serialport +Source: qt5-serialport Version: 5.9.2-0 Description: Qt5 Serial Port - provides access to hardware and virtual serial ports -Build-Depends: qt5modularscripts, qt5base \ No newline at end of file +Build-Depends: qt5-modularscripts, qt5-base diff --git a/ports/qt5serialport/portfile.cmake b/ports/qt5-serialport/portfile.cmake similarity index 100% rename from ports/qt5serialport/portfile.cmake rename to ports/qt5-serialport/portfile.cmake diff --git a/ports/qt5-speech/CONTROL b/ports/qt5-speech/CONTROL new file mode 100644 index 0000000000..44b8324f55 --- /dev/null +++ b/ports/qt5-speech/CONTROL @@ -0,0 +1,4 @@ +Source: qt5-speech +Version: 5.9.2-0 +Description: Qt5 Speech Module +Build-Depends: qt5-modularscripts, qt5-base, atlmfc diff --git a/ports/qt5speech/portfile.cmake b/ports/qt5-speech/portfile.cmake similarity index 100% rename from ports/qt5speech/portfile.cmake rename to ports/qt5-speech/portfile.cmake diff --git a/ports/qt5svg/CONTROL b/ports/qt5-svg/CONTROL similarity index 63% rename from ports/qt5svg/CONTROL rename to ports/qt5-svg/CONTROL index c52ca485ce..71abad30c6 100644 --- a/ports/qt5svg/CONTROL +++ b/ports/qt5-svg/CONTROL @@ -1,4 +1,4 @@ -Source: qt5svg +Source: qt5-svg Version: 5.9.2-0 Description: Qt5 SVG Module - provides classes for displaying the contents of SVG files -Build-Depends: qt5modularscripts, qt5base \ No newline at end of file +Build-Depends: qt5-modularscripts, qt5-base diff --git a/ports/qt5svg/portfile.cmake b/ports/qt5-svg/portfile.cmake similarity index 100% rename from ports/qt5svg/portfile.cmake rename to ports/qt5-svg/portfile.cmake diff --git a/ports/qt5tools/CONTROL b/ports/qt5-tools/CONTROL similarity index 62% rename from ports/qt5tools/CONTROL rename to ports/qt5-tools/CONTROL index 4050ac0974..9f3bdaf6d2 100644 --- a/ports/qt5tools/CONTROL +++ b/ports/qt5-tools/CONTROL @@ -1,4 +1,4 @@ -Source: qt5tools +Source: qt5-tools Version: 5.9.2-0 Description: Qt5 Tools Module; Includes deployment tools and helpers, Qt Designer, Assistant, and other applications -Build-Depends: qt5modularscripts, qt5base, qt5declarative \ No newline at end of file +Build-Depends: qt5-modularscripts, qt5-base, qt5-declarative diff --git a/ports/qt5tools/portfile.cmake b/ports/qt5-tools/portfile.cmake similarity index 100% rename from ports/qt5tools/portfile.cmake rename to ports/qt5-tools/portfile.cmake diff --git a/ports/qt5virtualkeyboard/CONTROL b/ports/qt5-virtualkeyboard/CONTROL similarity index 70% rename from ports/qt5virtualkeyboard/CONTROL rename to ports/qt5-virtualkeyboard/CONTROL index 041e2cdd94..6fff91b58c 100644 --- a/ports/qt5virtualkeyboard/CONTROL +++ b/ports/qt5-virtualkeyboard/CONTROL @@ -1,4 +1,4 @@ -Source: qt5virtualkeyboard +Source: qt5-virtualkeyboard Version: 5.9.2-0 Description: Qt5 Virtual Keyboard Module - A framework for implementing different input methods. Supports localized keyboard layouts and custom visual themes -Build-Depends: qt5modularscripts, qt5base \ No newline at end of file +Build-Depends: qt5-modularscripts, qt5-base diff --git a/ports/qt5virtualkeyboard/portfile.cmake b/ports/qt5-virtualkeyboard/portfile.cmake similarity index 100% rename from ports/qt5virtualkeyboard/portfile.cmake rename to ports/qt5-virtualkeyboard/portfile.cmake diff --git a/ports/qt5websockets/CONTROL b/ports/qt5-websockets/CONTROL similarity index 62% rename from ports/qt5websockets/CONTROL rename to ports/qt5-websockets/CONTROL index 2ab49879bf..2f43b9d2cf 100644 --- a/ports/qt5websockets/CONTROL +++ b/ports/qt5-websockets/CONTROL @@ -1,4 +1,4 @@ -Source: qt5websockets +Source: qt5-websockets Version: 5.9.2-0 Description: Qt5 Web Sockets Module - provides WebSocket communication compliant with RFC 6455 -Build-Depends: qt5modularscripts, qt5base \ No newline at end of file +Build-Depends: qt5-modularscripts, qt5-base diff --git a/ports/qt5websockets/portfile.cmake b/ports/qt5-websockets/portfile.cmake similarity index 100% rename from ports/qt5websockets/portfile.cmake rename to ports/qt5-websockets/portfile.cmake diff --git a/ports/qt5winextras/CONTROL b/ports/qt5-winextras/CONTROL similarity index 57% rename from ports/qt5winextras/CONTROL rename to ports/qt5-winextras/CONTROL index 451118c5a2..d00ad7a0c7 100644 --- a/ports/qt5winextras/CONTROL +++ b/ports/qt5-winextras/CONTROL @@ -1,4 +1,4 @@ -Source: qt5winextras +Source: qt5-winextras Version: 5.9.2-0 Description: Qt5 Windows Extras Module. Provides platform-specific APIs for Windows. -Build-Depends: qt5modularscripts, qt5base, atlmfc \ No newline at end of file +Build-Depends: qt5-modularscripts, qt5-base, atlmfc diff --git a/ports/qt5winextras/portfile.cmake b/ports/qt5-winextras/portfile.cmake similarity index 100% rename from ports/qt5winextras/portfile.cmake rename to ports/qt5-winextras/portfile.cmake diff --git a/ports/qt5xmlpatterns/CONTROL b/ports/qt5-xmlpatterns/CONTROL similarity index 62% rename from ports/qt5xmlpatterns/CONTROL rename to ports/qt5-xmlpatterns/CONTROL index 03bd2938ed..5fcec19be3 100644 --- a/ports/qt5xmlpatterns/CONTROL +++ b/ports/qt5-xmlpatterns/CONTROL @@ -1,4 +1,4 @@ -Source: qt5xmlpatterns +Source: qt5-xmlpatterns Version: 5.9.2-0 Description: Qt5 XML Patterns Module - Support for XPath, XQuery, XSLT and XML schema validation -Build-Depends: qt5modularscripts, qt5base \ No newline at end of file +Build-Depends: qt5-modularscripts, qt5-base diff --git a/ports/qt5xmlpatterns/portfile.cmake b/ports/qt5-xmlpatterns/portfile.cmake similarity index 100% rename from ports/qt5xmlpatterns/portfile.cmake rename to ports/qt5-xmlpatterns/portfile.cmake diff --git a/ports/qt5/CONTROL b/ports/qt5/CONTROL index f8817e1db1..e568587307 100644 --- a/ports/qt5/CONTROL +++ b/ports/qt5/CONTROL @@ -1,4 +1,4 @@ Source: qt5 Version: 5.9.2-1 Description: Qt5 Application Framework -Build-Depends: qt5base, qt5charts, qt5datavis3d, qt5declarative, qt5gamepad, qt5imageformats, qt5multimedia, qt5networkauth, qt5scxml, qt5serialport, qt5speech, qt5svg, qt5tools, qt5virtualkeyboard, qt5websockets, qt53d, qt5winextras, qt5xmlpatterns \ No newline at end of file +Build-Depends: qt5-base, qt5-charts, qt5-datavis3d, qt5-declarative, qt5-gamepad, qt5-imageformats, qt5-multimedia, qt5-networkauth, qt5-scxml, qt5-serialport, qt5-speech, qt5-svg, qt5-tools, qt5-virtualkeyboard, qt5-websockets, qt5-3d, qt5-winextras, qt5-xmlpatterns \ No newline at end of file diff --git a/ports/qt5networkauth/CONTROL b/ports/qt5networkauth/CONTROL deleted file mode 100644 index 0e5f45f96a..0000000000 --- a/ports/qt5networkauth/CONTROL +++ /dev/null @@ -1,4 +0,0 @@ -Source: qt5networkauth -Version: 5.9.2-0 -Description: Qt5 Network Authorization Module -Build-Depends: qt5modularscripts, qt5base \ No newline at end of file diff --git a/ports/qt5speech/CONTROL b/ports/qt5speech/CONTROL deleted file mode 100644 index f175d13e74..0000000000 --- a/ports/qt5speech/CONTROL +++ /dev/null @@ -1,4 +0,0 @@ -Source: qt5speech -Version: 5.9.2-0 -Description: Qt5 Speech Module -Build-Depends: qt5modularscripts, qt5base, atlmfc \ No newline at end of file