aboutsummaryrefslogtreecommitdiff
path: root/ports/qt5-base/fixcmake.py
diff options
context:
space:
mode:
authorBarath Kannan <barathsotd@gmail.com>2018-01-18 10:02:56 +1100
committerBarath Kannan <barathsotd@gmail.com>2018-01-18 10:02:56 +1100
commitca9ff199d6024fa0ef26abcba920928215d77f38 (patch)
tree090368bba576081970d8481628a8fea4ceda9433 /ports/qt5-base/fixcmake.py
parentc30363d07b3f64b5f38531442ea92d9c1cf81d13 (diff)
downloadvcpkg-ca9ff199d6024fa0ef26abcba920928215d77f38.tar.gz
vcpkg-ca9ff199d6024fa0ef26abcba920928215d77f38.zip
append hyphen to qt5 module names
Diffstat (limited to 'ports/qt5-base/fixcmake.py')
-rw-r--r--ports/qt5-base/fixcmake.py68
1 files changed, 68 insertions, 0 deletions
diff --git a/ports/qt5-base/fixcmake.py b/ports/qt5-base/fixcmake.py
new file mode 100644
index 000000000..bcfb12ac5
--- /dev/null
+++ b/ports/qt5-base/fixcmake.py
@@ -0,0 +1,68 @@
+import os
+import re
+from glob import glob
+
+files = [y for x in os.walk('.') for y in glob(os.path.join(x[0], '*.cmake'))]
+
+for f in files:
+ openedfile = open(f, "r")
+ builder = ""
+ dllpattern = re.compile("_install_prefix}/bin/Qt5.*d.dll")
+ libpattern = re.compile("_install_prefix}/lib/Qt5.*d.lib")
+ exepattern = re.compile("_install_prefix}/bin/[a-z]+.exe")
+ tooldllpattern = re.compile("_install_prefix}/tools/qt5/Qt5.*d.dll")
+ for line in openedfile:
+ if "_install_prefix}/tools/qt5/${LIB_LOCATION}" in line:
+ builder += " if (${Configuration} STREQUAL \"RELEASE\")"
+ builder += "\n " + line.replace("/tools/qt5/", "/bin/")
+ builder += " else()"
+ builder += "\n " + line.replace("/tools/qt5/", "/debug/bin/")
+ builder += " endif()\n"
+ elif "_install_prefix}/bin/${LIB_LOCATION}" in line:
+ builder += " if (${Configuration} STREQUAL \"RELEASE\")"
+ builder += "\n " + line
+ builder += " else()"
+ builder += "\n " + line.replace("/bin/", "/debug/bin/")
+ builder += " endif()\n"
+ elif "_install_prefix}/lib/${LIB_LOCATION}" in line:
+ builder += " if (${Configuration} STREQUAL \"RELEASE\")"
+ builder += "\n " + line
+ builder += " else()"
+ builder += "\n " + line.replace("/lib/", "/debug/lib/")
+ builder += " endif()\n"
+ elif "_install_prefix}/lib/${IMPLIB_LOCATION}" in line:
+ builder += " if (${Configuration} STREQUAL \"RELEASE\")"
+ builder += "\n " + line
+ builder += " else()"
+ builder += "\n " + line.replace("/lib/", "/debug/lib/")
+ builder += " endif()\n"
+ elif "_install_prefix}/plugins/${PLUGIN_LOCATION}" in line:
+ builder += " if (${Configuration} STREQUAL \"RELEASE\")"
+ builder += "\n " + line
+ builder += " else()"
+ builder += "\n " + line.replace("/plugins/", "/debug/plugins/")
+ builder += " endif()\n"
+ elif "_install_prefix}/lib/qtmaind.lib" in line:
+ # qtmaind.lib has been moved to manual-link:
+ builder += line.replace("/lib/", "/debug/lib/manual-link/")
+ elif "_install_prefix}/lib/qtmain.lib" in line:
+ # qtmain(d).lib has been moved to manual-link:
+ builder += line.replace("/lib/", "/lib/manual-link/")
+ builder += " set(imported_location_debug \"${_qt5Core_install_prefix}/debug/lib/manual-link/qtmaind.lib\")\n"
+ builder += "\n"
+ builder += " set_target_properties(Qt5::WinMain PROPERTIES\n"
+ builder += " IMPORTED_LOCATION_DEBUG ${imported_location_debug}\n"
+ builder += " )\n"
+ elif dllpattern.search(line) != None:
+ builder += line.replace("/bin/", "/debug/bin/")
+ elif libpattern.search(line) != None:
+ builder += line.replace("/lib/", "/debug/lib/")
+ elif tooldllpattern.search(line) != None:
+ builder += line.replace("/tools/qt5/", "/debug/bin/")
+ elif exepattern.search(line) != None:
+ builder += line.replace("/bin/", "/tools/qt5/")
+ else:
+ builder += line
+ new_file = open(f, "w")
+ new_file.write(builder)
+ new_file.close() \ No newline at end of file