mirror of
https://github.com/RetroPortingToolKit/psxrecomp
synced 2026-10-26 02:11:36 -04:00
Merge master (AOT overlay generation) into perf/interpreter-hotpath
Integration branch: the interpreter-perf series (interpreter fallback +
additive shard autocompile + always-on production observability + the
fail-closed alias-body emitter fix) rebased-by-merge onto master's AOT
overlay generation (play-free extraction, bounded indirect discovery,
AOT recall, shadow-diff redesign).
Semantic-union highlights:
- gte.cpp: HEAD's direct-field marshaling fast paths kept; master's
s_gte_replay_sandbox guards grafted onto every affected site.
- psx_icache.c: HEAD's global tag array + fetch_miss split kept;
master's transactional shadow record/replay retargeted onto it.
- overlay_capture.c: HEAD's commit/retry/wait-pending pipeline kept;
master's durable history + autocapture APIs wired into it
(persist_history_snapshot fed from the immutable .d contribution).
- overlay_loader.c: master's interp-record/native-replay shadow-diff
redesign kept as base with HEAD's scheduler-bail hardening grafted
(new SHDIFF_SCHED divergence kind); strict manifest v2 parsing keeps
master's P pair-id lines; always-on native-call ring preserved.
- main.cpp shutdown calls BOTH overlay_autocapture_shutdown() and
overlay_capture_wait_pending() (the latter drains the preserve-write
FIFO the former does not).
- recompiler: master's generate_alias_group refactor retains the
fail-closed alias-body re-entry defaults from c85f1d1.
Validated on this tree: recompiler + runtime + tests build; all six
runtime unit tests PASS; interpreter perf guards PASS; recompiler
patch/structural tests PASS (l1 decoder oracle noise = 376 pre-existing
on both parents).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
name: CLI release
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches: [master]
|
||||
workflow_dispatch:
|
||||
release:
|
||||
types: [published]
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
submodules: recursive
|
||||
- name: Install MinGW toolchain (Windows)
|
||||
uses: msys2/setup-msys2@v2
|
||||
with:
|
||||
msystem: MINGW64
|
||||
update: true
|
||||
install: >-
|
||||
mingw-w64-x86_64-gcc
|
||||
mingw-w64-x86_64-cmake
|
||||
mingw-w64-x86_64-ninja
|
||||
mingw-w64-x86_64-python
|
||||
- name: Build CLI package
|
||||
shell: msys2 {0}
|
||||
run: python tools/build_cli.py release
|
||||
- name: Smoke test packaged CLI
|
||||
shell: msys2 {0}
|
||||
run: dist/psxrecomp-cli-windows-x86_64/psxrecomp.exe --help
|
||||
- uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: psxrecomp-cli-windows-x86_64
|
||||
path: dist/psxrecomp-cli-*.zip
|
||||
if-no-files-found: error
|
||||
|
||||
publish-release-assets:
|
||||
if: github.event_name == 'release'
|
||||
needs: build
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: write
|
||||
steps:
|
||||
- uses: actions/download-artifact@v6
|
||||
with:
|
||||
pattern: psxrecomp-cli-*
|
||||
merge-multiple: true
|
||||
- name: Attach CLI packages to release
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
RELEASE_TAG: ${{ github.event.release.tag_name }}
|
||||
run: >-
|
||||
gh release upload "$RELEASE_TAG" psxrecomp-cli-*.zip
|
||||
--repo "$GITHUB_REPOSITORY" --clobber
|
||||
@@ -19,6 +19,7 @@ recompiler/build/
|
||||
recompiler/build-asan/
|
||||
recompiler/build-asan2/
|
||||
recompiler/build-checked/
|
||||
recompiler/build-cli/
|
||||
recompiler/build-t2/
|
||||
runtime/build/
|
||||
runtime/build-msvc/
|
||||
@@ -41,6 +42,7 @@ sdl2-msvc/
|
||||
# Diagnostic dumps & smoke logs (transient)
|
||||
*.log
|
||||
*.jsonl
|
||||
/.aot_capture_history/
|
||||
|
||||
# Local additive overlay-capture store configuration and game-derived data.
|
||||
.psxrecomp.env
|
||||
|
||||
@@ -12,20 +12,117 @@ Background on the original prototype:
|
||||
|
||||
[](https://www.youtube.com/watch?v=CID9oVhgCyY)
|
||||
|
||||
## How to use PSXRecomp
|
||||
|
||||
PSXRecomp takes a PlayStation disc image and BIOS and creates a recompilation
|
||||
project containing C source and build scripts.
|
||||
|
||||
### Generate a project with the released CLI
|
||||
|
||||
1. Download `psxrecomp-cli-windows-x86_64.zip` from
|
||||
[Releases](https://github.com/mstan/psxrecomp/releases/latest).
|
||||
2. Extract the whole zip to a folder. Keep its contents together.
|
||||
3. Open PowerShell in that folder and run:
|
||||
|
||||
```powershell
|
||||
.\psxrecomp.exe build `
|
||||
--disc "C:\Games\My Game\game.cue" `
|
||||
--bios "C:\BIOS\SCPH1001.BIN" `
|
||||
--output "C:\Projects\MyGameRecomp"
|
||||
```
|
||||
|
||||
Use the `.cue` file when a game has one, and keep its `.bin` track files beside
|
||||
it. Single-file `.bin` and `.iso` images are also accepted.
|
||||
|
||||
The output folder contains:
|
||||
|
||||
- generated C source for the game and BIOS;
|
||||
- `game.toml`, which you can edit for game-specific settings;
|
||||
- `CMakeLists.txt` and build scripts; and
|
||||
- a local copy of the PSXRecomp runtime source needed by the project.
|
||||
|
||||
The downloaded CLI is self-contained. You do not need to install Python or
|
||||
build this repository to generate a project.
|
||||
|
||||
### Build the generated project
|
||||
|
||||
Install CMake, Ninja, a C/C++ compiler, and SDL2 development files. Then run:
|
||||
|
||||
```powershell
|
||||
powershell -ExecutionPolicy Bypass -File "C:\Projects\MyGameRecomp\build.ps1"
|
||||
```
|
||||
|
||||
The generated project also includes a shell build script for macOS and Linux:
|
||||
|
||||
```sh
|
||||
sh /path/to/MyGameRecomp/build.sh
|
||||
```
|
||||
|
||||
The ready-made CLI release is currently for 64-bit Windows. You can build the
|
||||
CLI from source on another operating system using the instructions below.
|
||||
|
||||
The generated project is a practical starting point, not a promise that every
|
||||
game works without game-specific fixes. PSX games can load extra code and use
|
||||
hardware in ways that require additional configuration or development.
|
||||
|
||||
Use only disc and BIOS files you obtained legally. PSXRecomp does not include
|
||||
them. Generated game and BIOS source is derived from those files, so do not
|
||||
redistribute it.
|
||||
|
||||
### Build the CLI from source
|
||||
|
||||
You need Git, Python 3, CMake, Ninja, and a C++20 compiler.
|
||||
|
||||
```sh
|
||||
git clone --recurse-submodules https://github.com/mstan/psxrecomp.git
|
||||
cd psxrecomp
|
||||
python tools/build_cli.py release
|
||||
```
|
||||
|
||||
The ready-to-use CLI archive is written to `dist/`. To package debug binaries
|
||||
instead, run `python tools/build_cli.py debug`.
|
||||
|
||||
> **Where the project is headed.** Development so far has been **breadth-first**:
|
||||
> stand up as many games as possible and get them into a playable alpha, proving
|
||||
> the framework generalizes. That phase has largely delivered — seven titles now
|
||||
> run and ship public builds (see [Games](#games)). The project is now pivoting to
|
||||
> a **depth / optimization** phase: pushing each game toward 100% static coverage,
|
||||
> tightening timing accuracy, driving load times toward zero, and hardening the
|
||||
> renderer and audio paths. Expect the fleet to get *faster and more accurate*
|
||||
> rather than *wider* from here.
|
||||
|
||||
## What It Is
|
||||
|
||||
PSXRecomp translates PS1 MIPS binaries into C, then compiles that C as a
|
||||
native executable linked against a PS1 hardware runtime. The v4 architecture
|
||||
recompiles the real SCPH1001 BIOS and runs it as the kernel. There is no HLE
|
||||
BIOS layer, no stubs, and no general-purpose interpreter fallback for static
|
||||
code.
|
||||
recompiles the real `SCPH1001.BIN` BIOS and runs it as the kernel — that
|
||||
**low-level (LLE) recompiled BIOS is the foundation and the correctness oracle.**
|
||||
Everything is architected LLE-first: accuracy comes first, and convenience is
|
||||
layered on top, opt-in, never underneath.
|
||||
|
||||
PSXRecomp is a framework. Game-specific projects live in their own
|
||||
Three things sit on that foundation:
|
||||
|
||||
- **An optional HLE tier.** A high-level BIOS layer can be laid over the
|
||||
recompiled kernel to skip the boot sequence and service a few BIOS calls
|
||||
directly — a player-facing convenience and optimization, enabled by default
|
||||
but fully opt-out (`[runtime] bios_hle = false`). Anything it doesn't
|
||||
implement falls straight through to the recompiled BIOS, so the LLE path stays
|
||||
load-bearing and remains the oracle every accuracy check runs against.
|
||||
- **Capture-and-compile for overlays.** PS1 games stream code off the disc at
|
||||
runtime (*overlays*) that no ahead-of-time recompiler can see. PSXRecomp
|
||||
captures each overlay the moment it loads and recompiles it to native code,
|
||||
cached and reused forever after (`static → gcc → tcc` backend).
|
||||
- **A general-purpose interpreter — as a transient safety net, not a fixture.**
|
||||
Anything not yet native (a freshly streamed overlay, RAM-installed code) runs
|
||||
in a small MIPS interpreter so the machine is always *correct*. But the
|
||||
interpreter is explicitly meant to be **compiled away**: the same capture
|
||||
feeds the TCC-backed sharding pipeline, which turns interpreted code into
|
||||
cached native shards in the background. The more a game runs, the less the
|
||||
interpreter is doing — the goal state is an idle interpreter and 100% native
|
||||
execution.
|
||||
|
||||
PSXRecomp is a **framework**. Game-specific projects live in their own
|
||||
repositories and link this one in as a **git submodule** to build a game binary.
|
||||
The active end-to-end targets are:
|
||||
|
||||
- [TombaRecomp](https://github.com/mstan/TombaRecomp) — *Tomba!*
|
||||
- [MegaManX6Recomp](https://github.com/mstan/MegaManX6Recomp) — *Mega Man X6*
|
||||
|
||||
**New here?** The fastest way in:
|
||||
[`docs/EXECUTION_MODEL.md`](docs/EXECUTION_MODEL.md) (how a game actually
|
||||
@@ -34,6 +131,26 @@ runs — static / native-overlay / interpreter), then
|
||||
[`docs/BUILDING.md`](docs/BUILDING.md), and
|
||||
[`CONTRIBUTING.md`](CONTRIBUTING.md).
|
||||
|
||||
## Games
|
||||
|
||||
Each game is its own repository that pins a framework commit as a submodule and
|
||||
ships its own release with an in-app launcher. All are **alpha** — playable, not
|
||||
yet fully validated end to end.
|
||||
|
||||
| Game | Repository | Latest build | Notes |
|
||||
|---|---|---|---|
|
||||
| *Tomba!* | [TombaRecomp](https://github.com/mstan/TombaRecomp) | [releases](https://github.com/mstan/TombaRecomp/releases/latest) | Most mature target; widescreen, supersampling, save/load. |
|
||||
| *Tomba! 2* | [Tomba2Recomp](https://github.com/mstan/Tomba2Recomp) | [releases](https://github.com/mstan/Tomba2Recomp/releases/latest) | Multi-track disc support, selectable 21:9. |
|
||||
| *Ape Escape* | [ApeEscapeRecomp](https://github.com/mstan/ApeEscapeRecomp) | [releases](https://github.com/mstan/ApeEscapeRecomp/releases/latest) | New launcher, widescreen, memory-card save/load. |
|
||||
| *Mega Man X4* | [MegaManX4Recomp](https://github.com/mstan/MegaManX4Recomp) | [releases](https://github.com/mstan/MegaManX4Recomp/releases/latest) | Playable; widescreen. |
|
||||
| *Mega Man X5* | [MegaManX5Recomp](https://github.com/mstan/MegaManX5Recomp) | [releases](https://github.com/mstan/MegaManX5Recomp/releases/latest) | Early bring-up. |
|
||||
| *Mega Man X6* | [MegaManX6Recomp](https://github.com/mstan/MegaManX6Recomp) | [releases](https://github.com/mstan/MegaManX6Recomp/releases/latest) | Playable; stages, controller, save/load. |
|
||||
| *Tsumu Light* | [TsumuLightRecomp](https://github.com/mstan/TsumuLightRecomp) | [releases](https://github.com/mstan/TsumuLightRecomp/releases/latest) | Japanese title (SLPS-02253); early bring-up. |
|
||||
|
||||
Each game repo carries its own build/run instructions, keyboard/controller
|
||||
mappings, and per-game settings. **This repository builds the framework and a
|
||||
BIOS-only runtime** — see [Release Package](#release-package) below.
|
||||
|
||||
## Philosophy — toward 100% static recompilation
|
||||
|
||||
The goal is simple and absolute: **a PS1 game should run as native code, not be
|
||||
@@ -90,47 +207,44 @@ a game is played; this branch is where that machinery is being built.
|
||||
|
||||
## Status
|
||||
|
||||
Current milestone as of 2026-05-18:
|
||||
The framework is at **alpha**: the LLE recompiled BIOS boots and hands off to
|
||||
the game across all seven targets, and each runs as majority-native code with
|
||||
the capture-and-compile pipeline filling overlays as they're reached. The
|
||||
breadth-first push is essentially done; work now is depth and optimization.
|
||||
|
||||
Core subsystems, framework-wide:
|
||||
|
||||
| Subsystem | State |
|
||||
|---|---|
|
||||
| BIOS recompilation (`SCPH1001.BIN`) | Boots and hands off to Tomba |
|
||||
| Game EXE recompilation | Tomba title, OPTIONS, NEW GAME, save/load, and gameplay reached |
|
||||
| CD-ROM / MDEC / XA | Tomba FMVs stream and play at the game's 15 fps cadence |
|
||||
| Memory cards | Tomba save and load verified |
|
||||
| SIO0 controllers | Digital pad polling plus DualShock config replies used by Tomba |
|
||||
| GPU | Functional for BIOS boot, FMVs, menus, and first gameplay area |
|
||||
| Interrupts, COP0, timers | Working for current Tomba path |
|
||||
| Dirty-RAM support | BIOS/game RAM-installed dispatch paths handled |
|
||||
| Controller input | Keyboard plus SDL/XInput-style controller mapping via `input.ini` |
|
||||
| BIOS recompilation (`SCPH1001.BIN`) | Boots to shell and hands off to game; also the correctness oracle |
|
||||
| HLE BIOS tier | Optional boot-skip + service layer over the recompiled BIOS; default on, opt-out |
|
||||
| Game EXE recompilation | Title/menus/save-load/gameplay reached across the fleet |
|
||||
| Overlay capture → compile → cache | `static → gcc → tcc`; coverage grows as a game is played |
|
||||
| Interpreter failover | Correctness net for not-yet-native code; being compiled away by sharding |
|
||||
| CD-ROM / MDEC / XA | FMVs stream and play; XA/CDDA timing stays authentic |
|
||||
| Memory cards | Save and load verified on multiple titles |
|
||||
| SIO0 controllers | Digital pad + DualShock config; per-game analog/digital selection |
|
||||
| GPU | Software + OpenGL + Vulkan backends; widescreen FOV/HUD work per game |
|
||||
| SPU | Working; reverb/noise/sweep and exact SPU-IRQ accuracy still being tightened |
|
||||
| Interrupts, COP0, timers, GTE | Working; cycle-accuracy foundation is an active depth-phase focus |
|
||||
|
||||
Known follow-up work:
|
||||
Per-game maturity varies — see the [Games](#games) table. None of the titles is
|
||||
declared fully validated end to end; users perform the final playthrough
|
||||
validation on each release.
|
||||
|
||||
- The recent Tomba visual burn-down fixed the BIOS PS logo, title/menu glyph
|
||||
seams, dialog/pause panel seams, terrain shading, and shaded textured branch
|
||||
rendering observed in the first area.
|
||||
- SPU coverage is partial; reverb, noise, sweep, and accurate SPU IRQ behavior
|
||||
are not complete.
|
||||
- The historical Windows "Not Responding" hang is mitigated but should stay on
|
||||
the watch list until longer in-game soak tests are clean.
|
||||
- Neither game is fully validated end to end yet. Tomba has considerably more
|
||||
coverage; Mega Man X6 is playable (stages, controller, and memory-card
|
||||
save/load all work). Full playthroughs of both are still unverified.
|
||||
Open depth-phase fronts: cycle/IRQ-phase timing accuracy, load-time-toward-zero
|
||||
(data sharding), renderer parity between the software/GL/Vulkan backends, and
|
||||
driving overlay coverage the last mile to 100% static.
|
||||
|
||||
For the current game milestone, build and run the sibling TombaRecomp project:
|
||||
|
||||
```sh
|
||||
cd ../TombaRecomp
|
||||
cmake --build build -j16
|
||||
./build/psx-runtime.exe --game game.toml
|
||||
```
|
||||
|
||||
Running this repository's runtime without `--game` is still useful for
|
||||
BIOS-only memory card management.
|
||||
Running this repository's runtime without a game is useful for **BIOS-only
|
||||
memory-card management**; to build and play a title, use its game repo from the
|
||||
[Games](#games) table.
|
||||
|
||||
## Release Package
|
||||
|
||||
The framework release package is BIOS-only:
|
||||
**This repository's release is BIOS-only** — it is the framework runtime, not a
|
||||
game. Use it for BIOS boot and memory-card management; to play a title, grab its
|
||||
release from the [Games](#games) table.
|
||||
|
||||
1. Download `PSXRecomp-v*-windows-x64.zip` from Releases.
|
||||
2. Extract it and run `PSXRecomp.exe`.
|
||||
@@ -140,8 +254,11 @@ The package does not include a PS1 BIOS, game disc image, generated game code,
|
||||
or save data. The selected BIOS path is saved next to the executable as
|
||||
`bios.cfg`; delete that file to pick a different BIOS later.
|
||||
|
||||
Game-specific recomp projects, including TombaRecomp, use the same runtime
|
||||
picker contract but also prompt for a legally obtained game disc image.
|
||||
The game recomp projects use the same runtime picker contract but ship a
|
||||
**Dear ImGui launcher**: on first run it prompts for your legally obtained BIOS
|
||||
and game disc image, then lets you configure video, controls, and per-game
|
||||
settings before launching. Keyboard/controller mappings live in each game's repo
|
||||
and launcher, not here.
|
||||
|
||||
## Setup
|
||||
|
||||
@@ -176,42 +293,13 @@ generated C is optimized. Game projects generate their own
|
||||
`generated/<serial>_*.c` files and link this runtime through CMake — see
|
||||
[`docs/BUILDING.md`](docs/BUILDING.md#build-and-run-a-game).
|
||||
|
||||
## Keyboard Map
|
||||
## Input
|
||||
|
||||
| PSX button | Keyboard |
|
||||
|---|---|
|
||||
| D-Pad Up / Down / Left / Right | Arrow keys |
|
||||
| Cross | X |
|
||||
| Square | Z |
|
||||
| Circle | S |
|
||||
| Triangle | A |
|
||||
| L1 / R1 | Q / W |
|
||||
| L2 / R2 | E / R |
|
||||
| L3 / R3 (stick clicks) | T / Y |
|
||||
| Start | Enter |
|
||||
| Select | Right Shift |
|
||||
| Turbo | Tab (hold) |
|
||||
| Fullscreen | F11 / Alt+Enter / Cmd+F |
|
||||
|
||||
## Controller Map
|
||||
|
||||
Xbox-style controller defaults are enabled when a controller is connected:
|
||||
|
||||
| PSX button | Xbox controller |
|
||||
|---|---|
|
||||
| D-Pad Up / Down / Left / Right | D-pad or left stick |
|
||||
| Cross | A |
|
||||
| Circle | B |
|
||||
| Square | X |
|
||||
| Triangle | Y |
|
||||
| L1 / R1 | LB / RB |
|
||||
| L2 / R2 | LT / RT |
|
||||
| L3 / R3 | Left / right stick click |
|
||||
| Start | Menu |
|
||||
| Select | View / Back |
|
||||
|
||||
Release builds create/use `input.ini` next to the executable. Edit that file to
|
||||
change controller device index, deadzone, or button mapping.
|
||||
Keyboard and Xbox-style controller input work out of the box; the default
|
||||
fullscreen toggle is F11 / Alt+Enter / Cmd+F. **Full button maps, controller
|
||||
configuration, and rebinding live in each game's repo and in-app launcher** —
|
||||
they're game-facing, not part of the framework. The BIOS-only framework runtime
|
||||
accepts keyboard input for navigating the BIOS shell and memory-card tools.
|
||||
|
||||
## Architecture
|
||||
|
||||
@@ -233,20 +321,25 @@ See [`CONTRIBUTING.md`](CONTRIBUTING.md) and [`CLAUDE.md`](CLAUDE.md) for the
|
||||
development rules, and [`docs/internal/`](docs/internal/) for the phased plans
|
||||
and deep design notes (`PLAN.md`, `FAITHFUL_TIMING_PLAN.md`, …).
|
||||
|
||||
## Disc Speed
|
||||
## Load Times
|
||||
|
||||
Per-game `disc_speed` in `game.toml [runtime]` compresses CD-ROM timing:
|
||||
The runtime models **authentic 1× CD-ROM timing by default** — the same read and
|
||||
seek delays as real hardware. On top of that faithful baseline, load-time
|
||||
acceleration is **opt-in**, per game, so the accurate path is never compromised:
|
||||
|
||||
| Value | Effect |
|
||||
|---|---|
|
||||
| `"1x"` | Authentic PSX timing. Default for all games. |
|
||||
| `"2x"` / `"4x"` | 2× / 4× faster reads and seeks. |
|
||||
| `"instant"` | Minimum-floor delays. **Known to hang some games** during early initialization; root cause not yet identified. Use `"4x"` instead until resolved. |
|
||||
- **Turbo** — a hold-to-fast-forward key that compresses loads on demand.
|
||||
- **`[runtime] turbo_loads` / `idle_skip`** — automatic acceleration during load
|
||||
waits, with `turbo_audio_sink` keeping the SPU timeline coherent through the
|
||||
burst.
|
||||
- **Warm CD routes (`[[runtime.warm_cd_routes]]`)** — narrowly-scoped fast
|
||||
read cadence armed on a specific `SetLoc`, restoring authentic timing the
|
||||
moment the read pattern diverges.
|
||||
|
||||
FMV playback is always protected: the CD-ROM layer reverts to 1× whenever XA
|
||||
audio streaming is active, regardless of `disc_speed`. The speed switch fires
|
||||
only after the BIOS has handed off to the game EXE — boot and the license
|
||||
screen always run at authentic 1×.
|
||||
FMV/XA and CDDA streaming, seek, and motor timing always stay authentic
|
||||
regardless of the accelerators. Driving load times toward zero (via data
|
||||
sharding) is an active depth-phase effort — see
|
||||
[`docs/LOAD_TIME_ZERO.md`](docs/LOAD_TIME_ZERO.md) and
|
||||
[`docs/disc-speed.md`](docs/disc-speed.md).
|
||||
|
||||
## Help make your game faster — just by playing it
|
||||
|
||||
|
||||
+185
-1
@@ -1,10 +1,116 @@
|
||||
# AOT Overlay Sharding — Spike Findings & Plan (Tomba-first)
|
||||
|
||||
Status: SPIKE / DESIGN (2026-07-17). Not yet executed.
|
||||
Status: ENHANCEMENT SPIKE (2026-07-17). Foundation executed and live-proven.
|
||||
Author: investigation via 4 parallel agents + adversarial source verification.
|
||||
Scope: can we move overlay sharding from *runtime discovery* to *build-time (AOT)*,
|
||||
starting with Tomba (SCUS-94236)?
|
||||
|
||||
Current Tomba 2 checkpoint: generic play-free extraction emits 29 base/raw regions
|
||||
plus exact adjacent-producer composites (52 capture records total). The 29 base/raw
|
||||
shards and the live A01 composite audit with zero unsupported instructions or bad
|
||||
targets under `cg5_d0a05489`. Direct/constant-register call discovery, raw/cross-file
|
||||
base recovery, and padded-return frameless-boundary retention raised full-playthrough
|
||||
vault exact-address recall from 1113/1856 (60.0%) to 1270/1856 (68.4%). Those
|
||||
historical figures predate duplicate-VA CRC accounting; current reports separately
|
||||
count unique entry addresses and exact `(entry, code_crc)` candidates, preserving
|
||||
every observed code variant at a reused address. Exact-entry parity is intentionally
|
||||
no longer treated as the uncovered-code count: the runtime vault contains
|
||||
fine-grained fragments, including consecutive instruction entries, while static AOT
|
||||
emits broad functions. Historical interval containment was 1811/1856 (97.6%), with
|
||||
45 observed addresses outside every static interval, all in the game-independent
|
||||
kernel/low-memory region. Interval containment is unverified potential, not proof
|
||||
that the matching code variant can dispatch natively. Runtime static-only validation
|
||||
loaded the richer MAIN shard at 60 fps with `stale_blocked=0`, no range/manifest
|
||||
overflow, and byte-matching candidates. The clean static-only attract soak then loaded the
|
||||
459-function A01 composite and ran the formerly ~14 fps lava demo at 65–67 fps at
|
||||
BelowNormal priority, with correct rendering and no range/manifest overflow. Misses
|
||||
continue to fail safely to the interpreter.
|
||||
|
||||
---
|
||||
|
||||
## 2026-07-19: strict indirect-dispatch enrichment and scoreboard contract
|
||||
|
||||
- A framed-root candidate is accepted only at a return-adjacent boundary with a
|
||||
bounded stack frame and an in-frame `ra` save before its first control transfer.
|
||||
- Indirect switch recovery accepts only the canonical bounded form: `sltiu` guard
|
||||
plus delay-slot NOP, `sll index,2`, producer-owned `lui`+`addiu` table address,
|
||||
`addu`, `lw`, and the exact `jr`. A clobber, skipped definition, malformed or
|
||||
foreign table, or invalid target rejects the whole table. Case targets and call
|
||||
continuations remain dispatch-only interiors, never roots. Python discovery,
|
||||
C++ analysis, and code generation use the same matcher and producer bounds.
|
||||
- The emitted proof metadata is diagnostic. If generated-C audit or host compilation
|
||||
rejects an enriched recipe, compilation strips framed roots, aliases, dispatch
|
||||
PCs, and proof fields, then retries the exact producer bytes with direct-JAL roots
|
||||
only.
|
||||
- The scoreboard reports three distinct bounded metrics: exact entry address; exact
|
||||
`(entry, code_crc)` candidate, retaining multiple variants per address; and
|
||||
unverified interval containment potential. Vaults and capture histories are finite
|
||||
observed needed sets, never exhaustive title inventories. A reported 100% means
|
||||
only 100% of the named observed set under the named metric.
|
||||
|
||||
---
|
||||
|
||||
## 2026-07-18: byte-proven archive producers
|
||||
|
||||
- The generic extractor now recognizes strict 0x800-aligned `{id,size}` member
|
||||
archives (MMX6 `ROCK_X6.BIN`) and companion HED sector tables spanning DAT/BNS
|
||||
payload namespaces (Ape Escape `KKIIDDZZ.*`).
|
||||
- Link bases are not guessed from title constants. Multiple independent members
|
||||
must anchor one sharp jal/prologue consensus; a sibling then needs at least two
|
||||
votes for that exact trusted base.
|
||||
- Mixed archive members keep locally callable direct-JAL targets as a conservative
|
||||
retry recipe. Normal-mode entries and exact aliases are optional enrichment:
|
||||
generated-C audit or GCC rejection automatically retries the same byte-proven
|
||||
member with direct roots only. The final disposable MMX6 build compiled all 30
|
||||
members plus the BIOS resident shard (`ok=31 failed=0 skipped=0`). Across 16
|
||||
legacy capture files it contains 636/677 observed entries in overlay intervals
|
||||
(93.9%); all 41 observed addresses outside those intervals are BIOS/kernel PCs,
|
||||
and the separately recompiled base BIOS raises combined interval containment to
|
||||
677/677 (100.0%) for that observed set.
|
||||
- Ape's two PS-X EXE mirrors are deduplicated in favor of the self-describing EXE
|
||||
producer. Its remaining 44 HED/BNS members plus two minigame EXEs and the BIOS
|
||||
recipe are also audit-clean in a disposable cache.
|
||||
- A fresh 47/47 clean Ape rebuild then completed a title-to-attract-to-title
|
||||
soak across four overlay generations. All 72 exercised game PCs lie in static
|
||||
compiled ranges; the other 35 PCs are covered by the separately generated
|
||||
BIOS/kernel ranges, yielding 107/107 combined interval containment for that
|
||||
observed set. Live-byte guards safely rejected 21 stale candidates, visuals
|
||||
remained correct, and the dev history recorded 21 verified immutable snapshots
|
||||
with no invalid or duplicate references.
|
||||
- Normal PS-X discovery now exports its exact overlapping `F/R` alias recipes.
|
||||
Clean overlay builds therefore preserve decoder-proven indirect entries without
|
||||
promoting every entry to a hard root or borrowing a previous cache manifest.
|
||||
T2 compiled 53/53 disposable candidates with zero audit failures and restored
|
||||
100% combined BIOS interval containment for both observed sets.
|
||||
- Large archive reads are now linear rather than quadratic sector concatenation.
|
||||
These validations wrote only `%TEMP%` caches; title caches remain untouched.
|
||||
- DLL publication is now atomic: compilers target a unique sibling temporary,
|
||||
successful non-empty output replaces the final cache name, and cache reuse
|
||||
requires its non-empty range manifest. Interrupted compiles can no longer
|
||||
poison later runs or overwrite a prior good shard during `--force`.
|
||||
- Tomba 1 header exports are authoritative mid-function dispatch entries rather
|
||||
than callable roots. Their conservative retry uses the nearest preceding
|
||||
prologue host, stable-round call discovery prevents interior callees from
|
||||
truncating that host, and dense local pointer tables are rejected as code.
|
||||
Bounded return-to-return scanning also recovers unreferenced frameless leaves.
|
||||
The clean 25-record corpus produces 17 unique shards with zero audit failures.
|
||||
Overlay ranges cover 820/823 historical-vault PCs and 410/450 live-history PCs;
|
||||
every residual is in the separately recompiled BIOS/kernel ranges, yielding
|
||||
**100.0% combined interval containment** for both observed scoreboards.
|
||||
- The resulting `cg5_060368b2` checkpoint was re-extracted from disc and tested
|
||||
against disposable caches on the other producers. Ape rebuilt 47/47 GCC shards
|
||||
and retained 107/107 combined live-history interval containment. MMX6 rebuilt 31/31;
|
||||
two unsafe broad-discovery attempts failed their audit/compile gates and fell
|
||||
back to conservative seeds, retaining 677/677 combined interval containment. Tomba 2
|
||||
audited all 53 candidates with zero unsupported/bad targets, TCC-built the full
|
||||
53/53 set, and GCC-built 11 representative shards including MAIN, large area
|
||||
variants, OPN/CRD, and BIOS.
|
||||
- TCC overlay compilation now receives the same release/debug and cycle-model
|
||||
defines as GCC. A TCC-only generated-source shim supplies `__builtin_ctz`
|
||||
without changing the hashed runtime headers. The packaged TinyCC 0.9.27
|
||||
toolchain compiles the complete T2 corpus, and atomic publication now removes
|
||||
its staged `.def` sidecars after both success and failure.
|
||||
|
||||
---
|
||||
|
||||
## ⭐ SESSION-2 BREAKTHROUGH (2026-07-17, VERIFIED FROM DISC + CORPUS)
|
||||
@@ -107,10 +213,73 @@ executed_pcs[], dispatch_entry_pcs[], function_entry_pcs[], seeds[]
|
||||
(`g_dirty_ram_pc_table`, `g_dirty_ram_exec_pc_table`) — **execution-verified**, not
|
||||
disassembly guesses.
|
||||
|
||||
#### Durable capture history (opt-in)
|
||||
|
||||
`overlay_captures.json` remains the canonical latest snapshot consumed by the live
|
||||
compiler, but it is published through a same-directory temporary file plus atomic
|
||||
replace so readers never observe a half-written manifest. Games may additionally
|
||||
set `overlay_capture_history = true` to append each changed coherent snapshot as
|
||||
an independent JSONL record to `overlay_captures.addendum.jsonl` beside the
|
||||
executable. Without a persist directory the v1 record embeds the full snapshot.
|
||||
With dev immutable persistence enabled, a compact v2 record references the
|
||||
atomically published JSON and vault merge verifies its FNV signature before use;
|
||||
this avoids repeatedly embedding multi-megabyte base64 snapshots. A hard kill can
|
||||
damage only the last line; the next append quarantines that tail, and
|
||||
`tools/coverage_vault.py merge --addendum ...` ignores malformed records while
|
||||
additively merging every valid snapshot.
|
||||
|
||||
Development configs may also set a project-relative
|
||||
`overlay_capture_persist_dir`. This creates one atomically published, immutable
|
||||
JSON snapshot per changed capture. Absolute paths and `..` components are rejected.
|
||||
Production configs normally omit this key and retain only the naive executable-
|
||||
local addendum. Both history modes are off by default and contain game-derived
|
||||
bytes, so their outputs remain private/gitignored artifacts.
|
||||
Previously embedded development histories can be converted to verified compact
|
||||
references with `coverage_vault.py compact-addendum --addendum ...
|
||||
--persist-dir ...`. The tool verifies every valid record against its exact
|
||||
immutable snapshot before atomically replacing the addendum, and leaves the
|
||||
source untouched if any snapshot is missing or mismatched.
|
||||
`coverage_report.py --addendum ...` streams those verified history snapshots and
|
||||
unions their dispatch/function entries into the live scoreboard, preserving
|
||||
cross-launch recall without loading their game bytes into the static needed set.
|
||||
|
||||
The recall scoreboard can roll a persisted live gap set forward after a verified
|
||||
monotonic static expansion with
|
||||
`coverage_report.py --prior-report <old.json> --assume-static-superset`. The
|
||||
explicit assertion is required because an old gap
|
||||
manifest stores misses, not every previously covered entry; silently assuming
|
||||
monotonicity would make a regressed static set look healthier than it is.
|
||||
|
||||
All scoreboard inputs are finite observed needed sets. Reports distinguish exact
|
||||
entry-address recall, exact `(entry, code_crc)` candidate recall (including multiple
|
||||
CRC variants at one address), and interval containment potential. The last metric
|
||||
does not prove that the owning variant or a valid compiled interior matches live
|
||||
bytes; no vault result is evidence of an exhaustive title inventory.
|
||||
|
||||
The base BIOS recompiler is a separate static producer. When its generated
|
||||
dispatcher is available, pass `--bios-dispatch <SCPHxxxx_dispatch.c>` so the
|
||||
scoreboard preserves overlay-cache-only metrics and also reports combined exact
|
||||
candidate and interval metrics from the dispatch table plus guarded relocated-kernel
|
||||
body ranges. Do not
|
||||
manufacture overlay shards merely to duplicate those already-native BIOS bodies.
|
||||
|
||||
Boot-installed RAM helpers that are not contiguous ROM relocations use a separate
|
||||
exact-hash recipe (`tools/aot_overlay_spike/bios_resident_code.json`). The generic
|
||||
extractor emits only the listed code words/entries when the supplied BIOS SHA-256
|
||||
matches. `compile_overlays.py` adds a `.resident` sidecar, and the runtime preloads
|
||||
only explicitly marked resident shards. Preload is registration, not trust: every
|
||||
entry still passes the same live code-range CRC before native execution. The
|
||||
current SCPH-1001 recipe is exactly `0x8000DF80-0x8000DFF0`; it deliberately omits
|
||||
page fill and the `0x8000DFFC` callback-pointer data. This closes the six durable
|
||||
Tomba 2 kernel gaps without turning adjacent zeros/data into code.
|
||||
|
||||
### 1.3 Compile (offline, `tools/compile_overlays.py`)
|
||||
1. Python does function-boundary discovery from the seeds (`classify_overlay_seeds`,
|
||||
`_walk_overlay_function`) with a strict callable-prologue gate; interior/
|
||||
jump-table PCs become aliases, never walk roots.
|
||||
Optional enrichment admits only return-adjacent framed roots and the canonical,
|
||||
producer-bounded switch sequence described above. Its proof fields are persisted
|
||||
for diagnosis, not treated as runtime trust.
|
||||
2. Captured bytes wrapped in a **synthetic PS-X EXE** (`make_psxexe`, `:266-274`) and
|
||||
handed to the *same* recompiler binary the main EXE uses:
|
||||
`psxrecomp-game <fake.psx> --seeds seeds.txt --overlay --ws-config game.toml`.
|
||||
@@ -121,6 +290,17 @@ disassembly guesses.
|
||||
4. Per-function identity = CRC32 over its exact compiled code ranges. Output:
|
||||
`<phys>_<region_crc>.dll` + a `.ranges` manifest (`F <entry> <code_crc>` /
|
||||
`R <entry> <len>`).
|
||||
Rebuilding identical region bytes also imports prior overlapping alias groups
|
||||
as non-root `retained_alias` bodies. This makes discovery additive: newly
|
||||
proven frameless roots cannot hard-cap and erase an older indirect-entry body.
|
||||
A reachable direct branch that crosses a sibling-entry hard cap may add its
|
||||
target as a static root only when a bounded target-local CFG reaches a return
|
||||
without invalid words or sequential escape.
|
||||
If audit or host compilation rejects enrichment, the tool retries the same bytes
|
||||
after removing framed roots, aliases, dispatch PCs, and proof fields; only
|
||||
direct-JAL roots remain.
|
||||
Exact-hash BIOS resident captures additionally receive a `.resident` sidecar;
|
||||
ordinary captures actively remove a stale sidecar for the same output stem.
|
||||
5. `--static` mode instead namespaces the C and folds variants into
|
||||
`overlays_static.c` linked directly into the binary, dispatched via a generated
|
||||
`psx_overlay_dispatch()` — **this is already an AOT delivery path**; it moves
|
||||
@@ -136,6 +316,10 @@ disassembly guesses.
|
||||
`:595`). Cache is **additive** — every variant ever seen for an address stays
|
||||
loaded; per-dispatch CRC picks the one that currently matches (`:1844`). This is
|
||||
how one address (`0x800E7xxx`) hosts village vs overworld safely.
|
||||
- Marked BIOS-resident shards are registered during cache scan because their exact
|
||||
compact code envelope is not the runtime's page-coalesced kernel region key.
|
||||
They begin invalid while boot RAM differs, then revalidate after the BIOS writes
|
||||
the expected bytes. Unmarked shards retain lazy region loading.
|
||||
|
||||
---
|
||||
|
||||
|
||||
+48
-14
@@ -87,23 +87,43 @@ target_include_directories(psxrecomp-game PRIVATE
|
||||
lib/ELFIO
|
||||
)
|
||||
target_link_libraries(psxrecomp-game PRIVATE fmt rabbitizer)
|
||||
if(MINGW OR WIN32)
|
||||
target_link_options(psxrecomp-game PRIVATE -Wl,--stack,16777216)
|
||||
endif()
|
||||
if(MINGW)
|
||||
target_link_options(psxrecomp-game PRIVATE -Wl,--stack,16777216)
|
||||
elseif(MSVC)
|
||||
target_link_options(psxrecomp-game PRIVATE /STACK:16777216)
|
||||
endif()
|
||||
|
||||
# psxrecomp-toml — PS-X EXE → game.toml generator.
|
||||
# Standalone tool that analyses a PS-X EXE and generates a complete game.toml
|
||||
# config with auto-detected fields (load_address, entry_pc, text_size,
|
||||
# stack_base) and optional JAL-target seed generation.
|
||||
add_executable(psxrecomp-toml
|
||||
src/ps1_exe_parser.cpp
|
||||
src/main_toml.cpp
|
||||
)
|
||||
add_executable(psxrecomp-toml
|
||||
src/ps1_exe_parser.cpp
|
||||
src/main_toml.cpp
|
||||
)
|
||||
target_include_directories(psxrecomp-toml PRIVATE
|
||||
include
|
||||
lib/fmt/include
|
||||
)
|
||||
target_link_libraries(psxrecomp-toml PRIVATE fmt)
|
||||
target_link_libraries(psxrecomp-toml PRIVATE fmt)
|
||||
|
||||
# psxrecomp — user-facing media-to-source project generator.
|
||||
add_executable(psxrecomp
|
||||
src/main_cli.cpp
|
||||
src/ps1_exe_parser.cpp
|
||||
../runtime/src/iso_reader.cpp
|
||||
)
|
||||
target_include_directories(psxrecomp PRIVATE
|
||||
include
|
||||
../runtime/include
|
||||
lib/fmt/include
|
||||
)
|
||||
target_link_libraries(psxrecomp PRIVATE fmt)
|
||||
if(MINGW)
|
||||
target_link_options(psxrecomp PRIVATE -Wl,--stack,16777216)
|
||||
elseif(MSVC)
|
||||
target_link_options(psxrecomp PRIVATE /STACK:16777216)
|
||||
endif()
|
||||
|
||||
# ---- baked codegen hash (stale-binary guard) --------------------------------
|
||||
# Bake the SAME emitter-source hash the runtime folds into its overlay cache
|
||||
@@ -145,9 +165,11 @@ target_include_directories(PSXRecomp PRIVATE
|
||||
target_link_libraries(PSXRecomp PRIVATE fmt rabbitizer)
|
||||
|
||||
# Increase stack size for large binaries (1447+ functions)
|
||||
if(MINGW OR WIN32)
|
||||
target_link_options(PSXRecomp PRIVATE -Wl,--stack,16777216)
|
||||
endif()
|
||||
if(MINGW)
|
||||
target_link_options(PSXRecomp PRIVATE -Wl,--stack,16777216)
|
||||
elseif(MSVC)
|
||||
target_link_options(PSXRecomp PRIVATE /STACK:16777216)
|
||||
endif()
|
||||
|
||||
# psxrecomp-bios — Phase 1a BIOS boot slice recompiler.
|
||||
# Strict, fail-loud, ingests bios/SCPH1001.BIN as a flat ROM at 0xBFC00000.
|
||||
@@ -174,9 +196,21 @@ target_include_directories(psxrecomp-bios PRIVATE
|
||||
lib/toml11
|
||||
)
|
||||
target_link_libraries(psxrecomp-bios PRIVATE fmt rabbitizer)
|
||||
if(MINGW OR WIN32)
|
||||
target_link_options(psxrecomp-bios PRIVATE -Wl,--stack,16777216)
|
||||
endif()
|
||||
if(MINGW)
|
||||
target_link_options(psxrecomp-bios PRIVATE -Wl,--stack,16777216)
|
||||
elseif(MSVC)
|
||||
target_link_options(psxrecomp-bios PRIVATE /STACK:16777216)
|
||||
endif()
|
||||
|
||||
# Released Windows CLI archives must run without a separate MinGW install.
|
||||
# Keep this opt-in so ordinary developer/debug builds retain their normal
|
||||
# linker behavior on every platform.
|
||||
option(PSXRECOMP_STATIC_CLI "Statically link MinGW runtime libraries into CLI tools" OFF)
|
||||
if(PSXRECOMP_STATIC_CLI AND MINGW)
|
||||
foreach(_cli_target psxrecomp psxrecomp-game psxrecomp-toml psxrecomp-bios)
|
||||
target_link_options(${_cli_target} PRIVATE -static -static-libgcc -static-libstdc++)
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
# L1 decoder conformance test — compares MipsDecoder against Rabbitizer
|
||||
# oracle for every instruction in SCPH1001.BIN code regions.
|
||||
|
||||
Binary file not shown.
@@ -0,0 +1,106 @@
|
||||
# ninja log v7
|
||||
16 226 8062356628579350 CMakeFiles/rabbitizer.dir/lib/rabbitizer/cplusplus/src/analysis/LoPairingInfo.cpp.obj 682bd7d46689e9e6
|
||||
77 298 8062356629179745 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/analysis/RabbitizerLoPairingInfo.c.obj ca92d51bf3c7206d
|
||||
140 387 8062356629815204 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstrCategory.c.obj 9b166e08932d16ea
|
||||
155 688 8062356629965215 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstrId.c.obj 59e1b311ea6770b4
|
||||
120 695 8062356629615216 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/common/RabbitizerConfig.c.obj 4f3ea6a03b5dba46
|
||||
127 753 8062356629685201 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/common/RabbitizerVersion.c.obj ebcf4581edaa995f
|
||||
387 918 8062356632282887 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstructionCpu/RabbitizerInstructionCpu_OperandType.c.obj f32a9b3cfa22f654
|
||||
134 924 8062356629755202 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/common/Utils.c.obj fabae9c154b18d2b
|
||||
240 936 8062356630817652 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstrIdType.c.obj 263073193011e6ce
|
||||
91 956 8062356629319719 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/analysis/RabbitizerTrackedRegisterState.c.obj 38ed4d989b2401b
|
||||
36 1004 8062356628779366 CMakeFiles/rabbitizer.dir/lib/rabbitizer/cplusplus/src/instructions/InstrIdType.cpp.obj 8fb9e4eb75eb9349
|
||||
30 1013 8062356628709376 CMakeFiles/rabbitizer.dir/lib/rabbitizer/cplusplus/src/instructions/InstrId.cpp.obj 6dea8e7443241d55
|
||||
23 1049 8062356628649371 CMakeFiles/rabbitizer.dir/lib/rabbitizer/cplusplus/src/analysis/RegistersTracker.cpp.obj 944567ae22a3968b
|
||||
84 1057 8062356629259722 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/analysis/RabbitizerRegistersTracker.c.obj 6bafcc52a9ab8a0b
|
||||
50 1065 8062356628919352 CMakeFiles/rabbitizer.dir/lib/rabbitizer/cplusplus/src/instructions/InstructionCpu.cpp.obj 9c39e48d729dc2ea
|
||||
147 1140 8062356629885205 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstrDescriptor.c.obj 57ac9643ebf259c6
|
||||
299 1149 8062356631403645 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstrSuffix.c.obj 445845db2750bee9
|
||||
695 1157 8062356635359323 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstructionR3000GTE/RabbitizerInstructionR3000GTE_OperandType.c.obj d6e87d6bcb69aaca
|
||||
57 1164 8062356628989358 CMakeFiles/rabbitizer.dir/lib/rabbitizer/cplusplus/src/instructions/InstructionR3000GTE.cpp.obj 89846c0e6d029621
|
||||
688 1171 8062356635298827 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstructionR3000GTE/RabbitizerInstructionR3000GTE.c.obj 2e72c15fa7d464e5
|
||||
64 1201 8062356629049347 CMakeFiles/rabbitizer.dir/lib/rabbitizer/cplusplus/src/instructions/InstructionR5900.cpp.obj dcdf4b3a045143be
|
||||
764 1208 8062356636055657 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstructionR3000GTE/RabbitizerInstructionR3000GTE_ProcessUniqueId.c.obj cab79d4645053562
|
||||
71 1267 8062356629124536 CMakeFiles/rabbitizer.dir/lib/rabbitizer/cplusplus/src/instructions/InstructionRsp.cpp.obj 5696f1aba5ccdca2
|
||||
918 1351 8062356637600401 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstructionR5900/RabbitizerInstructionR5900.c.obj 1254dd0659c4798e
|
||||
956 1356 8062356637981330 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstructionRsp/RabbitizerInstructionRsp.c.obj 9aa73319b29abeb6
|
||||
1005 1426 8062356638461152 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstructionRsp/RabbitizerInstructionRsp_OperandType.c.obj ecbe8af2e2a3e63c
|
||||
925 1438 8062356637660396 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstructionR5900/RabbitizerInstructionR5900_OperandType.c.obj 650edaf753e8e460
|
||||
1050 1441 8062356638911153 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstruction/RabbitizerInstruction.c.obj c5635f2cb7a198ea
|
||||
936 1443 8062356637770772 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstructionR5900/RabbitizerInstructionR5900_ProcessUniqueId.c.obj 4b603e523c43d01a
|
||||
1057 1453 8062356638991170 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstruction/RabbitizerInstruction_Disassemble.c.obj 289648b793886be7
|
||||
1164 1465 8062356640053206 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerRegisterDescriptor.c.obj 9414fc44c87060fb
|
||||
1141 1471 8062356639818014 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstruction/RabbitizerInstruction_Operand.c.obj 157ccef6f746599
|
||||
1065 1527 8062356639061161 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstruction/RabbitizerInstruction_Examination.c.obj 9cfa086efd376ef9
|
||||
1157 1542 8062356639983211 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerRegister.c.obj 6fe40f96780ed9e2
|
||||
1013 1571 8062356638541161 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstructionRsp/RabbitizerInstructionRsp_ProcessUniqueId.c.obj 1d9c052e1d797468
|
||||
1171 1600 8062356644213966 psxrecomp_baked_codegen_hash.h 3a082ddfb27bf1b1
|
||||
1171 1600 8062356644213966 F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/psxrecomp_baked_codegen_hash.h 3a082ddfb27bf1b1
|
||||
43 1699 8062356628849350 CMakeFiles/rabbitizer.dir/lib/rabbitizer/cplusplus/src/instructions/InstructionBase.cpp.obj 9a156fe17c659a82
|
||||
1149 1700 8062356639907991 CMakeFiles/rabbitizer.dir/lib/rabbitizer/src/instructions/RabbitizerInstruction/RabbitizerInstruction_ProcessUniqueId.c.obj 608ff69175d7a6a7
|
||||
1700 2511 8062356645411992 librabbitizer.a 59dd6ddec4b82e43
|
||||
1632 3154 8062356644739947 CMakeFiles/psxrecomp-game.dir/src/annotations.cpp.obj ada40438a9760d35
|
||||
1606 3420 8062356644469736 CMakeFiles/psxrecomp-game.dir/src/mips_decoder.cpp.obj 487053fb7ce40d32
|
||||
1686 4205 8062356645271445 CMakeFiles/psxrecomp-game.dir/src/recompiler_patch.cpp.obj 5c0b63435a14e849
|
||||
1600 4598 8062356644414340 CMakeFiles/psxrecomp-game.dir/src/ps1_exe_parser.cpp.obj 3835c811b06c3a63
|
||||
1208 6388 8062356640498399 lib/fmt/CMakeFiles/fmt.dir/src/os.cc.obj 6b27647b892a28f
|
||||
1612 7078 8062356644539570 CMakeFiles/psxrecomp-game.dir/src/control_flow.cpp.obj 53e1a67e3a8f87d5
|
||||
1619 12674 8062356644599585 CMakeFiles/psxrecomp-game.dir/src/function_analysis.cpp.obj 521ef6710af328f4
|
||||
1201 14909 8062356640428392 lib/fmt/CMakeFiles/fmt.dir/src/format.cc.obj 46888dd2d45d63a5
|
||||
14909 15326 8062356777502425 lib/fmt/libfmt.a cd49ca6c4cdfc1a8
|
||||
1692 17752 8062356645331439 CMakeFiles/psxrecomp-game.dir/src/main_psx.cpp.obj 4957e9a9a7bfd76e
|
||||
1626 24798 8062356644670129 CMakeFiles/psxrecomp-game.dir/src/code_generator.cpp.obj 83ee91d59a19bee1
|
||||
1638 44783 8062356644800809 CMakeFiles/psxrecomp-game.dir/src/config_loader.cpp.obj 36148b2bb1c600a1
|
||||
44783 45164 8062357076245472 psxrecomp-game.exe 2bdde0965fb12e60
|
||||
25 1998 8062357390141838 CMakeFiles/psxrecomp-bios.dir/src/mips_decoder.cpp.obj ecf9153cf91626e5
|
||||
72 2993 8062357390603666 CMakeFiles/psxrecomp-bios.dir/src/recompiler_patch.cpp.obj e0b523ec3ee6c2d
|
||||
18 3010 8062357390061822 CMakeFiles/psxrecomp-bios.dir/src/ps1_exe_parser.cpp.obj 39e754f999df5087
|
||||
38 3884 8062357390257070 CMakeFiles/psxrecomp-bios.dir/src/bios_slice_walker.cpp.obj 92ee433dd95de9db
|
||||
44 8195 8062357390323639 CMakeFiles/psxrecomp-bios.dir/src/function_discovery.cpp.obj b9d26fe987775565
|
||||
79 8898 8062357390668935 CMakeFiles/psxrecomp-bios.dir/src/main_bios.cpp.obj 1e1f365a50c22798
|
||||
50 13057 8062357390383646 CMakeFiles/psxrecomp-bios.dir/src/full_function_emitter.cpp.obj 8954de2274206080
|
||||
32 14360 8062357390201847 CMakeFiles/psxrecomp-bios.dir/src/strict_translator.cpp.obj 2d27bc4f48ba66c1
|
||||
58 39706 8062357390463645 CMakeFiles/psxrecomp-bios.dir/src/config_loader.cpp.obj d15cc0b2aea13b52
|
||||
39707 40089 8062357786950836 psxrecomp-bios.exe 472033228fe0575d
|
||||
86 2495 8062363742297940 CMakeFiles/PSXRecomp.dir/src/annotations.cpp.obj 9c125dfb65b8ae82
|
||||
58 3710 8062363742017937 CMakeFiles/PSXRecomp.dir/src/mips_decoder.cpp.obj f851aa9b51565d0e
|
||||
22 4326 8062363741647653 CMakeFiles/psxrecomp-toml.dir/src/ps1_exe_parser.cpp.obj a03ef95b403e2b07
|
||||
125 4673 8062363742683484 CMakeFiles/l1_decoder_test.dir/src/ps1_exe_parser.cpp.obj 5702c127ecba88dd
|
||||
40 4752 8062363741832784 CMakeFiles/psxrecomp.dir/src/ps1_exe_parser.cpp.obj 1341446d8de0b06b
|
||||
119 5608 8062363742618331 CMakeFiles/l1_decoder_test.dir/src/mips_decoder.cpp.obj dc90605e482a474c
|
||||
99 6447 8062363742427934 CMakeFiles/PSXRecomp.dir/src/recompiler_patch.cpp.obj ed308f695c0e5e24
|
||||
52 6667 8062363741947929 CMakeFiles/PSXRecomp.dir/src/ps1_exe_parser.cpp.obj 6e568f8aa4916575
|
||||
46 7097 8062363741887930 CMakeFiles/psxrecomp.dir/F_/Projects/psxrecomp/_wt-interp-hotpath-master/runtime/src/iso_reader.cpp.obj 710709da2d2f47f7
|
||||
112 7416 8062363742558332 CMakeFiles/l1_decoder_test.dir/tests/l1_decoder_test.cpp.obj b407eb7f6a511432
|
||||
2496 7611 8062363766388211 CMakeFiles/l2_structural_test.dir/src/mips_decoder.cpp.obj a28f37aa4b3635da
|
||||
131 10051 8062363742743493 CMakeFiles/l2_structural_test.dir/tests/l2_structural_test.cpp.obj 1362a164f2b697ba
|
||||
65 10374 8062363742077944 CMakeFiles/PSXRecomp.dir/src/control_flow.cpp.obj 26ef88006bd59346
|
||||
7416 10730 8062363815590911 CMakeFiles/recompiler_patch_test.dir/src/annotations.cpp.obj a1b3f5438e1149ed
|
||||
34 10916 8062363741772781 CMakeFiles/psxrecomp.dir/src/main_cli.cpp.obj 73d59335f3eb391d
|
||||
4752 10924 8062363788951789 CMakeFiles/recompiler_patch_test.dir/src/ps1_exe_parser.cpp.obj 6d58fd1d27fa54e4
|
||||
29 11490 8062363741722778 CMakeFiles/psxrecomp-toml.dir/src/main_toml.cpp.obj ba1e3cf578036370
|
||||
3710 12015 8062363778535506 CMakeFiles/l2_structural_test.dir/src/ps1_exe_parser.cpp.obj 38854ce9a0d48482
|
||||
5608 12319 8062363797514177 CMakeFiles/recompiler_patch_test.dir/src/mips_decoder.cpp.obj 501111571aa026e2
|
||||
10374 14508 8062363845171857 CMakeFiles/recompiler_patch_cxx17_header_test.dir/tests/recompiler_patch_cxx17_header_test.cpp.obj cdf7dd276c7c557
|
||||
11490 14716 8062363856329610 psxrecomp-toml.exe 784a72d52de912b6
|
||||
71 16143 8062363742147932 CMakeFiles/PSXRecomp.dir/src/function_analysis.cpp.obj db929c03ca17665e
|
||||
12319 16229 8062363864621074 l1_decoder_test.exe c63d0910ffae517b
|
||||
4673 16296 8062363788160758 CMakeFiles/recompiler_patch_test.dir/tests/recompiler_patch_test.cpp.obj f44e87af5e8a0401
|
||||
12015 16363 8062363861583410 psxrecomp.exe c87b1eec6a62cc77
|
||||
10051 17271 8062363841940608 CMakeFiles/recompiler_patch_test.dir/src/recompiler_patch.cpp.obj ac2acd95fee1973b
|
||||
10924 17608 8062363850673097 CMakeFiles/reachable_discovery_test.dir/src/ps1_exe_parser.cpp.obj 2b73e22fb567893b
|
||||
6447 17752 8062363805905428 CMakeFiles/recompiler_patch_test.dir/src/control_flow.cpp.obj 9f7ddc976216389c
|
||||
14508 18818 8062363886514996 recompiler_patch_cxx17_header_test.exe d067bebd99883ffa
|
||||
10730 19733 8062363848735911 CMakeFiles/reachable_discovery_test.dir/tests/reachable_discovery_test.cpp.obj 184b2677550dfec7
|
||||
6668 22732 8062363808112658 CMakeFiles/recompiler_patch_test.dir/src/function_analysis.cpp.obj 275bf3494c79d8f2
|
||||
106 22934 8062363742487931 CMakeFiles/PSXRecomp.dir/src/main_psx.cpp.obj b92bf91f48b36141
|
||||
10916 25209 8062363850597941 CMakeFiles/reachable_discovery_test.dir/src/function_analysis.cpp.obj 644d3e6665893dc8
|
||||
25209 25882 8062363993521096 reachable_discovery_test.exe 7fda1854786a759d
|
||||
4327 26812 8062363784697466 CMakeFiles/l2_structural_test.dir/src/strict_translator.cpp.obj 7665aafbc73ddecc
|
||||
26812 27154 8062364009547638 l2_structural_test.exe 961ac0893b79fc94
|
||||
78 30531 8062363742217948 CMakeFiles/PSXRecomp.dir/src/code_generator.cpp.obj 625da1e5f9f2a054
|
||||
7097 33217 8062363812408069 CMakeFiles/recompiler_patch_test.dir/src/code_generator.cpp.obj 8a3f6e8b1e056185
|
||||
92 53805 8062363742357923 CMakeFiles/PSXRecomp.dir/src/config_loader.cpp.obj ae5a885c521234ac
|
||||
53805 54176 8062364279487487 PSXRecomp.exe 658968358d5c9770
|
||||
7611 56209 8062363817540660 CMakeFiles/recompiler_patch_test.dir/src/config_loader.cpp.obj 9995070d9a1ddb66
|
||||
56209 56562 8062364303517939 recompiler_patch_test.exe 7958f033eb200df2
|
||||
@@ -0,0 +1,627 @@
|
||||
# This is the CMakeCache file.
|
||||
# For build in directory: f:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native
|
||||
# It was generated by CMake: C:/msys64/mingw64/bin/cmake.exe
|
||||
# You can edit this file to change values found and used by cmake.
|
||||
# If you do not want to change any of the values, simply exit the editor.
|
||||
# If you do want to change a value, simply edit, save, and exit the editor.
|
||||
# The syntax for the file is as follows:
|
||||
# KEY:TYPE=VALUE
|
||||
# KEY is the name of a variable in the cache.
|
||||
# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
|
||||
# VALUE is the current value for the KEY.
|
||||
|
||||
########################
|
||||
# EXTERNAL cache entries
|
||||
########################
|
||||
|
||||
//Build the testing tree.
|
||||
BUILD_TESTING:BOOL=ON
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_ADDR2LINE:FILEPATH=C:/msys64/mingw64/bin/addr2line.exe
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_AR:FILEPATH=C:/msys64/mingw64/bin/ar.exe
|
||||
|
||||
//Choose the type of build, options are: None Debug Release RelWithDebInfo
|
||||
// MinSizeRel ...
|
||||
CMAKE_BUILD_TYPE:STRING=Release
|
||||
|
||||
//CXX compiler
|
||||
CMAKE_CXX_COMPILER:STRING=C:/msys64/mingw64/bin/g++.exe
|
||||
|
||||
//A wrapper around 'ar' adding the appropriate '--plugin' option
|
||||
// for the GCC compiler
|
||||
CMAKE_CXX_COMPILER_AR:FILEPATH=C:/msys64/mingw64/bin/gcc-ar.exe
|
||||
|
||||
//A wrapper around 'ranlib' adding the appropriate '--plugin' option
|
||||
// for the GCC compiler
|
||||
CMAKE_CXX_COMPILER_RANLIB:FILEPATH=C:/msys64/mingw64/bin/gcc-ranlib.exe
|
||||
|
||||
//Flags used by the CXX compiler during all build types.
|
||||
CMAKE_CXX_FLAGS:STRING=
|
||||
|
||||
//Flags used by the CXX compiler during DEBUG builds.
|
||||
CMAKE_CXX_FLAGS_DEBUG:STRING=-g
|
||||
|
||||
//Flags used by the CXX compiler during MINSIZEREL builds.
|
||||
CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
|
||||
|
||||
//Flags used by the CXX compiler during RELEASE builds.
|
||||
CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
|
||||
|
||||
//Flags used by the CXX compiler during RELWITHDEBINFO builds.
|
||||
CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
|
||||
|
||||
//Libraries linked by default with all C++ applications.
|
||||
CMAKE_CXX_STANDARD_LIBRARIES:STRING=-lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32
|
||||
|
||||
//C compiler
|
||||
CMAKE_C_COMPILER:STRING=C:/msys64/mingw64/bin/gcc.exe
|
||||
|
||||
//A wrapper around 'ar' adding the appropriate '--plugin' option
|
||||
// for the GCC compiler
|
||||
CMAKE_C_COMPILER_AR:FILEPATH=C:/msys64/mingw64/bin/gcc-ar.exe
|
||||
|
||||
//A wrapper around 'ranlib' adding the appropriate '--plugin' option
|
||||
// for the GCC compiler
|
||||
CMAKE_C_COMPILER_RANLIB:FILEPATH=C:/msys64/mingw64/bin/gcc-ranlib.exe
|
||||
|
||||
//Flags used by the C compiler during all build types.
|
||||
CMAKE_C_FLAGS:STRING=
|
||||
|
||||
//Flags used by the C compiler during DEBUG builds.
|
||||
CMAKE_C_FLAGS_DEBUG:STRING=-g
|
||||
|
||||
//Flags used by the C compiler during MINSIZEREL builds.
|
||||
CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
|
||||
|
||||
//Flags used by the C compiler during RELEASE builds.
|
||||
CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
|
||||
|
||||
//Flags used by the C compiler during RELWITHDEBINFO builds.
|
||||
CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
|
||||
|
||||
//Libraries linked by default with all C applications.
|
||||
CMAKE_C_STANDARD_LIBRARIES:STRING=-lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_DLLTOOL:FILEPATH=C:/msys64/mingw64/bin/dlltool.exe
|
||||
|
||||
//Flags used by the linker during all build types.
|
||||
CMAKE_EXE_LINKER_FLAGS:STRING=
|
||||
|
||||
//Flags used by the linker during DEBUG builds.
|
||||
CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=
|
||||
|
||||
//Flags used by the linker during MINSIZEREL builds.
|
||||
CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=
|
||||
|
||||
//Flags used by the linker during RELEASE builds.
|
||||
CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=
|
||||
|
||||
//Flags used by the linker during RELWITHDEBINFO builds.
|
||||
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
|
||||
|
||||
//Enable/Disable output of build database during the build.
|
||||
CMAKE_EXPORT_BUILD_DATABASE:BOOL=
|
||||
|
||||
//Enable/Disable output of compile commands during generation.
|
||||
CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=
|
||||
|
||||
//Value Computed by CMake.
|
||||
CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/pkgRedirects
|
||||
|
||||
//Convert GNU import libraries to MS format (requires Visual Studio)
|
||||
CMAKE_GNUtoMS:BOOL=OFF
|
||||
|
||||
//User executables (bin)
|
||||
CMAKE_INSTALL_BINDIR:PATH=bin
|
||||
|
||||
//Read-only architecture-independent data (DATAROOTDIR)
|
||||
CMAKE_INSTALL_DATADIR:PATH=
|
||||
|
||||
//Read-only architecture-independent data root (share)
|
||||
CMAKE_INSTALL_DATAROOTDIR:PATH=share
|
||||
|
||||
//Documentation root (DATAROOTDIR/doc/PROJECT_NAME)
|
||||
CMAKE_INSTALL_DOCDIR:PATH=
|
||||
|
||||
//C header files (include)
|
||||
CMAKE_INSTALL_INCLUDEDIR:PATH=include
|
||||
|
||||
//Info documentation (DATAROOTDIR/info)
|
||||
CMAKE_INSTALL_INFODIR:PATH=
|
||||
|
||||
//Object code libraries (lib)
|
||||
CMAKE_INSTALL_LIBDIR:PATH=lib
|
||||
|
||||
//Program executables (libexec)
|
||||
CMAKE_INSTALL_LIBEXECDIR:PATH=libexec
|
||||
|
||||
//Locale-dependent data (DATAROOTDIR/locale)
|
||||
CMAKE_INSTALL_LOCALEDIR:PATH=
|
||||
|
||||
//Modifiable single-machine data (var)
|
||||
CMAKE_INSTALL_LOCALSTATEDIR:PATH=var
|
||||
|
||||
//Man documentation (DATAROOTDIR/man)
|
||||
CMAKE_INSTALL_MANDIR:PATH=
|
||||
|
||||
//C header files for non-gcc (/usr/include)
|
||||
CMAKE_INSTALL_OLDINCLUDEDIR:PATH=/usr/include
|
||||
|
||||
//Install path prefix, prepended onto install directories.
|
||||
CMAKE_INSTALL_PREFIX:PATH=C:/Program Files (x86)/PSXRecomp
|
||||
|
||||
//Run-time variable data (LOCALSTATEDIR/run)
|
||||
CMAKE_INSTALL_RUNSTATEDIR:PATH=
|
||||
|
||||
//System admin executables (sbin)
|
||||
CMAKE_INSTALL_SBINDIR:PATH=sbin
|
||||
|
||||
//Modifiable architecture-independent data (com)
|
||||
CMAKE_INSTALL_SHAREDSTATEDIR:PATH=com
|
||||
|
||||
//Read-only single-machine data (etc)
|
||||
CMAKE_INSTALL_SYSCONFDIR:PATH=etc
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_LINKER:FILEPATH=C:/msys64/mingw64/bin/ld.exe
|
||||
|
||||
//Program used to build from build.ninja files.
|
||||
CMAKE_MAKE_PROGRAM:FILEPATH=C:/msys64/mingw64/bin/ninja.exe
|
||||
|
||||
//Flags used by the linker during the creation of modules during
|
||||
// all build types.
|
||||
CMAKE_MODULE_LINKER_FLAGS:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of modules during
|
||||
// DEBUG builds.
|
||||
CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of modules during
|
||||
// MINSIZEREL builds.
|
||||
CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of modules during
|
||||
// RELEASE builds.
|
||||
CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of modules during
|
||||
// RELWITHDEBINFO builds.
|
||||
CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_NM:FILEPATH=C:/msys64/mingw64/bin/nm.exe
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_OBJCOPY:FILEPATH=C:/msys64/mingw64/bin/objcopy.exe
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_OBJDUMP:FILEPATH=C:/msys64/mingw64/bin/objdump.exe
|
||||
|
||||
//Value Computed by CMake
|
||||
CMAKE_PROJECT_COMPAT_VERSION:STATIC=
|
||||
|
||||
//Value Computed by CMake
|
||||
CMAKE_PROJECT_DESCRIPTION:STATIC=
|
||||
|
||||
//Value Computed by CMake
|
||||
CMAKE_PROJECT_HOMEPAGE_URL:STATIC=
|
||||
|
||||
//Value Computed by CMake
|
||||
CMAKE_PROJECT_NAME:STATIC=PSXRecomp
|
||||
|
||||
//Value Computed by CMake
|
||||
CMAKE_PROJECT_SPDX_LICENSE:STATIC=
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_RANLIB:FILEPATH=C:/msys64/mingw64/bin/ranlib.exe
|
||||
|
||||
//RC compiler
|
||||
CMAKE_RC_COMPILER:FILEPATH=C:/msys64/mingw64/bin/windres.exe
|
||||
|
||||
//Flags for Windows Resource Compiler during all build types.
|
||||
CMAKE_RC_FLAGS:STRING=
|
||||
|
||||
//Flags for Windows Resource Compiler during DEBUG builds.
|
||||
CMAKE_RC_FLAGS_DEBUG:STRING=
|
||||
|
||||
//Flags for Windows Resource Compiler during MINSIZEREL builds.
|
||||
CMAKE_RC_FLAGS_MINSIZEREL:STRING=
|
||||
|
||||
//Flags for Windows Resource Compiler during RELEASE builds.
|
||||
CMAKE_RC_FLAGS_RELEASE:STRING=
|
||||
|
||||
//Flags for Windows Resource Compiler during RELWITHDEBINFO builds.
|
||||
CMAKE_RC_FLAGS_RELWITHDEBINFO:STRING=
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_READELF:FILEPATH=C:/msys64/mingw64/bin/readelf.exe
|
||||
|
||||
//Flags used by the linker during the creation of shared libraries
|
||||
// during all build types.
|
||||
CMAKE_SHARED_LINKER_FLAGS:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of shared libraries
|
||||
// during DEBUG builds.
|
||||
CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of shared libraries
|
||||
// during MINSIZEREL builds.
|
||||
CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of shared libraries
|
||||
// during RELEASE builds.
|
||||
CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=
|
||||
|
||||
//Flags used by the linker during the creation of shared libraries
|
||||
// during RELWITHDEBINFO builds.
|
||||
CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=
|
||||
|
||||
//If set, runtime paths are not added when installing shared libraries,
|
||||
// but are added when building.
|
||||
CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
|
||||
|
||||
//If set, runtime paths are not added when using shared libraries.
|
||||
CMAKE_SKIP_RPATH:BOOL=NO
|
||||
|
||||
//Flags used by the archiver during the creation of static libraries
|
||||
// during all build types.
|
||||
CMAKE_STATIC_LINKER_FLAGS:STRING=
|
||||
|
||||
//Flags used by the archiver during the creation of static libraries
|
||||
// during DEBUG builds.
|
||||
CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
|
||||
|
||||
//Flags used by the archiver during the creation of static libraries
|
||||
// during MINSIZEREL builds.
|
||||
CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
|
||||
|
||||
//Flags used by the archiver during the creation of static libraries
|
||||
// during RELEASE builds.
|
||||
CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
|
||||
|
||||
//Flags used by the archiver during the creation of static libraries
|
||||
// during RELWITHDEBINFO builds.
|
||||
CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_STRIP:FILEPATH=C:/msys64/mingw64/bin/strip.exe
|
||||
|
||||
//Path to a program.
|
||||
CMAKE_TAPI:FILEPATH=CMAKE_TAPI-NOTFOUND
|
||||
|
||||
//If this value is on, makefiles will be generated without the
|
||||
// .SILENT directive, and all commands will be echoed to the console
|
||||
// during the make. This is useful for debugging only. With Visual
|
||||
// Studio IDE projects all commands are done without /nologo.
|
||||
CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
|
||||
|
||||
//Path to the coverage program that CTest uses for performing coverage
|
||||
// inspection
|
||||
COVERAGE_COMMAND:FILEPATH=C:/msys64/mingw64/bin/gcov.exe
|
||||
|
||||
//Extra command line flags to pass to the coverage tool
|
||||
COVERAGE_EXTRA_FLAGS:STRING=-l
|
||||
|
||||
//How many times to retry timed-out CTest submissions.
|
||||
CTEST_SUBMIT_RETRY_COUNT:STRING=3
|
||||
|
||||
//How long to wait between timed-out CTest submissions.
|
||||
CTEST_SUBMIT_RETRY_DELAY:STRING=5
|
||||
|
||||
//Maximum time allowed before CTest will kill the test.
|
||||
DART_TESTING_TIMEOUT:STRING=1500
|
||||
|
||||
//Value Computed by CMake
|
||||
FMT_BINARY_DIR:STATIC=F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/lib/fmt
|
||||
|
||||
//Generate the cuda-test target.
|
||||
FMT_CUDA_TEST:BOOL=OFF
|
||||
|
||||
//Debug library postfix.
|
||||
FMT_DEBUG_POSTFIX:STRING=d
|
||||
|
||||
//Generate the doc target.
|
||||
FMT_DOC:BOOL=OFF
|
||||
|
||||
//Generate the fuzz target.
|
||||
FMT_FUZZ:BOOL=OFF
|
||||
|
||||
//Installation directory for include files, a relative path that
|
||||
// will be joined with C:/Program Files (x86)/PSXRecomp or an absolute
|
||||
// path.
|
||||
FMT_INC_DIR:STRING=include
|
||||
|
||||
//Generate the install target.
|
||||
FMT_INSTALL:BOOL=OFF
|
||||
|
||||
//Value Computed by CMake
|
||||
FMT_IS_TOP_LEVEL:STATIC=OFF
|
||||
|
||||
//Build a module instead of a traditional library.
|
||||
FMT_MODULE:BOOL=OFF
|
||||
|
||||
//Include core requiring OS (Windows/Posix)
|
||||
FMT_OS:BOOL=ON
|
||||
|
||||
//Enable extra warnings and expensive tests.
|
||||
FMT_PEDANTIC:BOOL=OFF
|
||||
|
||||
//Value Computed by CMake
|
||||
FMT_SOURCE_DIR:STATIC=F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/lib/fmt
|
||||
|
||||
//Expose headers with marking them as system.
|
||||
FMT_SYSTEM_HEADERS:BOOL=OFF
|
||||
|
||||
//Generate the test target.
|
||||
FMT_TEST:BOOL=OFF
|
||||
|
||||
//Halt the compilation with an error on compiler warnings.
|
||||
FMT_WERROR:BOOL=OFF
|
||||
|
||||
//Command to build the project
|
||||
MAKECOMMAND:STRING=C:\msys64\mingw64\bin\cmake.exe --build . --config "${CTEST_CONFIGURATION_TYPE}"
|
||||
|
||||
//Path to the memory checking command, used for memory error detection.
|
||||
MEMORYCHECK_COMMAND:FILEPATH=MEMORYCHECK_COMMAND-NOTFOUND
|
||||
|
||||
//File that contains suppressions for the memory checker
|
||||
MEMORYCHECK_SUPPRESSIONS_FILE:FILEPATH=
|
||||
|
||||
//Statically link MinGW runtime libraries into CLI tools
|
||||
PSXRECOMP_STATIC_CLI:BOOL=OFF
|
||||
|
||||
//Value Computed by CMake
|
||||
PSXRecomp_BINARY_DIR:STATIC=F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native
|
||||
|
||||
//Value Computed by CMake
|
||||
PSXRecomp_IS_TOP_LEVEL:STATIC=ON
|
||||
|
||||
//Value Computed by CMake
|
||||
PSXRecomp_SOURCE_DIR:STATIC=F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler
|
||||
|
||||
//Name of the computer/site where compile is being run
|
||||
SITE:STRING=DESKTOP-HN15M1H
|
||||
|
||||
|
||||
########################
|
||||
# INTERNAL cache entries
|
||||
########################
|
||||
|
||||
//ADVANCED property for variable: CMAKE_ADDR2LINE
|
||||
CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_AR
|
||||
CMAKE_AR-ADVANCED:INTERNAL=1
|
||||
//This is the directory where this CMakeCache.txt was created
|
||||
CMAKE_CACHEFILE_DIR:INTERNAL=f:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native
|
||||
//Major version of cmake used to create the current loaded cache
|
||||
CMAKE_CACHE_MAJOR_VERSION:INTERNAL=4
|
||||
//Minor version of cmake used to create the current loaded cache
|
||||
CMAKE_CACHE_MINOR_VERSION:INTERNAL=2
|
||||
//Patch version of cmake used to create the current loaded cache
|
||||
CMAKE_CACHE_PATCH_VERSION:INTERNAL=2
|
||||
//Path to CMake executable.
|
||||
CMAKE_COMMAND:INTERNAL=C:/msys64/mingw64/bin/cmake.exe
|
||||
//Path to cpack program executable.
|
||||
CMAKE_CPACK_COMMAND:INTERNAL=C:/msys64/mingw64/bin/cpack.exe
|
||||
//ADVANCED property for variable: CMAKE_CTEST_COMMAND
|
||||
CMAKE_CTEST_COMMAND-ADVANCED:INTERNAL=1
|
||||
//Path to ctest program executable.
|
||||
CMAKE_CTEST_COMMAND:INTERNAL=C:/msys64/mingw64/bin/ctest.exe
|
||||
//ADVANCED property for variable: CMAKE_CXX_COMPILER
|
||||
CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR
|
||||
CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB
|
||||
CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_CXX_FLAGS
|
||||
CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG
|
||||
CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL
|
||||
CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE
|
||||
CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO
|
||||
CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_CXX_STANDARD_LIBRARIES
|
||||
CMAKE_CXX_STANDARD_LIBRARIES-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_COMPILER
|
||||
CMAKE_C_COMPILER-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_COMPILER_AR
|
||||
CMAKE_C_COMPILER_AR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_COMPILER_RANLIB
|
||||
CMAKE_C_COMPILER_RANLIB-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_FLAGS
|
||||
CMAKE_C_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG
|
||||
CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL
|
||||
CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE
|
||||
CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO
|
||||
CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_C_STANDARD_LIBRARIES
|
||||
CMAKE_C_STANDARD_LIBRARIES-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_DLLTOOL
|
||||
CMAKE_DLLTOOL-ADVANCED:INTERNAL=1
|
||||
//Executable file format
|
||||
CMAKE_EXECUTABLE_FORMAT:INTERNAL=Unknown
|
||||
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
|
||||
CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
|
||||
CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
|
||||
CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
|
||||
CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
|
||||
CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_EXPORT_BUILD_DATABASE
|
||||
CMAKE_EXPORT_BUILD_DATABASE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
|
||||
CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
|
||||
//Name of external makefile project generator.
|
||||
CMAKE_EXTRA_GENERATOR:INTERNAL=
|
||||
//Name of generator.
|
||||
CMAKE_GENERATOR:INTERNAL=Ninja
|
||||
//Generator instance identifier.
|
||||
CMAKE_GENERATOR_INSTANCE:INTERNAL=
|
||||
//Name of generator platform.
|
||||
CMAKE_GENERATOR_PLATFORM:INTERNAL=
|
||||
//Name of generator toolset.
|
||||
CMAKE_GENERATOR_TOOLSET:INTERNAL=
|
||||
//Source directory with the top level CMakeLists.txt file for this
|
||||
// project
|
||||
CMAKE_HOME_DIRECTORY:INTERNAL=F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_BINDIR
|
||||
CMAKE_INSTALL_BINDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_DATADIR
|
||||
CMAKE_INSTALL_DATADIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_DATAROOTDIR
|
||||
CMAKE_INSTALL_DATAROOTDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_DOCDIR
|
||||
CMAKE_INSTALL_DOCDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_INCLUDEDIR
|
||||
CMAKE_INSTALL_INCLUDEDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_INFODIR
|
||||
CMAKE_INSTALL_INFODIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_LIBDIR
|
||||
CMAKE_INSTALL_LIBDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_LIBEXECDIR
|
||||
CMAKE_INSTALL_LIBEXECDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_LOCALEDIR
|
||||
CMAKE_INSTALL_LOCALEDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_LOCALSTATEDIR
|
||||
CMAKE_INSTALL_LOCALSTATEDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_MANDIR
|
||||
CMAKE_INSTALL_MANDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_OLDINCLUDEDIR
|
||||
CMAKE_INSTALL_OLDINCLUDEDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_RUNSTATEDIR
|
||||
CMAKE_INSTALL_RUNSTATEDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_SBINDIR
|
||||
CMAKE_INSTALL_SBINDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_SHAREDSTATEDIR
|
||||
CMAKE_INSTALL_SHAREDSTATEDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_INSTALL_SYSCONFDIR
|
||||
CMAKE_INSTALL_SYSCONFDIR-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_LINKER
|
||||
CMAKE_LINKER-ADVANCED:INTERNAL=1
|
||||
//Name of CMakeLists files to read
|
||||
CMAKE_LIST_FILE_NAME:INTERNAL=CMakeLists.txt
|
||||
//ADVANCED property for variable: CMAKE_MAKE_PROGRAM
|
||||
CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
|
||||
CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
|
||||
CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
|
||||
CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
|
||||
CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
|
||||
CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_NM
|
||||
CMAKE_NM-ADVANCED:INTERNAL=1
|
||||
//number of local generators
|
||||
CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=2
|
||||
//ADVANCED property for variable: CMAKE_OBJCOPY
|
||||
CMAKE_OBJCOPY-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_OBJDUMP
|
||||
CMAKE_OBJDUMP-ADVANCED:INTERNAL=1
|
||||
//Platform information initialized
|
||||
CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_RANLIB
|
||||
CMAKE_RANLIB-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_RC_COMPILER
|
||||
CMAKE_RC_COMPILER-ADVANCED:INTERNAL=1
|
||||
CMAKE_RC_COMPILER_WORKS:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_RC_FLAGS
|
||||
CMAKE_RC_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_RC_FLAGS_DEBUG
|
||||
CMAKE_RC_FLAGS_DEBUG-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_RC_FLAGS_MINSIZEREL
|
||||
CMAKE_RC_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_RC_FLAGS_RELEASE
|
||||
CMAKE_RC_FLAGS_RELEASE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_RC_FLAGS_RELWITHDEBINFO
|
||||
CMAKE_RC_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_READELF
|
||||
CMAKE_READELF-ADVANCED:INTERNAL=1
|
||||
//Path to CMake installation.
|
||||
CMAKE_ROOT:INTERNAL=C:/msys64/mingw64/share/cmake
|
||||
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
|
||||
CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
|
||||
CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
|
||||
CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
|
||||
CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
|
||||
CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
|
||||
CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_SKIP_RPATH
|
||||
CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS
|
||||
CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG
|
||||
CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL
|
||||
CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE
|
||||
CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO
|
||||
CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_STRIP
|
||||
CMAKE_STRIP-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_TAPI
|
||||
CMAKE_TAPI-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
|
||||
CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: COVERAGE_COMMAND
|
||||
COVERAGE_COMMAND-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: COVERAGE_EXTRA_FLAGS
|
||||
COVERAGE_EXTRA_FLAGS-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CTEST_SUBMIT_RETRY_COUNT
|
||||
CTEST_SUBMIT_RETRY_COUNT-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: CTEST_SUBMIT_RETRY_DELAY
|
||||
CTEST_SUBMIT_RETRY_DELAY-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: DART_TESTING_TIMEOUT
|
||||
DART_TESTING_TIMEOUT-ADVANCED:INTERNAL=1
|
||||
//Details about finding Python3
|
||||
FIND_PACKAGE_MESSAGE_DETAILS_Python3:INTERNAL=[C:/Users/Matthew/AppData/Local/Programs/Python/Python312/python.exe][found components: Interpreter ][v3.12.10()]
|
||||
//ADVANCED property for variable: MAKECOMMAND
|
||||
MAKECOMMAND-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: MEMORYCHECK_COMMAND
|
||||
MEMORYCHECK_COMMAND-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: MEMORYCHECK_SUPPRESSIONS_FILE
|
||||
MEMORYCHECK_SUPPRESSIONS_FILE-ADVANCED:INTERNAL=1
|
||||
//ADVANCED property for variable: SITE
|
||||
SITE-ADVANCED:INTERNAL=1
|
||||
//CMAKE_INSTALL_PREFIX during last run
|
||||
_GNUInstallDirs_LAST_CMAKE_INSTALL_PREFIX:INTERNAL=C:/Program Files (x86)/PSXRecomp
|
||||
//Compiler reason failure
|
||||
_Python3_Compiler_REASON_FAILURE:INTERNAL=
|
||||
//Development reason failure
|
||||
_Python3_Development_REASON_FAILURE:INTERNAL=
|
||||
//Path to a program.
|
||||
_Python3_EXECUTABLE:INTERNAL=C:/Users/Matthew/AppData/Local/Programs/Python/Python312/python.exe
|
||||
//Path to a program.
|
||||
_Python3_EXECUTABLE_DEBUG:INTERNAL=_Python3_EXECUTABLE_DEBUG-NOTFOUND
|
||||
//Python3 Properties
|
||||
_Python3_INTERPRETER_PROPERTIES:INTERNAL=Python;3;12;10;64;32;<none>;cp312-win_amd64;;C:\Users\Matthew\AppData\Local\Programs\Python\Python312\Lib;C:\Users\Matthew\AppData\Local\Programs\Python\Python312\Lib;C:\Users\Matthew\AppData\Local\Programs\Python\Python312\Lib\site-packages;C:\Users\Matthew\AppData\Local\Programs\Python\Python312\Lib\site-packages
|
||||
_Python3_INTERPRETER_SIGNATURE:INTERNAL=f5ce057b8b4d3fbad72924ca98dad5b2
|
||||
//NumPy reason failure
|
||||
_Python3_NumPy_REASON_FAILURE:INTERNAL=
|
||||
//Test has_std_20_flag
|
||||
has_std_20_flag:INTERNAL=1
|
||||
//Test has_std_2a_flag
|
||||
has_std_2a_flag:INTERNAL=1
|
||||
|
||||
@@ -0,0 +1,84 @@
|
||||
set(CMAKE_C_COMPILER "C:/msys64/mingw64/bin/gcc.exe")
|
||||
set(CMAKE_C_COMPILER_ARG1 "")
|
||||
set(CMAKE_C_COMPILER_ID "GNU")
|
||||
set(CMAKE_C_COMPILER_VERSION "15.2.0")
|
||||
set(CMAKE_C_COMPILER_VERSION_INTERNAL "")
|
||||
set(CMAKE_C_COMPILER_WRAPPER "")
|
||||
set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "23")
|
||||
set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "ON")
|
||||
set(CMAKE_C_STANDARD_LATEST "23")
|
||||
set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert;c_std_17;c_std_23")
|
||||
set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes")
|
||||
set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros")
|
||||
set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert")
|
||||
set(CMAKE_C17_COMPILE_FEATURES "c_std_17")
|
||||
set(CMAKE_C23_COMPILE_FEATURES "c_std_23")
|
||||
|
||||
set(CMAKE_C_PLATFORM_ID "MinGW")
|
||||
set(CMAKE_C_SIMULATE_ID "")
|
||||
set(CMAKE_C_COMPILER_FRONTEND_VARIANT "GNU")
|
||||
set(CMAKE_C_COMPILER_APPLE_SYSROOT "")
|
||||
set(CMAKE_C_SIMULATE_VERSION "")
|
||||
set(CMAKE_C_COMPILER_ARCHITECTURE_ID "x86_64")
|
||||
|
||||
|
||||
|
||||
set(CMAKE_AR "C:/msys64/mingw64/bin/ar.exe")
|
||||
set(CMAKE_C_COMPILER_AR "C:/msys64/mingw64/bin/gcc-ar.exe")
|
||||
set(CMAKE_RANLIB "C:/msys64/mingw64/bin/ranlib.exe")
|
||||
set(CMAKE_C_COMPILER_RANLIB "C:/msys64/mingw64/bin/gcc-ranlib.exe")
|
||||
set(CMAKE_LINKER "C:/msys64/mingw64/bin/ld.exe")
|
||||
set(CMAKE_LINKER_LINK "")
|
||||
set(CMAKE_LINKER_LLD "")
|
||||
set(CMAKE_C_COMPILER_LINKER "C:/msys64/mingw64/x86_64-w64-mingw32/bin/ld.exe")
|
||||
set(CMAKE_C_COMPILER_LINKER_ID "GNU")
|
||||
set(CMAKE_C_COMPILER_LINKER_VERSION 2.45.1)
|
||||
set(CMAKE_C_COMPILER_LINKER_FRONTEND_VARIANT GNU)
|
||||
set(CMAKE_MT "")
|
||||
set(CMAKE_TAPI "CMAKE_TAPI-NOTFOUND")
|
||||
set(CMAKE_COMPILER_IS_GNUCC 1)
|
||||
set(CMAKE_C_COMPILER_LOADED 1)
|
||||
set(CMAKE_C_COMPILER_WORKS TRUE)
|
||||
set(CMAKE_C_ABI_COMPILED TRUE)
|
||||
|
||||
set(CMAKE_C_COMPILER_ENV_VAR "CC")
|
||||
|
||||
set(CMAKE_C_COMPILER_ID_RUN 1)
|
||||
set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m)
|
||||
set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
|
||||
set(CMAKE_C_LINKER_PREFERENCE 10)
|
||||
set(CMAKE_C_LINKER_DEPFILE_SUPPORTED FALSE)
|
||||
set(CMAKE_LINKER_PUSHPOP_STATE_SUPPORTED TRUE)
|
||||
set(CMAKE_C_LINKER_PUSHPOP_STATE_SUPPORTED TRUE)
|
||||
|
||||
# Save compiler ABI information.
|
||||
set(CMAKE_C_SIZEOF_DATA_PTR "8")
|
||||
set(CMAKE_C_COMPILER_ABI "")
|
||||
set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN")
|
||||
set(CMAKE_C_LIBRARY_ARCHITECTURE "")
|
||||
|
||||
if(CMAKE_C_SIZEOF_DATA_PTR)
|
||||
set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
|
||||
endif()
|
||||
|
||||
if(CMAKE_C_COMPILER_ABI)
|
||||
set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
|
||||
endif()
|
||||
|
||||
if(CMAKE_C_LIBRARY_ARCHITECTURE)
|
||||
set(CMAKE_LIBRARY_ARCHITECTURE "")
|
||||
endif()
|
||||
|
||||
set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
|
||||
if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
|
||||
set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
|
||||
endif()
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "C:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/15.2.0/include;C:/msys64/mingw64/include;C:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/15.2.0/include-fixed")
|
||||
set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "mingw32;gcc;mingwex;kernel32;pthread;advapi32;shell32;user32;kernel32;mingw32;gcc;mingwex;kernel32")
|
||||
set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "C:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/15.2.0;C:/msys64/mingw64/lib/gcc;C:/msys64/mingw64/x86_64-w64-mingw32/lib;C:/msys64/mingw64/lib")
|
||||
set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
|
||||
@@ -0,0 +1,108 @@
|
||||
set(CMAKE_CXX_COMPILER "C:/msys64/mingw64/bin/g++.exe")
|
||||
set(CMAKE_CXX_COMPILER_ARG1 "")
|
||||
set(CMAKE_CXX_COMPILER_ID "GNU")
|
||||
set(CMAKE_CXX_COMPILER_VERSION "15.2.0")
|
||||
set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
|
||||
set(CMAKE_CXX_COMPILER_WRAPPER "")
|
||||
set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17")
|
||||
set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON")
|
||||
set(CMAKE_CXX_STANDARD_LATEST "26")
|
||||
set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23;cxx_std_26")
|
||||
set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters")
|
||||
set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
|
||||
set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
|
||||
set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17")
|
||||
set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20")
|
||||
set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23")
|
||||
set(CMAKE_CXX26_COMPILE_FEATURES "cxx_std_26")
|
||||
|
||||
set(CMAKE_CXX_PLATFORM_ID "MinGW")
|
||||
set(CMAKE_CXX_SIMULATE_ID "")
|
||||
set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "GNU")
|
||||
set(CMAKE_CXX_COMPILER_APPLE_SYSROOT "")
|
||||
set(CMAKE_CXX_SIMULATE_VERSION "")
|
||||
set(CMAKE_CXX_COMPILER_ARCHITECTURE_ID "x86_64")
|
||||
|
||||
|
||||
|
||||
set(CMAKE_AR "C:/msys64/mingw64/bin/ar.exe")
|
||||
set(CMAKE_CXX_COMPILER_AR "C:/msys64/mingw64/bin/gcc-ar.exe")
|
||||
set(CMAKE_RANLIB "C:/msys64/mingw64/bin/ranlib.exe")
|
||||
set(CMAKE_CXX_COMPILER_RANLIB "C:/msys64/mingw64/bin/gcc-ranlib.exe")
|
||||
set(CMAKE_LINKER "C:/msys64/mingw64/bin/ld.exe")
|
||||
set(CMAKE_LINKER_LINK "")
|
||||
set(CMAKE_LINKER_LLD "")
|
||||
set(CMAKE_CXX_COMPILER_LINKER "C:/msys64/mingw64/x86_64-w64-mingw32/bin/ld.exe")
|
||||
set(CMAKE_CXX_COMPILER_LINKER_ID "GNU")
|
||||
set(CMAKE_CXX_COMPILER_LINKER_VERSION 2.45.1)
|
||||
set(CMAKE_CXX_COMPILER_LINKER_FRONTEND_VARIANT GNU)
|
||||
set(CMAKE_MT "")
|
||||
set(CMAKE_TAPI "CMAKE_TAPI-NOTFOUND")
|
||||
set(CMAKE_COMPILER_IS_GNUCXX 1)
|
||||
set(CMAKE_CXX_COMPILER_LOADED 1)
|
||||
set(CMAKE_CXX_COMPILER_WORKS TRUE)
|
||||
set(CMAKE_CXX_ABI_COMPILED TRUE)
|
||||
|
||||
set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
|
||||
|
||||
set(CMAKE_CXX_COMPILER_ID_RUN 1)
|
||||
set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm;ccm;cxxm;c++m)
|
||||
set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
|
||||
|
||||
foreach (lang IN ITEMS C OBJC OBJCXX)
|
||||
if (CMAKE_${lang}_COMPILER_ID_RUN)
|
||||
foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS)
|
||||
list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension})
|
||||
endforeach()
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
set(CMAKE_CXX_LINKER_PREFERENCE 30)
|
||||
set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
|
||||
set(CMAKE_CXX_LINKER_DEPFILE_SUPPORTED FALSE)
|
||||
set(CMAKE_LINKER_PUSHPOP_STATE_SUPPORTED TRUE)
|
||||
set(CMAKE_CXX_LINKER_PUSHPOP_STATE_SUPPORTED TRUE)
|
||||
|
||||
# Save compiler ABI information.
|
||||
set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
|
||||
set(CMAKE_CXX_COMPILER_ABI "")
|
||||
set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN")
|
||||
set(CMAKE_CXX_LIBRARY_ARCHITECTURE "")
|
||||
|
||||
if(CMAKE_CXX_SIZEOF_DATA_PTR)
|
||||
set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
|
||||
endif()
|
||||
|
||||
if(CMAKE_CXX_COMPILER_ABI)
|
||||
set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
|
||||
endif()
|
||||
|
||||
if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
|
||||
set(CMAKE_LIBRARY_ARCHITECTURE "")
|
||||
endif()
|
||||
|
||||
set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
|
||||
if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
|
||||
set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
|
||||
endif()
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "C:/msys64/mingw64/include/c++/15.2.0;C:/msys64/mingw64/include/c++/15.2.0/x86_64-w64-mingw32;C:/msys64/mingw64/include/c++/15.2.0/backward;C:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/15.2.0/include;C:/msys64/mingw64/include;C:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/15.2.0/include-fixed")
|
||||
set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;mingw32;gcc_s;gcc;mingwex;kernel32;pthread;advapi32;shell32;user32;kernel32;mingw32;gcc_s;gcc;mingwex;kernel32")
|
||||
set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "C:/msys64/mingw64/lib/gcc/x86_64-w64-mingw32/15.2.0;C:/msys64/mingw64/lib/gcc;C:/msys64/mingw64/x86_64-w64-mingw32/lib;C:/msys64/mingw64/lib")
|
||||
set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
|
||||
set(CMAKE_CXX_COMPILER_CLANG_RESOURCE_DIR "")
|
||||
|
||||
set(CMAKE_CXX_COMPILER_IMPORT_STD "")
|
||||
### Imported target for C++23 standard library
|
||||
set(CMAKE_CXX23_COMPILER_IMPORT_STD_NOT_FOUND_MESSAGE "Experimental `import std` support not enabled when detecting toolchain; it must be set before `CXX` is enabled (usually a `project()` call)")
|
||||
|
||||
|
||||
### Imported target for C++26 standard library
|
||||
set(CMAKE_CXX26_COMPILER_IMPORT_STD_NOT_FOUND_MESSAGE "Experimental `import std` support not enabled when detecting toolchain; it must be set before `CXX` is enabled (usually a `project()` call)")
|
||||
|
||||
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,6 @@
|
||||
set(CMAKE_RC_COMPILER "C:/msys64/mingw64/bin/windres.exe")
|
||||
set(CMAKE_RC_COMPILER_ARG1 "")
|
||||
set(CMAKE_RC_COMPILER_LOADED 1)
|
||||
set(CMAKE_RC_SOURCE_FILE_EXTENSIONS rc;RC)
|
||||
set(CMAKE_RC_OUTPUT_EXTENSION .obj)
|
||||
set(CMAKE_RC_COMPILER_ENV_VAR "RC")
|
||||
@@ -0,0 +1,15 @@
|
||||
set(CMAKE_HOST_SYSTEM "Windows-10.0.19045")
|
||||
set(CMAKE_HOST_SYSTEM_NAME "Windows")
|
||||
set(CMAKE_HOST_SYSTEM_VERSION "10.0.19045")
|
||||
set(CMAKE_HOST_SYSTEM_PROCESSOR "AMD64")
|
||||
|
||||
|
||||
|
||||
set(CMAKE_SYSTEM "Windows-10.0.19045")
|
||||
set(CMAKE_SYSTEM_NAME "Windows")
|
||||
set(CMAKE_SYSTEM_VERSION "10.0.19045")
|
||||
set(CMAKE_SYSTEM_PROCESSOR "AMD64")
|
||||
|
||||
set(CMAKE_CROSSCOMPILING "FALSE")
|
||||
|
||||
set(CMAKE_SYSTEM_LOADED 1)
|
||||
@@ -0,0 +1,934 @@
|
||||
#ifdef __cplusplus
|
||||
# error "A C++ compiler has been selected for C."
|
||||
#endif
|
||||
|
||||
#if defined(__18CXX)
|
||||
# define ID_VOID_MAIN
|
||||
#endif
|
||||
#if defined(__CLASSIC_C__)
|
||||
/* cv-qualifiers did not exist in K&R C */
|
||||
# define const
|
||||
# define volatile
|
||||
#endif
|
||||
|
||||
#if !defined(__has_include)
|
||||
/* If the compiler does not have __has_include, pretend the answer is
|
||||
always no. */
|
||||
# define __has_include(x) 0
|
||||
#endif
|
||||
|
||||
|
||||
/* Version number components: V=Version, R=Revision, P=Patch
|
||||
Version date components: YYYY=Year, MM=Month, DD=Day */
|
||||
|
||||
#if defined(__INTEL_COMPILER) || defined(__ICC)
|
||||
# define COMPILER_ID "Intel"
|
||||
# if defined(_MSC_VER)
|
||||
# define SIMULATE_ID "MSVC"
|
||||
# endif
|
||||
# if defined(__GNUC__)
|
||||
# define SIMULATE_ID "GNU"
|
||||
# endif
|
||||
/* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
|
||||
except that a few beta releases use the old format with V=2021. */
|
||||
# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
|
||||
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
|
||||
# if defined(__INTEL_COMPILER_UPDATE)
|
||||
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
|
||||
# else
|
||||
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
|
||||
# endif
|
||||
# else
|
||||
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER)
|
||||
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE)
|
||||
/* The third version component from --version is an update index,
|
||||
but no macro is provided for it. */
|
||||
# define COMPILER_VERSION_PATCH DEC(0)
|
||||
# endif
|
||||
# if defined(__INTEL_COMPILER_BUILD_DATE)
|
||||
/* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
|
||||
# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
|
||||
# endif
|
||||
# if defined(_MSC_VER)
|
||||
/* _MSC_VER = VVRR */
|
||||
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
# endif
|
||||
# if defined(__GNUC__)
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
|
||||
# elif defined(__GNUG__)
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
|
||||
# endif
|
||||
# if defined(__GNUC_MINOR__)
|
||||
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
|
||||
# endif
|
||||
# if defined(__GNUC_PATCHLEVEL__)
|
||||
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)
|
||||
# define COMPILER_ID "IntelLLVM"
|
||||
#if defined(_MSC_VER)
|
||||
# define SIMULATE_ID "MSVC"
|
||||
#endif
|
||||
#if defined(__GNUC__)
|
||||
# define SIMULATE_ID "GNU"
|
||||
#endif
|
||||
/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
|
||||
* later. Look for 6 digit vs. 8 digit version number to decide encoding.
|
||||
* VVVV is no smaller than the current year when a version is released.
|
||||
*/
|
||||
#if __INTEL_LLVM_COMPILER < 1000000L
|
||||
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10)
|
||||
#else
|
||||
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100)
|
||||
#endif
|
||||
#if defined(_MSC_VER)
|
||||
/* _MSC_VER = VVRR */
|
||||
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
#endif
|
||||
#if defined(__GNUC__)
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
|
||||
#elif defined(__GNUG__)
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
|
||||
#endif
|
||||
#if defined(__GNUC_MINOR__)
|
||||
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
|
||||
#endif
|
||||
#if defined(__GNUC_PATCHLEVEL__)
|
||||
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
|
||||
#endif
|
||||
|
||||
#elif defined(__PATHCC__)
|
||||
# define COMPILER_ID "PathScale"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
|
||||
# if defined(__PATHCC_PATCHLEVEL__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
|
||||
# define COMPILER_ID "Embarcadero"
|
||||
# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
|
||||
# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
|
||||
# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
|
||||
|
||||
#elif defined(__BORLANDC__)
|
||||
# define COMPILER_ID "Borland"
|
||||
/* __BORLANDC__ = 0xVRR */
|
||||
# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
|
||||
# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
|
||||
|
||||
#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
|
||||
# define COMPILER_ID "Watcom"
|
||||
/* __WATCOMC__ = VVRR */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
|
||||
# if (__WATCOMC__ % 10) > 0
|
||||
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
|
||||
# endif
|
||||
|
||||
#elif defined(__WATCOMC__)
|
||||
# define COMPILER_ID "OpenWatcom"
|
||||
/* __WATCOMC__ = VVRP + 1100 */
|
||||
# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
|
||||
# if (__WATCOMC__ % 10) > 0
|
||||
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
|
||||
# endif
|
||||
|
||||
#elif defined(__SUNPRO_C)
|
||||
# define COMPILER_ID "SunPro"
|
||||
# if __SUNPRO_C >= 0x5100
|
||||
/* __SUNPRO_C = 0xVRRP */
|
||||
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12)
|
||||
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF)
|
||||
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
|
||||
# else
|
||||
/* __SUNPRO_CC = 0xVRP */
|
||||
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8)
|
||||
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF)
|
||||
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
|
||||
# endif
|
||||
|
||||
#elif defined(__HP_cc)
|
||||
# define COMPILER_ID "HP"
|
||||
/* __HP_cc = VVRRPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100)
|
||||
|
||||
#elif defined(__DECC)
|
||||
# define COMPILER_ID "Compaq"
|
||||
/* __DECC_VER = VVRRTPPPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000)
|
||||
|
||||
#elif defined(__IBMC__) && defined(__COMPILER_VER__)
|
||||
# define COMPILER_ID "zOS"
|
||||
/* __IBMC__ = VRP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
|
||||
|
||||
#elif defined(__open_xl__) && defined(__clang__)
|
||||
# define COMPILER_ID "IBMClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__open_xl_release__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__)
|
||||
# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__)
|
||||
# define COMPILER_VERSION_INTERNAL_STR __clang_version__
|
||||
|
||||
|
||||
#elif defined(__ibmxl__) && defined(__clang__)
|
||||
# define COMPILER_ID "XLClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
|
||||
# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
|
||||
|
||||
|
||||
#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800
|
||||
# define COMPILER_ID "XL"
|
||||
/* __IBMC__ = VRP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
|
||||
|
||||
#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800
|
||||
# define COMPILER_ID "VisualAge"
|
||||
/* __IBMC__ = VRP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
|
||||
|
||||
#elif defined(__NVCOMPILER)
|
||||
# define COMPILER_ID "NVHPC"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__)
|
||||
# if defined(__NVCOMPILER_PATCHLEVEL__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif defined(__PGI)
|
||||
# define COMPILER_ID "PGI"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
|
||||
# if defined(__PGIC_PATCHLEVEL__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif defined(__clang__) && defined(__cray__)
|
||||
# define COMPILER_ID "CrayClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__cray_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__cray_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__)
|
||||
# define COMPILER_VERSION_INTERNAL_STR __clang_version__
|
||||
|
||||
|
||||
#elif defined(_CRAYC)
|
||||
# define COMPILER_ID "Cray"
|
||||
# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
|
||||
# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
|
||||
|
||||
#elif defined(__TI_COMPILER_VERSION__)
|
||||
# define COMPILER_ID "TI"
|
||||
/* __TI_COMPILER_VERSION__ = VVVRRRPPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
|
||||
# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
|
||||
|
||||
#elif defined(__CLANG_FUJITSU)
|
||||
# define COMPILER_ID "FujitsuClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
|
||||
# define COMPILER_VERSION_INTERNAL_STR __clang_version__
|
||||
|
||||
|
||||
#elif defined(__FUJITSU)
|
||||
# define COMPILER_ID "Fujitsu"
|
||||
# if defined(__FCC_version__)
|
||||
# define COMPILER_VERSION __FCC_version__
|
||||
# elif defined(__FCC_major__)
|
||||
# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
|
||||
# endif
|
||||
# if defined(__fcc_version)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__fcc_version)
|
||||
# elif defined(__FCC_VERSION)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION)
|
||||
# endif
|
||||
|
||||
|
||||
#elif defined(__ghs__)
|
||||
# define COMPILER_ID "GHS"
|
||||
/* __GHS_VERSION_NUMBER = VVVVRP */
|
||||
# ifdef __GHS_VERSION_NUMBER
|
||||
# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10)
|
||||
# endif
|
||||
|
||||
#elif defined(__TASKING__)
|
||||
# define COMPILER_ID "Tasking"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__VERSION__)
|
||||
|
||||
#elif defined(__ORANGEC__)
|
||||
# define COMPILER_ID "OrangeC"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__)
|
||||
|
||||
#elif defined(__RENESAS__)
|
||||
# define COMPILER_ID "Renesas"
|
||||
/* __RENESAS_VERSION__ = 0xVVRRPP00 */
|
||||
# define COMPILER_VERSION_MAJOR HEX(__RENESAS_VERSION__ >> 24 & 0xFF)
|
||||
# define COMPILER_VERSION_MINOR HEX(__RENESAS_VERSION__ >> 16 & 0xFF)
|
||||
# define COMPILER_VERSION_PATCH HEX(__RENESAS_VERSION__ >> 8 & 0xFF)
|
||||
|
||||
#elif defined(__TINYC__)
|
||||
# define COMPILER_ID "TinyCC"
|
||||
|
||||
#elif defined(__BCC__)
|
||||
# define COMPILER_ID "Bruce"
|
||||
|
||||
#elif defined(__SCO_VERSION__)
|
||||
# define COMPILER_ID "SCO"
|
||||
|
||||
#elif defined(__ARMCC_VERSION) && !defined(__clang__)
|
||||
# define COMPILER_ID "ARMCC"
|
||||
#if __ARMCC_VERSION >= 1000000
|
||||
/* __ARMCC_VERSION = VRRPPPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
|
||||
#else
|
||||
/* __ARMCC_VERSION = VRPPPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
|
||||
#endif
|
||||
|
||||
|
||||
#elif defined(__clang__) && defined(__apple_build_version__)
|
||||
# define COMPILER_ID "AppleClang"
|
||||
# if defined(_MSC_VER)
|
||||
# define SIMULATE_ID "MSVC"
|
||||
# endif
|
||||
# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
|
||||
# if defined(_MSC_VER)
|
||||
/* _MSC_VER = VVRR */
|
||||
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
# endif
|
||||
# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
|
||||
|
||||
#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
|
||||
# define COMPILER_ID "ARMClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION/100 % 100)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
|
||||
|
||||
#elif defined(__clang__) && defined(__ti__)
|
||||
# define COMPILER_ID "TIClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ti_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ti_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ti_patchlevel__)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__ti_version__)
|
||||
|
||||
#elif defined(__clang__)
|
||||
# define COMPILER_ID "Clang"
|
||||
# if defined(_MSC_VER)
|
||||
# define SIMULATE_ID "MSVC"
|
||||
# endif
|
||||
# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
|
||||
# if defined(_MSC_VER)
|
||||
/* _MSC_VER = VVRR */
|
||||
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
# endif
|
||||
|
||||
#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__))
|
||||
# define COMPILER_ID "LCC"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100)
|
||||
# if defined(__LCC_MINOR__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__)
|
||||
# endif
|
||||
# if defined(__GNUC__) && defined(__GNUC_MINOR__)
|
||||
# define SIMULATE_ID "GNU"
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
|
||||
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
|
||||
# if defined(__GNUC_PATCHLEVEL__)
|
||||
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
|
||||
# endif
|
||||
# endif
|
||||
|
||||
#elif defined(__GNUC__)
|
||||
# define COMPILER_ID "GNU"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
|
||||
# if defined(__GNUC_MINOR__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
|
||||
# endif
|
||||
# if defined(__GNUC_PATCHLEVEL__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif defined(_MSC_VER)
|
||||
# define COMPILER_ID "MSVC"
|
||||
/* _MSC_VER = VVRR */
|
||||
# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
# if defined(_MSC_FULL_VER)
|
||||
# if _MSC_VER >= 1400
|
||||
/* _MSC_FULL_VER = VVRRPPPPP */
|
||||
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
|
||||
# else
|
||||
/* _MSC_FULL_VER = VVRRPPPP */
|
||||
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
|
||||
# endif
|
||||
# endif
|
||||
# if defined(_MSC_BUILD)
|
||||
# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
|
||||
# endif
|
||||
|
||||
#elif defined(_ADI_COMPILER)
|
||||
# define COMPILER_ID "ADSP"
|
||||
#if defined(__VERSIONNUM__)
|
||||
/* __VERSIONNUM__ = 0xVVRRPPTT */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF)
|
||||
# define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF)
|
||||
# define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF)
|
||||
# define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 0xFF)
|
||||
#endif
|
||||
|
||||
#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
|
||||
# define COMPILER_ID "IAR"
|
||||
# if defined(__VER__) && defined(__ICCARM__)
|
||||
# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
|
||||
# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
|
||||
# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__))
|
||||
# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
|
||||
# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
|
||||
# endif
|
||||
|
||||
#elif defined(__DCC__) && defined(_DIAB_TOOL)
|
||||
# define COMPILER_ID "Diab"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__VERSION_MAJOR_NUMBER__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__VERSION_MINOR_NUMBER__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__VERSION_ARCH_FEATURE_NUMBER__)
|
||||
# define COMPILER_VERSION_TWEAK DEC(__VERSION_BUG_FIX_NUMBER__)
|
||||
|
||||
|
||||
#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC)
|
||||
# define COMPILER_ID "SDCC"
|
||||
# if defined(__SDCC_VERSION_MAJOR)
|
||||
# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR)
|
||||
# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR)
|
||||
# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH)
|
||||
# else
|
||||
/* SDCC = VRP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(SDCC/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(SDCC % 10)
|
||||
# endif
|
||||
|
||||
|
||||
/* These compilers are either not known or too old to define an
|
||||
identification macro. Try to identify the platform and guess that
|
||||
it is the native compiler. */
|
||||
#elif defined(__hpux) || defined(__hpua)
|
||||
# define COMPILER_ID "HP"
|
||||
|
||||
#else /* unknown compiler */
|
||||
# define COMPILER_ID ""
|
||||
#endif
|
||||
|
||||
/* Construct the string literal in pieces to prevent the source from
|
||||
getting matched. Store it in a pointer rather than an array
|
||||
because some compilers will just produce instructions to fill the
|
||||
array rather than assigning a pointer to a static array. */
|
||||
char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
|
||||
#ifdef SIMULATE_ID
|
||||
char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
|
||||
#endif
|
||||
|
||||
#ifdef __QNXNTO__
|
||||
char const* qnxnto = "INFO" ":" "qnxnto[]";
|
||||
#endif
|
||||
|
||||
#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
|
||||
char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
|
||||
#endif
|
||||
|
||||
#define STRINGIFY_HELPER(X) #X
|
||||
#define STRINGIFY(X) STRINGIFY_HELPER(X)
|
||||
|
||||
/* Identify known platforms by name. */
|
||||
#if defined(__linux) || defined(__linux__) || defined(linux)
|
||||
# define PLATFORM_ID "Linux"
|
||||
|
||||
#elif defined(__MSYS__)
|
||||
# define PLATFORM_ID "MSYS"
|
||||
|
||||
#elif defined(__CYGWIN__)
|
||||
# define PLATFORM_ID "Cygwin"
|
||||
|
||||
#elif defined(__MINGW32__)
|
||||
# define PLATFORM_ID "MinGW"
|
||||
|
||||
#elif defined(__APPLE__)
|
||||
# define PLATFORM_ID "Darwin"
|
||||
|
||||
#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
|
||||
# define PLATFORM_ID "Windows"
|
||||
|
||||
#elif defined(__FreeBSD__) || defined(__FreeBSD)
|
||||
# define PLATFORM_ID "FreeBSD"
|
||||
|
||||
#elif defined(__NetBSD__) || defined(__NetBSD)
|
||||
# define PLATFORM_ID "NetBSD"
|
||||
|
||||
#elif defined(__OpenBSD__) || defined(__OPENBSD)
|
||||
# define PLATFORM_ID "OpenBSD"
|
||||
|
||||
#elif defined(__sun) || defined(sun)
|
||||
# define PLATFORM_ID "SunOS"
|
||||
|
||||
#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
|
||||
# define PLATFORM_ID "AIX"
|
||||
|
||||
#elif defined(__hpux) || defined(__hpux__)
|
||||
# define PLATFORM_ID "HP-UX"
|
||||
|
||||
#elif defined(__HAIKU__)
|
||||
# define PLATFORM_ID "Haiku"
|
||||
|
||||
#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
|
||||
# define PLATFORM_ID "BeOS"
|
||||
|
||||
#elif defined(__QNX__) || defined(__QNXNTO__)
|
||||
# define PLATFORM_ID "QNX"
|
||||
|
||||
#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
|
||||
# define PLATFORM_ID "Tru64"
|
||||
|
||||
#elif defined(__riscos) || defined(__riscos__)
|
||||
# define PLATFORM_ID "RISCos"
|
||||
|
||||
#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
|
||||
# define PLATFORM_ID "SINIX"
|
||||
|
||||
#elif defined(__UNIX_SV__)
|
||||
# define PLATFORM_ID "UNIX_SV"
|
||||
|
||||
#elif defined(__bsdos__)
|
||||
# define PLATFORM_ID "BSDOS"
|
||||
|
||||
#elif defined(_MPRAS) || defined(MPRAS)
|
||||
# define PLATFORM_ID "MP-RAS"
|
||||
|
||||
#elif defined(__osf) || defined(__osf__)
|
||||
# define PLATFORM_ID "OSF1"
|
||||
|
||||
#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
|
||||
# define PLATFORM_ID "SCO_SV"
|
||||
|
||||
#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
|
||||
# define PLATFORM_ID "ULTRIX"
|
||||
|
||||
#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
|
||||
# define PLATFORM_ID "Xenix"
|
||||
|
||||
#elif defined(__WATCOMC__)
|
||||
# if defined(__LINUX__)
|
||||
# define PLATFORM_ID "Linux"
|
||||
|
||||
# elif defined(__DOS__)
|
||||
# define PLATFORM_ID "DOS"
|
||||
|
||||
# elif defined(__OS2__)
|
||||
# define PLATFORM_ID "OS2"
|
||||
|
||||
# elif defined(__WINDOWS__)
|
||||
# define PLATFORM_ID "Windows3x"
|
||||
|
||||
# elif defined(__VXWORKS__)
|
||||
# define PLATFORM_ID "VxWorks"
|
||||
|
||||
# else /* unknown platform */
|
||||
# define PLATFORM_ID
|
||||
# endif
|
||||
|
||||
#elif defined(__INTEGRITY)
|
||||
# if defined(INT_178B)
|
||||
# define PLATFORM_ID "Integrity178"
|
||||
|
||||
# else /* regular Integrity */
|
||||
# define PLATFORM_ID "Integrity"
|
||||
# endif
|
||||
|
||||
# elif defined(_ADI_COMPILER)
|
||||
# define PLATFORM_ID "ADSP"
|
||||
|
||||
#else /* unknown platform */
|
||||
# define PLATFORM_ID
|
||||
|
||||
#endif
|
||||
|
||||
/* For windows compilers MSVC and Intel we can determine
|
||||
the architecture of the compiler being used. This is because
|
||||
the compilers do not have flags that can change the architecture,
|
||||
but rather depend on which compiler is being used
|
||||
*/
|
||||
#if defined(_WIN32) && defined(_MSC_VER)
|
||||
# if defined(_M_IA64)
|
||||
# define ARCHITECTURE_ID "IA64"
|
||||
|
||||
# elif defined(_M_ARM64EC)
|
||||
# define ARCHITECTURE_ID "ARM64EC"
|
||||
|
||||
# elif defined(_M_X64) || defined(_M_AMD64)
|
||||
# define ARCHITECTURE_ID "x64"
|
||||
|
||||
# elif defined(_M_IX86)
|
||||
# define ARCHITECTURE_ID "X86"
|
||||
|
||||
# elif defined(_M_ARM64)
|
||||
# define ARCHITECTURE_ID "ARM64"
|
||||
|
||||
# elif defined(_M_ARM)
|
||||
# if _M_ARM == 4
|
||||
# define ARCHITECTURE_ID "ARMV4I"
|
||||
# elif _M_ARM == 5
|
||||
# define ARCHITECTURE_ID "ARMV5I"
|
||||
# else
|
||||
# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
|
||||
# endif
|
||||
|
||||
# elif defined(_M_MIPS)
|
||||
# define ARCHITECTURE_ID "MIPS"
|
||||
|
||||
# elif defined(_M_SH)
|
||||
# define ARCHITECTURE_ID "SHx"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__WATCOMC__)
|
||||
# if defined(_M_I86)
|
||||
# define ARCHITECTURE_ID "I86"
|
||||
|
||||
# elif defined(_M_IX86)
|
||||
# define ARCHITECTURE_ID "X86"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
|
||||
# if defined(__ICCARM__)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# elif defined(__ICCRX__)
|
||||
# define ARCHITECTURE_ID "RX"
|
||||
|
||||
# elif defined(__ICCRH850__)
|
||||
# define ARCHITECTURE_ID "RH850"
|
||||
|
||||
# elif defined(__ICCRL78__)
|
||||
# define ARCHITECTURE_ID "RL78"
|
||||
|
||||
# elif defined(__ICCRISCV__)
|
||||
# define ARCHITECTURE_ID "RISCV"
|
||||
|
||||
# elif defined(__ICCAVR__)
|
||||
# define ARCHITECTURE_ID "AVR"
|
||||
|
||||
# elif defined(__ICC430__)
|
||||
# define ARCHITECTURE_ID "MSP430"
|
||||
|
||||
# elif defined(__ICCV850__)
|
||||
# define ARCHITECTURE_ID "V850"
|
||||
|
||||
# elif defined(__ICC8051__)
|
||||
# define ARCHITECTURE_ID "8051"
|
||||
|
||||
# elif defined(__ICCSTM8__)
|
||||
# define ARCHITECTURE_ID "STM8"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__ghs__)
|
||||
# if defined(__PPC64__)
|
||||
# define ARCHITECTURE_ID "PPC64"
|
||||
|
||||
# elif defined(__ppc__)
|
||||
# define ARCHITECTURE_ID "PPC"
|
||||
|
||||
# elif defined(__ARM__)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# elif defined(__x86_64__)
|
||||
# define ARCHITECTURE_ID "x64"
|
||||
|
||||
# elif defined(__i386__)
|
||||
# define ARCHITECTURE_ID "X86"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__clang__) && defined(__ti__)
|
||||
# if defined(__ARM_ARCH)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__TI_COMPILER_VERSION__)
|
||||
# if defined(__TI_ARM__)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# elif defined(__MSP430__)
|
||||
# define ARCHITECTURE_ID "MSP430"
|
||||
|
||||
# elif defined(__TMS320C28XX__)
|
||||
# define ARCHITECTURE_ID "TMS320C28x"
|
||||
|
||||
# elif defined(__TMS320C6X__) || defined(_TMS320C6X)
|
||||
# define ARCHITECTURE_ID "TMS320C6x"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
# elif defined(__ADSPSHARC__)
|
||||
# define ARCHITECTURE_ID "SHARC"
|
||||
|
||||
# elif defined(__ADSPBLACKFIN__)
|
||||
# define ARCHITECTURE_ID "Blackfin"
|
||||
|
||||
#elif defined(__TASKING__)
|
||||
|
||||
# if defined(__CTC__) || defined(__CPTC__)
|
||||
# define ARCHITECTURE_ID "TriCore"
|
||||
|
||||
# elif defined(__CMCS__)
|
||||
# define ARCHITECTURE_ID "MCS"
|
||||
|
||||
# elif defined(__CARM__) || defined(__CPARM__)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# elif defined(__CARC__)
|
||||
# define ARCHITECTURE_ID "ARC"
|
||||
|
||||
# elif defined(__C51__)
|
||||
# define ARCHITECTURE_ID "8051"
|
||||
|
||||
# elif defined(__CPCP__)
|
||||
# define ARCHITECTURE_ID "PCP"
|
||||
|
||||
# else
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__RENESAS__)
|
||||
# if defined(__CCRX__)
|
||||
# define ARCHITECTURE_ID "RX"
|
||||
|
||||
# elif defined(__CCRL__)
|
||||
# define ARCHITECTURE_ID "RL78"
|
||||
|
||||
# elif defined(__CCRH__)
|
||||
# define ARCHITECTURE_ID "RH850"
|
||||
|
||||
# else
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#else
|
||||
# define ARCHITECTURE_ID
|
||||
#endif
|
||||
|
||||
/* Convert integer to decimal digit literals. */
|
||||
#define DEC(n) \
|
||||
('0' + (((n) / 10000000)%10)), \
|
||||
('0' + (((n) / 1000000)%10)), \
|
||||
('0' + (((n) / 100000)%10)), \
|
||||
('0' + (((n) / 10000)%10)), \
|
||||
('0' + (((n) / 1000)%10)), \
|
||||
('0' + (((n) / 100)%10)), \
|
||||
('0' + (((n) / 10)%10)), \
|
||||
('0' + ((n) % 10))
|
||||
|
||||
/* Convert integer to hex digit literals. */
|
||||
#define HEX(n) \
|
||||
('0' + ((n)>>28 & 0xF)), \
|
||||
('0' + ((n)>>24 & 0xF)), \
|
||||
('0' + ((n)>>20 & 0xF)), \
|
||||
('0' + ((n)>>16 & 0xF)), \
|
||||
('0' + ((n)>>12 & 0xF)), \
|
||||
('0' + ((n)>>8 & 0xF)), \
|
||||
('0' + ((n)>>4 & 0xF)), \
|
||||
('0' + ((n) & 0xF))
|
||||
|
||||
/* Construct a string literal encoding the version number. */
|
||||
#ifdef COMPILER_VERSION
|
||||
char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]";
|
||||
|
||||
/* Construct a string literal encoding the version number components. */
|
||||
#elif defined(COMPILER_VERSION_MAJOR)
|
||||
char const info_version[] = {
|
||||
'I', 'N', 'F', 'O', ':',
|
||||
'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
|
||||
COMPILER_VERSION_MAJOR,
|
||||
# ifdef COMPILER_VERSION_MINOR
|
||||
'.', COMPILER_VERSION_MINOR,
|
||||
# ifdef COMPILER_VERSION_PATCH
|
||||
'.', COMPILER_VERSION_PATCH,
|
||||
# ifdef COMPILER_VERSION_TWEAK
|
||||
'.', COMPILER_VERSION_TWEAK,
|
||||
# endif
|
||||
# endif
|
||||
# endif
|
||||
']','\0'};
|
||||
#endif
|
||||
|
||||
/* Construct a string literal encoding the internal version number. */
|
||||
#ifdef COMPILER_VERSION_INTERNAL
|
||||
char const info_version_internal[] = {
|
||||
'I', 'N', 'F', 'O', ':',
|
||||
'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
|
||||
'i','n','t','e','r','n','a','l','[',
|
||||
COMPILER_VERSION_INTERNAL,']','\0'};
|
||||
#elif defined(COMPILER_VERSION_INTERNAL_STR)
|
||||
char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]";
|
||||
#endif
|
||||
|
||||
/* Construct a string literal encoding the version number components. */
|
||||
#ifdef SIMULATE_VERSION_MAJOR
|
||||
char const info_simulate_version[] = {
|
||||
'I', 'N', 'F', 'O', ':',
|
||||
's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
|
||||
SIMULATE_VERSION_MAJOR,
|
||||
# ifdef SIMULATE_VERSION_MINOR
|
||||
'.', SIMULATE_VERSION_MINOR,
|
||||
# ifdef SIMULATE_VERSION_PATCH
|
||||
'.', SIMULATE_VERSION_PATCH,
|
||||
# ifdef SIMULATE_VERSION_TWEAK
|
||||
'.', SIMULATE_VERSION_TWEAK,
|
||||
# endif
|
||||
# endif
|
||||
# endif
|
||||
']','\0'};
|
||||
#endif
|
||||
|
||||
/* Construct the string literal in pieces to prevent the source from
|
||||
getting matched. Store it in a pointer rather than an array
|
||||
because some compilers will just produce instructions to fill the
|
||||
array rather than assigning a pointer to a static array. */
|
||||
char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
|
||||
char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
|
||||
|
||||
|
||||
|
||||
#define C_STD_99 199901L
|
||||
#define C_STD_11 201112L
|
||||
#define C_STD_17 201710L
|
||||
#define C_STD_23 202311L
|
||||
|
||||
#ifdef __STDC_VERSION__
|
||||
# define C_STD __STDC_VERSION__
|
||||
#endif
|
||||
|
||||
#if !defined(__STDC__) && !defined(__clang__) && !defined(__RENESAS__)
|
||||
# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__)
|
||||
# define C_VERSION "90"
|
||||
# else
|
||||
# define C_VERSION
|
||||
# endif
|
||||
#elif C_STD > C_STD_17
|
||||
# define C_VERSION "23"
|
||||
#elif C_STD > C_STD_11
|
||||
# define C_VERSION "17"
|
||||
#elif C_STD > C_STD_99
|
||||
# define C_VERSION "11"
|
||||
#elif C_STD >= C_STD_99
|
||||
# define C_VERSION "99"
|
||||
#else
|
||||
# define C_VERSION "90"
|
||||
#endif
|
||||
const char* info_language_standard_default =
|
||||
"INFO" ":" "standard_default[" C_VERSION "]";
|
||||
|
||||
const char* info_language_extensions_default = "INFO" ":" "extensions_default["
|
||||
#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \
|
||||
defined(__TI_COMPILER_VERSION__) || defined(__RENESAS__)) && \
|
||||
!defined(__STRICT_ANSI__)
|
||||
"ON"
|
||||
#else
|
||||
"OFF"
|
||||
#endif
|
||||
"]";
|
||||
|
||||
/*--------------------------------------------------------------------------*/
|
||||
|
||||
#ifdef ID_VOID_MAIN
|
||||
void main() {}
|
||||
#else
|
||||
# if defined(__CLASSIC_C__)
|
||||
int main(argc, argv) int argc; char *argv[];
|
||||
# else
|
||||
int main(int argc, char* argv[])
|
||||
# endif
|
||||
{
|
||||
int require = 0;
|
||||
require += info_compiler[argc];
|
||||
require += info_platform[argc];
|
||||
require += info_arch[argc];
|
||||
#ifdef COMPILER_VERSION_MAJOR
|
||||
require += info_version[argc];
|
||||
#endif
|
||||
#if defined(COMPILER_VERSION_INTERNAL) || defined(COMPILER_VERSION_INTERNAL_STR)
|
||||
require += info_version_internal[argc];
|
||||
#endif
|
||||
#ifdef SIMULATE_ID
|
||||
require += info_simulate[argc];
|
||||
#endif
|
||||
#ifdef SIMULATE_VERSION_MAJOR
|
||||
require += info_simulate_version[argc];
|
||||
#endif
|
||||
#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
|
||||
require += info_cray[argc];
|
||||
#endif
|
||||
require += info_language_standard_default[argc];
|
||||
require += info_language_extensions_default[argc];
|
||||
(void)argv;
|
||||
return require;
|
||||
}
|
||||
#endif
|
||||
Binary file not shown.
@@ -0,0 +1,949 @@
|
||||
/* This source file must have a .cpp extension so that all C++ compilers
|
||||
recognize the extension without flags. Borland does not know .cxx for
|
||||
example. */
|
||||
#ifndef __cplusplus
|
||||
# error "A C compiler has been selected for C++."
|
||||
#endif
|
||||
|
||||
#if !defined(__has_include)
|
||||
/* If the compiler does not have __has_include, pretend the answer is
|
||||
always no. */
|
||||
# define __has_include(x) 0
|
||||
#endif
|
||||
|
||||
|
||||
/* Version number components: V=Version, R=Revision, P=Patch
|
||||
Version date components: YYYY=Year, MM=Month, DD=Day */
|
||||
|
||||
#if defined(__INTEL_COMPILER) || defined(__ICC)
|
||||
# define COMPILER_ID "Intel"
|
||||
# if defined(_MSC_VER)
|
||||
# define SIMULATE_ID "MSVC"
|
||||
# endif
|
||||
# if defined(__GNUC__)
|
||||
# define SIMULATE_ID "GNU"
|
||||
# endif
|
||||
/* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
|
||||
except that a few beta releases use the old format with V=2021. */
|
||||
# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
|
||||
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
|
||||
# if defined(__INTEL_COMPILER_UPDATE)
|
||||
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
|
||||
# else
|
||||
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
|
||||
# endif
|
||||
# else
|
||||
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER)
|
||||
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE)
|
||||
/* The third version component from --version is an update index,
|
||||
but no macro is provided for it. */
|
||||
# define COMPILER_VERSION_PATCH DEC(0)
|
||||
# endif
|
||||
# if defined(__INTEL_COMPILER_BUILD_DATE)
|
||||
/* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
|
||||
# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
|
||||
# endif
|
||||
# if defined(_MSC_VER)
|
||||
/* _MSC_VER = VVRR */
|
||||
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
# endif
|
||||
# if defined(__GNUC__)
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
|
||||
# elif defined(__GNUG__)
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
|
||||
# endif
|
||||
# if defined(__GNUC_MINOR__)
|
||||
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
|
||||
# endif
|
||||
# if defined(__GNUC_PATCHLEVEL__)
|
||||
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)
|
||||
# define COMPILER_ID "IntelLLVM"
|
||||
#if defined(_MSC_VER)
|
||||
# define SIMULATE_ID "MSVC"
|
||||
#endif
|
||||
#if defined(__GNUC__)
|
||||
# define SIMULATE_ID "GNU"
|
||||
#endif
|
||||
/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
|
||||
* later. Look for 6 digit vs. 8 digit version number to decide encoding.
|
||||
* VVVV is no smaller than the current year when a version is released.
|
||||
*/
|
||||
#if __INTEL_LLVM_COMPILER < 1000000L
|
||||
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10)
|
||||
#else
|
||||
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100)
|
||||
#endif
|
||||
#if defined(_MSC_VER)
|
||||
/* _MSC_VER = VVRR */
|
||||
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
#endif
|
||||
#if defined(__GNUC__)
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
|
||||
#elif defined(__GNUG__)
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
|
||||
#endif
|
||||
#if defined(__GNUC_MINOR__)
|
||||
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
|
||||
#endif
|
||||
#if defined(__GNUC_PATCHLEVEL__)
|
||||
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
|
||||
#endif
|
||||
|
||||
#elif defined(__PATHCC__)
|
||||
# define COMPILER_ID "PathScale"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
|
||||
# if defined(__PATHCC_PATCHLEVEL__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
|
||||
# define COMPILER_ID "Embarcadero"
|
||||
# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
|
||||
# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
|
||||
# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
|
||||
|
||||
#elif defined(__BORLANDC__)
|
||||
# define COMPILER_ID "Borland"
|
||||
/* __BORLANDC__ = 0xVRR */
|
||||
# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
|
||||
# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
|
||||
|
||||
#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
|
||||
# define COMPILER_ID "Watcom"
|
||||
/* __WATCOMC__ = VVRR */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
|
||||
# if (__WATCOMC__ % 10) > 0
|
||||
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
|
||||
# endif
|
||||
|
||||
#elif defined(__WATCOMC__)
|
||||
# define COMPILER_ID "OpenWatcom"
|
||||
/* __WATCOMC__ = VVRP + 1100 */
|
||||
# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
|
||||
# if (__WATCOMC__ % 10) > 0
|
||||
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
|
||||
# endif
|
||||
|
||||
#elif defined(__SUNPRO_CC)
|
||||
# define COMPILER_ID "SunPro"
|
||||
# if __SUNPRO_CC >= 0x5100
|
||||
/* __SUNPRO_CC = 0xVRRP */
|
||||
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12)
|
||||
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF)
|
||||
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
|
||||
# else
|
||||
/* __SUNPRO_CC = 0xVRP */
|
||||
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8)
|
||||
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF)
|
||||
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
|
||||
# endif
|
||||
|
||||
#elif defined(__HP_aCC)
|
||||
# define COMPILER_ID "HP"
|
||||
/* __HP_aCC = VVRRPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100)
|
||||
|
||||
#elif defined(__DECCXX)
|
||||
# define COMPILER_ID "Compaq"
|
||||
/* __DECCXX_VER = VVRRTPPPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000)
|
||||
|
||||
#elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
|
||||
# define COMPILER_ID "zOS"
|
||||
/* __IBMCPP__ = VRP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
|
||||
|
||||
#elif defined(__open_xl__) && defined(__clang__)
|
||||
# define COMPILER_ID "IBMClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__open_xl_release__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__)
|
||||
# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__)
|
||||
# define COMPILER_VERSION_INTERNAL_STR __clang_version__
|
||||
|
||||
|
||||
#elif defined(__ibmxl__) && defined(__clang__)
|
||||
# define COMPILER_ID "XLClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
|
||||
# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
|
||||
|
||||
|
||||
#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800
|
||||
# define COMPILER_ID "XL"
|
||||
/* __IBMCPP__ = VRP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
|
||||
|
||||
#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
|
||||
# define COMPILER_ID "VisualAge"
|
||||
/* __IBMCPP__ = VRP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
|
||||
|
||||
#elif defined(__NVCOMPILER)
|
||||
# define COMPILER_ID "NVHPC"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__)
|
||||
# if defined(__NVCOMPILER_PATCHLEVEL__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif defined(__PGI)
|
||||
# define COMPILER_ID "PGI"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
|
||||
# if defined(__PGIC_PATCHLEVEL__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif defined(__clang__) && defined(__cray__)
|
||||
# define COMPILER_ID "CrayClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__cray_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__cray_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__cray_patchlevel__)
|
||||
# define COMPILER_VERSION_INTERNAL_STR __clang_version__
|
||||
|
||||
|
||||
#elif defined(_CRAYC)
|
||||
# define COMPILER_ID "Cray"
|
||||
# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
|
||||
# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
|
||||
|
||||
#elif defined(__TI_COMPILER_VERSION__)
|
||||
# define COMPILER_ID "TI"
|
||||
/* __TI_COMPILER_VERSION__ = VVVRRRPPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
|
||||
# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
|
||||
|
||||
#elif defined(__CLANG_FUJITSU)
|
||||
# define COMPILER_ID "FujitsuClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
|
||||
# define COMPILER_VERSION_INTERNAL_STR __clang_version__
|
||||
|
||||
|
||||
#elif defined(__FUJITSU)
|
||||
# define COMPILER_ID "Fujitsu"
|
||||
# if defined(__FCC_version__)
|
||||
# define COMPILER_VERSION __FCC_version__
|
||||
# elif defined(__FCC_major__)
|
||||
# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
|
||||
# endif
|
||||
# if defined(__fcc_version)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__fcc_version)
|
||||
# elif defined(__FCC_VERSION)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION)
|
||||
# endif
|
||||
|
||||
|
||||
#elif defined(__ghs__)
|
||||
# define COMPILER_ID "GHS"
|
||||
/* __GHS_VERSION_NUMBER = VVVVRP */
|
||||
# ifdef __GHS_VERSION_NUMBER
|
||||
# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10)
|
||||
# endif
|
||||
|
||||
#elif defined(__TASKING__)
|
||||
# define COMPILER_ID "Tasking"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__VERSION__/1000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__VERSION__ % 100)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__VERSION__)
|
||||
|
||||
#elif defined(__ORANGEC__)
|
||||
# define COMPILER_ID "OrangeC"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ORANGEC_MAJOR__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ORANGEC_MINOR__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ORANGEC_PATCHLEVEL__)
|
||||
|
||||
#elif defined(__RENESAS__)
|
||||
# define COMPILER_ID "Renesas"
|
||||
/* __RENESAS_VERSION__ = 0xVVRRPP00 */
|
||||
# define COMPILER_VERSION_MAJOR HEX(__RENESAS_VERSION__ >> 24 & 0xFF)
|
||||
# define COMPILER_VERSION_MINOR HEX(__RENESAS_VERSION__ >> 16 & 0xFF)
|
||||
# define COMPILER_VERSION_PATCH HEX(__RENESAS_VERSION__ >> 8 & 0xFF)
|
||||
|
||||
#elif defined(__SCO_VERSION__)
|
||||
# define COMPILER_ID "SCO"
|
||||
|
||||
#elif defined(__ARMCC_VERSION) && !defined(__clang__)
|
||||
# define COMPILER_ID "ARMCC"
|
||||
#if __ARMCC_VERSION >= 1000000
|
||||
/* __ARMCC_VERSION = VRRPPPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
|
||||
#else
|
||||
/* __ARMCC_VERSION = VRPPPP */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
|
||||
#endif
|
||||
|
||||
|
||||
#elif defined(__clang__) && defined(__apple_build_version__)
|
||||
# define COMPILER_ID "AppleClang"
|
||||
# if defined(_MSC_VER)
|
||||
# define SIMULATE_ID "MSVC"
|
||||
# endif
|
||||
# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
|
||||
# if defined(_MSC_VER)
|
||||
/* _MSC_VER = VVRR */
|
||||
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
# endif
|
||||
# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
|
||||
|
||||
#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
|
||||
# define COMPILER_ID "ARMClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION/100 % 100)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
|
||||
|
||||
#elif defined(__clang__) && defined(__ti__)
|
||||
# define COMPILER_ID "TIClang"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__ti_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__ti_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__ti_patchlevel__)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__ti_version__)
|
||||
|
||||
#elif defined(__clang__)
|
||||
# define COMPILER_ID "Clang"
|
||||
# if defined(_MSC_VER)
|
||||
# define SIMULATE_ID "MSVC"
|
||||
# endif
|
||||
# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
|
||||
# if defined(_MSC_VER)
|
||||
/* _MSC_VER = VVRR */
|
||||
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
# endif
|
||||
|
||||
#elif defined(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__))
|
||||
# define COMPILER_ID "LCC"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__LCC__ / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC(__LCC__ % 100)
|
||||
# if defined(__LCC_MINOR__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__)
|
||||
# endif
|
||||
# if defined(__GNUC__) && defined(__GNUC_MINOR__)
|
||||
# define SIMULATE_ID "GNU"
|
||||
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
|
||||
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
|
||||
# if defined(__GNUC_PATCHLEVEL__)
|
||||
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
|
||||
# endif
|
||||
# endif
|
||||
|
||||
#elif defined(__GNUC__) || defined(__GNUG__)
|
||||
# define COMPILER_ID "GNU"
|
||||
# if defined(__GNUC__)
|
||||
# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
|
||||
# else
|
||||
# define COMPILER_VERSION_MAJOR DEC(__GNUG__)
|
||||
# endif
|
||||
# if defined(__GNUC_MINOR__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
|
||||
# endif
|
||||
# if defined(__GNUC_PATCHLEVEL__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
|
||||
# endif
|
||||
|
||||
#elif defined(_MSC_VER)
|
||||
# define COMPILER_ID "MSVC"
|
||||
/* _MSC_VER = VVRR */
|
||||
# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
|
||||
# if defined(_MSC_FULL_VER)
|
||||
# if _MSC_VER >= 1400
|
||||
/* _MSC_FULL_VER = VVRRPPPPP */
|
||||
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
|
||||
# else
|
||||
/* _MSC_FULL_VER = VVRRPPPP */
|
||||
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
|
||||
# endif
|
||||
# endif
|
||||
# if defined(_MSC_BUILD)
|
||||
# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
|
||||
# endif
|
||||
|
||||
#elif defined(_ADI_COMPILER)
|
||||
# define COMPILER_ID "ADSP"
|
||||
#if defined(__VERSIONNUM__)
|
||||
/* __VERSIONNUM__ = 0xVVRRPPTT */
|
||||
# define COMPILER_VERSION_MAJOR DEC(__VERSIONNUM__ >> 24 & 0xFF)
|
||||
# define COMPILER_VERSION_MINOR DEC(__VERSIONNUM__ >> 16 & 0xFF)
|
||||
# define COMPILER_VERSION_PATCH DEC(__VERSIONNUM__ >> 8 & 0xFF)
|
||||
# define COMPILER_VERSION_TWEAK DEC(__VERSIONNUM__ & 0xFF)
|
||||
#endif
|
||||
|
||||
#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
|
||||
# define COMPILER_ID "IAR"
|
||||
# if defined(__VER__) && defined(__ICCARM__)
|
||||
# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
|
||||
# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
|
||||
# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
|
||||
# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__))
|
||||
# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
|
||||
# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
|
||||
# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
|
||||
# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
|
||||
# endif
|
||||
|
||||
#elif defined(__DCC__) && defined(_DIAB_TOOL)
|
||||
# define COMPILER_ID "Diab"
|
||||
# define COMPILER_VERSION_MAJOR DEC(__VERSION_MAJOR_NUMBER__)
|
||||
# define COMPILER_VERSION_MINOR DEC(__VERSION_MINOR_NUMBER__)
|
||||
# define COMPILER_VERSION_PATCH DEC(__VERSION_ARCH_FEATURE_NUMBER__)
|
||||
# define COMPILER_VERSION_TWEAK DEC(__VERSION_BUG_FIX_NUMBER__)
|
||||
|
||||
|
||||
|
||||
/* These compilers are either not known or too old to define an
|
||||
identification macro. Try to identify the platform and guess that
|
||||
it is the native compiler. */
|
||||
#elif defined(__hpux) || defined(__hpua)
|
||||
# define COMPILER_ID "HP"
|
||||
|
||||
#else /* unknown compiler */
|
||||
# define COMPILER_ID ""
|
||||
#endif
|
||||
|
||||
/* Construct the string literal in pieces to prevent the source from
|
||||
getting matched. Store it in a pointer rather than an array
|
||||
because some compilers will just produce instructions to fill the
|
||||
array rather than assigning a pointer to a static array. */
|
||||
char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
|
||||
#ifdef SIMULATE_ID
|
||||
char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
|
||||
#endif
|
||||
|
||||
#ifdef __QNXNTO__
|
||||
char const* qnxnto = "INFO" ":" "qnxnto[]";
|
||||
#endif
|
||||
|
||||
#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
|
||||
char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
|
||||
#endif
|
||||
|
||||
#define STRINGIFY_HELPER(X) #X
|
||||
#define STRINGIFY(X) STRINGIFY_HELPER(X)
|
||||
|
||||
/* Identify known platforms by name. */
|
||||
#if defined(__linux) || defined(__linux__) || defined(linux)
|
||||
# define PLATFORM_ID "Linux"
|
||||
|
||||
#elif defined(__MSYS__)
|
||||
# define PLATFORM_ID "MSYS"
|
||||
|
||||
#elif defined(__CYGWIN__)
|
||||
# define PLATFORM_ID "Cygwin"
|
||||
|
||||
#elif defined(__MINGW32__)
|
||||
# define PLATFORM_ID "MinGW"
|
||||
|
||||
#elif defined(__APPLE__)
|
||||
# define PLATFORM_ID "Darwin"
|
||||
|
||||
#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
|
||||
# define PLATFORM_ID "Windows"
|
||||
|
||||
#elif defined(__FreeBSD__) || defined(__FreeBSD)
|
||||
# define PLATFORM_ID "FreeBSD"
|
||||
|
||||
#elif defined(__NetBSD__) || defined(__NetBSD)
|
||||
# define PLATFORM_ID "NetBSD"
|
||||
|
||||
#elif defined(__OpenBSD__) || defined(__OPENBSD)
|
||||
# define PLATFORM_ID "OpenBSD"
|
||||
|
||||
#elif defined(__sun) || defined(sun)
|
||||
# define PLATFORM_ID "SunOS"
|
||||
|
||||
#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
|
||||
# define PLATFORM_ID "AIX"
|
||||
|
||||
#elif defined(__hpux) || defined(__hpux__)
|
||||
# define PLATFORM_ID "HP-UX"
|
||||
|
||||
#elif defined(__HAIKU__)
|
||||
# define PLATFORM_ID "Haiku"
|
||||
|
||||
#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
|
||||
# define PLATFORM_ID "BeOS"
|
||||
|
||||
#elif defined(__QNX__) || defined(__QNXNTO__)
|
||||
# define PLATFORM_ID "QNX"
|
||||
|
||||
#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
|
||||
# define PLATFORM_ID "Tru64"
|
||||
|
||||
#elif defined(__riscos) || defined(__riscos__)
|
||||
# define PLATFORM_ID "RISCos"
|
||||
|
||||
#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
|
||||
# define PLATFORM_ID "SINIX"
|
||||
|
||||
#elif defined(__UNIX_SV__)
|
||||
# define PLATFORM_ID "UNIX_SV"
|
||||
|
||||
#elif defined(__bsdos__)
|
||||
# define PLATFORM_ID "BSDOS"
|
||||
|
||||
#elif defined(_MPRAS) || defined(MPRAS)
|
||||
# define PLATFORM_ID "MP-RAS"
|
||||
|
||||
#elif defined(__osf) || defined(__osf__)
|
||||
# define PLATFORM_ID "OSF1"
|
||||
|
||||
#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
|
||||
# define PLATFORM_ID "SCO_SV"
|
||||
|
||||
#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
|
||||
# define PLATFORM_ID "ULTRIX"
|
||||
|
||||
#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
|
||||
# define PLATFORM_ID "Xenix"
|
||||
|
||||
#elif defined(__WATCOMC__)
|
||||
# if defined(__LINUX__)
|
||||
# define PLATFORM_ID "Linux"
|
||||
|
||||
# elif defined(__DOS__)
|
||||
# define PLATFORM_ID "DOS"
|
||||
|
||||
# elif defined(__OS2__)
|
||||
# define PLATFORM_ID "OS2"
|
||||
|
||||
# elif defined(__WINDOWS__)
|
||||
# define PLATFORM_ID "Windows3x"
|
||||
|
||||
# elif defined(__VXWORKS__)
|
||||
# define PLATFORM_ID "VxWorks"
|
||||
|
||||
# else /* unknown platform */
|
||||
# define PLATFORM_ID
|
||||
# endif
|
||||
|
||||
#elif defined(__INTEGRITY)
|
||||
# if defined(INT_178B)
|
||||
# define PLATFORM_ID "Integrity178"
|
||||
|
||||
# else /* regular Integrity */
|
||||
# define PLATFORM_ID "Integrity"
|
||||
# endif
|
||||
|
||||
# elif defined(_ADI_COMPILER)
|
||||
# define PLATFORM_ID "ADSP"
|
||||
|
||||
#else /* unknown platform */
|
||||
# define PLATFORM_ID
|
||||
|
||||
#endif
|
||||
|
||||
/* For windows compilers MSVC and Intel we can determine
|
||||
the architecture of the compiler being used. This is because
|
||||
the compilers do not have flags that can change the architecture,
|
||||
but rather depend on which compiler is being used
|
||||
*/
|
||||
#if defined(_WIN32) && defined(_MSC_VER)
|
||||
# if defined(_M_IA64)
|
||||
# define ARCHITECTURE_ID "IA64"
|
||||
|
||||
# elif defined(_M_ARM64EC)
|
||||
# define ARCHITECTURE_ID "ARM64EC"
|
||||
|
||||
# elif defined(_M_X64) || defined(_M_AMD64)
|
||||
# define ARCHITECTURE_ID "x64"
|
||||
|
||||
# elif defined(_M_IX86)
|
||||
# define ARCHITECTURE_ID "X86"
|
||||
|
||||
# elif defined(_M_ARM64)
|
||||
# define ARCHITECTURE_ID "ARM64"
|
||||
|
||||
# elif defined(_M_ARM)
|
||||
# if _M_ARM == 4
|
||||
# define ARCHITECTURE_ID "ARMV4I"
|
||||
# elif _M_ARM == 5
|
||||
# define ARCHITECTURE_ID "ARMV5I"
|
||||
# else
|
||||
# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
|
||||
# endif
|
||||
|
||||
# elif defined(_M_MIPS)
|
||||
# define ARCHITECTURE_ID "MIPS"
|
||||
|
||||
# elif defined(_M_SH)
|
||||
# define ARCHITECTURE_ID "SHx"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__WATCOMC__)
|
||||
# if defined(_M_I86)
|
||||
# define ARCHITECTURE_ID "I86"
|
||||
|
||||
# elif defined(_M_IX86)
|
||||
# define ARCHITECTURE_ID "X86"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
|
||||
# if defined(__ICCARM__)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# elif defined(__ICCRX__)
|
||||
# define ARCHITECTURE_ID "RX"
|
||||
|
||||
# elif defined(__ICCRH850__)
|
||||
# define ARCHITECTURE_ID "RH850"
|
||||
|
||||
# elif defined(__ICCRL78__)
|
||||
# define ARCHITECTURE_ID "RL78"
|
||||
|
||||
# elif defined(__ICCRISCV__)
|
||||
# define ARCHITECTURE_ID "RISCV"
|
||||
|
||||
# elif defined(__ICCAVR__)
|
||||
# define ARCHITECTURE_ID "AVR"
|
||||
|
||||
# elif defined(__ICC430__)
|
||||
# define ARCHITECTURE_ID "MSP430"
|
||||
|
||||
# elif defined(__ICCV850__)
|
||||
# define ARCHITECTURE_ID "V850"
|
||||
|
||||
# elif defined(__ICC8051__)
|
||||
# define ARCHITECTURE_ID "8051"
|
||||
|
||||
# elif defined(__ICCSTM8__)
|
||||
# define ARCHITECTURE_ID "STM8"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__ghs__)
|
||||
# if defined(__PPC64__)
|
||||
# define ARCHITECTURE_ID "PPC64"
|
||||
|
||||
# elif defined(__ppc__)
|
||||
# define ARCHITECTURE_ID "PPC"
|
||||
|
||||
# elif defined(__ARM__)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# elif defined(__x86_64__)
|
||||
# define ARCHITECTURE_ID "x64"
|
||||
|
||||
# elif defined(__i386__)
|
||||
# define ARCHITECTURE_ID "X86"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__clang__) && defined(__ti__)
|
||||
# if defined(__ARM_ARCH)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__TI_COMPILER_VERSION__)
|
||||
# if defined(__TI_ARM__)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# elif defined(__MSP430__)
|
||||
# define ARCHITECTURE_ID "MSP430"
|
||||
|
||||
# elif defined(__TMS320C28XX__)
|
||||
# define ARCHITECTURE_ID "TMS320C28x"
|
||||
|
||||
# elif defined(__TMS320C6X__) || defined(_TMS320C6X)
|
||||
# define ARCHITECTURE_ID "TMS320C6x"
|
||||
|
||||
# else /* unknown architecture */
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
# elif defined(__ADSPSHARC__)
|
||||
# define ARCHITECTURE_ID "SHARC"
|
||||
|
||||
# elif defined(__ADSPBLACKFIN__)
|
||||
# define ARCHITECTURE_ID "Blackfin"
|
||||
|
||||
#elif defined(__TASKING__)
|
||||
|
||||
# if defined(__CTC__) || defined(__CPTC__)
|
||||
# define ARCHITECTURE_ID "TriCore"
|
||||
|
||||
# elif defined(__CMCS__)
|
||||
# define ARCHITECTURE_ID "MCS"
|
||||
|
||||
# elif defined(__CARM__) || defined(__CPARM__)
|
||||
# define ARCHITECTURE_ID "ARM"
|
||||
|
||||
# elif defined(__CARC__)
|
||||
# define ARCHITECTURE_ID "ARC"
|
||||
|
||||
# elif defined(__C51__)
|
||||
# define ARCHITECTURE_ID "8051"
|
||||
|
||||
# elif defined(__CPCP__)
|
||||
# define ARCHITECTURE_ID "PCP"
|
||||
|
||||
# else
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#elif defined(__RENESAS__)
|
||||
# if defined(__CCRX__)
|
||||
# define ARCHITECTURE_ID "RX"
|
||||
|
||||
# elif defined(__CCRL__)
|
||||
# define ARCHITECTURE_ID "RL78"
|
||||
|
||||
# elif defined(__CCRH__)
|
||||
# define ARCHITECTURE_ID "RH850"
|
||||
|
||||
# else
|
||||
# define ARCHITECTURE_ID ""
|
||||
# endif
|
||||
|
||||
#else
|
||||
# define ARCHITECTURE_ID
|
||||
#endif
|
||||
|
||||
/* Convert integer to decimal digit literals. */
|
||||
#define DEC(n) \
|
||||
('0' + (((n) / 10000000)%10)), \
|
||||
('0' + (((n) / 1000000)%10)), \
|
||||
('0' + (((n) / 100000)%10)), \
|
||||
('0' + (((n) / 10000)%10)), \
|
||||
('0' + (((n) / 1000)%10)), \
|
||||
('0' + (((n) / 100)%10)), \
|
||||
('0' + (((n) / 10)%10)), \
|
||||
('0' + ((n) % 10))
|
||||
|
||||
/* Convert integer to hex digit literals. */
|
||||
#define HEX(n) \
|
||||
('0' + ((n)>>28 & 0xF)), \
|
||||
('0' + ((n)>>24 & 0xF)), \
|
||||
('0' + ((n)>>20 & 0xF)), \
|
||||
('0' + ((n)>>16 & 0xF)), \
|
||||
('0' + ((n)>>12 & 0xF)), \
|
||||
('0' + ((n)>>8 & 0xF)), \
|
||||
('0' + ((n)>>4 & 0xF)), \
|
||||
('0' + ((n) & 0xF))
|
||||
|
||||
/* Construct a string literal encoding the version number. */
|
||||
#ifdef COMPILER_VERSION
|
||||
char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]";
|
||||
|
||||
/* Construct a string literal encoding the version number components. */
|
||||
#elif defined(COMPILER_VERSION_MAJOR)
|
||||
char const info_version[] = {
|
||||
'I', 'N', 'F', 'O', ':',
|
||||
'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
|
||||
COMPILER_VERSION_MAJOR,
|
||||
# ifdef COMPILER_VERSION_MINOR
|
||||
'.', COMPILER_VERSION_MINOR,
|
||||
# ifdef COMPILER_VERSION_PATCH
|
||||
'.', COMPILER_VERSION_PATCH,
|
||||
# ifdef COMPILER_VERSION_TWEAK
|
||||
'.', COMPILER_VERSION_TWEAK,
|
||||
# endif
|
||||
# endif
|
||||
# endif
|
||||
']','\0'};
|
||||
#endif
|
||||
|
||||
/* Construct a string literal encoding the internal version number. */
|
||||
#ifdef COMPILER_VERSION_INTERNAL
|
||||
char const info_version_internal[] = {
|
||||
'I', 'N', 'F', 'O', ':',
|
||||
'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
|
||||
'i','n','t','e','r','n','a','l','[',
|
||||
COMPILER_VERSION_INTERNAL,']','\0'};
|
||||
#elif defined(COMPILER_VERSION_INTERNAL_STR)
|
||||
char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]";
|
||||
#endif
|
||||
|
||||
/* Construct a string literal encoding the version number components. */
|
||||
#ifdef SIMULATE_VERSION_MAJOR
|
||||
char const info_simulate_version[] = {
|
||||
'I', 'N', 'F', 'O', ':',
|
||||
's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
|
||||
SIMULATE_VERSION_MAJOR,
|
||||
# ifdef SIMULATE_VERSION_MINOR
|
||||
'.', SIMULATE_VERSION_MINOR,
|
||||
# ifdef SIMULATE_VERSION_PATCH
|
||||
'.', SIMULATE_VERSION_PATCH,
|
||||
# ifdef SIMULATE_VERSION_TWEAK
|
||||
'.', SIMULATE_VERSION_TWEAK,
|
||||
# endif
|
||||
# endif
|
||||
# endif
|
||||
']','\0'};
|
||||
#endif
|
||||
|
||||
/* Construct the string literal in pieces to prevent the source from
|
||||
getting matched. Store it in a pointer rather than an array
|
||||
because some compilers will just produce instructions to fill the
|
||||
array rather than assigning a pointer to a static array. */
|
||||
char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
|
||||
char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
|
||||
|
||||
|
||||
|
||||
#define CXX_STD_98 199711L
|
||||
#define CXX_STD_11 201103L
|
||||
#define CXX_STD_14 201402L
|
||||
#define CXX_STD_17 201703L
|
||||
#define CXX_STD_20 202002L
|
||||
#define CXX_STD_23 202302L
|
||||
|
||||
#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG)
|
||||
# if _MSVC_LANG > CXX_STD_17
|
||||
# define CXX_STD _MSVC_LANG
|
||||
# elif _MSVC_LANG == CXX_STD_17 && defined(__cpp_aggregate_paren_init)
|
||||
# define CXX_STD CXX_STD_20
|
||||
# elif _MSVC_LANG > CXX_STD_14 && __cplusplus > CXX_STD_17
|
||||
# define CXX_STD CXX_STD_20
|
||||
# elif _MSVC_LANG > CXX_STD_14
|
||||
# define CXX_STD CXX_STD_17
|
||||
# elif defined(__INTEL_CXX11_MODE__) && defined(__cpp_aggregate_nsdmi)
|
||||
# define CXX_STD CXX_STD_14
|
||||
# elif defined(__INTEL_CXX11_MODE__)
|
||||
# define CXX_STD CXX_STD_11
|
||||
# else
|
||||
# define CXX_STD CXX_STD_98
|
||||
# endif
|
||||
#elif defined(_MSC_VER) && defined(_MSVC_LANG)
|
||||
# if _MSVC_LANG > __cplusplus
|
||||
# define CXX_STD _MSVC_LANG
|
||||
# else
|
||||
# define CXX_STD __cplusplus
|
||||
# endif
|
||||
#elif defined(__NVCOMPILER)
|
||||
# if __cplusplus == CXX_STD_17 && defined(__cpp_aggregate_paren_init)
|
||||
# define CXX_STD CXX_STD_20
|
||||
# else
|
||||
# define CXX_STD __cplusplus
|
||||
# endif
|
||||
#elif defined(__INTEL_COMPILER) || defined(__PGI)
|
||||
# if __cplusplus == CXX_STD_11 && defined(__cpp_namespace_attributes)
|
||||
# define CXX_STD CXX_STD_17
|
||||
# elif __cplusplus == CXX_STD_11 && defined(__cpp_aggregate_nsdmi)
|
||||
# define CXX_STD CXX_STD_14
|
||||
# else
|
||||
# define CXX_STD __cplusplus
|
||||
# endif
|
||||
#elif (defined(__IBMCPP__) || defined(__ibmxl__)) && defined(__linux__)
|
||||
# if __cplusplus == CXX_STD_11 && defined(__cpp_aggregate_nsdmi)
|
||||
# define CXX_STD CXX_STD_14
|
||||
# else
|
||||
# define CXX_STD __cplusplus
|
||||
# endif
|
||||
#elif __cplusplus == 1 && defined(__GXX_EXPERIMENTAL_CXX0X__)
|
||||
# define CXX_STD CXX_STD_11
|
||||
#else
|
||||
# define CXX_STD __cplusplus
|
||||
#endif
|
||||
|
||||
const char* info_language_standard_default = "INFO" ":" "standard_default["
|
||||
#if CXX_STD > CXX_STD_23
|
||||
"26"
|
||||
#elif CXX_STD > CXX_STD_20
|
||||
"23"
|
||||
#elif CXX_STD > CXX_STD_17
|
||||
"20"
|
||||
#elif CXX_STD > CXX_STD_14
|
||||
"17"
|
||||
#elif CXX_STD > CXX_STD_11
|
||||
"14"
|
||||
#elif CXX_STD >= CXX_STD_11
|
||||
"11"
|
||||
#else
|
||||
"98"
|
||||
#endif
|
||||
"]";
|
||||
|
||||
const char* info_language_extensions_default = "INFO" ":" "extensions_default["
|
||||
#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \
|
||||
defined(__TI_COMPILER_VERSION__) || defined(__RENESAS__)) && \
|
||||
!defined(__STRICT_ANSI__)
|
||||
"ON"
|
||||
#else
|
||||
"OFF"
|
||||
#endif
|
||||
"]";
|
||||
|
||||
/*--------------------------------------------------------------------------*/
|
||||
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
int require = 0;
|
||||
require += info_compiler[argc];
|
||||
require += info_platform[argc];
|
||||
require += info_arch[argc];
|
||||
#ifdef COMPILER_VERSION_MAJOR
|
||||
require += info_version[argc];
|
||||
#endif
|
||||
#if defined(COMPILER_VERSION_INTERNAL) || defined(COMPILER_VERSION_INTERNAL_STR)
|
||||
require += info_version_internal[argc];
|
||||
#endif
|
||||
#ifdef SIMULATE_ID
|
||||
require += info_simulate[argc];
|
||||
#endif
|
||||
#ifdef SIMULATE_VERSION_MAJOR
|
||||
require += info_simulate_version[argc];
|
||||
#endif
|
||||
#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
|
||||
require += info_cray[argc];
|
||||
#endif
|
||||
require += info_language_standard_default[argc];
|
||||
require += info_language_extensions_default[argc];
|
||||
(void)argv;
|
||||
return require;
|
||||
}
|
||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,167 @@
|
||||
# This file is configured by CMake automatically as CTestScript.cmake
|
||||
# If you choose not to use CMake, this file may be hand configured, by
|
||||
# filling in the required variables.
|
||||
|
||||
cmake_minimum_required(VERSION 4.2.2)
|
||||
|
||||
# CTest Start Step
|
||||
set(CTEST_SOURCE_DIRECTORY "F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler")
|
||||
set(CTEST_BINARY_DIRECTORY "F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native")
|
||||
|
||||
# CTest Update Step
|
||||
set(CTEST_UPDATE_COMMAND "")
|
||||
set(CTEST_UPDATE_OPTIONS "")
|
||||
set(CTEST_UPDATE_VERSION_ONLY "")
|
||||
set(CTEST_NIGHTLY_START_TIME "00:00:00 EDT")
|
||||
|
||||
# CVS options
|
||||
set(CTEST_CVS_COMMAND "")
|
||||
set(CTEST_CVS_UPDATE_OPTIONS "")
|
||||
|
||||
# Subversion options
|
||||
set(CTEST_SVN_COMMAND "")
|
||||
set(CTEST_SVN_OPTIONS "")
|
||||
set(CTEST_SVN_UPDATE_OPTIONS "")
|
||||
|
||||
# Git options
|
||||
set(CTEST_GIT_COMMAND "")
|
||||
set(CTEST_GIT_INIT_SUBMODULES "")
|
||||
set(CTEST_GIT_UPDATE_CUSTOM "")
|
||||
set(CTEST_GIT_UPDATE_OPTIONS "")
|
||||
|
||||
# Perforce options
|
||||
set(CTEST_P4_COMMAND "")
|
||||
set(CTEST_P4_CLIENT "")
|
||||
set(CTEST_P4_OPTIONS "")
|
||||
set(CTEST_P4_UPDATE_CUSTOM "")
|
||||
set(CTEST_P4_UPDATE_OPTIONS "")
|
||||
|
||||
# CTest Configure Step
|
||||
set(CTEST_CMAKE_GENERATOR "Ninja")
|
||||
set(CTEST_LABELS_FOR_SUBPROJECTS "")
|
||||
|
||||
# CTest Build Step
|
||||
set(CTEST_CONFIGURATION_TYPE "Release")
|
||||
set(CTEST_USE_LAUNCHERS "")
|
||||
|
||||
# CTest Test Step
|
||||
set(CTEST_RESOURCE_SPEC_FILE "")
|
||||
set(CTEST_TEST_LOAD "")
|
||||
set(CTEST_TEST_TIMEOUT "1500")
|
||||
|
||||
# CTest Coverage Step
|
||||
set(CTEST_COVERAGE_COMMAND "C:/msys64/mingw64/bin/gcov.exe")
|
||||
set(CTEST_COVERAGE_EXTRA_FLAGS "-l")
|
||||
|
||||
# CTest MemCheck Step
|
||||
set(CTEST_MEMORYCHECK_COMMAND "MEMORYCHECK_COMMAND-NOTFOUND")
|
||||
set(CTEST_MEMORYCHECK_COMMAND_OPTIONS "")
|
||||
set(CTEST_MEMORYCHECK_TYPE "")
|
||||
set(CTEST_MEMORYCHECK_SANITIZER_OPTIONS "")
|
||||
set(CTEST_MEMORYCHECK_SUPPRESSIONS_FILE "")
|
||||
|
||||
# CTest Submit Step
|
||||
set(CTEST_SITE "DESKTOP-HN15M1H")
|
||||
set(CTEST_BUILD_NAME "Win32-ninja")
|
||||
set(CTEST_SUBMIT_URL "http://")
|
||||
set(CTEST_SUBMIT_INACTIVITY_TIMEOUT "")
|
||||
set(CTEST_TLS_VERIFY "")
|
||||
set(CTEST_TLS_VERSION "")
|
||||
|
||||
################################################################################
|
||||
|
||||
if(NOT MODEL)
|
||||
set(MODEL "Experimental")
|
||||
endif()
|
||||
|
||||
if(MODEL STREQUAL "NightlyMemoryCheck")
|
||||
set(MODEL "Nightly")
|
||||
set(ACTIONS "Start;Update;Configure;Build;MemCheck;Coverage;Submit")
|
||||
endif()
|
||||
|
||||
if(NOT ACTIONS)
|
||||
if(MODEL STREQUAL "Experimental")
|
||||
set(ACTIONS "Start;Configure;Build;Test;Coverage;Submit")
|
||||
else()
|
||||
set(ACTIONS "Start;Update;Configure;Build;Test;Coverage;Submit")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
################################################################################
|
||||
|
||||
set(_exit_code 0)
|
||||
|
||||
if("Start" IN_LIST ACTIONS OR NOT EXISTS "${CTEST_BINARY_DIRECTORY}/Testing/TAG")
|
||||
ctest_start("${MODEL}")
|
||||
else()
|
||||
ctest_start("${MODEL}" APPEND)
|
||||
endif()
|
||||
|
||||
if("Update" IN_LIST ACTIONS)
|
||||
ctest_update(RETURN_VALUE update_count)
|
||||
if(update_count LESS 0)
|
||||
math(EXPR _exit_code "${_exit_code} | 0x01")
|
||||
endif()
|
||||
if(MODEL STREQUAL "Continuous" AND update_count EQUAL 0)
|
||||
return()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if("Configure" IN_LIST ACTIONS)
|
||||
ctest_configure(RETURN_VALUE success)
|
||||
if(success LESS 0)
|
||||
math(EXPR _exit_code "${_exit_code} | 0x02")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if("Build" IN_LIST ACTIONS)
|
||||
ctest_read_custom_files("${CTEST_BINARY_DIRECTORY}")
|
||||
ctest_build(RETURN_VALUE success)
|
||||
if(NOT success EQUAL 0)
|
||||
math(EXPR _exit_code "${_exit_code} | 0x04")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if("Test" IN_LIST ACTIONS)
|
||||
ctest_read_custom_files("${CTEST_BINARY_DIRECTORY}")
|
||||
ctest_test(RETURN_VALUE success)
|
||||
if(NOT success EQUAL 0)
|
||||
math(EXPR _exit_code "${_exit_code} | 0x08")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if("Coverage" IN_LIST ACTIONS)
|
||||
ctest_read_custom_files("${CTEST_BINARY_DIRECTORY}")
|
||||
ctest_coverage(RETURN_VALUE success)
|
||||
if(NOT success EQUAL 0)
|
||||
math(EXPR _exit_code "${_exit_code} | 0x20")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if("MemCheck" IN_LIST ACTIONS)
|
||||
ctest_read_custom_files("${CTEST_BINARY_DIRECTORY}")
|
||||
ctest_memcheck(RETURN_VALUE success)
|
||||
if(NOT success EQUAL 0)
|
||||
math(EXPR _exit_code "${_exit_code} | 0x10")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
file(GLOB notes_files LIST_DIRECTORIES OFF
|
||||
"${CTEST_BINARY_DIRECTORY}/Testing/Notes/*")
|
||||
if(notes_files)
|
||||
list(APPEND CTEST_NOTES_FILES "${notes_files}")
|
||||
endif()
|
||||
|
||||
if("Submit" IN_LIST ACTIONS)
|
||||
ctest_read_custom_files("${CTEST_BINARY_DIRECTORY}")
|
||||
ctest_submit(
|
||||
RETRY_COUNT "3"
|
||||
RETRY_DELAY "5"
|
||||
RETURN_VALUE success
|
||||
)
|
||||
if(NOT success EQUAL 0)
|
||||
math(EXPR _exit_code "${_exit_code} | 0x40")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
cmake_language(EXIT "${_exit_code}")
|
||||
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"InstallScripts" :
|
||||
[
|
||||
"F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/cmake_install.cmake",
|
||||
"F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/lib/fmt/cmake_install.cmake"
|
||||
],
|
||||
"Parallel" : false
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/Experimental.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/Nightly.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/Continuous.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/NightlyMemoryCheck.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/NightlyStart.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/NightlyUpdate.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/NightlyConfigure.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/NightlyBuild.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/NightlyTest.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/NightlyCoverage.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/NightlyMemCheck.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/NightlySubmit.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ExperimentalStart.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ExperimentalUpdate.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ExperimentalConfigure.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ExperimentalBuild.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ExperimentalTest.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ExperimentalCoverage.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ExperimentalMemCheck.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ExperimentalSubmit.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ContinuousStart.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ContinuousUpdate.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ContinuousConfigure.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ContinuousBuild.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ContinuousTest.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ContinuousCoverage.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ContinuousMemCheck.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/ContinuousSubmit.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/rabbitizer.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/psxrecomp-game.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/psxrecomp-toml.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/psxrecomp.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/psxrecomp_baked_codegen_hash.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/PSXRecomp.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/psxrecomp-bios.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/l1_decoder_test.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/l2_structural_test.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/recompiler_patch_test.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/recompiler_patch_cxx17_header_test.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/reachable_discovery_test.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/test.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/edit_cache.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/CMakeFiles/rebuild_cache.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/lib/fmt/CMakeFiles/fmt.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/lib/fmt/CMakeFiles/test.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/lib/fmt/CMakeFiles/edit_cache.dir
|
||||
F:/Projects/psxrecomp/_wt-interp-hotpath-master/recompiler/build-native/lib/fmt/CMakeFiles/rebuild_cache.dir
|
||||
@@ -0,0 +1 @@
|
||||
# This file is generated by cmake for dependency checking of the CMakeCache.txt file
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user