wyvrnpm 2.10.2 → 2.12.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/README.md +1914 -1860
  2. package/bin/{wyvrn.js → wyvrnpm.js} +66 -0
  3. package/cmake/cpp.cmake +9 -9
  4. package/cmake/functions.cmake +224 -224
  5. package/cmake/macros.cmake +284 -284
  6. package/package.json +3 -2
  7. package/src/auth.js +66 -66
  8. package/src/binary-dir.js +95 -0
  9. package/src/bootstrap/cookbook.js +196 -196
  10. package/src/bootstrap/detect.js +150 -150
  11. package/src/bootstrap/index.js +220 -220
  12. package/src/bootstrap/version.js +72 -72
  13. package/src/build/cache.js +344 -344
  14. package/src/build/clone.js +170 -170
  15. package/src/build/cmake.js +342 -342
  16. package/src/build/index.js +299 -297
  17. package/src/build/msvc-env.js +260 -260
  18. package/src/build/recipe.js +188 -188
  19. package/src/commands/add.js +141 -141
  20. package/src/commands/bootstrap.js +96 -96
  21. package/src/commands/build.js +482 -452
  22. package/src/commands/cache.js +189 -189
  23. package/src/commands/clean.js +80 -80
  24. package/src/commands/configure.js +92 -92
  25. package/src/commands/init.js +70 -70
  26. package/src/commands/install-skill.js +115 -115
  27. package/src/commands/install.js +730 -674
  28. package/src/commands/link.js +320 -320
  29. package/src/commands/profile.js +237 -237
  30. package/src/commands/publish.js +584 -555
  31. package/src/commands/show.js +252 -252
  32. package/src/commands/version.js +187 -0
  33. package/src/compat.js +273 -273
  34. package/src/conf/index.js +415 -391
  35. package/src/conf/namespaces.js +94 -94
  36. package/src/context.js +230 -230
  37. package/src/http-fetch.js +53 -53
  38. package/src/ignore.js +118 -118
  39. package/src/logger.js +122 -122
  40. package/src/options.js +303 -303
  41. package/src/settings-overrides.js +152 -152
  42. package/src/toolchain/deps.js +164 -164
  43. package/src/toolchain/index.js +212 -212
  44. package/src/toolchain/presets.js +356 -340
  45. package/src/toolchain/template.cmake +77 -77
  46. package/src/upload-built.js +265 -265
  47. package/src/version-range.js +301 -301
  48. package/src/zip-safe.js +52 -52
  49. package/src/zip-stream.js +126 -0
