1
0
mirror of https://github.com/EduApps-CDG/OpenDX synced 2024-12-30 09:45:37 +01:00

Compare commits

...

No commits in common. "main" and "rev" have entirely different histories.
main ... rev

100 changed files with 5766 additions and 2289 deletions

View File

@ -1,16 +0,0 @@
{
"name": "ubuntu",
"image": "docker.io/library/ubuntu",
"customizations": {
"vscode": {
"extensions": [
"ms-vscode.cpptools-extension-pack"
]
}
},
"features": {
"ghcr.io/devcontainers/features/desktop-lite:1": {}
},
"onCreateCommand": "apt update && apt install sudo git",
"postCreateCommand": "sudo ./build.sh"
}

13
.github/FUNDING.yml vendored
View File

@ -1,13 +0,0 @@
# These are supported funding model platforms
github: EduApps-CDG
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']

35
.github/workflows/artifacts.yml vendored Normal file
View File

@ -0,0 +1,35 @@
name: Artifacts (Package)
on: [push, pull_request, workflow_dispatch]
jobs:
build-artifacts:
runs-on: ubuntu-20.04
steps:
- name: Checkout code
id: checkout-code
uses: actions/checkout@v2
with:
submodules: recursive
fetch-depth: 0
- name: Setup problem matcher
uses: Joshua-Ashton/gcc-problem-matcher@v1
- name: Build release
id: build-release
uses: Joshua-Ashton/arch-mingw-github-action@v7
with:
command: |
export VERSION_NAME="${GITHUB_REF##*/}-${GITHUB_SHA##*/}"
./package-release.sh ${VERSION_NAME} build --no-package
echo "VERSION_NAME=${VERSION_NAME}" >> $GITHUB_ENV
- name: Upload artifacts
id: upload-artifacts
uses: actions/upload-artifact@v2
with:
name: dxvk-${{ env.VERSION_NAME }}
path: build/dxvk-${{ env.VERSION_NAME }}
if-no-files-found: error

View File

@ -1,41 +0,0 @@
name: Build
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
jobs:
build:
# The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac.
# You can convert this to a matrix build if you need cross-platform coverage.
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Auto-build and Resolve dependencies
run: ./build.sh
- name: Packing into a tar and a deb
run: ./pack.sh #&& cat /home/runner/work/OpenDX/OpenDX/build/_CPack_Packages/Linux/DEB/PreinstallOutput.log
- name: Test
working-directory: ${{github.workspace}}/build
# Execute tests defined by the CMake configuration.
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
run: ctest -C ${{env.BUILD_TYPE}}
- name: Upload Artifact
uses: actions/upload-artifact@v2
with:
path: |
opendx.deb
opendx.tar
retention: 5 days

View File

