File: FindNodejs.cmake

package info (click to toggle)
qt6-webengine 6.9.1%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 4,111,516 kB
  • sloc: cpp: 21,436,007; ansic: 8,086,803; javascript: 2,747,888; python: 856,612; asm: 848,149; xml: 616,344; java: 222,847; sh: 105,206; objc: 99,183; perl: 70,870; cs: 51,103; sql: 40,087; makefile: 26,374; pascal: 25,140; fortran: 24,137; tcl: 9,609; yacc: 8,132; php: 7,051; lisp: 3,462; lex: 1,327; ruby: 914; awk: 339; csh: 120; sed: 36
file content (35 lines) | stat: -rw-r--r-- 980 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# Copyright (C) 2022 The Qt Company Ltd.
# SPDX-License-Identifier: BSD-3-Clause

find_program(Nodejs_EXECUTABLE NAMES node nodejs)

if(Nodejs_EXECUTABLE)
    execute_process(
        COMMAND ${Nodejs_EXECUTABLE} --version
        OUTPUT_VARIABLE Nodejs_VERSION
        ERROR_QUIET
        OUTPUT_STRIP_TRAILING_WHITESPACE)
endif()

string (REGEX MATCHALL "([1-9][0-9])\..*" Nodejs_VERSION "${Nodejs_VERSION}")

include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Nodejs
    FOUND_VAR
        Nodejs_FOUND
    VERSION_VAR
        Nodejs_VERSION
    REQUIRED_VARS
        Nodejs_EXECUTABLE
)

if(Nodejs_FOUND AND NOT TARGET Nodejs::Nodejs)
    add_executable(Nodejs::Nodejs IMPORTED)
    set_target_properties(Nodejs::Nodejs PROPERTIES IMPORTED_LOCATION "${Nodejs_EXECUTABLE}")
endif()

include(FeatureSummary)
set_package_properties(Nodejs PROPERTIES
    URL "https://nodejs.org/"
    DESCRIPTION "JavaScript runtime environment that runs on the V8 engine"
)