@@ -1,77 +1,77 @@
1
- # Generated by wyvrnpm — do not edit.
2
- # Regenerated on every `wyvrnpm install`.
3
- #
4
- # Usage:
5
- # cmake -B build -S . -DCMAKE_TOOLCHAIN_FILE=wyvrn_internal/wyvrn_toolchain.cmake
6
- #
7
- # Profile : {{PROFILE_NAME}} [{{PROFILE_HASH}}]
8
- # Generated: {{GENERATED_AT}}
9
-
10
- if(WYVRNPM_TOOLCHAIN_INCLUDED)
11
- return()
12
- endif()
13
- set(WYVRNPM_TOOLCHAIN_INCLUDED TRUE)
14
-
15
- # ── Active build profile (copied verbatim from wyvrn_profile.json) ────────────
16
- set(WYVRN_PROFILE_NAME "{{PROFILE_NAME}}")
17
- set(WYVRN_PROFILE_HASH "{{PROFILE_HASH}}")
18
- set(WYVRN_PROFILE_OS "{{PROFILE_OS}}")
19
- set(WYVRN_PROFILE_ARCH "{{PROFILE_ARCH}}")
20
-
21
- # "64" for 64-bit arches (x86_64, armv8, …), "32" for 32-bit (x86, armv7, …),
22
- # empty for arches outside the known mapping. Derived at generation time from
23
- # the profile so it is valid BEFORE `project()` — unlike CMAKE_SIZEOF_VOID_P,
24
- # which is only set after the first project() call. Intended for suffixing
25
- # artefact names (e.g. "String${WYVRN_ARCH_SUFFIX}" → String64 / String32) so
26
- # x64 and x86 builds can coexist on disk without overwriting each other.
27
- # Call WYVRN_APPLY_ARCH_SUFFIX(<target>) from macros.cmake for the common
28
- # per-target shape, or reference the variable directly for other uses.
29
- set(WYVRN_ARCH_SUFFIX "{{PROFILE_ARCH_SUFFIX}}")
30
-
31
- set(WYVRN_PROFILE_COMPILER "{{PROFILE_COMPILER}}")
32
- set(WYVRN_PROFILE_COMPILER_VERSION "{{PROFILE_COMPILER_VERSION}}")
33
- set(WYVRN_PROFILE_CPPSTD "{{PROFILE_CPPSTD}}")
34
- set(WYVRN_PROFILE_RUNTIME "{{PROFILE_RUNTIME}}")
35
-
36
- # ── Path to wyvrnpm's bundled CMake utilities (variables.cmake, etc.) ─────────
37
- # Resolved at generation time so the toolchain works regardless of whether
38
- # wyvrnpm was installed globally, locally, or via npx.
39
- set(WYVRNPM_CMAKE_DIR "{{WYVRNPM_CMAKE_DIR}}")
40
-
41
- # ── C++ standard ──────────────────────────────────────────────────────────────
42
- if(NOT DEFINED CMAKE_CXX_STANDARD)
43
- set(CMAKE_CXX_STANDARD {{PROFILE_CPPSTD}})
44
- set(CMAKE_CXX_STANDARD_REQUIRED ON)
45
- set(CMAKE_CXX_EXTENSIONS OFF)
46
- endif()
47
-
48
- # ── MSVC runtime library ──────────────────────────────────────────────────────
49
- # Only meaningful when the actual compiler is MSVC. CMake ignores this on other
50
- # compilers, so setting it unconditionally is safe.
51
- if("${WYVRN_PROFILE_RUNTIME}" STREQUAL "dynamic")
52
- set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>DLL")
53
- elseif("${WYVRN_PROFILE_RUNTIME}" STREQUAL "static")
54
- set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
55
- endif()
56
-
57
- # ── Position-independent code (sensible default for mixed static/shared) ──────
58
- if(NOT DEFINED CMAKE_POSITION_INDEPENDENT_CODE)
59
- set(CMAKE_POSITION_INDEPENDENT_CODE ON)
60
- endif()
61
-
62
- # ── CMAKE_PREFIX_PATH: so find_package(<dep> CONFIG) finds installed deps ─────
63
- list(PREPEND CMAKE_PREFIX_PATH
64
- {{PREFIX_PATH_ENTRIES}}
65
- )
66
-
67
- # ── CMAKE_MODULE_PATH: so include(<script>) finds bundled *.cmake files ───────
68
- list(PREPEND CMAKE_MODULE_PATH
69
- "${WYVRNPM_CMAKE_DIR}"
70
- )
71
-
72
- # ── Post-project() hook ───────────────────────────────────────────────────────
73
- # CMAKE_PROJECT_INCLUDE runs after the first project() call, which is when
74
- # CMAKE_SYSTEM_NAME / CMAKE_CXX_COMPILER_ID / CMAKE_SIZEOF_VOID_P become valid.
75
- # The bundled utilities (variables.cmake etc.) rely on those — so they must be
76
- # included from here, not from the toolchain body above.
77
- set(CMAKE_PROJECT_INCLUDE "${CMAKE_CURRENT_LIST_DIR}/wyvrn_deps.cmake")
1
+ # Generated by wyvrnpm — do not edit.
2
+ # Regenerated on every `wyvrnpm install`.
3
+ #
4
+ # Usage:
5
+ # cmake -B build -S . -DCMAKE_TOOLCHAIN_FILE=wyvrn_internal/wyvrn_toolchain.cmake
6
+ #
7
+ # Profile : {{PROFILE_NAME}} [{{PROFILE_HASH}}]
8
+ # Generated: {{GENERATED_AT}}
9
+
10
+ if(WYVRNPM_TOOLCHAIN_INCLUDED)
11
+ return()
12
+ endif()
13
+ set(WYVRNPM_TOOLCHAIN_INCLUDED TRUE)
14
+
15
+ # ── Active build profile (copied verbatim from wyvrn_profile.json) ────────────
16
+ set(WYVRN_PROFILE_NAME "{{PROFILE_NAME}}")
17
+ set(WYVRN_PROFILE_HASH "{{PROFILE_HASH}}")
18
+ set(WYVRN_PROFILE_OS "{{PROFILE_OS}}")
19
+ set(WYVRN_PROFILE_ARCH "{{PROFILE_ARCH}}")
20
+
21
+ # "64" for 64-bit arches (x86_64, armv8, …), "32" for 32-bit (x86, armv7, …),
22
+ # empty for arches outside the known mapping. Derived at generation time from
23
+ # the profile so it is valid BEFORE `project()` — unlike CMAKE_SIZEOF_VOID_P,
24
+ # which is only set after the first project() call. Intended for suffixing
25
+ # artefact names (e.g. "String${WYVRN_ARCH_SUFFIX}" → String64 / String32) so
26
+ # x64 and x86 builds can coexist on disk without overwriting each other.
27
+ # Call WYVRN_APPLY_ARCH_SUFFIX(<target>) from macros.cmake for the common
28
+ # per-target shape, or reference the variable directly for other uses.
29
+ set(WYVRN_ARCH_SUFFIX "{{PROFILE_ARCH_SUFFIX}}")
30
+
31
+ set(WYVRN_PROFILE_COMPILER "{{PROFILE_COMPILER}}")
32
+ set(WYVRN_PROFILE_COMPILER_VERSION "{{PROFILE_COMPILER_VERSION}}")
33
+ set(WYVRN_PROFILE_CPPSTD "{{PROFILE_CPPSTD}}")
34
+ set(WYVRN_PROFILE_RUNTIME "{{PROFILE_RUNTIME}}")
35
+
36
+ # ── Path to wyvrnpm's bundled CMake utilities (variables.cmake, etc.) ─────────
37
+ # Resolved at generation time so the toolchain works regardless of whether
38
+ # wyvrnpm was installed globally, locally, or via npx.
39
+ set(WYVRNPM_CMAKE_DIR "{{WYVRNPM_CMAKE_DIR}}")
40
+
41
+ # ── C++ standard ──────────────────────────────────────────────────────────────
42
+ if(NOT DEFINED CMAKE_CXX_STANDARD)
43
+ set(CMAKE_CXX_STANDARD {{PROFILE_CPPSTD}})
44
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
45
+ set(CMAKE_CXX_EXTENSIONS OFF)
46
+ endif()
47
+
48
+ # ── MSVC runtime library ──────────────────────────────────────────────────────
49
+ # Only meaningful when the actual compiler is MSVC. CMake ignores this on other
50
+ # compilers, so setting it unconditionally is safe.
51
+ if("${WYVRN_PROFILE_RUNTIME}" STREQUAL "dynamic")
52
+ set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>DLL")
53
+ elseif("${WYVRN_PROFILE_RUNTIME}" STREQUAL "static")
54
+ set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
55
+ endif()
56
+
57
+ # ── Position-independent code (sensible default for mixed static/shared) ──────
58
+ if(NOT DEFINED CMAKE_POSITION_INDEPENDENT_CODE)
59
+ set(CMAKE_POSITION_INDEPENDENT_CODE ON)
60
+ endif()
61
+
62
+ # ── CMAKE_PREFIX_PATH: so find_package(<dep> CONFIG) finds installed deps ─────
63
+ list(PREPEND CMAKE_PREFIX_PATH
64
+ {{PREFIX_PATH_ENTRIES}}
65
+ )
66
+
67
+ # ── CMAKE_MODULE_PATH: so include(<script>) finds bundled *.cmake files ───────
68
+ list(PREPEND CMAKE_MODULE_PATH
69
+ "${WYVRNPM_CMAKE_DIR}"
70
+ )
71
+
72
+ # ── Post-project() hook ───────────────────────────────────────────────────────
73
+ # CMAKE_PROJECT_INCLUDE runs after the first project() call, which is when
74
+ # CMAKE_SYSTEM_NAME / CMAKE_CXX_COMPILER_ID / CMAKE_SIZEOF_VOID_P become valid.
75
+ # The bundled utilities (variables.cmake etc.) rely on those — so they must be
76
+ # included from here, not from the toolchain body above.
77
+ set(CMAKE_PROJECT_INCLUDE "${CMAKE_CURRENT_LIST_DIR}/wyvrn_deps.cmake")