summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorTimothy Flynn <trflynn89@pm.me>2023-03-14 17:52:06 -0400
committerAndreas Kling <kling@serenityos.org>2023-03-15 11:26:34 +0100
commitc11860bdcdf5c3a4e412fde2b18143ef08c2a85d (patch)
treec21ca0da4219000501825adb35ba60ccac0f61dc /CMakeLists.txt
parent6ff85aa19ad7642ea0a099ab8bfa161de95157ce (diff)
downloadserenity-c11860bdcdf5c3a4e412fde2b18143ef08c2a85d.zip
Meta: Download pci.ids and usb.ids to Build/caches
This ensures we only need to download these files once for all build configurations. We similarly download the UCD, CLDR, and TZDB to this cache directory as well.
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt20
1 files changed, 12 insertions, 8 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f2543506e3..3ff5a229bc 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -246,17 +246,21 @@ export_components("${CMAKE_BINARY_DIR}/components.ini")
# https://gitlab.kitware.com/cmake/cmake/-/issues/23054
set(PCI_IDS_FILE pci.ids)
-set(PCI_IDS_URL https://pci-ids.ucw.cz/v2.2/${PCI_IDS_FILE})
-set(PCI_IDS_INSTALL_PATH ${CMAKE_INSTALL_DATAROOTDIR}/${PCI_IDS_FILE})
+set(PCI_IDS_URL "https://pci-ids.ucw.cz/v2.2/${PCI_IDS_FILE}")
+set(PCI_IDS_DOWNLOAD_PATH "${SERENITY_CACHE_DIR}/${PCI_IDS_FILE}")
+set(PCI_IDS_INSTALL_PATH "${CMAKE_STAGING_PREFIX}/${CMAKE_INSTALL_DATAROOTDIR}/${PCI_IDS_FILE}")
-if(ENABLE_PCI_IDS_DOWNLOAD AND NOT EXISTS ${CMAKE_STAGING_PREFIX}/${PCI_IDS_INSTALL_PATH} )
- download_file("${PCI_IDS_URL}" "${CMAKE_STAGING_PREFIX}/${PCI_IDS_INSTALL_PATH}")
+if (ENABLE_PCI_IDS_DOWNLOAD AND NOT EXISTS "${PCI_IDS_INSTALL_PATH}")
+ download_file("${PCI_IDS_URL}" "${PCI_IDS_DOWNLOAD_PATH}")
+ file(COPY_FILE "${PCI_IDS_DOWNLOAD_PATH}" "${PCI_IDS_INSTALL_PATH}")
endif()
set(USB_IDS_FILE usb.ids)
-set(USB_IDS_URL http://www.linux-usb.org/${USB_IDS_FILE})
-set(USB_IDS_INSTALL_PATH ${CMAKE_INSTALL_DATAROOTDIR}/${USB_IDS_FILE})
+set(USB_IDS_URL "http://www.linux-usb.org/${USB_IDS_FILE}")
+set(USB_IDS_DOWNLOAD_PATH "${SERENITY_CACHE_DIR}/${USB_IDS_FILE}")
+set(USB_IDS_INSTALL_PATH "${CMAKE_STAGING_PREFIX}/${CMAKE_INSTALL_DATAROOTDIR}/${USB_IDS_FILE}")
-if(ENABLE_USB_IDS_DOWNLOAD AND NOT EXISTS "${CMAKE_STAGING_PREFIX}/${USB_IDS_INSTALL_PATH}")
- download_file("${USB_IDS_URL}" "${CMAKE_STAGING_PREFIX}/${USB_IDS_INSTALL_PATH}")
+if (ENABLE_USB_IDS_DOWNLOAD AND NOT EXISTS "${USB_IDS_INSTALL_PATH}")
+ download_file("${USB_IDS_URL}" "${USB_IDS_DOWNLOAD_PATH}")
+ file(COPY_FILE "${USB_IDS_DOWNLOAD_PATH}" "${USB_IDS_INSTALL_PATH}")
endif()