@ -0,0 +1,52 @@
name: Test Builds on Windows
on: [push, pull_request, workflow_dispatch]
jobs:
build-set-windows:
runs-on: windows-2022
steps:
- name: Checkout code
id: checkout-code
uses: actions/checkout@v2
with:
submodules: recursive
- name: Setup glslangValidator
shell: pwsh
run: |
choco install vulkan-sdk -y
Write-Output "$([System.Environment]::GetEnvironmentVariable('VULKAN_SDK', 'Machine'))\Bin" `
| Out-File -FilePath "${Env:GITHUB_PATH}" -Append
- name: Setup Meson
shell: pwsh
run: pip install meson
- name: Find Visual Studio
shell: pwsh
run: |
$installationPath = Get-VSSetupInstance `
| Select-VSSetupInstance -Require Microsoft.VisualStudio.Workload.NativeDesktop -Latest `
| Select-Object -ExpandProperty InstallationPath
Write-Output "VSDEVCMD=${installationPath}\Common7\Tools\VsDevCmd.bat" `
| Out-File -FilePath "${Env:GITHUB_ENV}" -Append
- name: Build MSVC x86
shell: pwsh
run: |
& "${Env:COMSPEC}" /s /c "`"${Env:VSDEVCMD}`" -arch=x86 -host_arch=x64 -no_logo && set" `
| % { , ($_ -Split '=', 2) } `
| % { [System.Environment]::SetEnvironmentVariable($_[0], $_[1]) }
meson --buildtype release --backend vs2022 build-msvc-x86
msbuild -m build-msvc-x86/dxvk.sln
- name: Build MSVC x64
shell: pwsh
run: |
& "${Env:COMSPEC}" /s /c "`"${Env:VSDEVCMD}`" -arch=x64 -host_arch=x64 -no_logo && set" `
| % { , ($_ -Split '=', 2) } `
| % { [System.Environment]::SetEnvironmentVariable($_[0], $_[1]) }
meson --buildtype release --backend vs2022 build-msvc-x64
msbuild -m build-msvc-x64/dxvk.sln

18
.gitignore vendored
View File

@ -1,18 +0,0 @@
include/config.hpp
CMakeLists.txt.user
CMakeCache.txt
CMakeFiles
CMakeScripts
Testing
Makefile
cmake_install.cmake
install_manifest.txt
compile_commands.json
CTestTestfile.cmake
_deps
build
.kdev4
OpenDX.kdev4
opendx.tar
opendx.deb
!build/.no-delete

287
.kdev4/OpenDX.kdev4 Normal file
View File

@ -0,0 +1,287 @@
[Buildset]
BuildItems=@Variant(\x00\x00\x00\t\x00\x00\x00\x00\x01\x00\x00\x00\x0b\x00\x00\x00\x00\x01\x00\x00\x00\x0c\x00O\x00p\x00e\x00n\x00D\x00X)
[CMake]
Build Directory Count=1
Current Build Directory Index-Host System=0
[CMake][CMake Build Directory 0]
Build Directory Path=/home/eduardo/proj/OpenDX/build
Build Type=Debug
CMake Binary=/usr/bin/cmake
CMake Executable=/usr/bin/cmake
Environment Profile=
Extra Arguments=
Install Directory=/usr/local
Runtime=Host System
[ClangTidy]
CheckSystemHeaders=true
[Cppcheck]
checkConfig=true
checkPerformance=true
checkPortability=true
useSystemIncludes=true
[CustomDefinesAndIncludes][ProjectPath0]
Path=.
parseAmbiguousAsCPP=true
parserArguments=-ferror-limit=100 -fspell-checking -Wdocumentation -Wunused-parameter -Wunreachable-code -Wall -std=c++17
parserArgumentsC=-ferror-limit=100 -fspell-checking -Wdocumentation -Wunused-parameter -Wunreachable-code -Wall -std=c11
parserArgumentsCuda=-ferror-limit=100 -fspell-checking -Wdocumentation -Wunused-parameter -Wunreachable-code -Wall -std=c++11
parserArgumentsOpenCL=-ferror-limit=100 -fspell-checking -Wdocumentation -Wunused-parameter -Wunreachable-code -Wall -cl-std=CL1.1
[CustomDefinesAndIncludes][ProjectPath0][Compiler]
Name=GCC
[CustomDefinesAndIncludes][ProjectPath0][Includes]
1=/home/eduardo/proj/OpenDX/include
2=/usr/include/gtk-3.0
3=/home/eduardo/proj/OpenDX/prod_include
[Filters]
size=41
[Filters][0]
inclusive=0
pattern=.*
targets=3
[Filters][1]
inclusive=1
pattern=.gitignore
targets=1
[Filters][10]
inclusive=1
pattern=.clang-format
targets=1
[Filters][11]
inclusive=1
pattern=.circleci
targets=2
[Filters][12]
inclusive=0
pattern=.git
targets=2
[Filters][13]
inclusive=0
pattern=CVS
targets=2
[Filters][14]
inclusive=0
pattern=.svn
targets=2
[Filters][15]
inclusive=0
pattern=_svn
targets=2
[Filters][16]
inclusive=0
pattern=SCCS
targets=2
[Filters][17]
inclusive=0
pattern=_darcs
targets=2
[Filters][18]
inclusive=0
pattern=.hg
targets=2
[Filters][19]
inclusive=0
pattern=.bzr
targets=2
[Filters][2]
inclusive=1
pattern=.gitmodules
targets=1
[Filters][20]
inclusive=0
pattern=__pycache__
targets=2
[Filters][21]
inclusive=0
pattern=*.o
targets=1
[Filters][22]
inclusive=0
pattern=*.a
targets=1
[Filters][23]
inclusive=0
pattern=*.so
targets=1
[Filters][24]
inclusive=0
pattern=*.so.*
targets=1
[Filters][25]
inclusive=0
pattern=*.obj
targets=1
[Filters][26]
inclusive=0
pattern=*.lib
targets=1
[Filters][27]
inclusive=0
pattern=*.dll
targets=1
[Filters][28]
inclusive=0
pattern=*.exp
targets=1
[Filters][29]
inclusive=0
pattern=*.pdb
targets=1
[Filters][3]
inclusive=1
pattern=.pre-commit-config.yaml
targets=1
[Filters][30]
inclusive=0
pattern=moc_*.cpp
targets=1
[Filters][31]
inclusive=0
pattern=*.moc
targets=1
[Filters][32]
inclusive=0
pattern=ui_*.h
targets=1
[Filters][33]
inclusive=0
pattern=*.qmlc
targets=1
[Filters][34]
inclusive=0
pattern=qrc_*.cpp
targets=1
[Filters][35]
inclusive=0
pattern=*~
targets=1
[Filters][36]
inclusive=0
pattern=*.orig
targets=1
[Filters][37]
inclusive=0
pattern=.*.kate-swp
targets=1
[Filters][38]
inclusive=0
pattern=.*.swp
targets=1
[Filters][39]
inclusive=0
pattern=*.pyc
targets=1
[Filters][4]
inclusive=1
pattern=.gitlab-ci.yml
targets=1
[Filters][40]
inclusive=0
pattern=*.pyo
targets=1
[Filters][5]
inclusive=1
pattern=.travis.yml
targets=1
[Filters][6]
inclusive=1
pattern=.editorconfig
targets=1
[Filters][7]
inclusive=1
pattern=.pep8
targets=1
[Filters][8]
inclusive=1
pattern=.prettierignore
targets=1
[Filters][9]
inclusive=1
pattern=.prettierrc*
targets=1
[Launch]
Launch Configurations=Launch Configuration 0,Launch Configuration 1
[Launch][Launch Configuration 0]
Configured Launch Modes=execute
Configured Launchers=nativeAppLauncher
Name=dxdiag
Type=Native Application
[Launch][Launch Configuration 0][Data]
Arguments=
Dependencies=@Variant(\x00\x00\x00\t\x00\x00\x00\x00\x02\x00\x00\x00\x0b\x00\x00\x00\x00\x02\x00\x00\x00\x0c\x00O\x00p\x00e\x00n\x00D\x00X\x00\x00\x00\x08\x00d\x003\x00d\x009\x00\x00\x00\x0b\x00\x00\x00\x00\x02\x00\x00\x00\x0c\x00O\x00p\x00e\x00n\x00D\x00X\x00\x00\x00\x0c\x00d\x00x\x00d\x00i\x00a\x00g)
Dependency Action=Build
EnvironmentGroup=
Executable=file:///home/eduardo/proj/OpenDX
External Terminal=konsole --noclose --workdir %workdir -e %exe
Kill Before Executing Again=65536
Project Target=OpenDX,dxdiag
Use External Terminal=false
Working Directory=
isExecutable=false
[Launch][Launch Configuration 1]
Configured Launch Modes=execute
Configured Launchers=nativeAppLauncher
Name=dxdiag
Type=Native Application
[Launch][Launch Configuration 1][Data]
Configured from ProjectItem=OpenDX,dxdiag
Kill Before Executing Again=65536
Project Target=OpenDX,dxdiag
Working Directory=file:///home/eduardo/proj/OpenDX/build/
isExecutable=false
[Project]
VersionControlSupport=kdevgit

View File

@ -3,32 +3,7 @@
{ {
"name": "Linux", "name": "Linux",
"includePath": [ "includePath": [
"${workspaceFolder}/**", "${workspaceFolder}/**"
"${workspaceFolder}/include",
"${workspaceFolder}/prod_include",
"/usr/include/c++/12",
"/usr/include/x86_64-linux-gnu/c++/12",
"/usr/include/c++/12/backward",
"/usr/lib/gcc/x86_64-linux-gnu/12/include",
"/usr/local/include",
"/usr/include/x86_64-linux-gnu",
"/usr/include",
"/usr/include/pango-1.0",
"/usr/include/gtk-4.0",
"/usr/include/glib-2.0",
"/usr/include/pango-1.0",
"/usr/lib/x86_64-linux-gnu/glib-2.0/include",
"/usr/include/harfbuzz",
"/usr/include/freetype2",
"/usr/include/libpng16",
"/usr/include/libmount",
"/usr/include/blkid",
"/usr/include/fribidi",
"/usr/include/cairo",
"/usr/include/pixman-1",
"/usr/include/gdk-pixbuf-2.0",
"/usr/include/graphene-1.0",
"/usr/lib/x86_64-linux-gnu/graphene-1.0/include"
], ],
"compilerArgs": [ "compilerArgs": [
"-I${workspaceFolder}/include/d3d12.so", "-I${workspaceFolder}/include/d3d12.so",
@ -36,11 +11,9 @@
"-I${workspaceFolder}/include/wrl" "-I${workspaceFolder}/include/wrl"
], ],
"defines": [], "defines": [],
"compilerPath": "/usr/bin/gcc", "compilerPath": "/usr/bin/clang",
"cppStandard": "gnu++23", "cppStandard": "c++14",
"intelliSenseMode": "linux-gcc-x64", "intelliSenseMode": "linux-clang-x64"
"cStandard": "gnu23",
"compileCommands": "${workspaceFolder}/build/compile_commands.json"
} }
], ],
"version": 4 "version": 4

34
.vscode/launch.json vendored
View File

@ -1,34 +0,0 @@
{
"configurations": [
//cmake then make in build folder
{
"name": "dxdiag",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/build/dxdiag",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}/build",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "/usr/bin/gdb"
},
//sample (also in build folder)
{
"name": "sample",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/build/tests/sample",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}/build",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "/usr/bin/gdb"
}
],
"version": "2.0.0"
}

62
.vscode/settings.json vendored
View File

@ -1,62 +0,0 @@
{
"mesonbuild.configureOnOpen": true,
"C_Cpp.codeAnalysis.clangTidy.checks.disabled": [
"clang-diagnostic-pragma-once-outside-header"
],
"files.associations": {
"phtml": "php",
"new": "cpp",
"array": "cpp",
"atomic": "cpp",
"bit": "cpp",
"*.tcc": "cpp",
"cctype": "cpp",
"clocale": "cpp",
"cmath": "cpp",
"compare": "cpp",
"concepts": "cpp",
"cstdarg": "cpp",
"cstddef": "cpp",
"cstdint": "cpp",
"cstdio": "cpp",
"cstdlib": "cpp",
"cstring": "cpp",
"ctime": "cpp",
"cwchar": "cpp",
"cwctype": "cpp",
"deque": "cpp",
"string": "cpp",
"unordered_map": "cpp",
"vector": "cpp",
"exception": "cpp",
"algorithm": "cpp",
"functional": "cpp",
"iterator": "cpp",
"memory": "cpp",
"memory_resource": "cpp",
"numeric": "cpp",
"random": "cpp",
"string_view": "cpp",
"system_error": "cpp",
"tuple": "cpp",
"type_traits": "cpp",
"utility": "cpp",
"fstream": "cpp",
"initializer_list": "cpp",
"iomanip": "cpp",
"iosfwd": "cpp",
"iostream": "cpp",
"istream": "cpp",
"limits": "cpp",
"numbers": "cpp",
"ostream": "cpp",
"sstream": "cpp",
"stdexcept": "cpp",
"streambuf": "cpp",
"cinttypes": "cpp",
"typeinfo": "cpp",
"*.ui": "cpp",
"bitset": "cpp",
"regex": "cpp"
}
}

51
.vscode/tasks.json vendored
View File

@ -1,51 +0,0 @@
{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: g++ build active file",
"command": "/usr/bin/g++",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "Task generated by Debugger."
},
{
"type": "cppbuild",
"label": "C/C++: gcc build active file",
"command": "/usr/bin/gcc",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}",
"-I${workspaceFolder}/include/d3d12.so",
"-I${workspaceFolder}/include/dxgi.so",
"-I${workspaceFolder}/include/wrl"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": "build",
"detail": "Task generated by Debugger."
}
],
"version": "2.0.0"
}

View File

@ -8,37 +8,9 @@
# _LIBRARIES - The libraries needed to use # _LIBRARIES - The libraries needed to use
# _DEFINITIONS - Compiler switches required for using # _DEFINITIONS - Compiler switches required for using
set(PROJECT_SOURCE_DIR "${CMAKE_SOURCE_DIR}")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/opendx/bin")
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/opendx/lib")
#Package
set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/opendx)
set(CPACK_GENERATOR "DEB")
set(CPACK_PACKAGE_NAME "opendx")
set(CPACK_PACKAGE_VERSION "1.0.0")
set(CPACK_PACKAGE_DESCRIPTION "Open Source reimplementation of DirectX for Linux")
set(CPACK_PACKAGE_CONTACT "Eduardo P. Gomez <eduardoprocopiogomez@gmail.com>")
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libgtk-4-1")
#base include
include_directories(./include)
configure_file(include/config.hpp.in ../include/config.hpp)
#production include (for use with .so files)
include_directories(./prod_include)
#Defaults
set(CMAKE_C_STANDARD 23)
set(CMAKE_CXX_STANDARD 23)
cmake_minimum_required(VERSION 3.22) cmake_minimum_required(VERSION 3.22)
project(OpenDX) project(OpenDX)
set(PROJECT_SOURCE_DIR "${CMAKE_SOURCE_DIR}")
#Packaging
include(CPack)
install(DIRECTORY ${CMAKE_BINARY_DIR}/opendx/bin DESTINATION /usr/ FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
install(DIRECTORY ${CMAKE_BINARY_DIR}/opendx/lib DESTINATION /usr/ FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ WORLD_READ)
find_package(PkgConfig) find_package(PkgConfig)
pkg_check_modules(PC_ QUIET ) pkg_check_modules(PC_ QUIET )
@ -50,11 +22,10 @@ find_path(_INCLUDE_DIR
find_library(_LIBRARY NAMES find_library(_LIBRARY NAMES
HINTS ${PC__LIBDIR} ${PC__LIBRARY_DIRS} ) HINTS ${PC__LIBDIR} ${PC__LIBRARY_DIRS} )
pkg_check_modules(GTK4 REQUIRED gtk4)
pkg_check_modules(LIBDRM REQUIRED libdrm)
set(_LIBRARIES ${_LIBRARY} ) set(_LIBRARIES ${_LIBRARY} )
set(_INCLUDE_DIRS ${_INCLUDE_DIR} ) set(_INCLUDE_DIRS ${_INCLUDE_DIR} )
set(CMAKE_CXX_STANDARD 20)
include(FindPackageHandleStandardArgs) include(FindPackageHandleStandardArgs)
# handle the QUIETLY and REQUIRED arguments and set _FOUND to TRUE # handle the QUIETLY and REQUIRED arguments and set _FOUND to TRUE
@ -63,36 +34,25 @@ find_package_handle_standard_args( DEFAULT_MSG
_LIBRARY _INCLUDE_DIR) _LIBRARY _INCLUDE_DIR)
mark_as_advanced(_INCLUDE_DIR _LIBRARY ) mark_as_advanced(_INCLUDE_DIR _LIBRARY )
#base include
include_directories(./include)
configure_file(include/config.hpp.in ../include/config.hpp)
#production include (for use with .so files)
include_directories(./prod_include)
find_package(PkgConfig REQUIRED) find_package(PkgConfig REQUIRED)
#dependency #d3d9.so:
include_directories(${GTK4_INCLUDE_DIRS})
link_directories(${GTK4_LIBRARY_DIRS})
include_directories(${LIBDRM_INCLUDE_DIRS})
link_directories(${LIBDRM_LIBRARY_DIRS})
#libopendx.so:
set(OPENDX_CPP libs/opendx/opendx.cpp)
#file(GLOB_RECURSE OPENDX_CPP libs/opendx/fun/*.cpp)
add_library(opendx SHARED ${OPENDX_CPP})
target_link_libraries(opendx ${GTK4_LIBRARIES})
#libdsetup.so:
set(DSETUP_CPP libs/dsetup/dsetup.cpp)
file(GLOB_RECURSE DSETUP_CPP libs/dsetup/fun/*.cpp)
add_library(dsetup SHARED ${DSETUP_CPP})
#libd3d9.so:
add_library(d3d9 SHARED libs/d3d9/d3d9.cpp) add_library(d3d9 SHARED libs/d3d9/d3d9.cpp)
target_link_libraries(d3d9 ${LIBDRM_LIBRARIES})
# dxdiag: # dxdiag:
pkg_check_modules(GTK3 REQUIRED gtk+-3.0)
include_directories(${GTK3_INCLUDE_DIRS})
link_directories(${GTK3_LIBRARY_DIRS})
add_executable(dxdiag tools/dxdiag/main.cpp) add_executable(dxdiag tools/dxdiag/main.cpp)
target_link_libraries(dxdiag ${GTK4_LIBRARIES}) target_link_libraries(dxdiag ${GTK3_LIBRARIES})
target_link_libraries(dxdiag dsetup)
target_link_libraries(dxdiag d3d9) target_link_libraries(dxdiag d3d9)
#add ./tests/CMakeLists.txt
add_subdirectory(tests)

View File

@ -1,31 +0,0 @@
# Contributing
This guide shows how to prepare your environment to contribute for OpenDX's DirectX reimplementation.
## Dependencies
`./build.sh` detect and try to install the dependencies for you, but if you want to do it manually, here is the list of dependencies:
| Dependency | Version |
|:-|-:|
|[`gcc`](https://packages.ubuntu.com/lunar/gcc)|`12.2.0`|
|[`cmake`](https://packages.ubuntu.com/lunar/cmake)|`3.25.1`|
|[`make`](https://packages.ubuntu.com/lunar/make)|`4.3`|
|[`libgtk-4-dev`](https://packages.ubuntu.com/lunar/libgtk-4-dev)|`4.10.1`|
## Building and running
These are the same universal steps for cmake:
**Build:**
```sh
./build.sh
```
**Run:**
```sh
#setups the terminal for better running.
PATH=$PATH:./build/opendx/bin
#commands available to run:
dxdiag
sample
```

4
OpenDX.kdev4 Normal file
View File

@ -0,0 +1,4 @@
[Project]
CreatedFrom=CMakeLists.txt
Manager=KDevCMakeManager
Name=OpenDX

View File

@ -1,40 +1,5 @@
<div align=center> <h2>OpenDX - The Open Source Implementation of DirectX for Linux</h2>
<h1>
OpenDX
<br>
<img src="./img/logo.png" width=260 alt="| Bring DirectX to Linux!">
</h1>
<i>The Open Source DirectX alternative for Linux.</i>
**Compile:** `./build.sh && ./run.sh` ![](./img/print.png)
[![Build Status](https://github.com/EduApps-CDG/OpenDX/actions/workflows/cmake.yml/badge.svg)](https://github.com/EduApps-CDG/OpenDX/actions/workflows/cmake.yml) <p>Do you miss DirectX when playing games on Linux? Are you tired of relying on Wine or other compatibility layers for running games that rely on DirectX? OpenDX is here to change that. Our project aims to provide a fully-featured implementation of DirectX for the Linux operating system, without the need for compatibility layers or emulators.</p><h3>Introducing the First Component: dxdiag</h3><p>We're proud to announce the first component of our project: a functional implementation of the DirectX Diagnostic Tool (dxdiag). This tool provides detailed information about the DirectX installation and capabilities of your Linux system, just like it does on Windows. With OpenDX, you can now check the compatibility of your Linux system with DirectX games and applications.</p><p><strong>Please note: Currently, dxdiag only works with one screen, but we are working on expanding its capabilities.</strong></p><h3>Improved Performance</h3><p>We believe that Linux should have a native implementation of DirectX, which will provide improved performance and compatibility compared to compatibility layers such as Wine. Although the project is still in development and we have a long way to go, we are committed to bringing you the best possible experience when playing DirectX games on Linux.</p><h3>Join the OpenDX Community</h3><p>We need your help to make OpenDX a success. If you're a developer, you can contribute to the project by fixing bugs, adding new features, and improving performance. If you're not a developer, you can still help by giving us feedback, testing the software, and spreading the word about OpenDX.</p><h3>Give us a Star and Contribute</h3><p>Please show your support for OpenDX by giving us a star on GitHub and spreading the word about the project. We believe that together, we can bring the best of DirectX to Linux and provide an improved gaming experience for everyone.</p><p>Join us on our journey to bring DirectX to Linux!</p>
</div>
OpenDX is a fully-featured implementation of DirectX for the Linux operating system, without the need for compatibility layers or emulators. This allows Linux developers to build DirectX games and applications with improved performance thanks to Linux's built-in Direct Rendering Manager (DRM).
<div align=center>
![OpenDX dxdiag](./img/print.png)
</div>
## Improved Performance
We believe that Linux should have a native implementation of DirectX, which will provide improved performance and compatibility compared to compatibility layers such as Wine.
Although the project is still in development and we have a long way to go, we are committed to bringing you the best possible experience when playing DirectX games on Linux.
Here's a list of what OpenDX does better than Windows:
* dxdiag: Even on 11th gen Intel CPUs, dxdiag takes some time to open on Windows. On OpenDX, it opens instantly. Also, in the System tab, OpenDX shows the correct date and time, while Windows shows the date and time when dxdiag was opened (*lol*).
## [Join the OpenDX Community](https://github.com/EduApps-CDG/OpenDX/discussions)
If you are interested in contributing to OpenDX or just want to stay up-to-date on the project, please join the community and share your toughts.
## Give us a Star and Contribute
If you like OpenDX, please give us a star on GitHub. This will help us to attract more users and contributors.
Active contributors will also appear here:
<a href = "https://github.com/EduApps-CDG/OpenDX/graphs/contributors">
<img src = "https://contrib.rocks/image?repo=EduApps-CDG/OpenDX" align="center"/>
</a>
Join us on our journey to bring DirectX to Linux!

View File

@ -1,24 +0,0 @@
#!/bin/bash
# This file will install the required packages and build the project
# Check if package is installed
function check_package {
if ! dpkg -s $1 > /dev/null 2>&1; then
echo "Package $1 is not installed. Installing..."
sudo apt install $1
fi
}
# Check if package is installed (Ubuntu)
check_package "gcc"
check_package "cmake"
check_package "make"
check_package "libdrm-dev"
check_package "libgtk-4-dev"
# Build the project
cd build
cmake ..
make
echo "Build complete, run ./run.sh to run the program"

View File

@ -0,0 +1 @@
{"requests": [{"kind": "codemodel", "version": 2}, {"kind": "cmakeFiles", "version": 1}]}

View File

@ -0,0 +1,179 @@
{
"inputs" :
[
{
"path" : "CMakeLists.txt"
},
{
"isGenerated" : true,
"path" : "build/CMakeFiles/3.22.1/CMakeSystem.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake"
},
{
"isGenerated" : true,
"path" : "build/CMakeFiles/3.22.1/CMakeCCompiler.cmake"
},
{
"isGenerated" : true,
"path" : "build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/Platform/Linux.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/CMakeCInformation.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/CMakeCXXInformation.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-CXX.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/FindPkgConfig.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/FindPackageMessage.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/FindPackageMessage.cmake"
},
{
"path" : "include/config.hpp.in"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/FindPkgConfig.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake"
},
{
"isCMake" : true,
"isExternal" : true,
"path" : "/usr/share/cmake-3.22/Modules/FindPackageMessage.cmake"
}
],
"kind" : "cmakeFiles",
"paths" :
{
"build" : "/home/eduardo/proj/OpenDX/build",
"source" : "/home/eduardo/proj/OpenDX"
},
"version" :
{
"major" : 1,
"minor" : 0
}
}

View File

@ -0,0 +1,69 @@
{
"configurations" :
[
{
"directories" :
[
{
"build" : ".",
"jsonFile" : "directory-.-Debug-f5ebdc15457944623624.json",
"minimumCMakeVersion" :
{
"string" : "3.22"
},
"projectIndex" : 0,
"source" : ".",
"targetIndexes" :
[
0,
1
]
}
],
"name" : "Debug",
"projects" :
[
{
"directoryIndexes" :
[
0
],
"name" : "OpenDX",
"targetIndexes" :
[
0,
1
]
}
],
"targets" :
[
{
"directoryIndex" : 0,
"id" : "d3d9::@6890427a1f51a3e7e1df",
"jsonFile" : "target-d3d9-Debug-961d0ca81a5813f50d45.json",
"name" : "d3d9",
"projectIndex" : 0
},
{
"directoryIndex" : 0,
"id" : "dxdiag::@6890427a1f51a3e7e1df",
"jsonFile" : "target-dxdiag-Debug-60098f02b33b22d3ac4d.json",
"name" : "dxdiag",
"projectIndex" : 0
}
]
}
],
"kind" : "codemodel",
"paths" :
{
"build" : "/home/eduardo/proj/OpenDX/build",
"source" : "/home/eduardo/proj/OpenDX"
},
"version" :
{
"major" : 2,
"minor" : 3
}
}

View File

@ -0,0 +1,14 @@
{
"backtraceGraph" :
{
"commands" : [],
"files" : [],
"nodes" : []
},
"installers" : [],
"paths" :
{
"build" : ".",
"source" : "."
}
}

View File

@ -0,0 +1,88 @@
{
"cmake" :
{
"generator" :
{
"multiConfig" : false,
"name" : "Ninja"
},
"paths" :
{
"cmake" : "/usr/bin/cmake",
"cpack" : "/usr/bin/cpack",
"ctest" : "/usr/bin/ctest",
"root" : "/usr/share/cmake-3.22"
},
"version" :
{
"isDirty" : false,
"major" : 3,
"minor" : 22,
"patch" : 1,
"string" : "3.22.1",
"suffix" : ""
}
},
"objects" :
[
{
"jsonFile" : "codemodel-v2-fd66466a5919c987bb16.json",
"kind" : "codemodel",
"version" :
{
"major" : 2,
"minor" : 3
}
},
{
"jsonFile" : "cmakeFiles-v1-1e0578d73b4db95dd7b1.json",
"kind" : "cmakeFiles",
"version" :
{
"major" : 1,
"minor" : 0
}
}
],
"reply" :
{
"client-kdevelop" :
{
"query.json" :
{
"requests" :
[
{
"kind" : "codemodel",
"version" : 2
},
{
"kind" : "cmakeFiles",
"version" : 1
}
],
"responses" :
[
{
"jsonFile" : "codemodel-v2-fd66466a5919c987bb16.json",
"kind" : "codemodel",
"version" :
{
"major" : 2,
"minor" : 3
}
},
{
"jsonFile" : "cmakeFiles-v1-1e0578d73b4db95dd7b1.json",
"kind" : "cmakeFiles",
"version" :
{
"major" : 1,
"minor" : 0
}
}
]
}
}
}
}

View File

@ -0,0 +1,214 @@
{
"artifacts" :
[
{
"path" : "libd3d9.so"
}
],
"backtrace" : 1,
"backtraceGraph" :
{
"commands" :
[
"add_library",
"include_directories"
],
"files" :
[
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 0
},
{
"command" : 0,
"file" : 0,
"line" : 47,
"parent" : 0
},
{
"command" : 1,
"file" : 0,
"line" : 38,
"parent" : 0
},
{
"command" : 1,
"file" : 0,
"line" : 42,
"parent" : 0
},
{
"command" : 1,
"file" : 0,
"line" : 53,
"parent" : 0
}
]
},
"compileGroups" :
[
{
"compileCommandFragments" :
[
{
"fragment" : "-g -fPIC"
},
{
"fragment" : "-std=gnu++20"
}
],
"defines" :
[
{
"define" : "d3d9_EXPORTS"
}
],
"includes" :
[
{
"backtrace" : 2,
"path" : "/home/eduardo/proj/OpenDX/./include"
},
{
"backtrace" : 3,
"path" : "/home/eduardo/proj/OpenDX/./prod_include"
},
{
"backtrace" : 4,
"path" : "/usr/include/gtk-3.0"
},
{
"backtrace" : 4,
"path" : "/usr/include/at-spi2-atk/2.0"
},
{
"backtrace" : 4,
"path" : "/usr/include/at-spi-2.0"
},
{
"backtrace" : 4,
"path" : "/usr/include/dbus-1.0"
},
{
"backtrace" : 4,
"path" : "/usr/lib/x86_64-linux-gnu/dbus-1.0/include"
},
{
"backtrace" : 4,
"path" : "/usr/include/gio-unix-2.0"
},
{
"backtrace" : 4,
"path" : "/usr/include/cairo"
},
{
"backtrace" : 4,
"path" : "/usr/include/pango-1.0"
},
{
"backtrace" : 4,
"path" : "/usr/include/harfbuzz"
},
{
"backtrace" : 4,
"path" : "/usr/include/fribidi"
},
{
"backtrace" : 4,
"path" : "/usr/include/atk-1.0"
},
{
"backtrace" : 4,
"path" : "/usr/include/pixman-1"
},
{
"backtrace" : 4,
"path" : "/usr/include/uuid"
},
{
"backtrace" : 4,
"path" : "/usr/include/freetype2"
},
{
"backtrace" : 4,
"path" : "/usr/include/gdk-pixbuf-2.0"
},
{
"backtrace" : 4,
"path" : "/usr/include/libpng16"
},
{
"backtrace" : 4,
"path" : "/usr/include/libmount"
},
{
"backtrace" : 4,
"path" : "/usr/include/blkid"
},
{
"backtrace" : 4,
"path" : "/usr/include/glib-2.0"
},
{
"backtrace" : 4,
"path" : "/usr/lib/x86_64-linux-gnu/glib-2.0/include"
}
],
"language" : "CXX",
"languageStandard" :
{
"backtraces" :
[
1
],
"standard" : "20"
},
"sourceIndexes" :
[
0
]
}
],
"id" : "d3d9::@6890427a1f51a3e7e1df",
"link" :
{
"commandFragments" :
[
{
"fragment" : "",
"role" : "flags"
}
],
"language" : "CXX"
},
"name" : "d3d9",
"nameOnDisk" : "libd3d9.so",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "Source Files",
"sourceIndexes" :
[
0
]
}
],
"sources" :
[
{
"backtrace" : 1,
"compileGroupIndex" : 0,
"path" : "libs/d3d9/d3d9.cpp",
"sourceGroupIndex" : 0
}
],
"type" : "SHARED_LIBRARY"
}

View File

@ -0,0 +1,301 @@
{
"artifacts" :
[
{
"path" : "dxdiag"
}
],
"backtrace" : 1,
"backtraceGraph" :
{
"commands" :
[
"add_executable",
"target_link_libraries",
"include_directories"
],
"files" :
[
"CMakeLists.txt"
],
"nodes" :
[
{
"file" : 0
},
{
"command" : 0,
"file" : 0,
"line" : 56,
"parent" : 0
},
{
"command" : 1,
"file" : 0,
"line" : 57,
"parent" : 0
},
{
"command" : 1,
"file" : 0,
"line" : 58,
"parent" : 0
},
{
"command" : 2,
"file" : 0,
"line" : 38,
"parent" : 0
},
{
"command" : 2,
"file" : 0,
"line" : 42,
"parent" : 0
},
{
"command" : 2,
"file" : 0,
"line" : 53,
"parent" : 0
}
]
},
"compileGroups" :
[
{
"compileCommandFragments" :
[
{
"fragment" : "-g"
},
{
"fragment" : "-std=gnu++20"
}
],
"includes" :
[
{
"backtrace" : 4,
"path" : "/home/eduardo/proj/OpenDX/./include"
},
{
"backtrace" : 5,
"path" : "/home/eduardo/proj/OpenDX/./prod_include"
},
{
"backtrace" : 6,
"path" : "/usr/include/gtk-3.0"
},
{
"backtrace" : 6,
"path" : "/usr/include/at-spi2-atk/2.0"
},
{
"backtrace" : 6,
"path" : "/usr/include/at-spi-2.0"
},
{
"backtrace" : 6,
"path" : "/usr/include/dbus-1.0"
},
{
"backtrace" : 6,
"path" : "/usr/lib/x86_64-linux-gnu/dbus-1.0/include"
},
{
"backtrace" : 6,
"path" : "/usr/include/gio-unix-2.0"
},
{
"backtrace" : 6,
"path" : "/usr/include/cairo"
},
{
"backtrace" : 6,
"path" : "/usr/include/pango-1.0"
},
{
"backtrace" : 6,
"path" : "/usr/include/harfbuzz"
},
{
"backtrace" : 6,
"path" : "/usr/include/fribidi"
},
{
"backtrace" : 6,
"path" : "/usr/include/atk-1.0"
},
{
"backtrace" : 6,
"path" : "/usr/include/pixman-1"
},
{
"backtrace" : 6,
"path" : "/usr/include/uuid"
},
{
"backtrace" : 6,
"path" : "/usr/include/freetype2"
},
{
"backtrace" : 6,
"path" : "/usr/include/gdk-pixbuf-2.0"
},
{
"backtrace" : 6,
"path" : "/usr/include/libpng16"
},
{
"backtrace" : 6,
"path" : "/usr/include/libmount"
},
{
"backtrace" : 6,
"path" : "/usr/include/blkid"
},
{
"backtrace" : 6,
"path" : "/usr/include/glib-2.0"
},
{
"backtrace" : 6,
"path" : "/usr/lib/x86_64-linux-gnu/glib-2.0/include"
}
],
"language" : "CXX",
"languageStandard" :
{
"backtraces" :
[
1
],
"standard" : "20"
},
"sourceIndexes" :
[
0
]
}
],
"dependencies" :
[
{
"backtrace" : 3,
"id" : "d3d9::@6890427a1f51a3e7e1df"
}
],
"id" : "dxdiag::@6890427a1f51a3e7e1df",
"link" :
{
"commandFragments" :
[
{
"fragment" : "-g",
"role" : "flags"
},
{
"fragment" : "",
"role" : "flags"
},
{
"fragment" : "-Wl,-rpath,/home/eduardo/proj/OpenDX/build",
"role" : "libraries"
},
{
"backtrace" : 2,
"fragment" : "-lgtk-3",
"role" : "libraries"
},
{
"backtrace" : 2,
"fragment" : "-lgdk-3",
"role" : "libraries"
},
{
"backtrace" : 2,
"fragment" : "-lpangocairo-1.0",
"role" : "libraries"
},
{
"backtrace" : 2,
"fragment" : "-lpango-1.0",
"role" : "libraries"
},
{
"backtrace" : 2,
"fragment" : "-lharfbuzz",
"role" : "libraries"
},
{
"backtrace" : 2,
"fragment" : "-latk-1.0",
"role" : "libraries"
},
{
"backtrace" : 2,
"fragment" : "-lcairo-gobject",
"role" : "libraries"
},
{
"backtrace" : 2,
"fragment" : "-lcairo",
"role" : "libraries"
},
{
"backtrace" : 2,
"fragment" : "-lgdk_pixbuf-2.0",
"role" : "libraries"
},
{
"backtrace" : 2,
"fragment" : "-lgio-2.0",
"role" : "libraries"
},
{
"backtrace" : 2,
"fragment" : "-lgobject-2.0",
"role" : "libraries"
},
{
"backtrace" : 2,
"fragment" : "-lglib-2.0",
"role" : "libraries"
},
{
"backtrace" : 3,
"fragment" : "libd3d9.so",
"role" : "libraries"
}
],
"language" : "CXX"
},
"name" : "dxdiag",
"nameOnDisk" : "dxdiag",
"paths" :
{
"build" : ".",
"source" : "."
},
"sourceGroups" :
[
{
"name" : "Source Files",
"sourceIndexes" :
[
0
]
}
],
"sources" :
[
{
"backtrace" : 1,
"compileGroupIndex" : 0,
"path" : "tools/dxdiag/main.cpp",
"sourceGroupIndex" : 0
}
],
"type" : "EXECUTABLE"
}

BIN
build/.ninja_deps Normal file

Binary file not shown.

5
build/.ninja_log Normal file
View File

@ -0,0 +1,5 @@
# ninja log v5
4 3233 1675957851246639938 CMakeFiles/dxdiag.dir/tools/dxdiag/main.cpp.o 5120793133d40a85
3233 4182 1675957852198448967 dxdiag 6d9399572c02a415
29 68 1675957029606628033 libd3d9.so d143943638faaf12
0 29 1675957029566626990 CMakeFiles/d3d9.dir/libs/d3d9/d3d9.cpp.o ae72aa52971be821

View File

515
build/CMakeCache.txt Normal file
View File

@ -0,0 +1,515 @@
# This is the CMakeCache file.
# For build in directory: /home/eduardo/proj/OpenDX/build
# It was generated by CMake: /usr/bin/cmake
# 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
########################
//Path to a program.
CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line
//Path to a program.
CMAKE_AR:FILEPATH=/usr/bin/ar
//Choose the type of build, options are: None Debug Release RelWithDebInfo
// MinSizeRel ...
CMAKE_BUILD_TYPE:STRING=Debug
//CXX compiler
CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++
//A wrapper around 'ar' adding the appropriate '--plugin' option
// for the GCC compiler
CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-11
//A wrapper around 'ranlib' adding the appropriate '--plugin' option
// for the GCC compiler
CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-11
//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
//C compiler
CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc
//A wrapper around 'ar' adding the appropriate '--plugin' option
// for the GCC compiler
CMAKE_C_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-11
//A wrapper around 'ranlib' adding the appropriate '--plugin' option
// for the GCC compiler
CMAKE_C_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-11
//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
//Path to a program.
CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND
//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=
//No help, variable specified on the command line.
CMAKE_EXPORT_COMPILE_COMMANDS:UNINITIALIZED=ON
//Install path prefix, prepended onto install directories.
CMAKE_INSTALL_PREFIX:PATH=/usr/local
//Path to a program.
CMAKE_LINKER:FILEPATH=/usr/bin/ld
//Program used to build from build.ninja files.
CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/ninja
//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=/usr/bin/nm
//Path to a program.
CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy
//Path to a program.
CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump
//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=OpenDX
//Path to a program.
CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib
//Path to a program.
CMAKE_READELF:FILEPATH=/usr/bin/readelf
//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 linker during the creation of static libraries
// during all build types.
CMAKE_STATIC_LINKER_FLAGS:STRING=
//Flags used by the linker during the creation of static libraries
// during DEBUG builds.
CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
//Flags used by the linker during the creation of static libraries
// during MINSIZEREL builds.
CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
//Flags used by the linker during the creation of static libraries
// during RELEASE builds.
CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
//Flags used by the linker during the creation of static libraries
// during RELWITHDEBINFO builds.
CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
//Path to a program.
CMAKE_STRIP:FILEPATH=/usr/bin/strip
//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
//Value Computed by CMake
OpenDX_BINARY_DIR:STATIC=/home/eduardo/proj/OpenDX/build
//Value Computed by CMake
OpenDX_IS_TOP_LEVEL:STATIC=ON
//Value Computed by CMake
OpenDX_SOURCE_DIR:STATIC=/home/eduardo/proj/OpenDX
//Arguments to supply to pkg-config
PKG_CONFIG_ARGN:STRING=
//pkg-config executable
PKG_CONFIG_EXECUTABLE:FILEPATH=/usr/bin/pkg-config
//Path to a file.
_INCLUDE_DIR:PATH=_INCLUDE_DIR-NOTFOUND
//Path to a library.
_LIBRARY:FILEPATH=_LIBRARY-NOTFOUND
//Path to a library.
pkgcfg_lib_GTK3_atk-1.0:FILEPATH=/usr/lib/x86_64-linux-gnu/libatk-1.0.so
//Path to a library.
pkgcfg_lib_GTK3_cairo:FILEPATH=/usr/lib/x86_64-linux-gnu/libcairo.so
//Path to a library.
pkgcfg_lib_GTK3_cairo-gobject:FILEPATH=/usr/lib/x86_64-linux-gnu/libcairo-gobject.so
//Path to a library.
pkgcfg_lib_GTK3_gdk-3:FILEPATH=/usr/lib/x86_64-linux-gnu/libgdk-3.so
//Path to a library.
pkgcfg_lib_GTK3_gdk_pixbuf-2.0:FILEPATH=/usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so
//Path to a library.
pkgcfg_lib_GTK3_gio-2.0:FILEPATH=/usr/lib/x86_64-linux-gnu/libgio-2.0.so
//Path to a library.
pkgcfg_lib_GTK3_glib-2.0:FILEPATH=/usr/lib/x86_64-linux-gnu/libglib-2.0.so
//Path to a library.
pkgcfg_lib_GTK3_gobject-2.0:FILEPATH=/usr/lib/x86_64-linux-gnu/libgobject-2.0.so
//Path to a library.
pkgcfg_lib_GTK3_gtk-3:FILEPATH=/usr/lib/x86_64-linux-gnu/libgtk-3.so
//Path to a library.
pkgcfg_lib_GTK3_harfbuzz:FILEPATH=/usr/lib/x86_64-linux-gnu/libharfbuzz.so
//Path to a library.
pkgcfg_lib_GTK3_pango-1.0:FILEPATH=/usr/lib/x86_64-linux-gnu/libpango-1.0.so
//Path to a library.
pkgcfg_lib_GTK3_pangocairo-1.0:FILEPATH=/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so
########################
# 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=/home/eduardo/proj/OpenDX/build
//Major version of cmake used to create the current loaded cache
CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
//Minor version of cmake used to create the current loaded cache
CMAKE_CACHE_MINOR_VERSION:INTERNAL=22
//Patch version of cmake used to create the current loaded cache
CMAKE_CACHE_PATCH_VERSION:INTERNAL=1
//Path to CMake executable.
CMAKE_COMMAND:INTERNAL=/usr/bin/cmake
//Path to cpack program executable.
CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack
//Path to ctest program executable.
CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest
//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_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_DLLTOOL
CMAKE_DLLTOOL-ADVANCED:INTERNAL=1
//Executable file format
CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF
//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
//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=/home/eduardo/proj/OpenDX
//Install .so files without execute permission.
CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1
//ADVANCED property for variable: CMAKE_LINKER
CMAKE_LINKER-ADVANCED:INTERNAL=1
//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=1
//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_READELF
CMAKE_READELF-ADVANCED:INTERNAL=1
//Path to CMake installation.
CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.22
//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
//uname command
CMAKE_UNAME:INTERNAL=/usr/bin/uname
//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
//Details about finding PkgConfig
FIND_PACKAGE_MESSAGE_DETAILS_PkgConfig:INTERNAL=[/usr/bin/pkg-config][v0.29.2()]
GTK3_CFLAGS:INTERNAL=-pthread;-I/usr/include/gtk-3.0;-I/usr/include/at-spi2-atk/2.0;-I/usr/include/at-spi-2.0;-I/usr/include/dbus-1.0;-I/usr/lib/x86_64-linux-gnu/dbus-1.0/include;-I/usr/include/gtk-3.0;-I/usr/include/gio-unix-2.0;-I/usr/include/cairo;-I/usr/include/pango-1.0;-I/usr/include/harfbuzz;-I/usr/include/pango-1.0;-I/usr/include/fribidi;-I/usr/include/harfbuzz;-I/usr/include/atk-1.0;-I/usr/include/cairo;-I/usr/include/pixman-1;-I/usr/include/uuid;-I/usr/include/freetype2;-I/usr/include/gdk-pixbuf-2.0;-I/usr/include/libpng16;-I/usr/include/x86_64-linux-gnu;-I/usr/include/libmount;-I/usr/include/blkid;-I/usr/include/glib-2.0;-I/usr/lib/x86_64-linux-gnu/glib-2.0/include
GTK3_CFLAGS_I:INTERNAL=
GTK3_CFLAGS_OTHER:INTERNAL=-pthread
GTK3_FOUND:INTERNAL=1
GTK3_INCLUDEDIR:INTERNAL=/usr/include
GTK3_INCLUDE_DIRS:INTERNAL=/usr/include/gtk-3.0;/usr/include/at-spi2-atk/2.0;/usr/include/at-spi-2.0;/usr/include/dbus-1.0;/usr/lib/x86_64-linux-gnu/dbus-1.0/include;/usr/include/gtk-3.0;/usr/include/gio-unix-2.0;/usr/include/cairo;/usr/include/pango-1.0;/usr/include/harfbuzz;/usr/include/pango-1.0;/usr/include/fribidi;/usr/include/harfbuzz;/usr/include/atk-1.0;/usr/include/cairo;/usr/include/pixman-1;/usr/include/uuid;/usr/include/freetype2;/usr/include/gdk-pixbuf-2.0;/usr/include/libpng16;/usr/include/x86_64-linux-gnu;/usr/include/libmount;/usr/include/blkid;/usr/include/glib-2.0;/usr/lib/x86_64-linux-gnu/glib-2.0/include
GTK3_LDFLAGS:INTERNAL=-L/usr/lib/x86_64-linux-gnu;-lgtk-3;-lgdk-3;-lpangocairo-1.0;-lpango-1.0;-lharfbuzz;-latk-1.0;-lcairo-gobject;-lcairo;-lgdk_pixbuf-2.0;-lgio-2.0;-lgobject-2.0;-lglib-2.0
GTK3_LDFLAGS_OTHER:INTERNAL=
GTK3_LIBDIR:INTERNAL=/usr/lib/x86_64-linux-gnu
GTK3_LIBRARIES:INTERNAL=gtk-3;gdk-3;pangocairo-1.0;pango-1.0;harfbuzz;atk-1.0;cairo-gobject;cairo;gdk_pixbuf-2.0;gio-2.0;gobject-2.0;glib-2.0
GTK3_LIBRARY_DIRS:INTERNAL=/usr/lib/x86_64-linux-gnu
GTK3_LIBS:INTERNAL=
GTK3_LIBS_L:INTERNAL=
GTK3_LIBS_OTHER:INTERNAL=
GTK3_LIBS_PATHS:INTERNAL=
GTK3_MODULE_NAME:INTERNAL=gtk+-3.0
GTK3_PREFIX:INTERNAL=/usr
GTK3_STATIC_CFLAGS:INTERNAL=-pthread;-I/usr/include/gtk-3.0;-I/usr/include/at-spi2-atk/2.0;-I/usr/include/at-spi-2.0;-I/usr/include/dbus-1.0;-I/usr/lib/x86_64-linux-gnu/dbus-1.0/include;-I/usr/include/gtk-3.0;-I/usr/include/gio-unix-2.0;-I/usr/include/cairo;-I/usr/include/pango-1.0;-I/usr/include/harfbuzz;-I/usr/include/pango-1.0;-I/usr/include/fribidi;-I/usr/include/harfbuzz;-I/usr/include/atk-1.0;-I/usr/include/cairo;-I/usr/include/pixman-1;-I/usr/include/uuid;-I/usr/include/freetype2;-I/usr/include/gdk-pixbuf-2.0;-I/usr/include/libpng16;-I/usr/include/x86_64-linux-gnu;-I/usr/include/libmount;-I/usr/include/blkid;-I/usr/include/glib-2.0;-I/usr/lib/x86_64-linux-gnu/glib-2.0/include
GTK3_STATIC_CFLAGS_I:INTERNAL=
GTK3_STATIC_CFLAGS_OTHER:INTERNAL=-pthread
GTK3_STATIC_INCLUDE_DIRS:INTERNAL=/usr/include/gtk-3.0;/usr/include/at-spi2-atk/2.0;/usr/include/at-spi-2.0;/usr/include/dbus-1.0;/usr/lib/x86_64-linux-gnu/dbus-1.0/include;/usr/include/gtk-3.0;/usr/include/gio-unix-2.0;/usr/include/cairo;/usr/include/pango-1.0;/usr/include/harfbuzz;/usr/include/pango-1.0;/usr/include/fribidi;/usr/include/harfbuzz;/usr/include/atk-1.0;/usr/include/cairo;/usr/include/pixman-1;/usr/include/uuid;/usr/include/freetype2;/usr/include/gdk-pixbuf-2.0;/usr/include/libpng16;/usr/include/x86_64-linux-gnu;/usr/include/libmount;/usr/include/blkid;/usr/include/glib-2.0;/usr/lib/x86_64-linux-gnu/glib-2.0/include
GTK3_STATIC_LDFLAGS:INTERNAL=-L/usr/lib/x86_64-linux-gnu;-L/usr/lib;-L/usr/lib/x86_64-linux-gnu;-lgtk-3;-latk-bridge-2.0;-latspi;-lXtst;-ldbus-1;-lsystemd;-Wl,--export-dynamic;-lgdk-3;-lXinerama;-lXi;-lXrandr;-lXcursor;-lXcomposite;-lXdamage;-lXfixes;-lxkbcommon;-lwayland-cursor;-lwayland-egl;-lwayland-client;-lm;-pthread;-lepoxy;-ldl;-lGL;-lEGL;-lpangocairo-1.0;-lm;-lpangoft2-1.0;-lm;-lharfbuzz-gobject;-lpango-1.0;-lm;-lfribidi;-lthai;-ldatrie;-lXft;-lharfbuzz;-lm;-lgraphite2;-latk-1.0;-lcairo-gobject;-lcairo;-lz;-lpixman-1;-lfontconfig;-luuid;-lexpat;-lm;-lfreetype;-lbrotlidec;-lbrotlicommon;-lxcb-shm;-lxcb-render;-lXrender;-lXext;-lX11;-lpthread;-lxcb;-lXau;-lXdmcp;-lgdk_pixbuf-2.0;-lm;-lpng16;-lm;-lz;-lm;-ljpeg;-ltiff;-lwebp;-lzstd;-llzma;-ljbig;-ljpeg;-ldeflate;-lz;-lm;-lgio-2.0;-lgmodule-2.0;-pthread;-lz;-lmount;-ldl;-lblkid;-lselinux;-lsepol;-lpcre2-8;-lgobject-2.0;-lffi;-lglib-2.0;-pthread;-lm;-lpcre
GTK3_STATIC_LDFLAGS_OTHER:INTERNAL=-Wl,--export-dynamic;-pthread
GTK3_STATIC_LIBDIR:INTERNAL=
GTK3_STATIC_LIBRARIES:INTERNAL=gtk-3;atk-bridge-2.0;atspi;Xtst;dbus-1;systemd;gdk-3;Xinerama;Xi;Xrandr;Xcursor;Xcomposite;Xdamage;Xfixes;xkbcommon;wayland-cursor;wayland-egl;wayland-client;m;epoxy;dl;GL;EGL;pangocairo-1.0;m;pangoft2-1.0;m;harfbuzz-gobject;pango-1.0;m;fribidi;thai;datrie;Xft;harfbuzz;m;graphite2;atk-1.0;cairo-gobject;cairo;z;pixman-1;fontconfig;uuid;expat;m;freetype;brotlidec;brotlicommon;xcb-shm;xcb-render;Xrender;Xext;X11;pthread;xcb;Xau;Xdmcp;gdk_pixbuf-2.0;m;png16;m;z;m;jpeg;tiff;webp;zstd;lzma;jbig;jpeg;deflate;z;m;gio-2.0;gmodule-2.0;z;mount;dl;blkid;selinux;sepol;pcre2-8;gobject-2.0;ffi;glib-2.0;m;pcre
GTK3_STATIC_LIBRARY_DIRS:INTERNAL=/usr/lib/x86_64-linux-gnu;/usr/lib;/usr/lib/x86_64-linux-gnu
GTK3_STATIC_LIBS:INTERNAL=
GTK3_STATIC_LIBS_L:INTERNAL=
GTK3_STATIC_LIBS_OTHER:INTERNAL=
GTK3_STATIC_LIBS_PATHS:INTERNAL=
GTK3_VERSION:INTERNAL=3.24.33
GTK3_gtk+-3.0_INCLUDEDIR:INTERNAL=
GTK3_gtk+-3.0_LIBDIR:INTERNAL=
GTK3_gtk+-3.0_PREFIX:INTERNAL=
GTK3_gtk+-3.0_VERSION:INTERNAL=
PC__CFLAGS:INTERNAL=
PC__CFLAGS_I:INTERNAL=
PC__CFLAGS_OTHER:INTERNAL=
PC__FOUND:INTERNAL=1
PC__INCLUDEDIR:INTERNAL=
PC__INCLUDE_DIRS:INTERNAL=
PC__LDFLAGS:INTERNAL=
PC__LDFLAGS_OTHER:INTERNAL=
PC__LIBDIR:INTERNAL=
PC__LIBRARIES:INTERNAL=
PC__LIBRARY_DIRS:INTERNAL=
PC__LIBS:INTERNAL=
PC__LIBS_L:INTERNAL=
PC__LIBS_OTHER:INTERNAL=
PC__LIBS_PATHS:INTERNAL=
PC__MODULE_NAME:INTERNAL=
PC__PREFIX:INTERNAL=
PC__STATIC_CFLAGS:INTERNAL=
PC__STATIC_CFLAGS_I:INTERNAL=
PC__STATIC_CFLAGS_OTHER:INTERNAL=
PC__STATIC_INCLUDE_DIRS:INTERNAL=
PC__STATIC_LDFLAGS:INTERNAL=
PC__STATIC_LDFLAGS_OTHER:INTERNAL=
PC__STATIC_LIBDIR:INTERNAL=
PC__STATIC_LIBRARIES:INTERNAL=
PC__STATIC_LIBRARY_DIRS:INTERNAL=
PC__STATIC_LIBS:INTERNAL=
PC__STATIC_LIBS_L:INTERNAL=
PC__STATIC_LIBS_OTHER:INTERNAL=
PC__STATIC_LIBS_PATHS:INTERNAL=
PC__VERSION:INTERNAL=
//ADVANCED property for variable: PKG_CONFIG_ARGN
PKG_CONFIG_ARGN-ADVANCED:INTERNAL=1
//ADVANCED property for variable: PKG_CONFIG_EXECUTABLE
PKG_CONFIG_EXECUTABLE-ADVANCED:INTERNAL=1
//ADVANCED property for variable: _INCLUDE_DIR
_INCLUDE_DIR-ADVANCED:INTERNAL=1
//ADVANCED property for variable: _LIBRARY
_LIBRARY-ADVANCED:INTERNAL=1
__pkg_config_arguments_GTK3:INTERNAL=REQUIRED;gtk+-3.0
__pkg_config_arguments_PC_:INTERNAL=QUIET
__pkg_config_checked_GTK3:INTERNAL=1
__pkg_config_checked_PC_:INTERNAL=1
//ADVANCED property for variable: pkgcfg_lib_GTK3_atk-1.0
pkgcfg_lib_GTK3_atk-1.0-ADVANCED:INTERNAL=1
//ADVANCED property for variable: pkgcfg_lib_GTK3_cairo
pkgcfg_lib_GTK3_cairo-ADVANCED:INTERNAL=1
//ADVANCED property for variable: pkgcfg_lib_GTK3_cairo-gobject
pkgcfg_lib_GTK3_cairo-gobject-ADVANCED:INTERNAL=1
//ADVANCED property for variable: pkgcfg_lib_GTK3_gdk-3
pkgcfg_lib_GTK3_gdk-3-ADVANCED:INTERNAL=1
//ADVANCED property for variable: pkgcfg_lib_GTK3_gdk_pixbuf-2.0
pkgcfg_lib_GTK3_gdk_pixbuf-2.0-ADVANCED:INTERNAL=1
//ADVANCED property for variable: pkgcfg_lib_GTK3_gio-2.0
pkgcfg_lib_GTK3_gio-2.0-ADVANCED:INTERNAL=1
//ADVANCED property for variable: pkgcfg_lib_GTK3_glib-2.0
pkgcfg_lib_GTK3_glib-2.0-ADVANCED:INTERNAL=1
//ADVANCED property for variable: pkgcfg_lib_GTK3_gobject-2.0
pkgcfg_lib_GTK3_gobject-2.0-ADVANCED:INTERNAL=1
//ADVANCED property for variable: pkgcfg_lib_GTK3_gtk-3
pkgcfg_lib_GTK3_gtk-3-ADVANCED:INTERNAL=1
//ADVANCED property for variable: pkgcfg_lib_GTK3_harfbuzz
pkgcfg_lib_GTK3_harfbuzz-ADVANCED:INTERNAL=1
//ADVANCED property for variable: pkgcfg_lib_GTK3_pango-1.0
pkgcfg_lib_GTK3_pango-1.0-ADVANCED:INTERNAL=1
//ADVANCED property for variable: pkgcfg_lib_GTK3_pangocairo-1.0
pkgcfg_lib_GTK3_pangocairo-1.0-ADVANCED:INTERNAL=1
prefix_result:INTERNAL=/usr/lib/x86_64-linux-gnu

View File

@ -0,0 +1,72 @@
set(CMAKE_C_COMPILER "/usr/bin/cc")
set(CMAKE_C_COMPILER_ARG1 "")
set(CMAKE_C_COMPILER_ID "GNU")
set(CMAKE_C_COMPILER_VERSION "11.3.0")
set(CMAKE_C_COMPILER_VERSION_INTERNAL "")
set(CMAKE_C_COMPILER_WRAPPER "")
set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "17")
set(CMAKE_C_EXTENSIONS_COMPUTED_DEFAULT "ON")
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 "Linux")
set(CMAKE_C_SIMULATE_ID "")
set(CMAKE_C_COMPILER_FRONTEND_VARIANT "")
set(CMAKE_C_SIMULATE_VERSION "")
set(CMAKE_AR "/usr/bin/ar")
set(CMAKE_C_COMPILER_AR "/usr/bin/gcc-ar-11")
set(CMAKE_RANLIB "/usr/bin/ranlib")
set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib-11")
set(CMAKE_LINKER "/usr/bin/ld")
set(CMAKE_MT "")
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)
# Save compiler ABI information.
set(CMAKE_C_SIZEOF_DATA_PTR "8")
set(CMAKE_C_COMPILER_ABI "ELF")
set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN")
set(CMAKE_C_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
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 "x86_64-linux-gnu")
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 "/usr/lib/gcc/x86_64-linux-gnu/11/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include")
set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;gcc_s;c;gcc;gcc_s")
set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/11;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")

View File

@ -0,0 +1,83 @@
set(CMAKE_CXX_COMPILER "/usr/bin/c++")
set(CMAKE_CXX_COMPILER_ARG1 "")
set(CMAKE_CXX_COMPILER_ID "GNU")
set(CMAKE_CXX_COMPILER_VERSION "11.3.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_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")
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_CXX_PLATFORM_ID "Linux")
set(CMAKE_CXX_SIMULATE_ID "")
set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "")
set(CMAKE_CXX_SIMULATE_VERSION "")
set(CMAKE_AR "/usr/bin/ar")
set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-11")
set(CMAKE_RANLIB "/usr/bin/ranlib")
set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-11")
set(CMAKE_LINKER "/usr/bin/ld")
set(CMAKE_MT "")
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)
set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
foreach (lang 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)
# Save compiler ABI information.
set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
set(CMAKE_CXX_COMPILER_ABI "ELF")
set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN")
set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu")
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 "x86_64-linux-gnu")
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 "/usr/include/c++/11;/usr/include/x86_64-linux-gnu/c++/11;/usr/include/c++/11/backward;/usr/lib/gcc/x86_64-linux-gnu/11/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include")
set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc")
set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/11;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib")
set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,15 @@
set(CMAKE_HOST_SYSTEM "Linux-6.0.0-060000-generic")
set(CMAKE_HOST_SYSTEM_NAME "Linux")
set(CMAKE_HOST_SYSTEM_VERSION "6.0.0-060000-generic")
set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64")
set(CMAKE_SYSTEM "Linux-6.0.0-060000-generic")
set(CMAKE_SYSTEM_NAME "Linux")
set(CMAKE_SYSTEM_VERSION "6.0.0-060000-generic")
set(CMAKE_SYSTEM_PROCESSOR "x86_64")
set(CMAKE_CROSSCOMPILING "FALSE")
set(CMAKE_SYSTEM_LOADED 1)

View File

@ -0,0 +1,803 @@
#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(__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(_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(__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 % 10000)
# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_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(__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(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
# define COMPILER_ID "ADSP"
#if defined(__VISUALDSPVERSION__)
/* __VISUALDSPVERSION__ = 0xVVRRPP00 */
# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 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(__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
#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(__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
#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 "]";
#if !defined(__STDC__) && !defined(__clang__)
# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__)
# define C_VERSION "90"
# else
# define C_VERSION
# endif
#elif __STDC_VERSION__ > 201710L
# define C_VERSION "23"
#elif __STDC_VERSION__ >= 201710L
# define C_VERSION "17"
#elif __STDC_VERSION__ >= 201000L
# define C_VERSION "11"
#elif __STDC_VERSION__ >= 199901L
# 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["
/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */
#if (defined(__clang__) || defined(__GNUC__) || \
defined(__TI_COMPILER_VERSION__)) && \
!defined(__STRICT_ANSI__) && !defined(_MSC_VER)
"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
#ifdef COMPILER_VERSION_INTERNAL
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.

View File

@ -0,0 +1,791 @@
/* 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(__COMO__)
# define COMPILER_ID "Comeau"
/* __COMO_VERSION__ = VRR */
# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100)
# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100)
#elif 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(__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(_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(__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 % 10000)
# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_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(__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(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
# define COMPILER_ID "ADSP"
#if defined(__VISUALDSPVERSION__)
/* __VISUALDSPVERSION__ = 0xVVRRPP00 */
# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 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
/* 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
#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(__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
#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 "]";
#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L
# if defined(__INTEL_CXX11_MODE__)
# if defined(__cpp_aggregate_nsdmi)
# define CXX_STD 201402L
# else
# define CXX_STD 201103L
# endif
# else
# define CXX_STD 199711L
# endif
#elif defined(_MSC_VER) && defined(_MSVC_LANG)
# define CXX_STD _MSVC_LANG
#else
# define CXX_STD __cplusplus
#endif
const char* info_language_standard_default = "INFO" ":" "standard_default["
#if CXX_STD > 202002L
"23"
#elif CXX_STD > 201703L
"20"
#elif CXX_STD >= 201703L
"17"
#elif CXX_STD >= 201402L
"14"
#elif CXX_STD >= 201103L
"11"
#else
"98"
#endif
"]";
const char* info_language_extensions_default = "INFO" ":" "extensions_default["
/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */
#if (defined(__clang__) || defined(__GNUC__) || \
defined(__TI_COMPILER_VERSION__)) && \
!defined(__STRICT_ANSI__) && !defined(_MSC_VER)
"ON"
#else
"OFF"
#endif
"]";
/*--------------------------------------------------------------------------*/
int main(int argc, char* argv[])
{
int require = 0;
require += info_compiler[argc];
require += info_platform[argc];
#ifdef COMPILER_VERSION_MAJOR
require += info_version[argc];
#endif
#ifdef COMPILER_VERSION_INTERNAL
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.

View File

@ -0,0 +1,427 @@
The system is: Linux - 6.0.0-060000-generic - x86_64
Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
Compiler: /usr/bin/cc
Build flags:
Id flags:
The output was:
0
Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out"
The C compiler identification is GNU, found in "/home/eduardo/proj/OpenDX/build/CMakeFiles/3.22.1/CompilerIdC/a.out"
Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
Compiler: /usr/bin/c++
Build flags:
Id flags:
The output was:
0
Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out"
The CXX compiler identification is GNU, found in "/home/eduardo/proj/OpenDX/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out"
Detecting C compiler ABI info compiled with the following output:
Change Dir: /home/eduardo/proj/OpenDX/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/ninja cmTC_9441b && [1/2] Building C object CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.o
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1~22.04)
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_9441b.dir/'
/usr/lib/gcc/x86_64-linux-gnu/11/cc1 -quiet -v -imultiarch x86_64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_9441b.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccRBWIEL.s
GNU C17 (Ubuntu 11.3.0-1ubuntu1~22.04) version 11.3.0 (x86_64-linux-gnu)
compiled by GNU C version 11.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/include-fixed"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-linux-gnu/11/include
/usr/local/include
/usr/include/x86_64-linux-gnu
/usr/include
End of search list.
GNU C17 (Ubuntu 11.3.0-1ubuntu1~22.04) version 11.3.0 (x86_64-linux-gnu)
compiled by GNU C version 11.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 3f6cb05d963ad324b8f9442822c95179
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_9441b.dir/'
as -v --64 -o CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.o /tmp/ccRBWIEL.s
GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.'
[2/2] Linking C executable cmTC_9441b
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1~22.04)
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_9441b' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_9441b.'
/usr/lib/gcc/x86_64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccr5rwTr.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_9441b /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/11/../../.. CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_9441b' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_9441b.'
Parsed C implicit include dir info from above output: rv=done
found start of include info
found start of implicit include info
add: [/usr/lib/gcc/x86_64-linux-gnu/11/include]
add: [/usr/local/include]
add: [/usr/include/x86_64-linux-gnu]
add: [/usr/include]
end of search list found
collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/11/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/11/include]
collapse include dir [/usr/local/include] ==> [/usr/local/include]
collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu]
collapse include dir [/usr/include] ==> [/usr/include]
implicit include dirs: [/usr/lib/gcc/x86_64-linux-gnu/11/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include]
Parsed C implicit link information from above output:
link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
ignore line: [Change Dir: /home/eduardo/proj/OpenDX/build/CMakeFiles/CMakeTmp]
ignore line: []
ignore line: [Run Build Command(s):/usr/bin/ninja cmTC_9441b && [1/2] Building C object CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.o]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/cc]
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
ignore line: [OFFLOAD_TARGET_DEFAULT=1]
ignore line: [Target: x86_64-linux-gnu]
ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1~22.04) ]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_9441b.dir/']
ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/11/cc1 -quiet -v -imultiarch x86_64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_9441b.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccRBWIEL.s]
ignore line: [GNU C17 (Ubuntu 11.3.0-1ubuntu1~22.04) version 11.3.0 (x86_64-linux-gnu)]
ignore line: [ compiled by GNU C version 11.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
ignore line: []
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"]
ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/include-fixed"]
ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/include"]
ignore line: [#include "..." search starts here:]
ignore line: [#include <...> search starts here:]
ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/11/include]
ignore line: [ /usr/local/include]
ignore line: [ /usr/include/x86_64-linux-gnu]
ignore line: [ /usr/include]
ignore line: [End of search list.]
ignore line: [GNU C17 (Ubuntu 11.3.0-1ubuntu1~22.04) version 11.3.0 (x86_64-linux-gnu)]
ignore line: [ compiled by GNU C version 11.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
ignore line: []
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [Compiler executable checksum: 3f6cb05d963ad324b8f9442822c95179]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_9441b.dir/']
ignore line: [ as -v --64 -o CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.o /tmp/ccRBWIEL.s]
ignore line: [GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.']
ignore line: [[2/2] Linking C executable cmTC_9441b]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/cc]
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper]
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
ignore line: [OFFLOAD_TARGET_DEFAULT=1]
ignore line: [Target: x86_64-linux-gnu]
ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1~22.04) ]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_9441b' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_9441b.']
link line: [ /usr/lib/gcc/x86_64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccr5rwTr.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_9441b /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/11/../../.. CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/collect2] ==> ignore
arg [-plugin] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so] ==> ignore
arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper] ==> ignore
arg [-plugin-opt=-fresolution=/tmp/ccr5rwTr.res] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [-plugin-opt=-pass-through=-lc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [--build-id] ==> ignore
arg [--eh-frame-hdr] ==> ignore
arg [-m] ==> ignore
arg [elf_x86_64] ==> ignore
arg [--hash-style=gnu] ==> ignore
arg [--as-needed] ==> ignore
arg [-dynamic-linker] ==> ignore
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
arg [-pie] ==> ignore
arg [-znow] ==> ignore
arg [-zrelro] ==> ignore
arg [-o] ==> ignore
arg [cmTC_9441b] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib]
arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
arg [-L/lib/../lib] ==> dir [/lib/../lib]
arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../..]
arg [CMakeFiles/cmTC_9441b.dir/CMakeCCompilerABI.c.o] ==> ignore
arg [-lgcc] ==> lib [gcc]
arg [--push-state] ==> ignore
arg [--as-needed] ==> ignore
arg [-lgcc_s] ==> lib [gcc_s]
arg [--pop-state] ==> ignore
arg [-lc] ==> lib [c]
arg [-lgcc] ==> lib [gcc]
arg [--push-state] ==> ignore
arg [--as-needed] ==> ignore
arg [-lgcc_s] ==> lib [gcc_s]
arg [--pop-state] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o]
collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o]
collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o]
collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11] ==> [/usr/lib/gcc/x86_64-linux-gnu/11]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib] ==> [/usr/lib]
collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
collapse library dir [/lib/../lib] ==> [/lib]
collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../..] ==> [/usr/lib]
implicit libs: [gcc;gcc_s;c;gcc;gcc_s]
implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o]
implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/11;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
implicit fwks: []
Detecting CXX compiler ABI info compiled with the following output:
Change Dir: /home/eduardo/proj/OpenDX/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/ninja cmTC_9dac2 && [1/2] Building CXX object CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.o
Using built-in specs.
COLLECT_GCC=/usr/bin/c++
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1~22.04)
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_9dac2.dir/'
/usr/lib/gcc/x86_64-linux-gnu/11/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_9dac2.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccy8ZEI3.s
GNU C++17 (Ubuntu 11.3.0-1ubuntu1~22.04) version 11.3.0 (x86_64-linux-gnu)
compiled by GNU C version 11.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/11"
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/include-fixed"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/include/c++/11
/usr/include/x86_64-linux-gnu/c++/11
/usr/include/c++/11/backward
/usr/lib/gcc/x86_64-linux-gnu/11/include
/usr/local/include
/usr/include/x86_64-linux-gnu
/usr/include
End of search list.
GNU C++17 (Ubuntu 11.3.0-1ubuntu1~22.04) version 11.3.0 (x86_64-linux-gnu)
compiled by GNU C version 11.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 449548cbb29044828dc7ea158b577b98
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_9dac2.dir/'
as -v --64 -o CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccy8ZEI3.s
GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.'
[2/2] Linking CXX executable cmTC_9dac2
Using built-in specs.
COLLECT_GCC=/usr/bin/c++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1~22.04)
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_9dac2' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_9dac2.'
/usr/lib/gcc/x86_64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccuPvsJL.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_9dac2 /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/11/../../.. CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_9dac2' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_9dac2.'
Parsed CXX implicit include dir info from above output: rv=done
found start of include info
found start of implicit include info
add: [/usr/include/c++/11]
add: [/usr/include/x86_64-linux-gnu/c++/11]
add: [/usr/include/c++/11/backward]
add: [/usr/lib/gcc/x86_64-linux-gnu/11/include]
add: [/usr/local/include]
add: [/usr/include/x86_64-linux-gnu]
add: [/usr/include]
end of search list found
collapse include dir [/usr/include/c++/11] ==> [/usr/include/c++/11]
collapse include dir [/usr/include/x86_64-linux-gnu/c++/11] ==> [/usr/include/x86_64-linux-gnu/c++/11]
collapse include dir [/usr/include/c++/11/backward] ==> [/usr/include/c++/11/backward]
collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/11/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/11/include]
collapse include dir [/usr/local/include] ==> [/usr/local/include]
collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu]
collapse include dir [/usr/include] ==> [/usr/include]
implicit include dirs: [/usr/include/c++/11;/usr/include/x86_64-linux-gnu/c++/11;/usr/include/c++/11/backward;/usr/lib/gcc/x86_64-linux-gnu/11/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include]
Parsed CXX implicit link information from above output:
link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
ignore line: [Change Dir: /home/eduardo/proj/OpenDX/build/CMakeFiles/CMakeTmp]
ignore line: []
ignore line: [Run Build Command(s):/usr/bin/ninja cmTC_9dac2 && [1/2] Building CXX object CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.o]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/c++]
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
ignore line: [OFFLOAD_TARGET_DEFAULT=1]
ignore line: [Target: x86_64-linux-gnu]
ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1~22.04) ]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_9dac2.dir/']
ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/11/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_9dac2.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccy8ZEI3.s]
ignore line: [GNU C++17 (Ubuntu 11.3.0-1ubuntu1~22.04) version 11.3.0 (x86_64-linux-gnu)]
ignore line: [ compiled by GNU C version 11.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
ignore line: []
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/11"]
ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"]
ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/include-fixed"]
ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/include"]
ignore line: [#include "..." search starts here:]
ignore line: [#include <...> search starts here:]
ignore line: [ /usr/include/c++/11]
ignore line: [ /usr/include/x86_64-linux-gnu/c++/11]
ignore line: [ /usr/include/c++/11/backward]
ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/11/include]
ignore line: [ /usr/local/include]
ignore line: [ /usr/include/x86_64-linux-gnu]
ignore line: [ /usr/include]
ignore line: [End of search list.]
ignore line: [GNU C++17 (Ubuntu 11.3.0-1ubuntu1~22.04) version 11.3.0 (x86_64-linux-gnu)]
ignore line: [ compiled by GNU C version 11.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
ignore line: []
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [Compiler executable checksum: 449548cbb29044828dc7ea158b577b98]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_9dac2.dir/']
ignore line: [ as -v --64 -o CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccy8ZEI3.s]
ignore line: [GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.']
ignore line: [[2/2] Linking CXX executable cmTC_9dac2]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/c++]
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper]
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
ignore line: [OFFLOAD_TARGET_DEFAULT=1]
ignore line: [Target: x86_64-linux-gnu]
ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1~22.04) ]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_9dac2' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_9dac2.']
link line: [ /usr/lib/gcc/x86_64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccuPvsJL.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_9dac2 /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/11/../../.. CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/collect2] ==> ignore
arg [-plugin] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so] ==> ignore
arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper] ==> ignore
arg [-plugin-opt=-fresolution=/tmp/ccuPvsJL.res] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [--build-id] ==> ignore
arg [--eh-frame-hdr] ==> ignore
arg [-m] ==> ignore
arg [elf_x86_64] ==> ignore
arg [--hash-style=gnu] ==> ignore
arg [--as-needed] ==> ignore
arg [-dynamic-linker] ==> ignore
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
arg [-pie] ==> ignore
arg [-znow] ==> ignore
arg [-zrelro] ==> ignore
arg [-o] ==> ignore
arg [cmTC_9dac2] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib]
arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
arg [-L/lib/../lib] ==> dir [/lib/../lib]
arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../..]
arg [CMakeFiles/cmTC_9dac2.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
arg [-lstdc++] ==> lib [stdc++]
arg [-lm] ==> lib [m]
arg [-lgcc_s] ==> lib [gcc_s]
arg [-lgcc] ==> lib [gcc]
arg [-lc] ==> lib [c]
arg [-lgcc_s] ==> lib [gcc_s]
arg [-lgcc] ==> lib [gcc]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o]
collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o]
collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o]
collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11] ==> [/usr/lib/gcc/x86_64-linux-gnu/11]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib] ==> [/usr/lib]
collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
collapse library dir [/lib/../lib] ==> [/lib]
collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../..] ==> [/usr/lib]
implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc]
implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o]
implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/11;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
implicit fwks: []

View File

@ -0,0 +1,4 @@
/home/eduardo/proj/OpenDX/build/CMakeFiles/d3d9.dir
/home/eduardo/proj/OpenDX/build/CMakeFiles/dxdiag.dir
/home/eduardo/proj/OpenDX/build/CMakeFiles/edit_cache.dir
/home/eduardo/proj/OpenDX/build/CMakeFiles/rebuild_cache.dir

View File

@ -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.

View File

@ -0,0 +1,83 @@
# CMAKE generated file: DO NOT EDIT!
# Generated by "Ninja" Generator, CMake Version 3.22
# This file contains all the rules used to get the outputs files
# built from the input files.
# It is included in the main 'build.ninja'.
# =============================================================================
# Project: OpenDX
# Configurations: Debug
# =============================================================================
# =============================================================================
#############################################
# Rule for compiling CXX files.
rule CXX_COMPILER__d3d9_Debug
depfile = $DEP_FILE
deps = gcc
command = /usr/bin/c++ $DEFINES $INCLUDES $FLAGS -MD -MT $out -MF $DEP_FILE -o $out -c $in
description = Building CXX object $out
#############################################
# Rule for linking CXX shared library.
rule CXX_SHARED_LIBRARY_LINKER__d3d9_Debug
command = $PRE_LINK && /usr/bin/c++ -fPIC $LANGUAGE_COMPILE_FLAGS $ARCH_FLAGS $LINK_FLAGS -shared $SONAME_FLAG$SONAME -o $TARGET_FILE $in $LINK_PATH $LINK_LIBRARIES && $POST_BUILD
description = Linking CXX shared library $TARGET_FILE
restat = $RESTAT
#############################################
# Rule for compiling CXX files.
rule CXX_COMPILER__dxdiag_Debug
depfile = $DEP_FILE
deps = gcc
command = /usr/bin/c++ $DEFINES $INCLUDES $FLAGS -MD -MT $out -MF $DEP_FILE -o $out -c $in
description = Building CXX object $out
#############################################
# Rule for linking CXX executable.
rule CXX_EXECUTABLE_LINKER__dxdiag_Debug
command = $PRE_LINK && /usr/bin/c++ $FLAGS $LINK_FLAGS $in -o $TARGET_FILE $LINK_PATH $LINK_LIBRARIES && $POST_BUILD
description = Linking CXX executable $TARGET_FILE
restat = $RESTAT
#############################################
# Rule for running custom commands.
rule CUSTOM_COMMAND
command = $COMMAND
description = $DESC
#############################################
# Rule for re-running cmake.
rule RERUN_CMAKE
command = /usr/bin/cmake --regenerate-during-build -S/home/eduardo/proj/OpenDX -B/home/eduardo/proj/OpenDX/build
description = Re-running CMake...
generator = 1
#############################################
# Rule for cleaning all built files.
rule CLEAN
command = /usr/bin/ninja $FILE_ARG -t clean $TARGETS
description = Cleaning all built files...
#############################################
# Rule for printing all primary targets available.
rule HELP
command = /usr/bin/ninja -t targets
description = All primary targets available:

181
build/build.ninja Normal file
View File

@ -0,0 +1,181 @@
# CMAKE generated file: DO NOT EDIT!
# Generated by "Ninja" Generator, CMake Version 3.22
# This file contains all the build statements describing the
# compilation DAG.
# =============================================================================
# Write statements declared in CMakeLists.txt:
#
# Which is the root file.
# =============================================================================
# =============================================================================
# Project: OpenDX
# Configurations: Debug
# =============================================================================
#############################################
# Minimal version of Ninja required by this file
ninja_required_version = 1.5
#############################################
# Set configuration variable for custom commands.
CONFIGURATION = Debug
# =============================================================================
# Include auxiliary files.
#############################################
# Include rules file.
include CMakeFiles/rules.ninja
# =============================================================================
#############################################
# Logical path to working directory; prefix for absolute paths.
cmake_ninja_workdir = /home/eduardo/proj/OpenDX/build/
# =============================================================================
# Object build statements for SHARED_LIBRARY target d3d9
#############################################
# Order-only phony target for d3d9
build cmake_object_order_depends_target_d3d9: phony || CMakeFiles/d3d9.dir
build CMakeFiles/d3d9.dir/libs/d3d9/d3d9.cpp.o: CXX_COMPILER__d3d9_Debug /home/eduardo/proj/OpenDX/libs/d3d9/d3d9.cpp || cmake_object_order_depends_target_d3d9
DEFINES = -Dd3d9_EXPORTS
DEP_FILE = CMakeFiles/d3d9.dir/libs/d3d9/d3d9.cpp.o.d
FLAGS = -g -fPIC -std=gnu++20
INCLUDES = -I/home/eduardo/proj/OpenDX/./include -I/home/eduardo/proj/OpenDX/./prod_include -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
OBJECT_DIR = CMakeFiles/d3d9.dir
OBJECT_FILE_DIR = CMakeFiles/d3d9.dir/libs/d3d9
# =============================================================================
# Link build statements for SHARED_LIBRARY target d3d9
#############################################
# Link the shared library libd3d9.so
build libd3d9.so: CXX_SHARED_LIBRARY_LINKER__d3d9_Debug CMakeFiles/d3d9.dir/libs/d3d9/d3d9.cpp.o
LANGUAGE_COMPILE_FLAGS = -g
OBJECT_DIR = CMakeFiles/d3d9.dir
POST_BUILD = :
PRE_LINK = :
SONAME = libd3d9.so
SONAME_FLAG = -Wl,-soname,
TARGET_FILE = libd3d9.so
TARGET_PDB = d3d9.so.dbg
# =============================================================================
# Object build statements for EXECUTABLE target dxdiag
#############################################
# Order-only phony target for dxdiag
build cmake_object_order_depends_target_dxdiag: phony || cmake_object_order_depends_target_d3d9
build CMakeFiles/dxdiag.dir/tools/dxdiag/main.cpp.o: CXX_COMPILER__dxdiag_Debug /home/eduardo/proj/OpenDX/tools/dxdiag/main.cpp || cmake_object_order_depends_target_dxdiag
DEP_FILE = CMakeFiles/dxdiag.dir/tools/dxdiag/main.cpp.o.d
FLAGS = -g -std=gnu++20
INCLUDES = -I/home/eduardo/proj/OpenDX/./include -I/home/eduardo/proj/OpenDX/./prod_include -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
OBJECT_DIR = CMakeFiles/dxdiag.dir
OBJECT_FILE_DIR = CMakeFiles/dxdiag.dir/tools/dxdiag
# =============================================================================
# Link build statements for EXECUTABLE target dxdiag
#############################################
# Link the executable dxdiag
build dxdiag: CXX_EXECUTABLE_LINKER__dxdiag_Debug CMakeFiles/dxdiag.dir/tools/dxdiag/main.cpp.o | libd3d9.so || libd3d9.so
FLAGS = -g
LINK_LIBRARIES = -Wl,-rpath,/home/eduardo/proj/OpenDX/build -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 libd3d9.so
OBJECT_DIR = CMakeFiles/dxdiag.dir
POST_BUILD = :
PRE_LINK = :
TARGET_FILE = dxdiag
TARGET_PDB = dxdiag.dbg
#############################################
# Utility command for edit_cache
build CMakeFiles/edit_cache.util: CUSTOM_COMMAND
COMMAND = cd /home/eduardo/proj/OpenDX/build && /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available.
DESC = No interactive CMake dialog available...
restat = 1
build edit_cache: phony CMakeFiles/edit_cache.util
#############################################
# Utility command for rebuild_cache
build CMakeFiles/rebuild_cache.util: CUSTOM_COMMAND
COMMAND = cd /home/eduardo/proj/OpenDX/build && /usr/bin/cmake --regenerate-during-build -S/home/eduardo/proj/OpenDX -B/home/eduardo/proj/OpenDX/build
DESC = Running CMake to regenerate build system...
pool = console
restat = 1
build rebuild_cache: phony CMakeFiles/rebuild_cache.util
# =============================================================================
# Target aliases.
build d3d9: phony libd3d9.so
# =============================================================================
# Folder targets.
# =============================================================================
#############################################
# Folder: /home/eduardo/proj/OpenDX/build
build all: phony libd3d9.so dxdiag
# =============================================================================
# Built-in targets
#############################################
# Re-run CMake if any of its inputs changed.
build build.ninja: RERUN_CMAKE | ../CMakeLists.txt ../include/config.hpp.in /usr/share/cmake-3.22/Modules/CMakeCInformation.cmake /usr/share/cmake-3.22/Modules/CMakeCXXInformation.cmake /usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake /usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake /usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake /usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake /usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake /usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake /usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake /usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake /usr/share/cmake-3.22/Modules/Compiler/GNU-CXX.cmake /usr/share/cmake-3.22/Modules/Compiler/GNU.cmake /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake /usr/share/cmake-3.22/Modules/FindPackageMessage.cmake /usr/share/cmake-3.22/Modules/FindPkgConfig.cmake /usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake /usr/share/cmake-3.22/Modules/Platform/Linux-GNU-CXX.cmake /usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake /usr/share/cmake-3.22/Modules/Platform/Linux.cmake /usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake CMakeCache.txt CMakeFiles/3.22.1/CMakeCCompiler.cmake CMakeFiles/3.22.1/CMakeCXXCompiler.cmake CMakeFiles/3.22.1/CMakeSystem.cmake
pool = console
#############################################
# A missing CMake input file is not an error.
build ../CMakeLists.txt ../include/config.hpp.in /usr/share/cmake-3.22/Modules/CMakeCInformation.cmake /usr/share/cmake-3.22/Modules/CMakeCXXInformation.cmake /usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake /usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake /usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake /usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake /usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake /usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake /usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake /usr/share/cmake-3.22/Modules/Compiler/GNU-C.cmake /usr/share/cmake-3.22/Modules/Compiler/GNU-CXX.cmake /usr/share/cmake-3.22/Modules/Compiler/GNU.cmake /usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake /usr/share/cmake-3.22/Modules/FindPackageMessage.cmake /usr/share/cmake-3.22/Modules/FindPkgConfig.cmake /usr/share/cmake-3.22/Modules/Platform/Linux-GNU-C.cmake /usr/share/cmake-3.22/Modules/Platform/Linux-GNU-CXX.cmake /usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake /usr/share/cmake-3.22/Modules/Platform/Linux.cmake /usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake CMakeCache.txt CMakeFiles/3.22.1/CMakeCCompiler.cmake CMakeFiles/3.22.1/CMakeCXXCompiler.cmake CMakeFiles/3.22.1/CMakeSystem.cmake: phony
#############################################
# Clean all the built files.
build clean: CLEAN
#############################################
# Print all primary targets available.
build help: HELP
#############################################
# Make the all target the default.
default all

54
build/cmake_install.cmake Normal file
View File

@ -0,0 +1,54 @@
# Install script for directory: /home/eduardo/proj/OpenDX
# Set the install prefix
if(NOT DEFINED CMAKE_INSTALL_PREFIX)
set(CMAKE_INSTALL_PREFIX "/usr/local")
endif()
string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
# Set the install configuration name.
if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
if(BUILD_TYPE)
string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
else()
set(CMAKE_INSTALL_CONFIG_NAME "Debug")
endif()
message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
endif()
# Set the component getting installed.
if(NOT CMAKE_INSTALL_COMPONENT)
if(COMPONENT)
message(STATUS "Install component: \"${COMPONENT}\"")
set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
else()
set(CMAKE_INSTALL_COMPONENT)
endif()
endif()
# Install shared libraries without execute permission?
if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
set(CMAKE_INSTALL_SO_NO_EXE "1")
endif()
# Is this installation the result of a crosscompile?
if(NOT DEFINED CMAKE_CROSSCOMPILING)
set(CMAKE_CROSSCOMPILING "FALSE")
endif()
# Set default install directory permissions.
if(NOT DEFINED CMAKE_OBJDUMP)
set(CMAKE_OBJDUMP "/usr/bin/objdump")
endif()
if(CMAKE_INSTALL_COMPONENT)
set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
else()
set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
endif()
string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
"${CMAKE_INSTALL_MANIFEST_FILES}")
file(WRITE "/home/eduardo/proj/OpenDX/build/${CMAKE_INSTALL_MANIFEST}"
"${CMAKE_INSTALL_MANIFEST_CONTENT}")

View File

@ -0,0 +1,12 @@
[
{
"directory": "/home/eduardo/proj/OpenDX/build",
"command": "/usr/bin/c++ -Dd3d9_EXPORTS -I/home/eduardo/proj/OpenDX/./include -I/home/eduardo/proj/OpenDX/./prod_include -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -g -fPIC -std=gnu++20 -o CMakeFiles/d3d9.dir/libs/d3d9/d3d9.cpp.o -c /home/eduardo/proj/OpenDX/libs/d3d9/d3d9.cpp",
"file": "/home/eduardo/proj/OpenDX/libs/d3d9/d3d9.cpp"
},
{
"directory": "/home/eduardo/proj/OpenDX/build",
"command": "/usr/bin/c++ -I/home/eduardo/proj/OpenDX/./include -I/home/eduardo/proj/OpenDX/./prod_include -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -g -std=gnu++20 -o CMakeFiles/dxdiag.dir/tools/dxdiag/main.cpp.o -c /home/eduardo/proj/OpenDX/tools/dxdiag/main.cpp",
"file": "/home/eduardo/proj/OpenDX/tools/dxdiag/main.cpp"
}
]

BIN
build/dxdiag Executable file

Binary file not shown.

1
build/include/config.hpp Normal file
View File

@ -0,0 +1 @@
#define PROJECT_SOURCE_DIR "/home/eduardo/proj/OpenDX"

BIN
build/libd3d9.so Executable file

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 398 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 733 KiB

View File

@ -1,6 +1,3 @@
#pragma once #pragma once
#define DEBUG true #define PROJECT_SOURCE_DIR "/home/eduardo/proj/OpenDX/"
//PREPROCESSING ONLY!!!
#define PROJECT_SOURCE_DIR "/home/eduardo/git/eduapps/OpenDX/"

View File

@ -1,6 +1,3 @@
#pragma once #pragma once
#define DEBUG true
//PREPROCESSING ONLY!!!
#define PROJECT_SOURCE_DIR "@PROJECT_SOURCE_DIR@/" #define PROJECT_SOURCE_DIR "@PROJECT_SOURCE_DIR@/"

View File

@ -9,4 +9,9 @@
* it means that every time it's called * it means that every time it's called
* the file content will be included in the code * the file content will be included in the code
*/ */
#define GetFileContent(file_path) #file_path #define GetFileContent(file_path) []() -> std::string { \
std::ifstream file(file_path); \
std::stringstream buffer; \
buffer << file.rdbuf(); \
return buffer.str(); \
}()

View File

@ -1,12 +0,0 @@
#pragma once
#include <windows.h>
inline LONG InterlockedIncrement(LONG volatile *p)
{
return __sync_add_and_fetch(p, 1);
}
inline LONG InterlockedDecrement(LONG volatile *p)
{
return __sync_sub_and_fetch(p, 1);
}

View File

@ -1,184 +1 @@
#include <windows.h>
#include "d3d9helper.hpp" #include "d3d9helper.hpp"
#include "d3d9.hpp"
#include "d3dobject.hpp"
#include <iostream>
#include <winbase.h>
#include <drm/drm.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/ioctl.h>
#include <linux/kd.h>
#include <xf86drm.h>
#include <xf86drmMode.h>
//TODO: add ifdefs when implementing another gpu
#include <drm/i915_drm.h>
IDirect3D9::IDirect3D9(UINT SDKVersion) {
#ifdef DEBUG
std::cout << "libd3d9.so: IDirect3D9::IDirect3D9()" << std::endl;
#endif
//Create connection with DRM
int fd = open("/dev/dri/card0", O_RDWR, 0); //DirectX automatically selects the first GPU
if (fd < 0) {
std::cerr << "\033[1;31m" //RED BOLD
<< "ODX ERROR: Failed to open /dev/dri/card0. Please check if you have the proper permissions to access the device." << std::endl
<< "Direct3DCreate9 fails and returns NULL.\033[0;0m" << std::endl
<< std::endl;
close(fd);
return;
}
//check if the device is Hardware or Software (Does DirectX have this check?)
drm_get_cap gpuType;
int ioctlResult = ioctl(fd, DRM_IOCTL_GET_CAP, &gpuType);
//get device vendor id:
drmVersion* version = drmGetVersion(fd);
if (ioctlResult != 0) {
std::cerr << "\033[1;31m"
<< "ODX ERROR: Failed to get device info" << std::endl
<< "Direct3DCreate9 fails and returns NULL.\033[0;0m" << std::endl
<< std::endl;
close(fd);
perror("ioctl");
return;
}
#ifdef DEBUG
std::cout << "\033[1;32m" //GREEN BOLD
<< "ODX INFO: Device \"" << version->name << '(' << version->desc << ' ' << version->version_minor << '.' << version->version_patchlevel << ')' << "\" is " << (gpuType.value == DRM_CAP_DUMB_BUFFER ? "Software" : "Hardware") << std::endl
<< "\033[0;0m" << std::endl;
#endif
D3DDEVTYPE deviceType = D3DDEVTYPE::D3DDEVTYPE_NULLREF;
if (gpuType.value == DRM_CAP_DUMB_BUFFER) {
deviceType = D3DDEVTYPE::D3DDEVTYPE_SW;
} else {
deviceType = D3DDEVTYPE::D3DDEVTYPE_HAL;
}
IDirect3DDevice9* device;
this->CreateDevice(
D3DADAPTER_DEFAULT,
deviceType,
NULL, // TODO
NULL, // TODO
NULL, // TODO
&device
);
close(fd);
}
ULONG IDirect3D9::AddRef() {
DXGASSERT(((ULONG_PTR)(&m_cRef) & 3) == 0);
InterlockedIncrement((LONG *)&m_cRef);
return m_cRef;
}
HRESULT IDirect3D9::CreateDevice(
UINT Adapter,
D3DDEVTYPE DeviceType,
HWND hFocusWindow,
DWORD BehaviorFlags,
D3DPRESENT_PARAMETERS *pPresentationParameters,
IDirect3DDevice9 **ppReturnedDeviceInterface
) {
#ifdef DEBUG
std::cout << "libd3d9.so: IDirect3D9::CreateDevice()" << std::endl;
#endif
//get GtkWindow specs and put them into D3DPRESENT_PARAMETERS
pPresentationParameters->hDeviceWindow = hFocusWindow;
pPresentationParameters->BackBufferWidth = gtk_widget_get_size(hFocusWindow,GTK_ORIENTATION_HORIZONTAL);
pPresentationParameters->BackBufferHeight = gtk_widget_get_size(hFocusWindow,GTK_ORIENTATION_VERTICAL);
//create the device
IDirect3DDevice9 device = IDirect3DDevice9(/*this, pPresentationParameters*/);
*ppReturnedDeviceInterface = &device;
return 0;
}
ULONG IDirect3D9::Release() {
return 0;
}
HRESULT IDirect3D9::QueryInterface ( REFIID riid, void ** ppvObj ) {
return 0;
}
IDirect3D9* Direct3DCreate9(UINT SDKVersion) {
HINSTANCE instance = NULL;
constexpr const UINT supported_sdk = 0x0900;
if (SDKVersion != supported_sdk) {
std::cout << "\033[1;31m" //RED BOLD
<< std::endl
<< "D3D ERROR: This application compiled against improper D3D headers." << std::endl
<< "The application is compiled with SDK version (" << SDKVersion << ") but the currently installed" << std::endl
<< "runtime supports versions from (" << supported_sdk << ")." << std::endl
<< "Please recompile with an up-to-date SDK.\033[0;0m" << std::endl
<< std::endl;
return NULL;
}
IDirect3D9* r = new IDirect3D9(SDKVersion);
if (r == NULL)
std::cout << "\033[0;31m"
<< "Creating D3D enumeration object failed; out of memory. Direct3DCreate fails and returns NULL.\033[0;0m" << std::endl;
return r;
}
IDirect3DDevice9::IDirect3DDevice9(/*IDirect3D9* d3d, D3DPRESENT_PARAMETERS* pp*/) {
#ifdef DEBUG
std::cout << "libd3d9.so: IDirect3DDevice9::IDirect3DDevice9()" << std::endl;
#endif
refCount = 1;
}
ULONG IDirect3DDevice9::AddRef() {
DXGASSERT(((ULONG_PTR)(&refCount) & 3) == 0);
InterlockedIncrement((LONG *)&refCount);
return refCount;
}
ULONG IDirect3DDevice9::Release() {
InterlockedDecrement((LONG *)&refCount);
return refCount;
}
HRESULT IDirect3DDevice9::QueryInterface(REFIID riid, void** ppvObj) {
*ppvObj = this;
IDirect3DDevice9::AddRef();
return 0;
}
HRESULT IDirect3DDevice9::Clear(DWORD Count, const void/*D3DRECT*/ *pRects, DWORD Flags, int/*D3DCOLOR*/ Color, float Z, DWORD Stencil) {
#ifdef DEBUG
std::cout << "libd3d9.so: IDirect3DDevice9::Clear()" << std::endl;
#endif
//intel code
return 0;
}

View File

@ -1,31 +1,2 @@
#pragma once #pragma once
#include <config.hpp>
#include <windows.h>
#include "d3d9helper.hpp" #include "d3d9helper.hpp"
#include "d3d9types.hpp"
#include "idirect3ddevice9.hpp"
// struct IDirect3D9 : public IUnknown {
// IDirect3D9(UINT SDKVersion);
// HRESULT QueryInterface(REFIID riid, void** ppvObj);
// ULONG AddRef();
// ULONG Release();
// HRESULT CreateDevice(
// UINT Adapter,
// D3DDEVTYPE DeviceType,
// HWND hFocusWindow,
// DWORD BehaviorFlags,
// D3DPRESENT_PARAMETERS *pPresentationParameters,
// IDirect3DDevice9 **ppReturnedDeviceInterface
// );
// private:
// DWORD m_cRef;
// // Define other methods required by IDirect3D9 interface
// };
typedef struct IDirect3D9 *LPDIRECT3D9, *PDIRECT3D9;
IDirect3D9* Direct3DCreate9(UINT SDKVersion);

View File

@ -1,9 +1,6 @@
#pragma once #pragma once
#include <unknwn.h> #include <unknwn.h>
#include "idirect3ddevice9.hpp"
/** typedef struct IDirect3D9 *LPDIRECT3D9, *PDIRECT3D9;
* IDirect3D9
*/ class IDirect3D9:public IUnknown;
typedef IDirect3D9 *LPDIRECT3D9, *PDIRECT3D9;
typedef IDirect3DDevice9 *LPDIRECT3DDEVICE9, *PDIRECT3DDEVICE9;

View File

@ -1,22 +0,0 @@
#pragma once
//not sure if this goes here.
/*#define API_ENTER_NO_LOCK() \
do { \
InterlockedIncrement(&g_nInsideAPI); \
} while (false)*/
// #ifdef _DEBUG
// #define DXGASSERT(exp) do { \
// if (!(exp)) { \
// fprintf(stderr, "Assertion failed: %s, file %s, line %d\n", #exp, __FILE__, __LINE__); \
// abort(); \
// } \
// } while (0)
// #else
// #define DXGASSERT(exp) ((void)0)
// #endif
// #define MAKEFOURCC(ch0, ch1, ch2, ch3) \
// ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | \
// ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24 ))

View File

@ -1,3 +0,0 @@
#pragma once
#include <windows.h>
#include <d3d9.h>

View File

@ -1,12 +0,0 @@
#include "idirect3ddevice9.hpp"
class D3DObject {
public:
D3DObject(IDirect3DDevice9* device) : m_device(device) {}
virtual ~D3DObject() {}
virtual void render() = 0;
protected:
IDirect3DDevice9* m_device;
};

View File

@ -1,11 +0,0 @@
#pragma once
#include "idirect3ddevice9.hpp"
class D3DObject {
public:
D3DObject(IDirect3DDevice9* device):m_device(device) {
// TODO: complete
}
protected:
IDirect3DDevice9* m_device;
};

View File

@ -1,9 +0,0 @@
#pragma once
#include <unknwn.h>
#include <d3d9.h>
/*IDirect3DDevice9::IDirect3DDevice9(IDirect3D9* d3d, D3DPRESENT_PARAMETERS* pp) {
#ifdef DEBUG
std::cout << "libd3d9.so: IDirect3DDevice9::IDirect3DDevice9()" << std::endl;
#endif
}*/

View File

@ -1,2 +0,0 @@
# libdsetup.so
Legacy code for DirectX Setup. This is a DLL that is loaded by the DirectX 9.

View File

@ -1 +0,0 @@
#include "dsetup.hpp"

View File

@ -1,2 +0,0 @@
#pragma onnce
#include "fun/DirectXSetupGetVersion.hpp"

View File

@ -1,17 +0,0 @@
#include "DirectXSetupGetVersion.hpp"
/**
* @brief Get DirectX version
*
* @todo Implement this function
* * @see https://github.com/EduApps-CDG/OpenDX/wiki/dsetup.dll-or-libdsetup.so#int-directxsetupgetversiondword-dword
*
* @param ver
* @param rev
* @return int 1 (always?)
*/
int DirectXSetupGetVersion(DWORD* ver, DWORD* rev) {
*ver = 0;
*rev = 0;
return 1;
}

View File

@ -1,14 +0,0 @@
#pragma onnce
#include <windows.h>
/**
* @brief Get DirectX version
*
* @todo Implement this function
* * @see https://github.com/EduApps-CDG/OpenDX/wiki/dsetup.dll-or-libdsetup.so#int-directxsetupgetversiondword-dword
*
* @param ver
* @param rev
* @return int 1 (always?)
*/
int DirectXSetupGetVersion(DWORD* ver, DWORD* rev);

View File

@ -1,13 +0,0 @@
# libopendx.so
Here goes everything that's not part of DirectX library.
Some examples are:
* DLL files that DirectX depends on will be turned into `libopendx.so`
such as kernel32.dll.
* Essential external functions and definitions needed to mantain software
compatibility such as functions contained in `<windows.h>`. But the headers
will be found in [`/prod_include`](../../prod_include).
All of these examples will be built in a single library and that's what
`libopendx.so` does.
The main file is [`./opendx.cpp`](./opendx.cpp)

View File

@ -1,126 +0,0 @@
#include "opendx.hpp"
#include <windows.h>
#include <gtk/gtk.h>
#include <winuser.h>
#include <opendx.h>
#include <iostream>
/**
* @brief Create a Window
*
* @return HWND
*/
HWND CreateWindowExA(
DWORD extStyle,
LPCSTR className, //optional
LPCSTR title, //optional
DWORD style,
int x, //ignored. It's the user responsability to set the window position. (GTK4)
int y, //ignored. It's the user responsability to set the window position. (GTK4)
int width,
int height,
HWND parent, //optional
HMENU menu, //optional
HINSTANCE instance, //optional (Windows ignores it)
LPVOID param //optional
) {
#ifdef DEBUG
std::cout << "libopendx.so: CreateWindowExA()" << std::endl;
#endif
GtkWidget* window = gtk_window_new();
if (title != nullptr) {
gtk_window_set_title(GTK_WINDOW(window), title);
}
gtk_window_set_default_size(GTK_WINDOW(window), width, height);
//style:
// TODO: Complete the list
if (!(style & WS_CAPTION)) {
gtk_window_set_title(GTK_WINDOW(window), "");
}
if (!(style & WS_SYSMENU)) {
gtk_window_set_deletable(GTK_WINDOW(window), false);
}
if (style & WS_VISIBLE) {
gtk_widget_show(GTK_WIDGET(window));
}
// TODO: find a no-signal way
// g_signal_connect(window, "destroy", G_CALLBACK(on_window_destroy), NULL);
return window;
}
BOOL ShowWindow(HWND window, int nCmdShow) {
BOOL r = gtk_widget_get_visible(GTK_WIDGET(window));
gtk_widget_show(GTK_WIDGET(window));
return r;
}
BOOL DestroyWindow(HWND window) {
gtk_window_destroy(GTK_WINDOW(window));
return true;
}
BOOL GetMessageA(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax) {
BOOL r = g_main_context_pending(NULL);
//i know this is wrong, but i need to get the sample working
if (r) {
g_main_context_iteration(NULL, true);
} else {
lpMsg->message = WM_QUIT;
}
return r;
}
BOOL PeekMessageA(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg) {
BOOL r = g_main_context_pending(NULL);
if (r) {
g_main_context_iteration(NULL, true);
} else {
lpMsg->message = WM_QUIT;
}
return r;
}
/*
* OpenDX utility class
*/
OpenDX::OpenDX(int argc, char* argv[], int (*WinMain)(HINSTANCE, HINSTANCE, LPSTR, int)) {
//Converts argc and argv to WinMain params
char* cmdline = (char*) malloc(sizeof(char));
cmdline[0] = '\0';
for (int i = 0; i < argc; i++) {
cmdline = (char*) realloc(cmdline, strlen(cmdline) + strlen(argv[i]) + 2);
strcat(cmdline, argv[i]);
if (i < argc - 1) {
strcat(cmdline, " ");
}
}
gtk_init();
if (WinMain != nullptr) {
winMain_r = (*WinMain)(nullptr,nullptr,cmdline,0);
}
}
OpenDX::OpenDX(int (*WinMain)(HINSTANCE, HINSTANCE, LPSTR, int)) {
gtk_init();
if (WinMain != nullptr) {
winMain_r = (*WinMain)(nullptr,nullptr,"",0);
}
}
int OpenDX::getReturnCode() {
return winMain_r;
}

View File

@ -1,3 +0,0 @@
#pragma once
#include <config.hpp>

View File

@ -1,5 +0,0 @@
tar -cvf opendx.tar -C build opendx
cd build
cpack
cd ..
mv build/opendx*.deb ./opendx.deb

View File

@ -1,3 +0,0 @@
# prod_include
This folder contains headers that you can use as reference to
port your software for Linux.

View File

@ -1,244 +1,7 @@
/** /**
* Production "d3d9.h" file. * Production "d3d9.h" file.
*
* TODO: Auto-generate this file from internal headers.
*/ */
#ifndef _D3D9_H #ifndef _D3D9_H
#define _D3D9_H #define _D3D9_H
#include <windows.h> const char* sayHello();
#include <winerror.h>
#include <unknwn.h>
UINT D3D_SDK_VERSION = 0x0900;
#define D3DADAPTER_DEFAULT 0
//not sure if this goes here.
/*#define API_ENTER_NO_LOCK() \
do { \
InterlockedIncrement(&g_nInsideAPI); \
} while (false)*/
#ifdef _DEBUG
#define DXGASSERT(exp) do { \
if (!(exp)) { \
fprintf(stderr, "Assertion failed: %s, file %s, line %d\n", #exp, __FILE__, __LINE__); \
abort(); \
} \
} while (0)
#else
#define DXGASSERT(exp) ((void)0)
#endif
#define MAKEFOURCC(ch0, ch1, ch2, ch3) \
((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | \
((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24 ))
typedef enum {
REF_EXTERNAL = 0,
REF_INTRINSIC = 1,
REF_INTERNAL = 2
} REF_TYPE;
/**
* Defines the various types of surface formats.
*/
typedef enum _D3DFORMAT {
D3DFMT_UNKNOWN = 0,
D3DFMT_R8G8B8 = 20,
D3DFMT_A8R8G8B8 = 21,
D3DFMT_X8R8G8B8 = 22,
D3DFMT_R5G6B5 = 23,
D3DFMT_X1R5G5B5 = 24,
D3DFMT_A1R5G5B5 = 25,
D3DFMT_A4R4G4B4 = 26,
D3DFMT_R3G3B2 = 27,
D3DFMT_A8 = 28,
D3DFMT_A8R3G3B2 = 29,
D3DFMT_X4R4G4B4 = 30,
D3DFMT_A2B10G10R10 = 31,
D3DFMT_A8B8G8R8 = 32,
D3DFMT_X8B8G8R8 = 33,
D3DFMT_G16R16 = 34,
D3DFMT_A2R10G10B10 = 35,
D3DFMT_A16B16G16R16 = 36,
D3DFMT_A8P8 = 40,
D3DFMT_P8 = 41,
D3DFMT_L8 = 50,
D3DFMT_A8L8 = 51,
D3DFMT_A4L4 = 52,
D3DFMT_V8U8 = 60,
D3DFMT_L6V5U5 = 61,
D3DFMT_X8L8V8U8 = 62,
D3DFMT_Q8W8V8U8 = 63,
D3DFMT_V16U16 = 64,
D3DFMT_A2W10V10U10 = 67,
D3DFMT_UYVY = MAKEFOURCC('U', 'Y', 'V', 'Y'),
D3DFMT_R8G8_B8G8 = MAKEFOURCC('R', 'G', 'B', 'G'),
D3DFMT_YUY2 = MAKEFOURCC('Y', 'U', 'Y', '2'),
D3DFMT_G8R8_G8B8 = MAKEFOURCC('G', 'R', 'G', 'B'),
D3DFMT_DXT1 = MAKEFOURCC('D', 'X', 'T', '1'),
D3DFMT_DXT2 = MAKEFOURCC('D', 'X', 'T', '2'),
D3DFMT_DXT3 = MAKEFOURCC('D', 'X', 'T', '3'),
D3DFMT_DXT4 = MAKEFOURCC('D', 'X', 'T', '4'),
D3DFMT_DXT5 = MAKEFOURCC('D', 'X', 'T', '5'),
D3DFMT_D16_LOCKABLE = 70,
D3DFMT_D32 = 71,
D3DFMT_D15S1 = 73,
D3DFMT_D24S8 = 75,
D3DFMT_D24X8 = 77,
D3DFMT_D24X4S4 = 79,
D3DFMT_D16 = 80,
D3DFMT_D32F_LOCKABLE = 82,
D3DFMT_D24FS8 = 83,
#if !defined(D3D_DISABLE_9EX)
D3DFMT_D32_LOCKABLE = 84,
D3DFMT_S8_LOCKABLE = 85,
#endif // !D3D_DISABLE_9EX
D3DFMT_L16 = 81,
D3DFMT_VERTEXDATA =100,
D3DFMT_INDEX16 =101,
D3DFMT_INDEX32 =102,
D3DFMT_Q16W16V16U16 =110,
D3DFMT_MULTI2_ARGB8 = MAKEFOURCC('M','E','T','1'),
D3DFMT_R16F = 111,
D3DFMT_G16R16F = 112,
D3DFMT_A16B16G16R16F = 113,
D3DFMT_R32F = 114,
D3DFMT_G32R32F = 115,
D3DFMT_A32B32G32R32F = 116,
D3DFMT_CxV8U8 = 117,
#if !defined(D3D_DISABLE_9EX)
D3DFMT_A1 = 118,
D3DFMT_A2B10G10R10_XR_BIAS = 119,
D3DFMT_BINARYBUFFER = 199,
#endif // !D3D_DISABLE_9EX
D3DFMT_FORCE_DWORD =0x7fffffff
} D3DFORMAT;
/**
* Defines the levels of full-scene multisampling that the device can apply.
*/
typedef enum D3DMULTISAMPLE_TYPE {
D3DMULTISAMPLE_NONE = 0,
D3DMULTISAMPLE_NONMASKABLE = 1,
D3DMULTISAMPLE_2_SAMPLES = 2,
D3DMULTISAMPLE_3_SAMPLES = 3,
D3DMULTISAMPLE_4_SAMPLES = 4,
D3DMULTISAMPLE_5_SAMPLES = 5,
D3DMULTISAMPLE_6_SAMPLES = 6,
D3DMULTISAMPLE_7_SAMPLES = 7,
D3DMULTISAMPLE_8_SAMPLES = 8,
D3DMULTISAMPLE_9_SAMPLES = 9,
D3DMULTISAMPLE_10_SAMPLES = 10,
D3DMULTISAMPLE_11_SAMPLES = 11,
D3DMULTISAMPLE_12_SAMPLES = 12,
D3DMULTISAMPLE_13_SAMPLES = 13,
D3DMULTISAMPLE_14_SAMPLES = 14,
D3DMULTISAMPLE_15_SAMPLES = 15,
D3DMULTISAMPLE_16_SAMPLES = 16,
D3DMULTISAMPLE_FORCE_DWORD = 0xffffffff
} D3DMULTISAMPLE_TYPE, *LPD3DMULTISAMPLE_TYPE;
/**
* Defines swap effects
*/
typedef enum D3DSWAPEFFECT {
D3DSWAPEFFECT_DISCARD = 1,
D3DSWAPEFFECT_FLIP = 2,
D3DSWAPEFFECT_COPY = 3,
D3DSWAPEFFECT_OVERLAY = 4,
D3DSWAPEFFECT_FLIPEX = 5,
D3DSWAPEFFECT_FORCE_DWORD = 0xFFFFFFFF
} D3DSWAPEFFECT, *LPD3DSWAPEFFECT;
/**
* Describes the presentation parameters.
*/
struct D3DPRESENT_PARAMETERS {
UINT BackBufferWidth;
UINT BackBufferHeight;
D3DFORMAT BackBufferFormat;
UINT BackBufferCount;
D3DMULTISAMPLE_TYPE MultiSampleType;
DWORD MultiSampleQuality;
D3DSWAPEFFECT SwapEffect;
HWND hDeviceWindow;
BOOL Windowed;
BOOL EnableAutoDepthStencil;
D3DFORMAT AutoDepthStencilFormat;
DWORD Flags;
UINT FullScreen_RefreshRateInHz;
UINT PresentationInterval;
};
typedef struct D3DPRESENT_PARAMETERS D3DPRESENT_PARAMETERS, *LPD3DPRESENT_PARAMETERS;
struct IDirect3DDevice9 {
IDirect3DDevice9();
virtual HRESULT QueryInterface(REFIID riid, void** ppvObj);
virtual ULONG AddRef();
virtual ULONG Release();
HRESULT Clear(DWORD Count, const void/*D3DRECT*/ *pRects, DWORD Flags, int/*D3DCOLOR*/ Color, float Z, DWORD Stencil);
// Define other methods required by IDirect3D9 interface
private:ULONG refCount;
};
typedef struct IDirect3DDevice9 *LPDIRECT3DDEVICE9, *PDIRECT3DDEVICE9;
/**
* Defines device types
*/
typedef enum D3DDEVTYPE {
D3DDEVTYPE_HAL = 1,
D3DDEVTYPE_NULLREF = 4,
D3DDEVTYPE_REF = 2,
D3DDEVTYPE_SW = 3,
D3DDEVTYPE_FORCE_DWORD = 0xffffffff
} D3DDEVTYPE, *LPD3DDEVTYPE;
struct IDirect3D9 : public IUnknown {
IDirect3D9(UINT SDKVersion);
HRESULT QueryInterface(REFIID riid, void** ppvObj);
ULONG AddRef();
ULONG Release();
HRESULT CreateDevice(
UINT Adapter,
D3DDEVTYPE DeviceType,
HWND hFocusWindow,
DWORD BehaviorFlags,
D3DPRESENT_PARAMETERS *pPresentationParameters,
IDirect3DDevice9 **ppReturnedDeviceInterface
);
private:
DWORD m_cRef;
// Define other methods required by IDirect3D9 interface
};
typedef struct IDirect3D9 *LPDIRECT3D9, *PDIRECT3D9;
IDirect3D9* Direct3DCreate9(UINT SDKVersion);
#endif #endif

View File

@ -1,4 +1,5 @@
#pragma once #pragma once
#include
#include <unistd.h> #include <unistd.h>
#include <sys/syscall.h> #include <sys/syscall.h>

View File

@ -1,15 +0,0 @@
#pragma once
#include <windows.h>
/**
* @brief OpenDX utility class
*/
class OpenDX {
public:
OpenDX(int argc, char* argv[],int (*WinMain)(HINSTANCE, HINSTANCE, LPSTR, int) = nullptr);
OpenDX(int (*WinMain)(HINSTANCE, HINSTANCE, LPSTR, int) = nullptr);
int getReturnCode();
private:
int winMain_r = 0;
};

View File

@ -4,7 +4,7 @@
#include <winerror.h> #include <winerror.h>
#include <objbase.h> #include <objbase.h>
struct IUnknown { class IUnknown {
virtual HRESULT QueryInterface (REFIID riid, void **ppvObject) = 0; virtual HRESULT QueryInterface (REFIID riid, void **ppvObject) = 0;
virtual ULONG AddRef () = 0; virtual ULONG AddRef () = 0;
virtual ULONG Release () = 0; virtual ULONG Release () = 0;

View File

@ -1,10 +1 @@
#pragma once #pragma once
#include <windows.h>
/*
* ref: https://learn.microsoft.com/en-us/windows/win32/api/windef/ns-windef-point
*/
typedef struct tagPOINT {
LONG x;
LONG y;
} POINT, *PPOINT, *NPPOINT, *LPPOINT;

View File

@ -1,48 +1,14 @@
/**
* This file only provides types for
* Compatibility propourses regarding
* OpenDX. It's not intended to rewrite
* the entire Windows API.
*
* Part of: libopendx.so
*/
#pragma once #pragma once
//does it really goes here? //does it really goes here?
#include <unistd.h> #include <unistd.h>
#include <sys/syscall.h> #include <sys/syscall.h>
#define __syscall syscall(SYS_gettid)
#if defined(__GNUC__)
#define __stdcall __attribute__((stdcall))
#endif
#define WINAPI __stdcall
#define __int64 long long
//windows types: //windows types:
#define WCHAR wchar_t #define WCHAR wchar_t
#define TCHAR char
#define UINT unsigned int
#define ULONG unsigned long #define ULONG unsigned long
#define ULONG_PTR unsigned long #define LONG long;
#define LONG long
#define BOOL bool
#define BYTE unsigned char
#define LPSTR char*
#define LPCSTR const char*
#define LPCTSTR const char*
#define LPCWSTR const char*
#include <stdarg.h> #include <stdarg.h>
#include <windef.h> #include <windef.h>
#include <winnt.h> #include <winnt.h>
#include <gtk/gtk.h>
#define DWORD unsigned long
#define HWND GtkWidget*
#define HMENU void*
#define HINSTANCE void*
#define LPVOID void*
#define LONG_PTR __int64
#define LPARAM LONG_PTR
#define WPARAM unsigned __int64

View File

@ -1,4 +1,4 @@
#pragma once #pragma once
#include <windows.h> #include <windows.h>
#define HRESULT LONG #define HRESULT LONG;

View File

@ -1,3 +1 @@
#pragma once #pragma once
#define LPVOID void*

View File

@ -1,125 +0,0 @@
/**
* From "libopendx.so"
*/
#pragma once
#include <windows.h>
/*
* MSG
* ref: https://learn.microsoft.com/en-us/windows/win32/api/winuser/ns-winuser-msg
*/
typedef struct tagMSG {
HWND hwnd;
UINT message;
WPARAM wParam;
LPARAM lParam;
DWORD time;
POINT pt;
DWORD lPrivate;
} MSG, *PMSG, *NPMSG, *LPMSG;
#define WM_QUIT 0x0012
/**
* Extended Window Styles
* ref: https://learn.microsoft.com/en-us/windows/win32/winmsg/extended-window-styles
*/
#define WS_EX_ACCEPTFILES 0x00000010L
#define WS_EX_APPWINDOW 0x00040000L
#define WS_EX_CLIENTEDGE 0x00000200L
#define WS_EX_COMPOSITED 0x02000000L
#define WS_EX_CONTEXTHELP 0x00000400L
#define WS_EX_CONTROLPARENT 0x00010000L
#define WS_EX_DLGMODALFRAME 0x00000001L
#define WS_EX_LAYERED 0x00080000
#define WS_EX_LAYOUTRTL 0x00400000L
#define WS_EX_LEFT 0x00000000L
#define WS_EX_LEFTSCROLLBAR 0x00004000L
#define WS_EX_LTRREADING 0x00000000L
#define WS_EX_MDICHILD 0x00000040L
#define WS_EX_NOACTIVATE 0x08000000L
#define WS_EX_NOINHERITLAYOUT 0x00100000L
#define WS_EX_NOPARENTNOTIFY 0x00000004L
#define WS_EX_NOREDIRECTIONBITMAP 0x00200000L
#define WS_EX_RIGHT 0x00001000L
#define WS_EX_RIGHTSCROLLBAR 0x00000000L
#define WS_EX_RTLREADING 0x00002000L
#define WS_EX_STATICEDGE 0x00020000L
#define WS_EX_TOOLWINDOW 0x00000080L
#define WS_EX_TOPMOST 0x00000008L
#define WS_EX_TRANSPARENT 0x00000020L
#define WS_EX_WINDOWEDGE 0x00000100L
#define WS_EX_OVERLAPPEDWINDOW (WS_EX_WINDOWEDGE | WS_EX_CLIENTEDGE)
#define WS_EX_PALETTEWINDOW (WS_EX_WINDOWEDGE | WS_EX_TOOLWINDOW | WS_EX_TOPMOST)
/*
* Window Styles
* ref: https://learn.microsoft.com/en-us/windows/win32/winmsg/window-styles
*/
#define WS_BORDER 0x00800000L
#define WS_CAPTION 0x00C00000L
#define WS_CHILD 0x40000000L
#define WS_CHILDWINDOW 0x40000000L
#define WS_CLIPCHILDREN 0x02000000L
#define WS_CLIPSIBLINGS 0x04000000L
#define WS_DISABLED 0x08000000L
#define WS_DLGFRAME 0x00400000L
#define WS_GROUP 0x00020000L
#define WS_HSCROLL 0x00100000L
#define WS_ICONIC 0x20000000L
#define WS_MAXIMIZE 0x01000000L
#define WS_MAXIMIZEBOX 0x00010000L
#define WS_MINIMIZE 0x20000000L
#define WS_MINIMIZEBOX 0x00020000L
#define WS_OVERLAPPED 0x00000000L
#define WS_POPUP 0x80000000L
#define WS_SIZEBOX 0x00040000L
#define WS_SYSMENU 0x00080000L
#define WS_TABSTOP 0x00010000L
#define WS_THICKFRAME 0x00040000L
#define WS_TILED 0x00000000L
#define WS_VISIBLE 0x10000000L
#define WS_VSCROLL 0x00200000L
#define WS_OVERLAPPEDWINDOW (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX)
#define WS_POPUPWINDOW (WS_POPUP | WS_BORDER | WS_SYSMENU)
#define WS_TILEDWINDOW (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX)
HWND CreateWindowExA(
DWORD extStyle,
LPCSTR className, //optional
LPCSTR title, //optional
DWORD style,
int x, //ignored. It's the user responsability to set the window position. (GTK4)
int y, //ignored. It's the user responsability to set the window position. (GTK4)
int width,
int height,
HWND parent, //optional
HMENU menu, //optional
HINSTANCE instance, //optional (Windows ignores it)
LPVOID param //optional
);
BOOL ShowWindow(HWND window, int nCmdShow);
BOOL DestroyWindow(HWND window);
BOOL PeekMessageA(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax, UINT wRemoveMsg);
#define CreateWindowExW CreateWindowExA
#define PeekMessageW PeekMessageA
#define PM_NOREMOVE 0x0000
#define PM_REMOVE 0x0001
#define PM_NOYIELD 0x0002
// https://www.codeproject.com/Answers/136442/Differences-Between-CreateWindow-and-CreateWindowE#answer3
#define CreateWindowA(lpClassName, lpWindowName, dwStyle, x, y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam)\
CreateWindowExA(0L, lpClassName, lpWindowName, dwStyle, x, y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam)
#define CreateWindowW(lpClassName, lpWindowName, dwStyle, x, y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam)\
CreateWindowExW(0L, lpClassName, lpWindowName, dwStyle, x, y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam)
//TODO: check if it's needed in a linux environment
#if UNICODE
#define CreateWindow CreateWindowW
#define PeekMessage PeekMessageW
#else
#define CreateWindow CreateWindowA
#define PeekMessage PeekMessageA
#endif

3
run.sh
View File

@ -1,3 +0,0 @@
# Run dxdiag from build directory
cd build/opendx
./bin/sample

View File

@ -1,12 +0,0 @@
# This target is "sample" and it is an executable.
# The executable is built from the source file "basic_window.cpp".
pkg_check_modules(GTK4 REQUIRED gtk4)
include_directories(${GTK4_INCLUDE_DIRS})
link_directories(${GTK4_LIBRARY_DIRS})
add_executable(sample basic_window.cpp)
target_link_libraries(sample opendx)
target_link_libraries(sample d3d9)

View File

@ -1,69 +1,145 @@
/**
* Windows API codes were commented to focus // include the basic windows header files and the Direct3D header file
* on what's important: OpenDX. //#include <windows.h>
* //#include <windowsx.h>
* Code that doesn't work is also commented and will be gradually
* fixed. This is a work in progress.
*/
#include <opendx.h>
#include <winuser.h>
#include <d3d9.h> #include <d3d9.h>
#include <string>
#include <iostream>
#include <stdio.h>
#include <string.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd) { // include the Direct3D Library file
// Create the window //#pragma comment (lib, "d3d9.lib")
HWND hWnd = CreateWindow(
"DX9 Window", "DX9 Window",
WS_OVERLAPPEDWINDOW | WS_VISIBLE,
0, 0, 640, 480, NULL, NULL, hInstance, NULL
);
// Create the Direct3D device // global declarations
LPDIRECT3D9 pD3D = Direct3DCreate9(D3D_SDK_VERSION); LPDIRECT3D9 d3d; // the pointer to our Direct3D interface
LPDIRECT3DDEVICE9 pDevice = NULL; LPDIRECT3DDEVICE9 d3ddev; // the pointer to the device class
D3DPRESENT_PARAMETERS pp;
//ZeroMemory(&pp, sizeof(pp)); // function prototypes
pp.Windowed = TRUE; void initD3D(HWND hWnd); // sets up and initializes Direct3D
pp.SwapEffect = D3DSWAPEFFECT_DISCARD; void render_frame(void); // renders a single frame
pD3D->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, 0/*D3DCREATE_HARDWARE_VERTEXPROCESSING*/, &pp, &pDevice); void cleanD3D(void); // closes Direct3D and releases memory
// the WindowProc function prototype
LRESULT CALLBACK WindowProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
// the entry point for any Windows program
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
HWND hWnd;
WNDCLASSEX wc;
ZeroMemory(&wc, sizeof(WNDCLASSEX));
wc.cbSize = sizeof(WNDCLASSEX);
wc.style = CS_HREDRAW | CS_VREDRAW;
wc.lpfnWndProc = WindowProc;
wc.hInstance = hInstance;
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hbrBackground = (HBRUSH)COLOR_WINDOW;
wc.lpszClassName = L"WindowClass";
RegisterClassEx(&wc);
hWnd = CreateWindowEx(NULL,
L"WindowClass",
L"Our First Direct3D Program",
WS_OVERLAPPEDWINDOW,
300, 300,
800, 600,
NULL,
NULL,
hInstance,
NULL);
ShowWindow(hWnd, nCmdShow);
// set up and initialize Direct3D
initD3D(hWnd);
// enter the main loop:
// Enter the message loop
MSG msg; MSG msg;
//ZeroMemory(&msg, sizeof(msg));
while (msg.message != WM_QUIT) { while(TRUE)
if (PeekMessage(&msg, hWnd, 0, 0, PM_REMOVE)) { {
//TranslateMessage(&msg); while(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
//DispatchMessage(&msg); {
} else { TranslateMessage(&msg);
// Render the scene DispatchMessage(&msg);
/*pDevice->Clear(0, NULL, D3DCLEAR_TARGET, D3DCOLOR_XRGB(0, 0, 255), 1.0f, 0);
pDevice->BeginScene();
pDevice->EndScene();
pDevice->Present(NULL, NULL, NULL, NULL);*/
}
} }
sleep(5); if(msg.message == WM_QUIT)
// Clean up break;
//pDevice->Release(); //causes a segfault
//pD3D->Release();
DestroyWindow(hWnd);
//return msg.wParam;
render_frame();
}
// clean up DirectX and COM
cleanD3D();
return msg.wParam;
}
// this is the main message handler for the program
LRESULT CALLBACK WindowProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message)
{
case WM_DESTROY:
{
PostQuitMessage(0);
return 0; return 0;
} break;
} }
//Linux's main or MinGW's main: return DefWindowProc (hWnd, message, wParam, lParam);
int main(int argc, char* argv[]) { }
//OpenDX transforms argc and argv to WinMain params
//then calls WinMain. You can also initialize OpenDX
//without params and insert your code right here if // this function initializes and prepares Direct3D for use
//you are using MinGW. void initD3D(HWND hWnd)
OpenDX odx(argc, argv,WinMain); //or OpenDX odx(); {
d3d = Direct3DCreate9(D3D_SDK_VERSION); // create the Direct3D interface
return odx.getReturnCode(); // 0 if WinMain is not passed.
D3DPRESENT_PARAMETERS d3dpp; // create a struct to hold various device information
ZeroMemory(&d3dpp, sizeof(d3dpp)); // clear out the struct for use
d3dpp.Windowed = TRUE; // program windowed, not fullscreen
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD; // discard old frames
d3dpp.hDeviceWindow = hWnd; // set the window to be used by Direct3D
// create a device class using this information and the info from the d3dpp stuct
d3d->CreateDevice(D3DADAPTER_DEFAULT,
D3DDEVTYPE_HAL,
hWnd,
D3DCREATE_SOFTWARE_VERTEXPROCESSING,
&d3dpp,
&d3ddev);
}
// this is the function used to render a single frame
void render_frame(void)
{
// clear the window to a deep blue
d3ddev->Clear(0, NULL, D3DCLEAR_TARGET, D3DCOLOR_XRGB(0, 40, 100), 1.0f, 0);
d3ddev->BeginScene(); // begins the 3D scene
// do 3D rendering on the back buffer here
d3ddev->EndScene(); // ends the 3D scene
d3ddev->Present(NULL, NULL, NULL, NULL); // displays the created frame on the screen
}
// this is the function that cleans up Direct3D and COM
void cleanD3D(void)
{
d3ddev->Release(); // close and release the 3D device
d3d->Release(); // close and release Direct3D
} }

View File

@ -1,9 +0,0 @@
# OpenDX - dxdiag
![](../../img/print.png)
This is a sub-project of OpenDX. The Open Source alternative to Microsoft's DirectX SDK for Linux devices.
## Improvements over Microsoft's dxdiag
* Fixes various bugs from the original dxdiag (e.g outdated date information, layout issues, etc.)
* Uses native Linux APIs to gather information about the system.
* Faster initialisation and execution
* Compatible with GTK themes

View File

@ -0,0 +1,133 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.38.2 -->
<interface>
<requires lib="gtk+" version="3.24"/>
<object class="GtkWindow" id="main_window">
<property name="can-focus">False</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="orientation">vertical</property>
<child>
<object class="GtkNotebook">
<property name="visible">True</property>
<property name="can-focus">True</property>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">page 1</property>
</object>
<packing>
<property name="tab-fill">False</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">page 2</property>
</object>
<packing>
<property name="position">1</property>
<property name="tab-fill">False</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">page 3</property>
</object>
<packing>
<property name="position">2</property>
<property name="tab-fill">False</property>
</packing>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<child>
<object class="GtkButton">
<property name="label" translatable="yes">button</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child>
<object class="GtkButton">
<property name="label" translatable="yes">button</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
<child>
<object class="GtkButton">
<property name="label" translatable="yes">button</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
</child>
<child>
<object class="GtkButton">
<property name="label" translatable="yes">button</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">4</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
</child>
</object>
</interface>

View File

@ -0,0 +1,133 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.38.2 -->
<interface>
<requires lib="gtk+" version="3.24"/>
<object class="GtkWindow" id="main_window">
<property name="can-focus">False</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="orientation">vertical</property>
<child>
<object class="GtkNotebook">
<property name="visible">True</property>
<property name="can-focus">True</property>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">page 1</property>
</object>
<packing>
<property name="tab-fill">False</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">page 2</property>
</object>
<packing>
<property name="position">1</property>
<property name="tab-fill">False</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child type="tab">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">page 3</property>
</object>
<packing>
<property name="position">2</property>
<property name="tab-fill">False</property>
</packing>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<child>
<object class="GtkButton">
<property name="label" translatable="yes">button</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child>
<object class="GtkButton">
<property name="label" translatable="yes">button</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
<child>
<object class="GtkButton">
<property name="label" translatable="yes">button</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
</child>
<child>
<object class="GtkButton">
<property name="label" translatable="yes">button</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">4</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
</child>
</object>
</interface>

View File

@ -1,8 +1,7 @@
#pragma once #pragma once
#include <preprocessor/GetFileContent.hpp>
#include <string> #include <string>
namespace MainWindow { namespace MainWindow {
const std::string ui = const std::string ui = GetFileContent(PROJECT_SOURCE_DIR "/tools/dxdiag/layout/MainWindow.ui");
#include "MainWindow.ui"
;
} }

View File

@ -1,45 +1,63 @@
R"XML(<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.38.2 -->
<interface> <interface>
<requires lib="gtk" version="4.0"/> <requires lib="gtk+" version="3.24"/>
<object class="GtkWindow" id="main_window"> <object class="GtkWindow" id="main_window">
<property name="default-width">720</property> <property name="can-focus">False</property>
<property name="default-height">480</property> <child>
<property name="child">
<object class="GtkBox"> <object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="orientation">vertical</property> <property name="orientation">vertical</property>
<child> <child>
<object class="GtkNotebook"> <object class="GtkNotebook">
<property name="vexpand">1</property> <property name="visible">True</property>
<property name="focusable">1</property> <property name="can-focus">True</property>
<child> <child>
<object class="GtkNotebookPage">
<property name="child">
<object class="GtkBox"> <object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="margin-start">5</property> <property name="margin-start">5</property>
<property name="margin-end">5</property> <property name="margin-end">5</property>
<property name="margin-top">5</property> <property name="margin-top">5</property>
<property name="orientation">vertical</property> <property name="orientation">vertical</property>
<child> <child>
<object class="GtkLabel" id="system_description"> <object class="GtkLabel">
<property name="label" translatable="1">This tool reports detailed information about the DirectX components and drivers installed on your system. <property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">This tool reports detailed information about the DirectX components and drivers installed on your system.
If you know what area is causing the problem, click on the apropriate tab above. Otherwise, you can use the &quot;Next Page&quot; button below to visit each page in sequence. If you know what area is causing the problem, click on the apropriate tab above. Otherwise, you can use the "Next Page" button below to visit each page in sequence.
</property> </property>
<property name="wrap">1</property> <property name="wrap">True</property>
</object> </object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child> </child>
<child> <child>
<object class="GtkFrame"> <object class="GtkFrame">
<property name="vexpand">1</property> <property name="visible">True</property>
<property name="child"> <property name="can-focus">False</property>
<property name="label-xalign">0</property>
<property name="shadow-type">in</property>
<child>
<object class="GtkScrolledWindow"> <object class="GtkScrolledWindow">
<property name="focusable">1</property> <property name="visible">True</property>
<property name="child"> <property name="can-focus">True</property>
<child>
<object class="GtkViewport"> <object class="GtkViewport">
<property name="child"> <property name="visible">True</property>
<property name="can-focus">False</property>
<child>
<!-- n-columns=2 n-rows=12 -->
<object class="GtkGrid"> <object class="GtkGrid">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="margin-start">5</property> <property name="margin-start">5</property>
<property name="margin-end">5</property> <property name="margin-end">5</property>
<property name="margin-top">5</property> <property name="margin-top">5</property>
@ -47,310 +65,375 @@ If you know what area is causing the problem, click on the apropriate tab above.
<property name="orientation">vertical</property> <property name="orientation">vertical</property>
<property name="row-spacing">2</property> <property name="row-spacing">2</property>
<property name="column-spacing">5</property> <property name="column-spacing">5</property>
<property name="column-homogeneous">1</property> <property name="column-homogeneous">True</property>
<child> <child>
<object class="GtkLabel" id="system_info_currentDate"> <object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property> <property name="halign">end</property>
<property name="label" translatable="1">Current Date/Time:</property> <property name="label" translatable="yes">Current Date/Time:</property>
<property name="justify">right</property> <property name="justify">right</property>
<property name="selectable">1</property> <property name="selectable">True</property>
<layout>
<property name="column">0</property>
<property name="row">0</property>
</layout>
</object> </object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">0</property>
</packing>
</child> </child>
<child> <child>
<object class="GtkLabel" id="date_val"> <object class="GtkLabel" id="date_val">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property> <property name="halign">start</property>
<property name="label" translatable="1">Nullsday, Nul 00, 0000, 0:00:00 AM</property> <property name="label" translatable="yes">Nullsday, Nul 00, 0000, 0:00:00 AM</property>
<property name="selectable">1</property> <property name="selectable">True</property>
<layout>
<property name="column">1</property>
<property name="row">0</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="system_info_pcName">
<property name="halign">end</property>
<property name="label" translatable="1">Computer Name:</property>
<property name="justify">right</property>
<property name="selectable">1</property>
<layout>
<property name="column">0</property>
<property name="row">1</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="pc_val">
<property name="halign">start</property>
<property name="label" translatable="1">null</property>
<property name="selectable">1</property>
<layout>
<property name="column">1</property>
<property name="row">1</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="system_info_os">
<property name="halign">end</property>
<property name="label" translatable="1">Operating System:</property>
<property name="justify">right</property>
<property name="selectable">1</property>
<layout>
<property name="column">0</property>
<property name="row">2</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="os_val">
<property name="halign">start</property>
<property name="label" translatable="1">Nullbuntu 64-bit (23.04, kernel 0)</property>
<property name="selectable">1</property>
<layout>
<property name="column">1</property>
<property name="row">2</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="system_info_language">
<property name="halign">end</property>
<property name="label" translatable="1">Language:</property>
<property name="justify">right</property>
<property name="selectable">1</property>
<layout>
<property name="column">0</property>
<property name="row">3</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="lang_val">
<property name="halign">start</property>
<property name="label" translatable="1">Null (Regional Setting: Null)</property>
<property name="selectable">1</property>
<layout>
<property name="column">1</property>
<property name="row">3</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="system_info_manufacturer">
<property name="halign">end</property>
<property name="label" translatable="1">System Manufacturer:</property>
<property name="justify">right</property>
<property name="selectable">1</property>
<layout>
<property name="column">0</property>
<property name="row">4</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="pcman_val">
<property name="halign">start</property>
<property name="label" translatable="1">Unknown</property>
<property name="selectable">1</property>
<layout>
<property name="column">1</property>
<property name="row">4</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="system_info_model">
<property name="halign">end</property>
<property name="label" translatable="1">System Model:</property>
<property name="justify">right</property>
<property name="selectable">1</property>
<layout>
<property name="column">0</property>
<property name="row">5</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="pcmod_val">
<property name="halign">start</property>
<property name="label" translatable="1">Unknown</property>
<property name="selectable">1</property>
<layout>
<property name="column">1</property>
<property name="row">5</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="system_info_bios">
<property name="halign">end</property>
<property name="label" translatable="1">BIOS:</property>
<property name="justify">right</property>
<property name="selectable">1</property>
<layout>
<property name="column">0</property>
<property name="row">6</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="bios_val">
<property name="halign">start</property>
<property name="label" translatable="1">Null (0)</property>
<property name="selectable">1</property>
<layout>
<property name="column">1</property>
<property name="row">6</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="system_info_processor">
<property name="halign">end</property>
<property name="label" translatable="1">Processor:</property>
<property name="justify">right</property>
<property name="selectable">1</property>
<layout>
<property name="column">0</property>
<property name="row">7</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="cpu_val">
<property name="halign">start</property>
<property name="label" translatable="1">Intel(R) Celeron(TM) N0000 CPU @ 0GHz (0 CPUs), ~(0GHz)</property>
<property name="selectable">1</property>
<layout>
<property name="column">1</property>
<property name="row">7</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="system_info_memory">
<property name="halign">end</property>
<property name="label" translatable="1">Memory:</property>
<property name="justify">right</property>
<property name="selectable">1</property>
<layout>
<property name="column">0</property>
<property name="row">8</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="ram_val">
<property name="halign">start</property>
<property name="label" translatable="1">0MB RAM</property>
<property name="selectable">1</property>
<layout>
<property name="column">1</property>
<property name="row">8</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="system_info_pageFile">
<property name="halign">end</property>
<property name="label" translatable="1">Page/Swap File:</property>
<property name="justify">right</property>
<property name="selectable">1</property>
<layout>
<property name="column">0</property>
<property name="row">9</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="swap_val">
<property name="halign">start</property>
<property name="label" translatable="1">0MB used, 0MB available</property>
<property name="selectable">1</property>
<layout>
<property name="column">1</property>
<property name="row">9</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="system_info_directxVersion">
<property name="halign">end</property>
<property name="label" translatable="1">DirectX Version:</property>
<property name="justify">right</property>
<property name="selectable">1</property>
<layout>
<property name="column">0</property>
<property name="row">10</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="dx_val">
<property name="halign">start</property>
<property name="label" translatable="1">DirectX 0</property>
<property name="selectable">1</property>
<layout>
<property name="column">1</property>
<property name="row">10</property>
</layout>
</object>
</child>
<child>
<object class="GtkLabel" id="system_info_opendxVersion">
<property name="halign">end</property>
<property name="label" translatable="1">OpenDX Version:</property>
<property name="justify">right</property>
<property name="selectable">1</property>
<layout>
<property name="column">0</property>
<property name="row">11</property>
</layout>
</object> </object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">0</property>
</packing>
</child> </child>
<child> <child>
<object class="GtkLabel"> <object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Computer Name:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">1</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="pc_val">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property> <property name="halign">start</property>
<property name="label" translatable="1">0.0.0 (About the OpenDX Project)</property> <property name="label" translatable="yes">null</property>
<property name="use-markup">1</property> <property name="selectable">True</property>
<property name="selectable">1</property> </object>
<layout> <packing>
<property name="column">1</property> <property name="left-attach">1</property>
<property name="row">11</property> <property name="top-attach">1</property>
</layout> </packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Operating System:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">2</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="os_val">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Nullbuntu 64-bit (23.04, kernel 0)</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">2</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Language:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">3</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="lang_val">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Null (Regional Setting: Null)</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">3</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">System Manufacturer:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">4</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="pcman_val">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Unknown</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">4</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">System Model:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">5</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="pcmod_val">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Unknown</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">5</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">BIOS:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">6</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="bios_val">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Null (0)</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">6</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Processor:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">7</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="cpu_val">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Intel(R) Celeron(TM) N0000 CPU @ 0GHz (0 CPUs), ~(0GHz)</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">7</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Memory:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">8</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="ram_val">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">0MB RAM</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">8</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Page/Swap File:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">9</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="swap_val">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">0MB used, 0MB available</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">9</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">DirectX Version:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">10</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="dx_val">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">DirectX 0</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">10</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">OpenDX Version:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">11</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">0.0.0 (About the OpenDX Project)</property>
<property name="use-markup">True</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">11</property>
</packing>
</child>
</object> </object>
</child> </child>
</object> </object>
</property> </child>
</object> </object>
</property> </child>
</object>
</property>
<child type="label"> <child type="label">
<object class="GtkLabel" id="system_info_label"> <object class="GtkLabel">
<property name="label" translatable="1">System Information</property> <property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">System Information</property>
</object> </object>
</child> </child>
</object> </object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child> </child>
</object> </object>
</property> </child>
<property name="tab"> <child type="tab">
<object class="GtkLabel" id="tab_system_txt"> <object class="GtkLabel">
<property name="label" translatable="1" context="tab_system">System</property> <property name="visible">True</property>
</object> <property name="can-focus">False</property>
</property> <property name="label" translatable="yes" context="tab_system">System</property>
</object> </object>
<packing>
<property name="tab-fill">False</property>
</packing>
</child> </child>
</object> </object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child> </child>
<child> <child>
<object class="GtkBox"> <object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="margin-start">5</property> <property name="margin-start">5</property>
<property name="margin-end">5</property> <property name="margin-end">5</property>
<property name="margin-top">5</property> <property name="margin-top">5</property>
@ -358,44 +441,78 @@ If you know what area is causing the problem, click on the apropriate tab above.
<property name="spacing">5</property> <property name="spacing">5</property>
<child> <child>
<object class="GtkButton"> <object class="GtkButton">
<property name="label" translatable="1" context="help">Help</property> <property name="label" translatable="yes" context="help">Help</property>
<property name="focusable">1</property> <property name="visible">True</property>
<property name="receives-default">1</property> <property name="can-focus">True</property>
<property name="receives-default">True</property>
</object> </object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child> </child>
<child> <child>
<object class="GtkOverlay"> <object class="GtkOverlay">
<property name="hexpand">1</property> <property name="visible">True</property>
<property name="can-focus">False</property>
<child> <child>
<placeholder/> <placeholder/>
</child> </child>
</object> </object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child> </child>
<child> <child>
<object class="GtkButton"> <object class="GtkButton">
<property name="label" translatable="1" context="next_page">Next Page</property> <property name="label" translatable="yes" context="next_page">Next Page</property>
<property name="focusable">1</property> <property name="visible">True</property>
<property name="receives-default">1</property> <property name="can-focus">True</property>
<property name="receives-default">True</property>
</object> </object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child> </child>
<child> <child>
<object class="GtkButton"> <object class="GtkButton">
<property name="label" translatable="1" context="save_all_information">Save All Information...</property> <property name="label" translatable="yes" context="save_all_information">Save All Information...</property>
<property name="focusable">1</property> <property name="visible">True</property>
<property name="receives-default">1</property> <property name="can-focus">True</property>
<property name="receives-default">True</property>
</object> </object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
</child> </child>
<child> <child>
<object class="GtkButton"> <object class="GtkButton">
<property name="label" translatable="1" context="exit">Exit</property> <property name="label" translatable="yes" context="exit">Exit</property>
<property name="focusable">1</property> <property name="visible">True</property>
<property name="receives-default">1</property> <property name="can-focus">True</property>
<property name="receives-default">True</property>
</object> </object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">4</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child> </child>
</object> </object>
</child> </child>
</object> </object>
</property>
</object>
</interface> </interface>
)XML"

View File

@ -0,0 +1,518 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.38.2 -->
<interface>
<requires lib="gtk+" version="3.24"/>
<object class="GtkWindow" id="main_window">
<property name="can-focus">False</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="orientation">vertical</property>
<child>
<object class="GtkNotebook">
<property name="visible">True</property>
<property name="can-focus">True</property>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="margin-start">5</property>
<property name="margin-end">5</property>
<property name="margin-top">5</property>
<property name="orientation">vertical</property>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">This tool reports detailed information about the DirectX components and drivers installed on your system.
If you know what area is causing the problem, click on the apropriate tab above. Otherwise, you can use the "Next Page" button below to visit each page in sequence.
</property>
<property name="wrap">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkFrame">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label-xalign">0</property>
<property name="shadow-type">in</property>
<child>
<object class="GtkScrolledWindow">
<property name="visible">True</property>
<property name="can-focus">True</property>
<child>
<object class="GtkViewport">
<property name="visible">True</property>
<property name="can-focus">False</property>
<child>
<!-- n-columns=2 n-rows=12 -->
<object class="GtkGrid">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="margin-start">5</property>
<property name="margin-end">5</property>
<property name="margin-top">5</property>
<property name="margin-bottom">5</property>
<property name="orientation">vertical</property>
<property name="row-spacing">2</property>
<property name="column-spacing">5</property>
<property name="column-homogeneous">True</property>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Current Date/Time:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">0</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Nullsday, Nul 00, 0000, 0:00:00 AM</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">0</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Computer Name:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">1</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">null</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">1</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Operating System:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">2</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Nullbuntu 64-bit (23.04, kernel 0)</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">2</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Language:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">3</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Null (Regional Setting: Null)</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">3</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">System Manufacturer:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">4</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Unknown</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">4</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">System Model:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">5</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Unknown</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">5</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">BIOS:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">6</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Null (0)</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">6</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Processor:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">7</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Intel(R) Celeron(TM) N0000 CPU @ 0GHz (0 CPUs), ~(0GHz)</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">7</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Memory:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">8</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">0MB RAM</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">8</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">Page/Swap File:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">9</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">0MB used, 0MB available</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">9</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">DirectX Version:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">10</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">DirectX 0</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">10</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes">OpenDX Version:</property>
<property name="justify">right</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">0</property>
<property name="top-attach">11</property>
</packing>
</child>
<child>
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="halign">start</property>
<property name="label" translatable="yes">0.0.0 (About the OpenDX Project)</property>
<property name="use-markup">True</property>
<property name="selectable">True</property>
</object>
<packing>
<property name="left-attach">1</property>
<property name="top-attach">11</property>
</packing>
</child>
</object>
</child>
</object>
</child>
</object>
</child>
<child type="label">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">System Information</property>
</object>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
</child>
<child type="tab">
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes" context="tab_system">System</property>
</object>
<packing>
<property name="tab-fill">False</property>
</packing>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="margin-start">5</property>
<property name="margin-end">5</property>
<property name="margin-top">5</property>
<property name="margin-bottom">5</property>
<property name="spacing">5</property>
<child>
<object class="GtkButton">
<property name="label" translatable="yes" context="help">Help</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkOverlay">
<property name="visible">True</property>
<property name="can-focus">False</property>
<child>
<placeholder/>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkButton">
<property name="label" translatable="yes" context="next_page">Next Page</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
<child>
<object class="GtkButton">
<property name="label" translatable="yes" context="save_all_information">Save All Information...</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
</child>
<child>
<object class="GtkButton">
<property name="label" translatable="yes" context="exit">Exit</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">4</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
</child>
</object>
</interface>

View File

@ -1,88 +0,0 @@
#pragma once
#include <types/Translation.hpp>
#include "en_US.hpp"
/**
* TODO Complete with project://include/types/Translation.hpp
*/
Translation_t Translation_deDE() {
Translation_t r;
//Common texts
r.yes = (char*) "Ja";
r.no = (char*) "Nein";
r.not_available = (char*) "Nicht verfügbar";
r.enabled = (char*) "An";
//Tab names
r.tab_system = (char*) "System";
r.tab_display = (char*) "Anzeige";
r.tab_sound = (char*) "Sound";
r.tab_input = (char*) "Eingabe";
//Buttons
r.btn_help = (char*) "Hilfe";
r.btn_next = (char*) "Nächste Seite";
r.btn_save = (char*) "Alle Informationen speichern...";
r.btn_exit = (char*) "Beenden";
//Tab system
r.system_description = (char*) "Dieses Programm gibt detaillierte Informationen über die DirectX-Komponenten und -Treiber dieses Computers an.\n\nWählen Sie die entsprechende Registerkarte oben, wenn Sie den Bereich des Problems bereits kennen. Klicken Sie andernfalls auf \"Nächste Seite\", um alle Seiten nacheinander zu durchsuchen.";
r.system_info_label = (char*) "Systeminformation";
r.system_info_currentDate = (char*) "Aktuelles Datum/Zeit";
r.system_info_pcName = (char*) "Computername";
r.system_info_os = (char*) "Betriebssystem";
r.system_info_language = (char*) "Sprache";
r.system_info_manufacturer = (char*) "Systemhersteller";
r.system_info_model = (char*) "Systemmodell";
r.system_info_bios = (char*) "BIOS";
r.system_info_processor = (char*) "Prozessor";
r.system_info_memory = (char*) "Speicher";
r.system_info_pageFile = (char*) "Auslagerungsdatei";
r.system_info_directxVersion = (char*) "DirectX-Version";
r.system_info_opendxVersion = (char*) "OpenDX-Version";
//Tab Display
r.display_device_label = (char*) "Gerät";
r.display_device_manufacturer = (char*) "Hersteller";
r.display_device_chipType = (char*) "Chiptyp";
r.display_device_dacType = (char*) "DAC-Typ";
r.display_device_type = (char*) "Gerätetyp";
r.display_device_mem = (char*) "Gesamtspeicher ca.";
r.display_device_videoMem = (char*) "Anzeigespeicher (VRAM)";
r.display_device_sharedMem = (char*) "Gemeinsam genutzter Speicherbereich";
r.display_device_currDisplayMode = (char*) "Aktueller Anzeigemodus";
r.display_device_monitor = (char*) "Monitor";
r.display_driver_label = (char*) "Treiber";
r.display_driver_mainDriver = (char*) "Haupttreiber";
r.display_driver_version = (char*) "Version";
r.display_driver_date = (char*) "Datum";
r.display_driver_whqlLogo = (char*) "Mit WHQL-Logo";
r.display_driver_d3dDdi = (char*) "Direct3D-DDI";
r.display_driver_featureLevels = (char*) "Funktionsebenen";
r.display_driver_model = (char*) "Treibermodell";
r.display_features_label = (char*) "DirectX-Features";
r.display_features_ddAccel = (char*) "DirectDraw-Beschleunigung";
r.display_features_d3dAccel = (char*) "Direct3D-Beschleunigung";
r.display_features_agpAccel = (char*) "AGP-Oberflächenbeschleunigung";
r.display_notes_label = (char*) "Hinweise";
//Tab Sound
r.sound_device_label = (char*) "Gerät";
r.sound_device_name = (char*) "Name";
r.sound_device_hardwareId = (char*) "Hardware-ID";
r.sound_device_manufacturerId = (char*) "Herstellerkennung";
r.sound_device_productId = (char*) "Produktkennung";
r.sound_device_type = (char*) "Typ";
r.sound_device_default = (char*) "Standardgerät";
r.sound_driver_label = (char*) "Treiber";
r.sound_driver_name = (char*) "Name";
r.sound_driver_version = (char*) "Version";
r.sound_driver_date = (char*) "Datum";
r.sound_driver_whqlLogo = (char*) "Mit WHQL-Logo";
r.sound_driver_otherFiles = (char*) "Andere Dateien";
r.sound_driver_provider = (char*) "Anbieter";
r.sound_notes_label = (char*) "Hinweise";
return r;
}

View File

@ -2,7 +2,7 @@
#include <types/Translation.hpp> #include <types/Translation.hpp>
/** /**
* TODO Complete with project://include/types/Translation.hpp * TODO Complete with @see /include/types/Translation.hpp
*/ */
Translation_t Translation_enUS() { Translation_t Translation_enUS() {
Translation_t r; Translation_t r;
@ -41,50 +41,5 @@ Translation_t Translation_enUS() {
r.system_info_directxVersion = (char*) "DirectX Version"; r.system_info_directxVersion = (char*) "DirectX Version";
r.system_info_opendxVersion = (char*) "OpenDX Version"; r.system_info_opendxVersion = (char*) "OpenDX Version";
// Tab Display X
r.display_device_label = (char*) "Device";
r.display_device_manufacturer = (char*)"Manufacturer";
r.display_device_chipType = (char*)"Chip Type";
r.display_device_dacType = (char*)"DAC Type";
r.display_device_type = (char*)"Device Type";
r.display_device_mem = (char*)"Total Memory";
r.display_device_videoMem = (char*)"Video Memory";
r.display_device_sharedMem = (char*)"Shared Memory";
r.display_device_currDisplayMode = (char*)"Current Display Mode";
r.display_device_monitor = (char*)"Monitor";
r.display_driver_label = (char*)"Drivers";
r.display_driver_mainDriver = (char*)"Main Driver";
r.display_driver_version = (char*)"Version";
r.display_driver_date = (char*)"Date";
r.display_driver_whqlLogo = (char*)"WHQL Logo";
r.display_driver_d3dDdi = (char*)"Direct3D DDI";
r.display_driver_featureLevels = (char*)"Feature";
r.display_driver_model = (char*)"Model";
r.display_features_ddAccel = (char*) "DD Accel";
r.display_features_d3dAccel = (char*)"D3D Accel";
r.display_features_agpAccel = (char*)"AGP Accel";
r.display_notes_label = (char*)"Notes";
// Tab Sound
r.sound_device_label = (char*) "Device";
r.sound_device_name = (char*) "Device Name";
r.sound_device_hardwareId = (char*)"Hardware ID";
r.sound_device_manufacturerId = (char*)"Manufacturer ID";
r.sound_device_productId = (char*)"Product ID";
r.sound_device_type = (char*)"Type";
r.sound_device_default = (char*)"Default Device";
r.sound_driver_label = (char*)"Drivers";
r.sound_driver_name = (char*)"Name";
r.sound_driver_version = (char*)"Version";
r.sound_driver_date = (char*)"Date";
r.sound_driver_whqlLogo = (char*)"WHQL Logo";
r.sound_driver_otherFiles = (char*)"Other Files";
r.sound_driver_provider = (char*)"Provider";
r.sound_notes_label = (char*)"Notes";
return r; return r;
} }

View File

@ -1,88 +0,0 @@
#pragma once
#include <types/Translation.hpp>
#include "en_US.hpp"
/**
* TODO Complete with @see project://include/types/Translation.hpp
*/
Translation_t Translation_esES() {
Translation_t r = Translation_enUS();
//Common texts
r.yes = (char*) "";
r.no = (char*) "No";
r.not_available = (char*) "No disponible";
r.enabled = (char*) "Habilitado";
//Tab names
r.tab_system = (char*) "Sistema";
r.tab_display = (char*) "Pantalla";
r.tab_sound = (char*) "Sonido";
r.tab_input = (char*) "Entrada";
//Buttons
r.btn_help = (char*) "Ayuda";
r.btn_next = (char*) "Siguiente";
r.btn_save = (char*) "Guardar";
r.btn_exit = (char*) "Salir";
//Tab System
r.system_description = (char*) "Esta herramienta informa de información detallada sobre los componentes y controladores OpenDX instalados en su sistema.\n\nSi sabe qué área está causando el problema, haga clic en la pestaña correspondiente arriba. De lo contrario, puede usar el botón \"Página siguiente\" a continuación para visitar cada página en secuencia.";
r.system_info_label = (char*) "Información del sistema";
r.system_info_currentDate = (char*) "Fecha y hora actuales";
r.system_info_pcName = (char*) "Nombre del ordenador";
r.system_info_os = (char*) "Sistema operativo";
r.system_info_language = (char*) "Idioma";
r.system_info_manufacturer = (char*) "Fabricante del sistema";
r.system_info_model = (char*) "Modelo del sistema";
r.system_info_bios = (char*) "BIOS";
r.system_info_processor = (char*) "Procesador";
r.system_info_memory = (char*) "Memoria";
r.system_info_pageFile = (char*) "Archivo de paginación";
r.system_info_directxVersion = (char*) "Versión de DirectX";
r.system_info_opendxVersion = (char*) "Versión de OpenDX";
//Tab Display
r.display_device_label = (char*) "Etiqueta del dispositivo de visualización";
r.display_device_manufacturer = (char*) "Fabricante del dispositivo de visualización";
r.display_device_chipType = (char*) "Tipo de chip del dispositivo de visualización";
r.display_device_dacType = (char*) "Tipo de DAC del dispositivo de visualización";
r.display_device_type = (char*) "Tipo de dispositivo de visualización";
r.display_device_mem = (char*) "Memoria del dispositivo de visualización";
r.display_device_videoMem = (char*) "Memoria de vídeo del dispositivo de visualización";
r.display_device_sharedMem = (char*) "Memoria compartida del dispositivo de visualización";
r.display_device_currDisplayMode = (char*) "Modo de visualización actual del dispositivo de visualización";
r.display_device_monitor = (char*) "Monitor del dispositivo de visualización";
r.display_driver_label = (char*) "Etiqueta del controlador de visualización";
r.display_driver_mainDriver = (char*) "Controlador principal del controlador de visualización";
r.display_driver_version = (char*) "Versión del controlador de visualización";
r.display_driver_date = (char*) "Fecha del controlador de visualización";
r.display_driver_whqlLogo = (char*) "Logotipo WHQL del controlador de visualización";
r.display_driver_d3dDdi = (char*) "D3D DDI del controlador de visualización";
r.display_driver_featureLevels = (char*) "Niveles de características del controlador de visualización";
r.display_driver_model = (char*) "Modelo del controlador de visualización";
r.display_features_label = (char*) "Etiqueta de las características de visualización";
r.display_features_ddAccel = (char*) "Aceleración DD de las características de visualización";
r.display_features_d3dAccel = (char*) "Aceleración D3D de las características de visualización";
r.display_features_agpAccel = (char*) "Aceleración AGP de las características de visualización";
r.display_notes_label = (char*) "Etiqueta de las notas de visualización";
//Tab Sound
r.sound_device_label = (char*) "Etiqueta del dispositivo de sonido";
r.sound_device_name = (char*) "Nombre del dispositivo de sonido";
r.sound_device_hardwareId = (char*) "ID de hardware del dispositivo de sonido";
r.sound_device_manufacturerId = (char*) "ID de fabricante del dispositivo de sonido";
r.sound_device_productId = (char*) "ID de producto del dispositivo de sonido";
r.sound_device_type = (char*) "Tipo de dispositivo de sonido";
r.sound_device_default = (char*) "Dispositivo de sonido predeterminado";
r.sound_driver_label = (char*) "Etiqueta del controlador de sonido";
r.sound_driver_name = (char*) "Nombre del controlador de sonido";
r.sound_driver_version = (char*) "Versión del controlador de sonido";
r.sound_driver_date = (char*) "Fecha del controlador de sonido";
r.sound_driver_whqlLogo = (char*) "Logotipo WHQL del controlador de sonido";
r.sound_driver_otherFiles = (char*) "Otros archivos del controlador de sonido";
r.sound_driver_provider = (char*) "Proveedor del controlador de sonido";
r.sound_notes_label = (char*) "Etiqueta de las notas de sonido";
return r;
}

View File

@ -1,87 +0,0 @@
#pragma once
#include <types/Translation.hpp>
/**
* TODO Complete with project://include/types/Translation.hpp
*/
Translation_t Translation_itIT() {
Translation_t r;
//Common texts
r.yes = (char*) "Si";
r.no = (char*) "No";
r.not_available = (char*) "Non Disponibile";
r.enabled = (char*) "Abilitato";
//Tab names
r.tab_system = (char*) "Sistema";
r.tab_display = (char*) "Schermo";
r.tab_sound = (char*) "Audio";
r.tab_input = (char*) "Input";
//Buttons
r.btn_help = (char*) "Aiuto";
r.btn_next = (char*) "Sucessiva";
r.btn_save = (char*) "Salva";
r.btn_exit = (char*) "Esci";
//Tab System
r.system_description = (char*) "Questo strumento riporta informazioni dettagliate sui componenti e sui driver OpenDX installati sul tuo sistema.\n\nSe sai quale area causa il problema, fai clic sulla scheda appropriata sopra. Altrimenti puoi usare il pulsante \"Pagina successiva\" qui sotto per visitare ogni pagina in sequenza.";
r.system_info_label = (char*) "Informazioni di sistema";
r.system_info_currentDate = (char*) "Data/ora corrente";
r.system_info_pcName = (char*) "Nome del computer";
r.system_info_os = (char*) "Systema Operativo";
r.system_info_language = (char*) "Lingua";
r.system_info_manufacturer = (char*) "Produttore del sistema";
r.system_info_model = (char*) "Modello del sistema";
r.system_info_bios = (char*) "BIOS";
r.system_info_processor = (char*) "Processore";
r.system_info_memory = (char*) "Memoria";
r.system_info_pageFile = (char*) "Page file";
r.system_info_directxVersion = (char*) "Versione DirectX";
r.system_info_opendxVersion = (char*) "Versione OpenDX";
//Tab Display
r.display_device_label = (char*) "Visualizza l'etichetta del dispositivo";
r.display_device_manufacturer = (char*) "Produttore del dispositivo";
r.display_device_chipType = (char*) "Visualizza il tipo di chip del dispositivo";
r.display_device_dacType = (char*) "Tipo di DAC del dispositivo";
r.display_device_type = (char*) "Tipo di dispositivo";
r.display_device_mem = (char*) "Memoria del dispositivo";
r.display_device_videoMem = (char*) "Memoria vídeo del dispositivo";
r.display_device_sharedMem = (char*) "Memoria del dispositivo condivisa";
r.display_device_currDisplayMode = (char*) "Modalità di visualizzazione corrente del dispositivo";
r.display_device_monitor = (char*) "Visualizza il monitor del dispositivo";
r.display_driver_label = (char*) "Visualizza l'etichetta del controller";
r.display_driver_mainDriver = (char*) "Controller principale del controller video";
r.display_driver_version = (char*) "Visualizza la versione del driver";
r.display_driver_date = (char*) "Visualizza la data del controller";
r.display_driver_whqlLogo = (char*) "Visualizza il logo WHQL del controller";
r.display_driver_d3dDdi = (char*) "Driver video D3D DDI";
r.display_driver_featureLevels = (char*) "Livelli di funzionalità del controller video";
r.display_driver_model = (char*) "Modello del controller video";
r.display_features_label = (char*) "Etichetta delle funzioni di visualizzazione";
r.display_features_ddAccel = (char*) "Accelerazione DD delle funzionalità di visualizzazione";
r.display_features_d3dAccel = (char*) "Accelerazione D3D delle funzionalità di visualizzazione";
r.display_features_agpAccel = (char*) "Accelerazione AGP delle funzionalità di visualizzazione";
r.display_notes_label = (char*) "Visualizza etichetta note";
//Tab Sound
r.sound_device_label = (char*) "Etichetta del dispositivo audio";
r.sound_device_name = (char*) "Nome del dispositivo audio";
r.sound_device_hardwareId = (char*) "ID hardware del dispositivo audio";
r.sound_device_manufacturerId = (char*) "ID del produttore del dispositivo audio";
r.sound_device_productId = (char*) "ID prodotto del dispositivo audio";
r.sound_device_type = (char*) "Tipo di dispositivo audio";
r.sound_device_default = (char*) "Dispositivo audio predefinito";
r.sound_driver_label = (char*) "Etichetta del driver audio";
r.sound_driver_name = (char*) "Nome del driver audio";
r.sound_driver_version = (char*) "Versione del driver audio";
r.sound_driver_date = (char*) "Data del driver audio";
r.sound_driver_whqlLogo = (char*) "Logo WHQL del controller audio";
r.sound_driver_otherFiles = (char*) "Altri file dei driver audio";
r.sound_driver_provider = (char*) "Fornitore di driver audio";
r.sound_notes_label = (char*) "Etichetta della nota sonora";
return r;
}

View File

@ -10,21 +10,6 @@ Translation_t Translation_ptBR() {
//Common texts //Common texts
r.yes = (char*) "Sim"; r.yes = (char*) "Sim";
r.no = (char*) "Não";
r.not_available = (char*) "Indisponível";
r.enabled = (char*) "Habilitado";
//Tab names
r.tab_system = (char*) "Sistema";
r.tab_display = (char*) "Exibição";
r.tab_sound = (char*) "Som";
r.tab_input = (char*) "Entrada";
//Buttons
r.btn_help = (char*) "Ajuda";
r.btn_next = (char*) "Próximo";
r.btn_save = (char*) "Salvar";
r.btn_exit = (char*) "Sair";
return r; return r;
} }

View File

@ -1,90 +0,0 @@
#pragma once
#include <types/Translation.hpp>
#include "en_US.hpp"
/**
* TODO Completed
*/
Translation_t Translation_trTR() {
Translation_t r = Translation_enUS();
//Common texts
r.yes = (char*)"Evet";
r.no = (char*)"Hayýr";
r.not_available = (char*)"Mevcut deðil";
r.enabled = (char*)"Etkinleþtirilmiþ";
//Tab names
r.tab_system = (char*)"Sistem";
r.tab_display = (char*)"Ekran";
r.tab_sound = (char*)"Ses";
r.tab_input = (char*)"Girdi";
//Buttons
r.btn_help = (char*)"Yardým";
r.btn_next = (char*)"Ýleri";
r.btn_save = (char*)"Kaydet";
r.btn_exit = (char*)"Çýkýþ";
//Tab System
r.system_description = (char*)"Bu araç, sisteminizde yüklü olan OpenDX bileþenleri ve sürücüleri hakkýnda ayrýntýlý bilgi rapor eder.\n\nSoruna hangi alanýn neden olduðunu biliyorsanýz, yukarýdaki uygun sekmeye týklayýn. Aksi takdirde her sayfayý sýrayla ziyaret etmek için aþaðýdaki \"Sonraki Sayfa\" butonunu kullanabilirsiniz.";
r.system_info_label = (char*)"Sistem bilgisi";
r.system_info_currentDate = (char*)"Yerel Tarih/Zaman";
r.system_info_pcName = (char*)"Bilgisayar adý";
r.system_info_os = (char*)"Isletim sistemi";
r.system_info_language = (char*)"Dil";
r.system_info_manufacturer = (char*)"Sistem üreticisi";
r.system_info_model = (char*)"Sistem modeli";
r.system_info_bios = (char*)"BIOS";
r.system_info_processor = (char*)"Ýþlemci";
r.system_info_memory = (char*)"Hafýza";
r.system_info_pageFile = (char*)"Sayfa";
r.system_info_directxVersion = (char*)"DirectX Sürümü";
r.system_info_opendxVersion = (char*)"OpenDX Sürümü";
// Tab Display X
r.display_device_label = (char*)"Sürücü";
r.display_device_manufacturer = (char*)"Üretici";
r.display_device_chipType = (char*)"Çip Türü";
r.display_device_dacType = (char*)"DAC Türü";
r.display_device_type = (char*)"Device Türü";
r.display_device_mem = (char*)"Toplam Bellek";
r.display_device_videoMem = (char*)"Video Belleði";
r.display_device_sharedMem = (char*)"Paylaþýmlý Bellek";
r.display_device_currDisplayMode = (char*)"Geçerli Görüntü Modu";
r.display_device_monitor = (char*)"Ekran";
r.display_driver_label = (char*)"Sürücüler";
r.display_driver_mainDriver = (char*)"Ana Sürücü";
r.display_driver_version = (char*)"Sürüm";
r.display_driver_date = (char*)"Tarih";
r.display_driver_whqlLogo = (char*)"WHQL Logosu";
r.display_driver_d3dDdi = (char*)"Direct3D DDI";
r.display_driver_featureLevels = (char*)"Özellik";
r.display_driver_model = (char*)"Model";
r.display_features_ddAccel = (char*)"DD Hýzlandýrmasý";
r.display_features_d3dAccel = (char*)"D3D Hýzlandýrmasý";
r.display_features_agpAccel = (char*)"AGP Hýzlandýrmasý";
r.display_notes_label = (char*)"Notlar";
// Tab Sound
r.sound_device_label = (char*)"Cihaz";
r.sound_device_name = (char*)"Ad";
r.sound_device_hardwareId = (char*)"Donaným Kimliði";
r.sound_device_manufacturerId = (char*)"Üretici Kimliði";
r.sound_device_productID = (char*)"Ürün Kimliði;
r.sound_device_type = (char*)"Tür";
r.sound_device_default = (char*)"Varsayýlan Cihaz";
r.sound_driver_label = (char*)"Sürücüler";
r.sound_driver_name = (char*)"Ad";
r.sound_driver_version = (char*)"Sürüm";
r.sound_driver_date = (char*)"Tarih";
r.sound_driver_whqlLogo = (char*)"WHQL Logosu";
r.sound_driver_otherFiles = (char*)"Diðer Dosyalar";
r.sound_driver_provider = (char*)"Saðlayýcý";
r.sound_notes_label = (char*)"Notlar";
return r;
}

View File

@ -1,7 +1,5 @@
#include <iostream> #include <iostream>
#include <gtk/gtk.h>
#include <gtk/gtk.h> //GTK4
#include <config.hpp> #include <config.hpp>
#include "layout/MainWindow.hpp" #include "layout/MainWindow.hpp"
#include "src/SystemTab.hpp" #include "src/SystemTab.hpp"
@ -11,22 +9,18 @@
int main(int argc, char *argv[]) int main(int argc, char *argv[])
{ {
#if DEBUG gtk_init(&argc,&argv);
printf("Application started!\n\n");
#endif
//initializes GTK screen
gtk_init();
const gchar* glade_string = MainWindow::ui.c_str(); const gchar* glade_string = MainWindow::ui.c_str();
GtkBuilder* builder = gtk_builder_new_from_string(glade_string, -1); GtkBuilder* builder = gtk_builder_new_from_string(glade_string, -1);
GtkWidget *window = GTK_WIDGET(gtk_builder_get_object(builder, "main_window")); GtkWidget *window = GTK_WIDGET(gtk_builder_get_object(builder, "main_window"));
gtk_builder_connect_signals(builder, NULL);
//setup events and show the screen: SystemTab::setup(builder);
new SystemTab(builder); gtk_widget_show_all(GTK_WIDGET(window));
gtk_widget_show(GTK_WIDGET(window)); g_signal_connect(window, "destroy", G_CALLBACK(gtk_main_quit), NULL);
while (g_list_model_get_n_items (gtk_window_get_toplevels ()) > 0) gtk_main();
g_main_context_iteration (NULL, TRUE);
g_object_unref(builder); g_object_unref(builder);

View File

@ -1,29 +1,19 @@
#pragma once #pragma once
#include <gtk/gtk.h>
#include <unistd.h> #include <unistd.h>
#include <iostream> #include <iostream>
#include <locale>
#include <fstream>
#include <sstream>
#include <string> #include <string>
#include <vector> #include <vector>
#include <cstdio> #include <cstdio>
#include <regex>
#include <cstring> #include <cstring>
#include <iomanip> #include <iomanip>
#include <sys/sysinfo.h> #include <sys/sysinfo.h>
#include <gtk/gtk.h> namespace SystemTab {
#include <types/Translation.hpp>
#include "../locale/en_US.hpp"
#include "../locale/pt_BR.hpp"
#include "../locale/es_ES.hpp"
class SystemTab {
/** /**
* Set the text from "date_val"to the actual date/time. * Set the text from "date_val"to the actual date/time.
*/ */
public:static gboolean updateTime(GtkLabel* label) { gboolean updateTime(GtkLabel* label) {
time_t t = time(NULL); time_t t = time(NULL);
struct tm *time = localtime(&t); struct tm *time = localtime(&t);
gchar str_time[40]; gchar str_time[40];
@ -41,7 +31,7 @@ class SystemTab {
/** /**
* set a timeout event every 500ms to set the actual date/time * set a timeout event every 500ms to set the actual date/time
*/ */
public:static gboolean onRealizeTime(GtkLabel* label) { gboolean onRealizeTime(GtkLabel* label) {
std::cout << "SystemTab::onRealizeTime()\n"; std::cout << "SystemTab::onRealizeTime()\n";
g_timeout_add (500, (GSourceFunc) SystemTab::updateTime, label); g_timeout_add (500, (GSourceFunc) SystemTab::updateTime, label);
@ -51,7 +41,7 @@ class SystemTab {
/** /**
* Set the text from "pc_val" to the unix hostname. * Set the text from "pc_val" to the unix hostname.
*/ */
public:static gboolean setHostname(GtkLabel* label) { gboolean setHostname(GtkLabel* label) {
char hostname[1024]; char hostname[1024];
gethostname(hostname, sizeof hostname); gethostname(hostname, sizeof hostname);
@ -65,7 +55,7 @@ class SystemTab {
return FALSE; return FALSE;
} }
public:static std::string exec(const char* cmd) { std::string exec(const char* cmd) {
std::vector<char> buffer(1024); std::vector<char> buffer(1024);
std::string result; std::string result;
FILE* pipe = popen(cmd, "r"); FILE* pipe = popen(cmd, "r");
@ -80,20 +70,19 @@ class SystemTab {
return result; return result;
} }
public:static gboolean setOperatingSystem(GtkLabel* label) { gboolean setOperatingSystem(GtkLabel* label) {
std::string distro = exec("lsb_release -i | awk '{print $3}'"); std::string distro = exec("lsb_release -i | awk '{print $3}'");
std::string distro_version = exec("lsb_release -r | awk '{print $2}'"); std::string distro_version = exec("lsb_release -r | awk '{print $2}'");
std::string kernel_version = exec("uname -r"); std::string kernel_version = exec("uname -r");
std::string arch = exec("uname -m | grep -q 64 && echo 64-bit || echo 32-bit"); std::string arch = exec("uname -m | grep -q 64 && echo 64-bit || echo 32-bit");
// Trim the string values // Trim the string values
//distro.erase(std::remove(distro.begin(), distro.c_str() '\n'), distro.end()); distro.erase(std::remove(distro.begin(), distro.end(), '\n'), distro.end());
//distro_version.erase(std::remove(distro_version.begin(), distro_version.end(), '\n'), distro_version.end()); distro_version.erase(std::remove(distro_version.begin(), distro_version.end(), '\n'), distro_version.end());
//kernel_version.erase(std::remove(kernel_version.begin(), kernel_version.end(), '\n'), kernel_version.end()); kernel_version.erase(std::remove(kernel_version.begin(), kernel_version.end(), '\n'), kernel_version.end());
//arch.erase(std::remove(arch.begin(), arch.end(), '\n'), arch.end()); arch.erase(std::remove(arch.begin(), arch.end(), '\n'), arch.end());
std::string os_info = distro + " " + arch + " (" + distro_version + ", kernel " + kernel_version + ")"; std::string os_info = distro + " " + arch + " (" + distro_version + ", kernel " + kernel_version + ")";
os_info = std::regex_replace(os_info, std::regex("\n"), "");
// Convert the string to const gchar* // Convert the string to const gchar*
const gchar* text = os_info.c_str(); const gchar* text = os_info.c_str();
@ -106,16 +95,25 @@ class SystemTab {
return FALSE; return FALSE;
} }
public:static gboolean setLanguage(GtkLabel* label) { gboolean setLanguage(GtkLabel* label) {
char buffer[128]; char buffer[128];
std::string locale = setlocale(LC_CTYPE, NULL);
std::string lang, region; std::string lang, region;
// get the language and region from the locale // Get the LC_MESSAGES locale
lang = locale.substr(0, locale.find("_")); std::FILE* fp = popen("locale | grep LC_MESSAGES | cut -d= -f2 | cut -d_ -f1", "r");
region = locale.substr(locale.find("_") + 1); std::fgets(buffer, 128, fp);
lang = buffer;
pclose(fp);
// Get the LC_CTYPE locale
fp = popen("locale | grep LC_CTYPE | cut -d= -f2 | cut -d_ -f2", "r");
std::fgets(buffer, 128, fp);
region = buffer;
pclose(fp);
// Remove newline characters
lang.erase(lang.size() - 1, 1);
region.erase(region.size() - 1, 1); region.erase(region.size() - 1, 1);
region = region.substr(0, region.find("."));
// Return the formatted string // Return the formatted string
std::string str = lang + " (Regional Setting: " + region + ")"; std::string str = lang + " (Regional Setting: " + region + ")";
@ -129,7 +127,7 @@ class SystemTab {
return FALSE; return FALSE;
} }
public:static gboolean setManufacturer(GtkLabel* label) { gboolean setManufacturer(GtkLabel* label) {
std::ifstream file("/sys/class/dmi/id/sys_vendor"); std::ifstream file("/sys/class/dmi/id/sys_vendor");
std::string manufacturer; std::string manufacturer;
@ -147,7 +145,7 @@ class SystemTab {
return FALSE; return FALSE;
} }
public:static gboolean setModel(GtkLabel* label) { gboolean setModel(GtkLabel* label) {
std::ifstream file("/sys/class/dmi/id/product_name"); std::ifstream file("/sys/class/dmi/id/product_name");
std::string model; std::string model;
@ -165,7 +163,7 @@ class SystemTab {
return FALSE; return FALSE;
} }
public:static gboolean setBIOS(GtkLabel* label) { gboolean setBIOS(GtkLabel* label) {
std::ifstream file("/sys/class/dmi/id/bios_version"); std::ifstream file("/sys/class/dmi/id/bios_version");
std::string bios; std::string bios;
@ -183,7 +181,7 @@ class SystemTab {
return FALSE; return FALSE;
} }
public:static std::string getCpuModelName() { std::string getCpuModelName() {
std::ifstream file("/proc/cpuinfo"); std::ifstream file("/proc/cpuinfo");
std::string line; std::string line;
@ -196,7 +194,7 @@ class SystemTab {
return "Unknown"; return "Unknown";
} }
public:static int getCpuCoreCount() { int getCpuCoreCount() {
std::ifstream file("/proc/cpuinfo"); std::ifstream file("/proc/cpuinfo");
std::string line; std::string line;
int core_count = 0; int core_count = 0;
@ -210,7 +208,7 @@ class SystemTab {
return core_count; return core_count;
} }
public:static double getCpuFrequency() { double getCpuFrequency() {
std::ifstream file("/proc/cpuinfo"); std::ifstream file("/proc/cpuinfo");
std::string line; std::string line;
double frequency = 0.0; double frequency = 0.0;
@ -224,10 +222,10 @@ class SystemTab {
return frequency; return frequency;
} }
public:static std::string getCpuInfo() { std::string getCpuInfo() {
int core_count = SystemTab::getCpuCoreCount(); int core_count = getCpuCoreCount();
double frequency = SystemTab::getCpuFrequency() / 1000; double frequency = getCpuFrequency() / 1000;
std::string model_name = SystemTab::getCpuModelName(); std::string model_name = getCpuModelName();
std::ostringstream frequency_stream; std::ostringstream frequency_stream;
frequency_stream << std::fixed << std::setprecision(2) << frequency / core_count; frequency_stream << std::fixed << std::setprecision(2) << frequency / core_count;
@ -236,18 +234,19 @@ class SystemTab {
return model_name + " (" + std::to_string(core_count) + " CPUs), ~" + formatted_frequency + "GHz"; return model_name + " (" + std::to_string(core_count) + " CPUs), ~" + formatted_frequency + "GHz";
} }
public:static gboolean setCPU(GtkLabel* label) { gboolean setCPU(GtkLabel* label) {
std::string cpu = SystemTab::getCpuInfo(); std::string cpu = SystemTab::getCpuInfo();
const gchar* text = cpu.c_str(); const gchar* text = cpu.c_str();
gtk_label_set_text(label, text); gtk_label_set_text(label, text);
gtk_widget_queue_draw(GTK_WIDGET(label)); gtk_widget_queue_draw(GTK_WIDGET(label));
gtk_widget_queue_draw(gtk_widget_get_parent(GTK_WIDGET(label))); gtk_widget_queue_draw(gtk_widget_get_parent(GTK_WIDGET(label)));
// gtk_widget_show(GTK_WIDGET(label)); gtk_widget_show(GTK_WIDGET(label));
return FALSE; return FALSE;
} }
public:static gboolean setRAM(GtkLabel* label) { gboolean setRAM(GtkLabel* label) {
std::ifstream file("/proc/meminfo"); std::ifstream file("/proc/meminfo");
std::string line; std::string line;
std::string ram = "0MB RAM"; std::string ram = "0MB RAM";
@ -269,7 +268,8 @@ class SystemTab {
return FALSE; return FALSE;
} }
public:static gboolean updateSwap(GtkLabel* label) { gboolean updateSwap(GtkLabel* label) {
struct sysinfo info; struct sysinfo info;
sysinfo(&info); sysinfo(&info);
@ -285,7 +285,7 @@ class SystemTab {
gtk_widget_show(GTK_WIDGET(label)); gtk_widget_show(GTK_WIDGET(label));
} }
public:static gboolean setSwap(GtkLabel* label) { gboolean setSwap(GtkLabel* label) {
g_timeout_add (500, (GSourceFunc) SystemTab::updateSwap, label); g_timeout_add (500, (GSourceFunc) SystemTab::updateSwap, label);
return FALSE; return FALSE;
} }
@ -293,64 +293,9 @@ class SystemTab {
/** /**
* setup IDs and it's events * setup IDs and it's events
*/ */
public:SystemTab(GtkBuilder* builder) { void setup(GtkBuilder* builder) {
std::cout << "SystemTab::setup()\n"; std::cout << "SystemTab::setup()\n";
this->setupLang(builder);
this->setupSignals(builder);
}
private:void setupLang(GtkBuilder* builder) {
//get system locale
const char* locale = setlocale(LC_CTYPE, NULL);
Translation_t lang;
//instantiate Translation_{locale}() from tools/dxdiag/locale/{locale}.hpp
if (
strcmp(locale, "pt_BR.UTF-8") == 0 ||
strcmp(locale, "pt_PT.UTF-8") == 0
) {
lang = Translation_ptBR(); // >:)
} else if (strcmp(locale, "es_ES.UTF-8")) {
lang = Translation_esES();
} else {
lang = Translation_enUS();
}
//set texts
GtkLabel* tab_system = GTK_LABEL(gtk_builder_get_object(builder, "tab_system_txt"));
gtk_label_set_text(tab_system, lang.tab_system);
GtkLabel* system_description = GTK_LABEL(gtk_builder_get_object(builder, "system_description"));
gtk_label_set_text(system_description, lang.system_description);
GtkLabel* system_info_label = GTK_LABEL(gtk_builder_get_object(builder, "system_info_label"));
gtk_label_set_text(system_info_label, lang.system_info_label);
GtkLabel* system_info_currentDate = GTK_LABEL(gtk_builder_get_object(builder, "system_info_currentDate"));
gtk_label_set_text(system_info_currentDate, lang.system_info_currentDate);
GtkLabel* system_info_pcName = GTK_LABEL(gtk_builder_get_object(builder, "system_info_pcName"));
gtk_label_set_text(system_info_pcName, lang.system_info_pcName);
GtkLabel* system_info_os = GTK_LABEL(gtk_builder_get_object(builder, "system_info_os"));
gtk_label_set_text(system_info_os, lang.system_info_os);
GtkLabel* system_info_language = GTK_LABEL(gtk_builder_get_object(builder, "system_info_language"));
gtk_label_set_text(system_info_language, lang.system_info_language);
GtkLabel* system_info_manufacturer = GTK_LABEL(gtk_builder_get_object(builder, "system_info_manufacturer"));
gtk_label_set_text(system_info_manufacturer, lang.system_info_manufacturer);
GtkLabel* system_info_model = GTK_LABEL(gtk_builder_get_object(builder, "system_info_model"));
gtk_label_set_text(system_info_model, lang.system_info_model);
GtkLabel* system_info_bios = GTK_LABEL(gtk_builder_get_object(builder, "system_info_bios"));
gtk_label_set_text(system_info_bios, lang.system_info_bios);
GtkLabel* system_info_processor = GTK_LABEL(gtk_builder_get_object(builder, "system_info_processor"));
gtk_label_set_text(system_info_processor, lang.system_info_processor);
GtkLabel* system_info_memory = GTK_LABEL(gtk_builder_get_object(builder, "system_info_memory"));
gtk_label_set_text(system_info_memory, lang.system_info_memory);
GtkLabel* system_info_pageFile = GTK_LABEL(gtk_builder_get_object(builder, "system_info_pageFile"));
gtk_label_set_text(system_info_pageFile, lang.system_info_pageFile);
GtkLabel* system_info_directxVersion = GTK_LABEL(gtk_builder_get_object(builder, "system_info_directxVersion"));
gtk_label_set_text(system_info_directxVersion, lang.system_info_directxVersion);
GtkLabel* system_info_opendxVersion = GTK_LABEL(gtk_builder_get_object(builder, "system_info_opendxVersion"));
gtk_label_set_text(system_info_opendxVersion, lang.system_info_opendxVersion);
}
private:void setupSignals(GtkBuilder* builder) {
GtkLabel* date_val = GTK_LABEL(gtk_builder_get_object(builder, "date_val")); GtkLabel* date_val = GTK_LABEL(gtk_builder_get_object(builder, "date_val"));
g_signal_connect (date_val, "realize", G_CALLBACK (SystemTab::onRealizeTime), NULL); g_signal_connect (date_val, "realize", G_CALLBACK (SystemTab::onRealizeTime), NULL);
GtkLabel* pc_val = GTK_LABEL(gtk_builder_get_object(builder, "pc_val")); GtkLabel* pc_val = GTK_LABEL(gtk_builder_get_object(builder, "pc_val"));
@ -372,4 +317,4 @@ class SystemTab {
GtkLabel* swap_val = GTK_LABEL(gtk_builder_get_object(builder, "swap_val")); GtkLabel* swap_val = GTK_LABEL(gtk_builder_get_object(builder, "swap_val"));
g_signal_connect (swap_val, "realize", G_CALLBACK (SystemTab::setSwap), NULL); g_signal_connect (swap_val, "realize", G_CALLBACK (SystemTab::setSwap), NULL);
} }
}; }

View File

@ -1,8 +0,0 @@
#pragma once
#include <windows.h>
namespace DXUtils {
char* getDirectXVersion() {
// TODO: check for direct x version somehow.
}
}