Skip to content
This repository has been archived by the owner on Feb 17, 2023. It is now read-only.

Commit

Permalink
Improve regex for finding names of archives
Browse files Browse the repository at this point in the history
  • Loading branch information
computerquip-streamlabs committed Jun 27, 2018
1 parent f875727 commit 7dc1bd0
Showing 1 changed file with 11 additions and 17 deletions.
28 changes: 11 additions & 17 deletions NodeJS.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -134,9 +134,9 @@ function(nodejs_init)
endif()

# Regex patterns used by the init function for component extraction
set(HEADERS_MATCH "^([A-Fa-f0-9]+)[ \t]+([^-]+)-(headers|v?[0-9.]+)-(headers|v?[0-9.]+)([.]tar[.]gz)$")
set(LIB32_MATCH "(^[0-9A-Fa-f]+)[\t ]+(win-x86)?(/)?([^/]*)(.lib)$")
set(LIB64_MATCH "(^[0-9A-Fa-f]+)[\t ]+(win-)?(x64/)(.*)(.lib)$")
set(HEADERS_MATCH "^([A-Fa-f0-9]+)[ \t]+(([^-]+)-(.+)-headers\.tar\.gz)$")
set(LIB32_MATCH "(^[0-9A-Fa-f]+)[ \t]+(win-x86/([^/]*\.lib))$")
set(LIB64_MATCH "(^[0-9A-Fa-f]+)[ \t]+(win-x64/(.*\.lib))$")

# Parse function arguments
cmake_parse_arguments(nodejs_init
Expand Down Expand Up @@ -295,15 +295,9 @@ function(nodejs_init)
endif()
string(REGEX MATCH ${HEADERS_MATCH} HEADERS_CHECKSUM ${HEADERS_CHECKSUM})
set(HEADERS_CHECKSUM ${CMAKE_MATCH_1})
set(NAME ${CMAKE_MATCH_2})
if(CMAKE_MATCH_3 STREQUAL "headers")
set(VERSION ${CMAKE_MATCH_4})
else()
set(VERSION ${CMAKE_MATCH_3})
endif()
set(HEADERS_ARCHIVE
${CMAKE_MATCH_2}-${CMAKE_MATCH_3}-${CMAKE_MATCH_4}${CMAKE_MATCH_5}
)
set(NAME ${CMAKE_MATCH_3})
set(VERSION ${CMAKE_MATCH_4})
set(HEADERS_ARCHIVE ${CMAKE_MATCH_2})
# Make sure that the root directory exists, and that the checksum
# file has been moved over from temp
if(DEFINED ROOT)
Expand All @@ -313,7 +307,7 @@ function(nodejs_init)
if(DEFINED OLD_ROOT AND NOT ROOT STREQUAL "${OLD_ROOT}")
file(REMOVE ${TEMP}/CHECKSUM)
file(REMOVE ${ROOT}/CHECKSUM)
message(FATAL_ERROR "Version/Name mismatch")
message(FATAL_ERROR "Version/Name mismatch - ${OLD_ROOT} vs ${ROOT}")
endif()
file(MAKE_DIRECTORY ${ROOT})
if(EXISTS ${TEMP}/CHECKSUM)
Expand Down Expand Up @@ -424,8 +418,8 @@ function(nodejs_init)
string(REGEX MATCH ${LIB32_MATCH} LIB32_CHECKSUM ${LIB32_CHECKSUM})
set(LIB32_CHECKSUM ${CMAKE_MATCH_1})
set(LIB32_PATH win-x86)
set(LIB32_NAME ${CMAKE_MATCH_4}${CMAKE_MATCH_5})
set(LIB32_TARGET ${CMAKE_MATCH_2}${CMAKE_MATCH_3}${LIB32_NAME})
set(LIB32_NAME ${CMAKE_MATCH_3})
set(LIB32_TARGET ${CMAKE_MATCH_2})
if(NOT EXISTS ${ROOT}/${LIB32_PATH})
file(REMOVE_RECURSE ${TEMP}/${LIB32_PATH})
download_file(
Expand Down Expand Up @@ -462,8 +456,8 @@ function(nodejs_init)
string(REGEX MATCH ${LIB64_MATCH} LIB64_CHECKSUM ${LIB64_CHECKSUM})
set(LIB64_CHECKSUM ${CMAKE_MATCH_1})
set(LIB64_PATH win-x64)
set(LIB64_NAME ${CMAKE_MATCH_4}${CMAKE_MATCH_5})
set(LIB64_TARGET ${CMAKE_MATCH_2}${CMAKE_MATCH_3}${LIB64_NAME})
set(LIB64_NAME ${CMAKE_MATCH_3})
set(LIB64_TARGET ${CMAKE_MATCH_2})
if(NOT EXISTS ${ROOT}/${LIB64_PATH})
file(REMOVE_RECURSE ${TEMP}/${LIB64_PATH})
download_file(
Expand Down

0 comments on commit 7dc1bd0

Please sign in to comment.