Very early KDE 6 release.

This commit is contained in:
wackyideas 2024-08-09 03:20:25 +02:00
parent 7cc4ccabbc
commit 686046d4f7
6272 changed files with 140920 additions and 529657 deletions

288
CHANGELOG.md Executable file → Normal file
View file

@ -1,288 +0,0 @@
<h1>Version 0.2.2</h2>
<h2>SUMMARY:</h2>
This update focuses on bugfixes and polish, working out some small details to improve the accuracy of the theme. The most notable changes are removing the need to edit system components (for the most part) and the addition of an accurate lock screen and login screen created by [dominichayesferen](https://github.com/dominichayesferen) and me. Bugfixes are mostly related to the task manager and start menu.
This will be the last update before the release of KDE Plasma 6, and work will (hopefully, no promises though!) be done this month to ensure the theme is ported entirely by February. The next update will simply focus on making AeroThemePlasma work on KDE 6, and updates after that will focus on the following:
- Refactoring the KWin decoration theme to remove the dependency on Smaragd, make it more configurable and make it work better for higher DPI scales.
- Improving the icon theme.
- Implementing an automatic install script.
- Creating a sound theme.
<h2>NEW:</h2>
- Added new splash screen and lock screen UI. (authui7)
- Added experimental semi-automatic install script.
- Added alternative Emerald theme.
- Added partial fix for Firefox transparency. TODO: Add border radius tweaks.
- Removed Aero Splash Screen. (io.gitgud.wackyideas.aerosplashscreen)
<h2>CHANGED:</h2>
<h3>Meta:</h3>
- Install guide provides more information for Debian-based distributions.
- Install guide now recommends installing system plasmoids locally instead of overwriting
them.
<h3>Seven Tasks:</h3>
- Tasks with labels now have a smaller default length to match Windows 7.
- Tasks with labels now have a slight darkening effect to improve readability.
- Task icons are set to 16px when the panel is <=30px tall.
<h3>Seven Start:</h3>
- Added more side menu entries.
- Added separators in the side menu.
- "All programs" button is more accurate in terms of height and padding.
- The arrow in the "All programs" button has been changed to look more accurate.
- The "All programs" view has been changed to feature compact list items, breadcrumbs have been removed in favor of a simple back button.
- The search view has been changed to feature compact list items.
- List items no longer display descriptions.
<h2>FIXED:</h2>
- Fixed inconsistent panel background padding when compositing is disabled. (#25)
- Fixed (for the most part) inconsistent Seven Start menu height which lead to inconsistent list item alignment.
- Fixed side menu overflow in Seven Start when the side menu is taller than the main list view.
- Seven Start's search view no longer automatically steals focus from the search text box, allowing for caret movement via the left and right arrow keys.
- Fixed (for the most part) Seven Start's floating avatar and floating orb from being positioned incorrectly in multimonitor setups. (#23)
- Seven Start's floating orb and floating avatar will respond correctly to (most) changes to the current monitor configuration. (#23)
- Fixed weird behavior in Seven Start, especially in the "All programs" view.
- Fixed small alignment issues with various plasmoids.
- (Workaround) Exiting the Seven Start configuration window will fix the transparency mask issue when compositing is disabled. This issue happens when the user enters some plasmoid's configurations or changes the theme.
<h1>Version 0.2.1</h1>
<h2>CHANGED:</h2>
<h3>Meta:</h3>
- Updated install guide.
- Updated the documentation.
- Deprecated GTK2 support.
<h3>Seven Start:</h3>
- Introduced a WIP Vista-style orb button that sticks out of the panel.
- Included a C++ compiled component for the above mentioned feature.
- Slightly changed the default orb button textures.
<h3>Seven Tasks:</h3>
- Media control buttons have been revamped to look more like Windows 7's counterpart.
<h3>Reflection effect:</h3>
- Updated color mixer graphics.
<h3>Plasma theme</h3>
- Redesigned the clock widget. Design heavily inspired by [this](http://win7gadgets.com/calendar/aero-x-sky-clock-and-calendar.html) Windows 7 gadget.
<h2>FIXED:</h2>
- The popup orb will no longer appear in fullscreen applications or other areas where it's not supposed to be.
- Fixed some QML errors in various plasmoids.
- Fixed task tooltips not disappearing when clicking on a grouped task twice.
- Task hot tracking dimensions now update properly when tasks change in size.
- Keyboard switcher now scales the button texture depending on the panel size.
<h1>Version 0.2</h1>
<h2>SUMMARY:</h2>
The folder structure has been modified to simplify things and prepare it for an eventual install script. Most changes are internal, fixing bugs and cleaning up the codebase. Updated to work with KDE Plasma 5.27.7.
Major changes in this release include the addition of documentation, the reflection effect for KWin, a login splash screen, and a complete redesign of Seven Tasks' context menu. An important change is that AeroColorMixer has been deprecated in this release, and most of the codebase has been merged with the reflection effect. This change simplifies the process of applying accent colors to windows and eliminates the need to directly edit config files and SVG textures. Additionally, this change now lets the user see the accent color changing in real time as they configure the effect.
An effort is being made to standardize the internal codebase as well as the internal folder structure. The documentation is not complete, but I feel that it's a good start.
The install script is a very early WIP, and I don't recommend using it, I'm not particularly happy with its current state so I have chosen to leave it in the "Testing" folder. Initially I wanted to include an install script for this release of AeroThemePlasma, but ultimately I decided it would be best to keep working on it and hopefully come up with a more sophisticated solution than whatever this is right now. The same goes for the Global/Look and feel theme, it's still early in development and probably broken right now.
Lastly, I'd like to apologize for the radio silence and for taking so long. I haven't been in the right space for a while now, and recovery has taken up most of my time and energy, I hope that's understandable. Regardless, thank you for your patience if you've waited this long.
<h2>NEW:</h2>
- Added Aero Splash Screen (io.gitgud.wackyideas.aerosplashscreen).
- Added documentation for various components of this project.
- Added a KWin reflection effect.
- Added a KWin task switcher (Thumbnail Seven).
- Added a new color in the list of predefined accent colors (Sunset).
- Deprecated AeroColorMixer, code has been merged with the reflection effect.
<h2>CHANGED:</h2>
<h3>Meta:</h3>
- [INSTALL.md](./INSTALL.md) has been updated to reflect the new changes in the internal folder structure.
- Most folders now have underscores instead of spaces in their names for easier handling for the future install script.
- Most plasmoids have been renamed in a more standardized fashion.
- Most plasmoids no longer have their own folder, and they're now only separated between User and System widgets.
- Color scheme has been renamed to AeroColorScheme.
- The icon and cursor themes are provided as tar archives.
- Most plasmoids now use their own internal SVG textures instead of pulling them from Seven-Black. In the future, Seven-Black will get rid of these non-standard SVG elements.
- Removed the accent color in all SVG textures from Seven-Black, as that is now handled by the reflection effect.
- Most plasmoids now have updated default configs, reducing the amount of work needed during installation.
- Minor changes done to the Plasma style.
<h3>Icon theme:</h3>
- The icon theme now optionally depends on the [Oxygen icon theme](https://invent.kde.org/frameworks/oxygen-icons5).
- Updated a lot of icons, mainly related to icons related to Office and development.
<h3>Seven Start:</h3>
- Start menu orbs are now included within the project itself and are provided as a default option.
- Start menu orbs now behave more like Windows 7's menu orbs, removing the animated transition between hovered and pressed states, as it was causing weird visual bugs.
- Sidebar items can now be toggled on or off.
- When adding the widget, it won't add default favorite items anymore.
- The entire start menu now has basic keyboard navigation support. It's still a bit rough around the edges, but everything works.
- The profile icon now sticks out of the start menu when compositing is enabled. When compositing is disabled, the icon is moved fully inside the start menu.
- The profile icon now crossfades into icons depending on the selected sidebar item.
- The search text box now has a decorative magnifying glass icon on the right.
<h3>Desktop containment:</h3>
- Tooltips no longer show the icon of the hovered item.
- Reduced padding as a result of text alignment.
- The textbox that appears when renaming an item is now properly aligned.
<h3>DigitalClockLite:</h3>
- Added a link label at the top of the expanded representation representing the currently selected date. Clicking on it will select the current day.
<h3>Kvantum:</h3>
- Changed the tooltip to look more like Windows 7's tooltip design.
<h3>Seven Tasks:</h3>
- Completely redesigned the context menu to match the appearance from Windows Vista and 7.
- The context menu won't aggressively grab key inputs anymore, unlike standard context menus.
- Seven Tasks will no longer create pinned tasks when adding the plasmoid to a panel.
- Tooltips now have a dedicated SVG texture for the close button.
- Tooltips that display cover art now have a textured frame around the blurred background of the cover art.
<h3>Smaragd Seven:</h3>
- Updated to provide a correct blur region.
- Smaragd Seven no longer requires the reflection texture to function, as that is now handled by KWin's reflection effect.
<h2>FIXED:</h2>
- Added higher resolution icons so certain plasmoids don't display their low resolution counterparts.
- In the expanded view of the system tray, the icon highlight won't get stuck anymore when the mouse exits an icon.
- Clicking on an icon in the compact view of the system tray will now always close the expanded representation, if applicable.
- Seven Start now accepts key inputs more consistently and will no longer accept unprintable characters to the search text box.
- Seven Start will no longer try to open Dolphin when opening sidebar entries. Instead, it will open the directories using the default file manager on the system.
- Fixed bug in the Desktop containment where the symlink icon in the corner is drawn smaller than it should be when the icon is provided by a thumbnailer plugin.
- Smaragd Seven no longer renders the fake reflection effect.
- Kvantum will no longer attempt to blur certain elements like tooltips.
- Updated plasmoids to work with the latest version of KDE.
- Minor visual enhancements in various aspects of this project.
- Certain tooltips are no longer rendered incorrectly (this could have just been a problem on my machine)
- Seven-Black has updated panel margins so that panels now render correctly on newer versions of KDE.
- Minor bugfixes and fixing deprecated code.
- The color mixer window (formerly AeroColorMixer) has been fixed to work with Wayland.
<h1>Version 0.1</h1>
<h2>SUMMARY:</h2>
A lot of components have been added into this project, as well as some overhauled design, improvements in the themes, bug fixes that come from both the project and upstream development. Updated to work with KDE Plasma 5.25.4, and KWin 5.25.4 (KWinFT 5.25.0).
The biggest changes were made to the Start Menu, System Tray, the Date & Time, and general Plasma look and feel to make it more compact and use up less visual space, as well as improve readability in many areas.
This release also features a new Qt visual style for Kvantum, which is supposed to replace QGtkStyle for Qt applications. The GTK2 theme is still available for GTK2 applications, and can optionally still be used for Qt applications as well.
(The reason why this version's changelog feels a bit weird is because there were plenty of additions and changes before this project started being versioned.)
<h3>NEW:</h3>
- The following plasmoids have been added:
- Added **DigitalClockLite Seven**, a fork of DigitalClockLite.
- Added **Seven Start**, a fork of Avalon Menu.
- Added **Seven Tasks**, a fork of KDE's Icons-only Task Manager.
- Added a forked version of the **Show Desktop (Win 7)** plasmoid.
- Added Plasma theme **Seven Black**.
- Added a Windows 7 icon theme.
- Added a Windows 7 cursor theme.
- Added Windows 7 system sounds.
- Added an Aero Kvantum theme.
- Added an Aero GTK2 theme.
- Added KWin decoration **Smaragd Seven**, a fork of Smaragd.
- Added an Aero Emerald theme for Smaragd Seven.
- Added an Aero Wine theme.
- Added **AeroColorMixer**, an application for configuring this theme.
<h3>CHANGED:</h3>
- The following changes have been made to the System Tray:
- The size of the popup dialog has been reduced.
- The popup dialog is now a floating popup.
- The popup dialog now follows the **solid** variant of dialogs.
- The popup dialog's title text has been reduced in size.
- The 'Show hidden icons' arrow has been moved to the beginning of the System Tray.
- The 'Show hidden icons' arrow has a hover and press state.
- Tray icons have a hover and press state which have faded transitions.
- DigitalClockLite Seven follows the same visual aesthetic as the System Tray.
- DigitalClockLite Seven's compact representation has a hover and press state.
- DigitalClockLite Seven has's full representation has been reduced in size and padding.
- The Show Desktop (Win 7) button is now textured to match the Aero visual style.
- Desktop icons are smaller and have less spacing between them.
- Tooltips have better text visibility and small font sizes, as well as less padding.
- The following changes have been made to the Icons-only Task Manager (Seven Tasks):
- Task icons can now switch between showing/hiding labels on the fly, without the need for two different plasmoids.
- KSysGuard can be accessed from the taskbar by right clicking on an empty space and selecting "Task manager".
- Pinned tasks have a hover and press state and smaller, compact tooltips.
- Opening a program shows a startup animation, and the icon fades away after a while in case the program is not responding or opening right away.
- Tasks have hot tracking hover effects based on the icon's dominant colour.
- Tasks have Aero-like grouping visual elements.
- Task previews are designed to look like Aero task previews.
- Task previews now have a small icon in the top-left corner.
- Task previews have one row of text on top instead of two, omitting the redundant application name, displaying it only as a fallback.
- Task previews have been reduced in size and have readjusted margins.
- Task preview font sizes have been reduced.
- Media controls in task previews have been reduced in size.
- Task previews have a more accurate and functional hover element to indicate the state of the window and its actions.
- The keyboard layout switcher plasmoid has a reduced font size and improved alignment.
- The keyboard layout switcher also features a hover and press state button element.
- AeroColorMixer now reads its configuration file from ```~/.config/.aerorc``` in order to not pollute the home directory.
- Overhauled Seven Start's search layout in style.
- Improved Seven Start's padding, layout, and sped up the animation to make it feel snappier.
- Reorganised the entire repository to make it look and feel less cluttered.
<h3>FIXED:</h3>
- Fixed the state logic for the hover effect on desktop icons. The hover effect now properly implements the hover, selected, and hover+selected states.
- The taskbar hover preview is no longer enabled on startup, even if the user hasn't actually hovered over the preview.
- Taskbar hover previews will no longer show scrollbars.
- Task icons in the taskbar will now show a generic icon when the programs fails to provide its own icon.
- Removed a deprecated line of code which crashes Seven Tasks due to upstream changes. [#5]
- Fixed the bug where Smaragd will still allow you to resize the window when it is maximized.
- The binary for Smaragd is now placed in an easy to find directory and is properly documented. [#2]
- Smaragd will now disable rounded corners for maximized windows.
- Fixed minor padding issues with Smaragd.
- Smaragd will no longer draw text glow if there is no text in the first place.
- Updated Smaragd to the new API changes in upstream. Smaragd blurs properly once again and no longer has the "kornerbug" issue. [#6]
- Fixed various positioning bugs related to Seven Start. [#1][#4]
- Updated side links to the latest syntax for KDE's System Settings and Default Programs in Seven Start.
- The avatar icon in Seven Start now causes the mouse cursor to change to the pointing hand cursor.
- The buttons for changing Seven Start's orb icons are no longer disabled by mistake. [#4]
- Seven Start's side elements will no longer randomly glitch out for no reason.
- Fixed layering issues with Seven Start.
- Fixed certain crashes related to Seven Start.
- Recent programs will now update every time Seven Start is opened.
- Fixed the animation duration for System Tray icons.
- Fixed minor padding, sizing and alignment issues in various places.
- Fixed the huge separator line appearing in a few plasmoids.
- Restored the appearance of the tab widget used for plasmoids.
- Fixed AeroColorMixer to work with the current version.
- Added and replaced a bunch of icons with Aero counterparts.
- Removed unnecessary debugging console output.
- Many visual elements have been ported from Aero with as SVGs for DPI scaling.
- Replaced (most) raster textures used in Seven Start with SVGs for better DPI scaling.

111
DOCUMENTATION.md Executable file → Normal file
View file

@ -1,111 +0,0 @@
# AEROTHEMEPLASMA DOCUMENTATION
## TABLE OF CONTENTS
1. [Introduction](#intro)
2. [List of components](#list-of-components)
3. [Components to be implemented](#todo)
## Introduction <a name="intro"></a>
The purpose of this documentation is to provide a detailed explanation of elements that contribute to the look, feel and functionality of this project.
Since this project features a large variety of components, ranging from simple themes to
entire applications, documentation will be organized into multiple categories based on the
language the component is written in (plasmoids, applications) or the standard that defines it (themes). Components will categorized in the following way:
- **Themes**
- [Plasma theme (Seven-Black)](./Documentation/Themes/Seven-Black.md)
- **Software**
- Plasmoids
- [System tray (org.kde.plasma.private.systemtray)](./Documentation/Software/Plasmoids/System-Tray.md)
- [Desktop icons (org.kde.desktopcontainment)](./Documentation/Software/Plasmoids/DesktopContainment.md)
- [SevenStart (io.gitgud.wackyideas.SevenStart)](./Documentation/Software/Plasmoids/SevenStart.md)
- [SevenTasks (io.gitgud.wackyideas.seventasks)](./Documentation/Software/Plasmoids/SevenTasks.md)
- KWin
- [Reflection effect](./Documentation/Software/KWin/Reflection.md)
To keep the documentation condensed and to prevent redundancy, components that don't require documentation or are out of scope for this project (as in, documentation exists elsewhere) will not be documented here:
- Date and time (io.gitgud.wackyideas.digitalclocklite)
- Show desktop (Aero) (io.gitgud.wackyideas.win7showdesktop)
- Keyboard switcher (org.kde.plasma.keyboardlayout)
- Look and Feel (Splash and Lock screen theme) (authui7)
- KWin decoration theme (smod)
- Plasma tooltip (DefaultToolTip.qml)
- Wine theme (Windows Style Builder)
- Color scheme ([KDE's docs](https://docs.kde.org/stable5/en/plasma-workspace/kcontrol/colors/index.html), [Video guide](https://www.youtube.com/watch?v=6VW--o7CEEA))
- Icon theme ([Freedesktop](https://specifications.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html) [specification](https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html))
- Cursor theme ([Freedesktop specification](https://www.freedesktop.org/wiki/Specifications/cursor-spec/))
- Sound theme (KDE system settings)
- GTK2 theme ([GTK2](https://wiki.gnome.org/Attic/GnomeArt/Tutorials/GtkThemes) [theme details](https://www.orford.org/gtk/))
- Kvantum theme* ([Kvantum](https://raw.githubusercontent.com/tsujan/Kvantum/master/Kvantum/doc/Theme-Making.pdf) [documentation](https://raw.githubusercontent.com/tsujan/Kvantum/master/Kvantum/doc/Theme-Config.pdf))
*While Kvantum won't be discussed here, one important detail worth mentioning is that Kvantum does not respect KDE's color schemes for the most part and that this sometimes leads to unexpected visual results. Still, it's recommended to apply a KDE color scheme alongside Kvantum for maximum compatibility.
In the future, some components might receive their dedicated documentation, in case it's required.
## List of components <a name="list-of-components"></a>
This is a list of components that are included in this project, as well as their completion status. Note that finished components are still subject to bugs, general enhancements and maintenance, but they are "more or less" feature complete. The forked column links to the original projects and their authors. Please consider taking a look at their work, because without them, this project would not be possible.
### Plasmoids
|Name |Description |System|Finished|Fork |
|-----------------------|-----------------------------------------------------------------------------------------|------|--------|--------|
|DigitalClockLite Seven |Displays a calendar, time, events and holidays. |N |Y |[Intika](https://www.kde-look.org/p/1225135/)|
|SevenStart |An application launcher made to look like Windows 7's Start menu. |N |N |[adhe](https://store.kde.org/p/1386465/),<br>[oKcerG](https://github.com/oKcerG/QuickBehaviors),<br>[SnoutBug](https://store.kde.org/p/1720532)|
|SevenTasks |Task manager made to look like Windows 7's taskbar buttons. |N |N |[KDE](https://invent.kde.org/plasma/plasma-desktop/-/tree/master/applets/taskmanager)|
|Show Desktop (Aero) |Textured button that shows the desktop when clicked. Supports peeking. |N |Y |[Zren](https://www.kde-look.org/p/1100895/)|
|DefaultToolTip.qml |QML component used for displaying tooltips. Reduced padding and size. |Y |Y |[KDE](https://api.kde.org/frameworks/plasma-framework/html/DefaultToolTip_8qml_source.html)|
|Desktop icons |Improved desktop shell that reduces padding between icons. |Y |Y |[KDE](https://invent.kde.org/plasma/plasma-desktop)|
|Keyboard layout switcher|Textured button for switching layouts, with reduced size and better alignment. |Y|Y|[KDE](https://invent.kde.org/plasma/plasma-desktop)|
|System tray|Redesigned with reorganized placement, floating panels, hoverable icons and reduced size and padding.|Y|Y|[KDE](https://invent.kde.org/plasma/plasma-workspace/-/tree/master/applets/systemtray)|
### Themes
|Name |Description |Finished|Fork|
|------------------|------------------------------------------------------------------------------------------------------------------|--------|----|
|Aero cursors |Cursor pack for KDE. Currently supports resolutions 32 and 48. |N |[Souris-2d07](https://gitgud.io/souris)|
|SevenBlack |Windows 7 theme for KDE Plasma. |N |[Mirko Gennari](https://kde-look.org/p/998614),<br> [DrGordBord](https://store.kde.org/p/1722560/),<br> [bionegative](https://www.pling.com/p/998823)|
|Sound collection |Sounds taken from Windows 7 directly. |Y |Microsoft|
|VistaVG Wine theme|Msstyle used for theming Wine applications. |Y |[Vishal Gupta](https://www.deviantart.com/vishal-gupta/art/VistaVG-Ultimate-57715902)|
|Win2-7 |Windows 7 theme for GTK2 applications. Adapted to work better with QGtkStyle. |Y |[Juandejesuss](https://www.gnome-look.org/p/1012465)|
|Windows 7 Kvantum |Fixed certain padding and sizing issues, added more textures. |Y |[DrGordBord](https://store.kde.org/p/1679903)|
|WindowsIcons |Windows 8.1 icon pack adapted to fit KDE better while also changing certain icons to their Windows 7 counterparts.|N |[B00merang team](https://b00merang.weebly.com/icon-themes.html)|
|SDDM theme |SDDM session login theme.|Y |[Souris-2d07](https://gitgud.io/souris)|
### KWin
|Name |Description |Finished|Fork|
|-----------------|------------------------------------------------------------------------------------------------------------------------------|--------|----|
|Reflection Effect|KWin Effect that renders a glassy texture under windows. |N |[KDE](https://invent.kde.org/plasma/kwin/-/tree/master/src/plugins/blur)|
|Firefox Blur Region Fix|KWin Effect that fixes Firefox's transparency and allows it to have proper blur and reflections. |N |N/A|
|SMOD |KWin decoration theme based on Breeze, has support for removing inner window borders to mimic Windows 7's extended borders feature.|N |[Souris-2d07](https://gitgud.io/souris)|
|SMOD Button glow |KWin effect that provides proper caption button glow |Y |[Souris-2d07](https://gitgud.io/souris)|
|Thumbnail Seven |KWin task switcher that mostly replicates the look and behavior of Windows 7's task switcher|N|[KDE](https://invent.kde.org/plasma/kwin/-/tree/master/src/tabbox/switchers/thumbnail_grid)|
### Miscellaneous
|Name |Description |Finished|Fork|
|-------------------|--------------------------------|--------|----|
|Authui7 |Aero themed login splash and lock screen.|Y |[dominichayesferen](https://github.com/dominichayesferen)|
|Install script |Installation script for AeroThemePlasma.|N |N/A|
### Deprecated
|Name |Description |Finished|Fork|
|-------------------|--------------------------------|--------|----|
|Smaragd Seven |KWin decoration theme which uses Emerald themes as a basis, with some Aero specific changes and bugfixes. Lacks HiDPI support.|N |[KDE](https://invent.kde.org/plasma/smaragd)|
|Aero Emerald |Custom, non-standard Emerald theme made to work with Smaragd Seven. Features caption buttons that match the default sizes for both 7 and Vista. |Y |[nicu96](https://store.kde.org/p/1003826/), [Souris-2d07](https://gitgud.io/souris)|
## Components to be implemented <a name="todo"></a>
These components are listed from highest priority to lowest priority.
- **Qt visual style to closely replicate the native Windows GUI appearance (Like QWindowsVistaStyle, or a fork of Kvantum)**
- **Proper sound theme (upcoming in KDE Plasma 6)**
- **Better folder thumbnailer plugin**
- **Plymouth theme(?)**

View file

@ -1,138 +0,0 @@
# AEROCOLORMIXER (DEPRECATED)
## TABLE OF CONTENTS
1. [Detailed description](#desc)
2. [Configuration file](#config)
3. [List of files modified by AeroColorMixer](#files)
4. [Notes](#notes)
<a name="desc"></a>
## Detailed description
The appearance of transparent glass textures in this theme is managed by two separate programs that define color information differently. KDE Plasma's shell renders many of its elements by loading in SVG files as textures, while KWin's window decorations are managed by Smaragd.
AeroColorMixer manages both Smaragd and Plasma's shell at the same time in order to provide a unified accent color across the entire desktop. It is designed to look and function like Windows 7's Personalization menu, including the accent colors found on Windows 7. The accent colors were directly pulled from the following registry key:
```[ HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM\ColorizationColor ]```
On Windows Vista, 7 and 8.1, this registry key holds the currently applied accent color, stored in the hexadecimal AARRGGBB format. The predefined colors are:
<br>
|Color|Name|Value|
|-----|----|-----|
|<span style="background-color: #6b74b8fc; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Sky|#6b74b8fc|
|<span style="background-color: #a80046ad; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Twilight|#a80046ad|
|<span style="background-color: #8032cdcd; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Sea|#8032cdcd|
|<span style="background-color: #6614a600; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Leaf|#6614a600|
|<span style="background-color: #6697d937; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Lime|#6697d937|
|<span style="background-color: #54fadc0e; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Sun|#54fadc0e|
|<span style="background-color: #80ff9c00; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Pumpkin|#80ff9c00|
|<span style="background-color: #a8ce0f0f; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Ruby|#a8ce0f0f|
|<span style="background-color: #66ff0099; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Fuchsia|#66ff0099|
|<span style="background-color: #70fcc7f8; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Blush|#70fcc7f8|
|<span style="background-color: #856e3ba1; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Violet|#856e3ba1|
|<span style="background-color: #528d5a94; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Lavander|#528d5a94|
|<span style="background-color: #6698844c; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Taupe|#6698844c|
|<span style="background-color: #a84f1b1b; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Chocolate|#a84f1b1b|
|<span style="background-color: #80555555; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Slate|#80555555|
|<span style="background-color: #54fcfcfc; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Frost|#54fcfcfc|
|<span style="background-color: #89e61f8c; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Sunset|#89e61f8c|
Sunset is a predefined color exclusive to AeroThemePlasma, as it wasn't featured in Windows 7.
Windows Vista and 8.1 feature a unique selection of colors as well. Vista features significantly less colors than Windows 7, with a lot more straightforward color names:
<br>
|Color|Name|Value|
|-----|----|-----|
|<span style="background-color: #45409efe; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Default|#45409efe|
|<span style="background-color: #a3000000; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Graphite|#a3000000|
|<span style="background-color: #a8004ade; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Blue|#a8004ade|
|<span style="background-color: #82008ca5; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Teal|#82008ca5|
|<span style="background-color: #9cce0c0f; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Red|#9cce0c0f|
|<span style="background-color: #a6ff7700; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Orange|#a6ff7700|
|<span style="background-color: #49f93ee7; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Pink|#49f93ee7|
|<span style="background-color: #cceff7f7; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Frost|#cceff7f7|
Windows 8.1 features almost the same number of colors as Windows 7 (albeit with very disappointing names) and includes a new feature that can determine the accent color from the wallpaper by choosing its dominant color:
<br>
|Color|Value|
|-----|-----|
|<span style="background-color: #c48f8f8f; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c48f8f8f|
|<span style="background-color: #c484c6ff; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c484c6ff|
|<span style="background-color: #c4f276c9; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4f276c9|
|<span style="background-color: #c4f0c300; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4f0c300|
|<span style="background-color: #c492cb2a; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c492cb2a|
|<span style="background-color: #c44ccdcd; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c44ccdcd|
|<span style="background-color: #c4ff981d; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4ff981d|
|<span style="background-color: #c4ff4040; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4ff4040|
|<span style="background-color: #c4ff57ab; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4ff57ab|
|<span style="background-color: #c40abf46; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c40abf46|
|<span style="background-color: #c4c071ff; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4c071ff|
|<span style="background-color: #c454afff; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c454afff|
|<span style="background-color: #c48c90ff; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c48c90ff|
|<span style="background-color: #c4b09d8b; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4b09d8b|
|<span style="background-color: #c4ffffff; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4ffffff|
<br><br>
While not very conclusive, [here](https://stackoverflow.com/questions/3560890/vista-7-how-to-get-glass-color) is a useful thread for more information on how accent colors work in Aero, focused mainly on Windows 7.
<a name="config"></a>
## Configuration file
AeroColorMixer has a configuration file found in:
```$ ~/.config/.aerorc```
which has the following format:
```
transparency={0,1} # Tells AeroColorMixer if transparency is enabled or not.
red=[0,255] # The red component of the custom accent color.
green=[0,255] # The green component of the custom accent color.
blue=[0,255] # The blue component of the custom accent color.
alpha=[0,255] # The alpha component of the custom accent color.
color=[0,17] # Tells AeroColorMixer which color is being used. If the value is 0, then the custom accent color is used.
```
This configuration file is not meant to be edited by hand, as the file only directly effects AeroColorMixer, but won't actually change the accent color on the fly.
<a name="files"></a>
## List of files modified by AeroColorMixer
When AeroColorMixer applies the accent color across the entire theme, it writes to the following files:
```$ ~/.local/share/plasma/desktoptheme/Seven-Black/widgets/panel-background.svg```
```$ ~/.local/share/plasma/desktoptheme/Seven-Black/widgets/tooltip.svg```
```$ ~/.local/share/plasma/desktoptheme/Seven-Black/dialogs/background.svg```
```$ ~/.local/share/plasma/desktoptheme/Seven-Black/solid/dialogs/background.svg```
```$ ~/.emerald/theme/theme.ini```
On startup, AeroColorMixer will check if these files exist on the system. If at least one SVG file is missing from the system, the program will assume the Plasma theme is not installed, and will only make changes to the Smaragd decoration instead. If the Smaragd theme is not present, then it will only write to the SVG files, and if neither are present on the system, the program will simply close.
<a name="notes"></a>
## Notes
- AeroColorMixer has an option to enable or disable transparency when applying the accent color, however this option does not affect compositing at all. Disabling transparency in AeroColorMixer will instead make the applied accent color opaque, and blends the color with rgb(235, 235, 235), where alpha defines the percentage of the color mixing.
- AeroColorMixer will not write to SVG files that can be found in the "opaque" and "transparent" folders of the Plasma theme.
- When transparency is enabled, the color intensity slider won't actually make the accent color fully opaque or fully transparent when the slider is set to the minimum or maximum value.
- Due to certain limitations, the reflection effect will not be visible at all if transparency is disabled in AeroColorMixer.*
*One idea would be to blend the accent color with the blur during rendering which would keep the reflections visible, but this would potentially break applications which rely on custom blur regions that are colored differently from the rest of the desktop (for example, Konsole).

View file

@ -1,43 +0,0 @@
# SMARAGD SEVEN KDECORATION2 ENGINE
## TABLE OF CONTENTS
1. [Detailed description](#desc)
2. [Compiling](#compiling)
3. [File structure](#files)
4. [Notes](#notes)
## Detailed description <a name="description"></a>
Smaragd Seven is a fork of the [Smaragd](https://invent.kde.org/plasma/smaragd) window decoration plugin. Originally designed to allow Emerald themes to be used with KWin, this fork focuses specifically on making KWin's decorations look like the decorations found on Windows Vista and 7.
The motive for forking Smaragd in particular was simply because Emerald already has fairly good Aero themes available on sites like [Pling](https://www.pling.com/), and Smaragd seemed to fit the bill perfectly. Emerald as a (collection of) decoration engine(s) still has a few limitations that prevent it from being able to replicate Aero window decorations faithfully (not to mention that Smaragd introduces a few compatibility issues of its own), so forking Smaragd was the next step.
This document contains information about the window decoration engine, for more information about the extended Emerald theme used by this project, see [Smaragd-Theme.md](../Themes/Smaragd-Theme.md).
Smaragd Seven differs from the original in the following ways:
- The glow effect behind the title text is now correctly implemented using code from [this thread](https://stackoverflow.com/questions/28918230/qt-how-to-create-a-clearly-visible-glow-effect-for-a-qlabel-e-g-using-qgraph).
- Caption buttons won't get rendered if they are disabled by the application, and will reappear correctly in case they're enabled again.
- Fixes some minor margin issues, mostly having to do with the maximized window state.
- Renders additional textures on the sides and upper corners of the decoration.
- It's more limited in scope and sacrifices the general purpose functionality of using different Emerald themes. This could be fixed later down the line.
## Compiling <a name="compiling"></a>
Dependencies, and compiling instructions are provided in [INSTALL.md](../../INSTALL.md), under the **Window Manager** section.
## File structure <a name="files"></a>
The most significant changes can be found in the following files:
|Name |Description |
|----------------|-----------------|
|kwin_smaragd.h |Main header file.|
|kwin_smaragd.cpp|Implementation of the main header file.|
|qgraphicsgloweffect.h|Header file for QGraphicsGlowEffect. Used to render the glow effect behind text.|
|qgraphicsgloweffect.cpp|Implementation of the header file for QGraphicsGlowEffect.|
## Notes <a name="notes"></a>
- Smaragd Seven also fixes the original glow effect used by the vrunner engine, however this feature has been disabled in favor of using QGraphicsGlowEffect, as it enables a more layered way of rendering visual elements.

View file

@ -1,155 +0,0 @@
# REFLECTION EFFECT FOR KWIN
## TABLE OF CONTENTS
1. [Detailed description](#description)
2. [List of excluded windows](#excluded-windows)
3. [Reflection algorithm](#algorithm)
4. [Colorization](#colorization)
5. [Configuration menu](#config)
## Detailed description <a name="description"></a>
This is a KWin effect forked from the internal blur effect. It provides the reflection and colorization effect from Windows Vista and 7. These two effects achieve a "tinted glass" effect which is applied to most transparent graphical effects. Despite being a fork of the internal blur effect from KWin, all of the blurring functionality has been stripped out, as this effect is designed to be used alongside the blur effect, rather than being a drop-in replacement.
Before the introduction of this effect, this project didn't have proper reflections and colorization was done in a rather inefficient way, having to directly edit SVG files and the Emerald theme config file in order to change the accent color across KDE. Furthermore, real time changes weren't possible through this method, instead having to reload the Plasma style and restart the compositor in order to apply the changes. AeroColorMixer did all of this under the hood, and would often break after subsequent updates.
AeroColorMixer as a standalone program is now deprecated and most of the underlying code has been removed, while the rest has been moved to this effect's settings menu. With this, the following changes have been made to simplify the process of applying accent colors:
1. SVG files are no longer edited and elements that are supposed to be colorized are now completely transparent.
2. Likewise, the Emerald theme is also no longer edited and elements that are supposed to be colorized are now completely transparent.
3. Changes to the accent color and transparency are instant and rely on shared memory between the effect and the config menu.
4. Everything is contained within the configuration of this effect. Because of this, ```~/.config/.aerorc``` is no longer used.
The rendering priority relative to the blur effect, assuming no other active effects, goes like this:
1. Blur
2. Colorization
3. Reflections
4. Decorations
This ensures that reflections are always visible regardless of transparency options, which was a limitation of the previous approach to applying accent colors.
The user can provide their own reflection texture in the config menu for the effect, in a PNG format. A default reflection texture is already provided by the effect, which also acts as a fallback in case the provided texture file is invalid, doesn't exist or the path itself is invalid.
## List of excluded windows <a name="excluded-windows"></a>
Reflections will not render on certain types of windows, even if they are normally allowed to have blur behind them. Here's the list of windows that are not affected by this effect, as defined by the method ```isWindowValid(KWin::EffectWindow*)```:
- The desktop shell
- Toolbars
- Tooltips
- Menus
- Dropdown menus
- Popup menus
- Splash screens
- Normal and critical notifications
- OSDs
- Combo boxes
- Do not disturb icons
- Windows specifically excluded by the user
The user can define a list of programs that should be excluded by this effect. The programs are identified by their X11 window class, separated by a semicolon (;) in the config menu.
The colorization effect can also be ignored for programs defined by the user in the same manner as above, however it should be noted that the colorization is applied to all server-side decorations regardless of the defined restrictions.
## Reflection algorithm <a name="algorithm"></a>
As the reflection effect from Windows Vista and 7 is closed source, this is merely an effort to recreate the effect based on what can be deduced just by looking at what the effect does. At its core, the effect is very simple; it works as if the reflection texture is stretched across the monitor (or across multiple monitors) and transparent windows render the portion of the texture that they're "hovering above".
Of course, as the monitor configuration changes in any way (resolution, monitor placement), the texture is "stretched" again to cover all monitors. This may cause the texture to scale and distort out of proportion. Some examples of how the effect stretches the texture across different monitor configurations are shown below.
<img src="../img/reflection_mockup.png">
In the fragment shader, as the window draws the texture, the fragment coordinates are normalized relative to the screen geometry, and then used to sample the reflection texture. It should be noted that the sampling is done with a bilinear filter, and the alpha blending is done using ```glBlendFunc(GL_CONSTANT_ALPHA, GL_ONE_MINUS_SRC_ALPHA)```.
There is also a secondary part of the reflection effect, which is a subtle horizontal offset that makes the reflection appear to move as the window is moved, creating a sort of parallax effect. This offset is calculated independently for every window by subtracing the horizontal midpoint of the screen with the horizontal midpoint of the window, and dividing that difference by some constant. Through some experimentation, a constant with the value of 10 gives acceptable results.
This additional parallax effect can be toggled in the config menu by the user.
## Colorization <a name="colorization"></a>
Colorization is the effect of rendering a color over the blurred background behind windows, causing a tinted appearance. The color can be either semi-transparent or opaque, and depending on the option set by the user, the accent color is altered in the following way:
1. If transparency is enabled, the color is blended using ```glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)``` as it's being rendered.
2. If transparency is disabled, the color is mixed with a base color ```#e1e1e1``` and the alpha component is treated as the percentage of mixing.
It should be noted that if transparency is disabled, this won't affect compositing, and it will also not guarantee that all graphical elements will be rendered with an opaque color due to user-defined exclusions of colorization. For example, Konsole can still render blur behind its custom blur region, if it is included in the exclusion list.
The accent color also changes depending on the window's focus state:
1. If transparency is enabled, the alpha component of the accent color gets halved when the window is out of focus.
2. If transparency is disabled, the saturation component (HSL) gets halved when the window is out of focus.
This only applies to regular windows (most windows with server-side decorations).
## Configuration menu <a name="config"></a>
The accent color can be edited in real time through the configuration menu. Real time editing was made possible through the use of [QSharedMemory](https://doc.qt.io/qt-6/qsharedmemory.html) and calling the ```reconfigure()``` method through qdbus whenever a change occurs. Internally, the color is stored in the RGB color model as that's what OpenGL expects during rendering. The color mixer window is designed to look and function like Windows 7's Personalization menu, and includes the accent colors found on Windows 7, which were directly pulled from the following registry key:
```[ HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM\ColorizationColor ]```
On Windows Vista, 7 and 8.1, this registry key holds the currently applied accent color, stored in the #AARRGGBB format. The predefined colors are:
<br>
|Color|Name|Value|
|-----|----|-----|
|<span style="background-color: #6b74b8fc; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Sky|#6b74b8fc|
|<span style="background-color: #a80046ad; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Twilight|#a80046ad|
|<span style="background-color: #8032cdcd; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Sea|#8032cdcd|
|<span style="background-color: #6614a600; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Leaf|#6614a600|
|<span style="background-color: #6697d937; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Lime|#6697d937|
|<span style="background-color: #54fadc0e; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Sun|#54fadc0e|
|<span style="background-color: #80ff9c00; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Pumpkin|#80ff9c00|
|<span style="background-color: #a8ce0f0f; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Ruby|#a8ce0f0f|
|<span style="background-color: #66ff0099; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Fuchsia|#66ff0099|
|<span style="background-color: #70fcc7f8; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Blush|#70fcc7f8|
|<span style="background-color: #856e3ba1; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Violet|#856e3ba1|
|<span style="background-color: #528d5a94; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Lavander|#528d5a94|
|<span style="background-color: #6698844c; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Taupe|#6698844c|
|<span style="background-color: #a84f1b1b; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Chocolate|#a84f1b1b|
|<span style="background-color: #80555555; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Slate|#80555555|
|<span style="background-color: #54fcfcfc; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Frost|#54fcfcfc|
|<span style="background-color: #89e61f8c; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Sunset|#89e61f8c|
Sunset is a predefined color exclusive to AeroThemePlasma.
Windows Vista and 8.1 feature a unique selection of colors as well. Vista features significantly less colors than Windows 7, with a lot more straightforward color names:
<br>
|Color|Name|Value|
|-----|----|-----|
|<span style="background-color: #45409efe; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Default|#45409efe|
|<span style="background-color: #a3000000; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Graphite|#a3000000|
|<span style="background-color: #a8004ade; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Blue|#a8004ade|
|<span style="background-color: #82008ca5; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Teal|#82008ca5|
|<span style="background-color: #9cce0c0f; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Red|#9cce0c0f|
|<span style="background-color: #a6ff7700; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Orange|#a6ff7700|
|<span style="background-color: #49f93ee7; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Pink|#49f93ee7|
|<span style="background-color: #cceff7f7; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|Frost|#cceff7f7|
Windows 8.1 features a slightly more pastel variety of colors compared to Windows 7 and includes a new feature that can determine the accent color from the wallpaper by choosing its dominant color:
<br>
|Color|Value|
|-----|-----|
|<span style="background-color: #c48f8f8f; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c48f8f8f|
|<span style="background-color: #c484c6ff; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c484c6ff|
|<span style="background-color: #c4f276c9; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4f276c9|
|<span style="background-color: #c4f0c300; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4f0c300|
|<span style="background-color: #c492cb2a; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c492cb2a|
|<span style="background-color: #c44ccdcd; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c44ccdcd|
|<span style="background-color: #c4ff981d; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4ff981d|
|<span style="background-color: #c4ff4040; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4ff4040|
|<span style="background-color: #c4ff57ab; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4ff57ab|
|<span style="background-color: #c40abf46; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c40abf46|
|<span style="background-color: #c4c071ff; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4c071ff|
|<span style="background-color: #c454afff; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c454afff|
|<span style="background-color: #c48c90ff; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c48c90ff|
|<span style="background-color: #c4b09d8b; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4b09d8b|
|<span style="background-color: #c4ffffff; font-size: 24px;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>|#c4ffffff|
<br><br>
While not very conclusive, [here](https://stackoverflow.com/questions/3560890/vista-7-how-to-get-glass-color) is a useful thread for more information on how accent colors work in Aero, focusing mainly on Windows 7.

View file

@ -1,150 +0,0 @@
# SEVENSTART
## TABLE OF CONTENTS
1. [Detailed description](#description)
2. [File structure](#files)
## Detailed description <a name="description"></a>
SevenStart is an application launcher designed to look and feel like the Windows 7 start menu. While not a perfect recreation of the start menu, SevenStart implements the following features:
1. Animated menu orb, configurable much like Classic/Open Shell.
2. Layout similar to Windows 7's Start menu.
3. Sidebar with configurable entries.
4. User profile icon that sticks out of the menu when compositing is enabled.
5. Crossfading icons between the user profile icon and sidebar entries.
6. Search results that are organized into separate categories.
As SevenStart uses code from other application launchers in KDE, it improves upon the original start menu mainly in the search department, as SevenStart will show results from available KRunner search plugins installed on the system.
SevenStart (and other plasmoids) can use internal resources for components such as FrameSvgItems through the use of ```Qt.resolveUrl(path)```, where ```path``` is a relative path to a file or directory. The path provided is relative to the internal source code of the plasmoid, so where ```main.qml``` is located. The function returns a ```url``` that ends up being the absolute path to the file.
This is heavily used throughout most other AeroThemePlasma's plasmoids in order to use custom SVGs without having to resort to workarounds such as polluting the Plasma style, however SevenStart arguably uses it the most.
### CompactRepresentation
The first notable thing about SevenStart is the use of animated icons or "orbs" as they're called on Windows. Since QtQuick doesn't offer image crossfading by default, the effect is achieved "manually", using three separate images and gradually changing their opacities and visibility.
In earlier versions of SevenStart, only two images were used, but now three images are used due to upstream updates causing subtle timing issues that would cause undesirable visual effects. Using three images did end up allowing SevenStart to replicate the effects of Vista and 7's Start menu more accurately. By default, SevenStart uses internal icons if no external icons are provided in the configuration window.
Users can also force the orb to have a constant size, which allows the orb to stick out of the panel if the panel's height is lower than the orb's height. This allows the user to have a small panel with the orb protruding out of the panel, much like Windows 7 and Vista. The implementation is very similar to the user icon sticking out of the menu, which is described in more detail below. This implementation introduces a couple of problems:
1. Right clicking on this dialog window won't open the standard context menu as expected, as it actually isn't part of the compact or full representation.
2. When compositing is disabled, even with the NoBackground hint, this dialog window will simply be drawn with an opaque, black background.
Originally, the first problem was solved by reimplementing the context menu that pulls the appropriate actions from [ContainmentInterface](https://api.kde.org/frameworks/plasma-framework/html/classContainmentInterface.html) and [AppletInterface](https://api.kde.org/frameworks/plasma-framework/html/classAppletInterface.html), which is actually the ```plasmoid``` object. However, a much simpler solution was to make the orb window output-only, which would prevent it from accepting any inputs. The orb is then made interactable again using a ```MouseArea``` from within the panel. The consequence of this is that the topmost part of the orb is not interactable at all, but this is a conscious decision made to prevent the user from accidentally opening the menu when clicking on an element that's close to the orb.
Potential solutions to the second problem are far less trivial, as all of them require some sort of compromise. The potential solutions are:
1. Reverting to the regular orb while compositing is disabled, which is embedded within the panel, and/or resizing the orb back to its unaltered scale. This solution is aesthetically not pleasing at all, and it pretty much defeats the purpose of even enabling this feature to begin with.
2. Applying an opacity mask through an already existing SVG file which can be applied to the dialog window. The downside to this solution is that it feels pretty much like a hack/workaround, and because it uses the provided frameworks in an unintended way.
3. Adding a compiled component to this plasmoid, which would expose more Qt and KDE API methods that can define an opacity mask around the orb. The downside to this solution is that a compiled component reduces portability and makes the installation process slightly more complicated.
This plasmoid originally implemented the second solution, however this resulted in the orb being constantly visible and on top of everything, even when applications go into fullscreen mode. Because of this, there was no other choice but to include a C++ component. The main advantage of this approach is that applying an input mask is really simple. The input mask has to be:
1. A PNG file
2. Same dimensions as the orb images
Black (#000) pixels define the area where input is accepted (and thus, is fully opaque). It's recommended to define the transparent portions of the mask with white (#fff). This input mask is only applied to the orb when compositing is disabled. When compositing is enabled, the mask is simply a blank ```QRegion```, and it lets the compositor figure out transparency.
Fixed orbs are still a WIP, and have only been tested for one particular configuration. For now, expect the feature to be unstable and to have small visual bugs.
Another notable thing about the compact representation is that it is used in an unusual way compared to how plasmoids are generally designed to behave. Plasmoids have two representations:
1. Compact representation, which is used when the plasmoid is in a panel.
2. Full representation, which is used when the plasmoid is either activated from the panel, or placed on the desktop.
In practice, compact representations are just icons that get highlighted when hovered over with the mouse, with a tooltip explaining what the icon is supposed to be.
If the compact representation is set to null, then the plasmoid will be presented in its full representation regardless of its parent object. This is useful for application launchers, which typically should always have their main menu hidden behind a clickable button, regardless of its placement and hierarchy. However, this means that the main dialog window, which would normally be the full representation, now has to be handled manually by the plasmoid, and it's up to the developer on how to make it appear on the screen.
### User icon
The user icon in SevenStart is actually just another dialog window that is placed on top of the full representation, which is also a dialog window. To prevent the dialog from rendering its background, the ```backgroundHints``` property is set to ```PlasmaCore.Types.NoBackground```, which also disables shadows and blur. In a similar fashion, other plasmoids in this project use this property to change the appearance of their dialog windows, setting the property to ```PlasmaCore.Types.SolidBackground```.
The window flag ```Qt.X11BypassWindowManagerHint``` is used to prevent the dialog from animating its opacity when its visibility is changed directly, and ```Qt.Popup``` is used to ensure that it's
above the parent dialog window.
Setting the location to "Floating" means that we can use manual positioning for the dialog
which is important as positioning a dialog like this is tricky at best and unpredictable
at worst. Positioning of this dialog window can only be done reliably when:
1. The parent dialog window is visible, this ensures that the positioning of the window is actually initialized and not simply declared.
2. The width and height of the parent dialog window are properly initialized as well.
This is why the position of this window is determined on the ```onHeightChanged``` slot of the
parent window, as by then both the position and size of the parent are well defined*.
The ```firstTimePopup``` boolean is used to make sure that the dialog window has its correct position values before it is made visible to the user.
*It should be noted that the position values for any dialog window are gonna become
properly initialized once the visibility of the window is enabled, at least from what
I could figure out. Anything before that and the properties won't behave well. To comment on [MMcK Launcher](https://store.kde.org/p/1720532)'s implementation, this is likely why positioning of the floating
avatar is so weird and unreliable. Using uninitialized values always leads to
unpredictable behavior, which leads to positioning being all over the place.
## File structure <a name="files"></a>
While this section won't cover all of the files, it will cover the most important ones.
Directories:
|Location|Description|
|--------|-----------|
|config/ |Contains the configuration properties and the loader QML file.|
|pics/ |Contains raster images used by this plasmoid.|
|ui/ |Most of the QML source code can be found here.|
|ui/svgs/|SVG textures used by this plasmoid.|
|ui/orbs/|Default orb textures for the compact representation.|
|ui/code/|Helper JS code used by various parts of this plasmoid.|
Files:
|Name|Description|
|----|-----------|
|main.qml|Main QML file used to run the plasmoid.|
|CompactRepresentation.qml|Compact representation which displays the animated orb icons.|
|MenuRepresentation.qml|The expanded representation which is the application launcher itself.|
|KickoffListView.qml|Generic list view used by most views of this plasmoid.|
|CrossFadeBehavior.qml|Behavior used when crossfading two or more images.|
|IconPicker.qml|Used for opening and selecting icons. Used for selecting different icons.|
|SearchView.qml|Used to display the search results.|
|FavoritesView.qml|Used to display favorite programs.|
|OftenUsedView.qml|Used to display recently opened programs.|
|SidePanelItemDelegate.qml|Displays and holds information about the sidebar menu entries.|
|ApplicationsView.qml|Used to display all applications installed on the system.|
|StartOrb.qml|Dialog window representing the orb that is used for the small taskbar layout.|
|FloatingOrb.qml|The actual orb button that handles the visual animations and functionality.|
|ContextMenu.qml|Reimplemented context menu for StartOrb to bypass Dialog limitations.|
## Native interface (C++)
Public methods:
<br>
|Type|Name|Description|
|----|----|-----------|
|void|setDashWindow(QQuickWindow* w)|Sets a pointer to the menu representation instance.|
|void|setOrb(QQuickWindow* w)|Sets a pointer to the popup orb instance.|
|void|setMask(QString mask, bool overrideMask)|Sets an input mask to the popup orb. It's loaded in as a QBitmap and cached until overriden.|
|void|setWinState(QQuickWindow* w)|Sets certain window states to the provided window. Used for the popup orb during initialization.|
|void|setWinType(QQuickWindow* w)|Sets the provided window's type to ```NET::Dock```. Used for the popup orb during initialization.|
|void|setTransparentWindow(bool enable)|Sets or unsets the input mask for the popup orb. If compositing is enabled, the input mask is unset, and similarly is set if compositing is disabled.|
|void|setActiveWin(QQuickWindow* w)|Forces the provided window to be active, which raises the window and gives it keyboard focus.|
Public slots:
<br>
|Type|Name|Description|
|----|----|-----------|
|void|onCompositingChanged(bool enabled)|Calls ```setTransparentWindow(bool)``` when compositing has been changed.|
|void|onShowingDesktopChanged(bool enabled)|Raises the popup orb whenever the desktop is being shown, to prevent it from going under the panel.|
|void|onStackingOrderChanged()|This event happens whenever two or more windows change their visible order. If the menu representation has been shown, it will be raised to the front, which would partially obscure the orb. This method immediately raises the orb as well, to prevent that visual bug from happening.|
Protected properties:
<br>
|Type|Name|Description|
|----|----|-----------|
|QBitmap*|inputMaskCache|The cached instance of the provided input mask.|
|QQuickWindow*|orb|Popup orb instance.|
|QQuickWindow*|dashWindow|Menu representation instance.|

View file

@ -1,164 +0,0 @@
# SEVENTASKS
## TABLE OF CONTENTS
1. [Detailed description](#description)
1. [Hot tracking](#hottracking)
2. [Context menu](#contextmenu)
3. [File structure](#files)
4. [File details](#details)
## Detailed description <a name="description"></a>
Under KDE Plasma, a task manager is any plasmoid that shows a list of windows (tasks) that are rendered by the window manager. A task manager also handles things like grouping tasks together, allowing the user to see a preview of any window, controlling tasks and many other things. SevenTasks forks the default task manager, while adding significant visual and functional changes.
The default task manager from KDE comes in two different variants: regular and icons-only. If the user decided to switch between the two, they would have to replace the plasmoid completely with the other variant. SevenTasks merges both plasmoids together, and instead makes showing labels an option that can be toggled in the settings.
While most of these changes were possible to implement in pure QML, some effects couldn't have been implemented without adding an additional layer of complexity in the form of a compiled C++ part.
### Hot tracking
Under Windows 7, 8 and 8.1, tasks featured a visual effect known as "Hot tracking", where upon hovering over a task, a glowing light would appear that would follow the mouse horizontally (or vertically if the taskbar is oriented vertically). Additionally, a subtle glowing border would also appear around the hovered task.
Both of these effects share the same color, and that color is determined by the "dominant" color of the task icon. Interestingly enough, the algorithm that calculates the dominant color of an icon seems to be different between Windows 7 and 8/8.1, and as the source code and implementation details aren't public, SevenTasks has its own implementation that tries to be faithful to Windows 7's implementation, but sometimes comes up with different results.
The details regarding the general algorithm can be found [here](https://superuser.com/questions/730804/how-does-windows-7-calculate-the-color-to-use-for-taskbar-color-hot-tracking), and the following algorithm is implemented by SevenTasks:
1. We define the default highlight color as rgb(55, 176, 255). ( <span style="background-color: #37b0ff;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> )
2. If the icon doesn't exist (null), the icon is replaced with the icon associated with 'exec'.
3. We define a histogram, which is just a 3x3x3 list of colors, we can think of this as 27 neatly ordered buckets which represent a certain range of colors.
4. For the given icon, iteratively find the closest icon size that matches 32x32 pixels, going up in size with each unsuccessful iteration. 32x32 was chosen as the base resolution as most icons have it and it's a nice balance between accuracy and performance.
5. For every pixel in the icon, the color is separated into its red, green and blue components.
6. Every color component is then transformed into indexes in the range [0, 2]. Values within the range [0,60) return 0, [60, 200) return 1, and [200, 255] return 2.
7. If all three indexes are the same value after transformation, the pixel isn't added to any bucket. Otherwise, add the pixel to the bucket at the calculated indexes.
8. Find the bucket with the highest number of pixels. If the indexes of the bucket are all equal, discard it and return the default highlight color.
9. Iterate through the bucket and calculate a "minimum" and "maximum" color. The minimum/maximum color is formed by finding the minimum/maximum of each color component independently.
10. Calculate an average color by averaging the minimum and maximum color together (Averaging their color components respectively).
11. If the average color's HSV saturation is less than 32, return the default highlight color.
12. If the average color's HSV value is less than 85, return the default highlight color.
13. Multiply the saturation and value of the average color by 1.5 (clamping it into range [0, 255]), return the resulting color with an alpha value of 200.
Here are some examples, comparing Windows 7 (top) with SevenTasks (bottom):
<img src="../img/tasks.png">
### Context menu
SevenTasks features a complete reimplementation of the context menu found in Vista, 7, and 8/8.1, while retaining KDE specific features.
<img src="../img/contextmenu.png">
Internally, the new context menu is based on PlasmaCore.Dialog, with the solid visual appearance. As it is meant to act as a context menu, it needs to fulfill the following criteria:
- The context menu grabs *all* mouse and key inputs.
- The context menu must disappear if an event outside of it causes it to lose focus.
- The context menu must disappear if a menu item has been activated either with the mouse or the keyboard.
- The context menu must disappear if the user clicks away from it or the Escape key is pressed on the keyboard.
The current implementation accomplishes all of these except for grabbing all inputs from the keyboard, as that isn't necessary for the context menu to work properly. As such, the context menu is more forgiving when it comes to performing actions such as pressing global keyboard shortcuts. Note that this only applies when the main context menu is in focus, as child context menus are just regular Qt context menus which do grab every kind of input.
Additional notes:
- Getting the dialog window to grab mouse events will only work when either no mouse event is currently being handled, or if there is, it has to be the released or clicked event.
- The code makes a few redundant function calls to ensure the context menu really does grab the mouse, most notably with a timer that runs shortly after the context menu is shown.
- Despite the context menu being initialized, most of its visual properties are not well behaved until the visible property is set to true. Most notably, the x position may sometimes be reset to 0. As such, the code makes a few redundant calls in order to correctly set the x position and ensure it isn't reset.
- Certain actions (unpinning, closing tasks, activities) are delayed in order to prevent the context menu from being immediately removed, instead letting the menu fade out as it is freed from memory gracefully.
- Blur behind the window is only active once all animations are finished and the context menu is fully visible.
- PlasmaComponents.MenuItem elements are not renderable or interactable outside of PlasmaComponents.ContextMenu. As such, menu items visible in the context menu are made from a wrapper item, which consists of the PlasmaComponents.MenuItem and a child TasksMenuItem which does the actual rendering.
- The original ContextMenu file is still available in the source code, and can still be activated by commenting out and editing the necessary code. The regular context menu is deprecated, and will be removed in the future. (TODO)
## File structure <a name="files"></a>
This section lists the locations of modified files and a short description of their roles.
<br>
|Name |Location |Description |
|--------------------------|------------------|-------------------------------------------------------------------|
|seventasks.cpp |src/ |Implementation of the dominant color algorithm.|
|seventasks.h |src/ |Header file of the C++ source file.|
|main.xml |src/package/contents/config/|Contains the default settings for the plasmoid configuration.|
|ConfigBehavior.qml|src/package/contents/ui/ |Defines the plasmoid settings' graphical interface.|
|main.qml |src/package/contents/ui/ |The main file of the plasmoid.|
|Task.qml|src/package/contents/ui/ |The base task item.|
|TasksMenu.qml|src/package/contents/ui/|Reimplemented context menu.|
|TasksMenuItem.qml|src/package/contents/ui/|Renderable and interactable part of the context menu item.|
|TasksMenuItemSeparator.qml|src/package/contents/ui/|Separator items for the context menu.|
|TasksMenuItemWrapper.qml|src/package/contents/ui/|PlasmaComponents.MenuItem with an embedded TasksMenuItem element and shortcut component.|
|ToolTipDelegate.qml|src/package/contents/ui/ |An item that strings together grouped task previews.|
|ToolTipInstance.qml|src/package/contents/ui/ |A single instance of a task preview.|
|ToolTipWindowMouseArea.qml|src/package/contents/ui/|Highlight that appears on a task preview.|
## File details <a name="details"></a>
### main.xml & ConfigBehavior.qml
Plasmoids with settings make use of the main.xml file to define entries and their default values. Entries are categorized into groups, and each entry has a name and type attribute. Some basic types include:
- Bool
- Enum
- Int
- String
- StringList
- Url
While entries can include other additional elements, most of them include a label and default tag. A label describes what the settings entry is for, while the default tag defines the default value for the entry.
SevenTasks adds the following entry to the settings:
```
<entry name="labelVisible" type="Bool">
<label>Show labels next to task icons.</label>
<default>false</default>
</entry>
```
Every entry needs a matching control to be defined in QML. In ConfigBehavior.qml, the following is added for toggling this entry:
```
//...
property alias cfg_labelVisible: labelVisible.checked
//...
CheckBox {
id: labelVisible
Kirigami.FormData.label: i18n("Labels:")
text: i18n("Show labels next to task icons")
}
```
### Native interface (C++)
Public methods:
<br>
|Type|Name|Description|
|------|------------------------------|-----------|
|void|disableBlurBehind(QWindow*)|Disables the blur behind a window. Used to make the fade out effect of the context menu closing more visually pleasing.|
|QColor|getDominantColor(QVariant src)|Returns the dominant color of the icon. Even though the argument a QVariant, the expected data type is QIcon.|
|QPoint|getPosition(QWindow*)|Gets the local mouse coordinates with respect to the QWindow.|
|bool|isActiveWindow(int wid)|Returns if the window identified by the provided wId is active.|
|void|setMouseGrab(bool arg, QWindow* w)|Makes a QWindow object grab all mouse events from the system. Additionally installs the singleton Applet class to the provided QWindow object as an event filter. More details are in the source code.|
Protected methods:
<br>
|Type|Name|Description|
|----|----|-----------|
|bool|eventFilter(QObject* watched, QEvent\* event)|Filters mouse click events in order to notify the context menu that the mouse has been clicked.|
Signals:
<br>
|Name|Description|
|----|-----------|
|mouseEventDetected()|This signal is emitted when the event filter detects a mouse click event.|
Functions:
<br>
|Type|Name|Description|
|----|----|-----------|
|QRgb|averageColor(QRgb a, QRgb b)|Mixes the two provided colors by doing an average of every color component.|
|unsigned int|mapColorChannel(int channel)|Transforms the provided integer from the range [0,255] to [0,2] according to the algorithm described above.|
|unsigned char|max(unsigned char a, unsigned char b)|Returns the maximum between the two arguments.|
|unsigned char|min(unsigned char a, unsigned char b)|Returns the minimum between the two arguments.|

View file

@ -1,46 +0,0 @@
# SYSTEM TRAY
## TABLE OF CONTENTS
1. [Detailed description](#description)
2. [File structure](#files)
3. [File details](#details)
## Detailed description <a name="description"></a>
The system tray is a special plasmoid in KDE Plasma that essentially contains a collection of other widgets and displays them within the popup panel. This plasmoid also features third party tray icons from other programs, which is standard across many desktop environments.
Because of the complexity of this plasmoid, this document won't explain everything in detail (as it would be out of scope for this project), instead only showing and explaining the changes done to the source code. Additionally, the source code of this fork hasn't been regularly synchronised with the upstream, so any noticeable differences in the source code not specified here are the result of that. The modifications featured in this fork are purely visual, without altering the core functionality.
Here is the list of visual changes done to the plasmoid:
**Compact representation:**
- The "Show hidden icons" button has been moved to the left, and features a button texture for the hover, press and active states.
- The "small" icon size has been reduced even more to the resolution of 16x16 pixels.
- Each tray icon has an animated hover and press state, removing the transition animation when the user clicks from one tray icon to another.
- Additionally, the indicator texture no longer gets rendered when the user clicks on the "Show hidden icons" button.
- The "pop" animation has been removed from the tray icon (the PulseAnimation that happens when a tray icon needs attention is retained).
**Expanded representation:**
- The popup panel is now a floating panel that has is slightly padded from the bottom.
- The popup panel now uses the solid dialog panel SVG texture.
- The popup panel is now smaller in both width and height.
- The header text is smaller and more consistent in size.
- The internal plasmoid also has some additional small padding between itself and the panel borders.
- In the "Status and Notifications" view, the item highlight no longer lingers when no item is highlighted by the mouse.
## File structure <a name="files"></a>
This section lists the locations of modified files and a short description of their roles. Further documentation is provided in each source file.
<br>
|Name |Location |Description |
|--------------------------|------------------|-------------------------------------------------------------------|
|AbstractItem.qml |contents/ui/items/|Skeleton code for all tray icons. |
|CurrentItemHighLight.qml |contents/ui/ |The texture that appears around a tray icon when it's pressed. |
|ExpanderArrow.qml |contents/ui/ |The "Show hidden items" button in the compact representation. |
|ExpandedRepresentation.qml|contents/ui/ |The floating dialog panel that appears when expanding the plasmoid.|
|main.qml |contents/ui/ |The main file of the plasmoid. |

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

View file

@ -1,74 +0,0 @@
# SMARAGD SEVEN WINDOW DECORATION THEME
## TABLE OF CONTENTS
1. [Detailed description](#description)
2. [Theme configuration](#theme)
3. [File structure](#files)
## Detailed description <a name="description"></a>
This is the theme component of Smaragd Seven based on Emerald, the window decorator for Compiz. For a basic introduction on Emerald in the context of Compiz and regular Smaragd, click [here](http://wiki.compiz.org/Decorators/Emerald).
Despite the use of non-standard textures, this theme is still compatible with regular Compiz, which just ignores the files specific to Smaragd Seven. When used with Smaragd Seven, the theme provides additional textures for the following elements:
- Side gradients
- Left side glow
- Right side glow
<img src="./img/window.png">
One element that is rendered by Smaragd Seven independently of the Emerald theme is the glowing effect behind the text of the window. Changing settings related to this effect in the theme configuration file will not alter its behavior. It should also be pointed out that reflections are not rendered by Smaragd Seven, but rather the Reflection KWin effect.
This theme features two variants - one for the default Windows 7 look and one for the default Windows Vista look, where the caption button size and titlebar height are configured to be slightly smaller. (Top - Vista, Bottom - 7)
<img src="./img/winver.png">
One last important detail is that the window decoration itself is fully transparent. Instead, the decoration is colored by the reflection effect, while Smaragd Seven provides the transparent texture that is rendered on top of the reflections.
## Theme configuration <a name="theme"></a>
Certain details about the theme are dictated by the `theme.ini` configuration file. It's not recommended to edit this file, either manually or through the Emerald Theme Manager, as most values don't have an effect anymore when using Smaragd Seven, some are configured with non-standard values, and most other values are already configured to achieve this specific look. Some relevant settings include:
```
[engine]
# Tells the decorator to use the vrunner engine for rendering the window decoration texture.
engine=vrunner
[vrunner_settings]
...
# Windows will have rounded corners with the radius of 6 pixels.
radius=6
[buttons]
...
# Caption buttons will be offset by 2 pixels to the right, to align them with
# the right window border. Negative values here are not supported, as opening up Emerald Theme Manager
# will simply reset this value back to 0, not allowing negative values.
horizontal_offset=-2
[titlebar]
min_titlebar_height=21
# This defines the standard item layout for the titlebar (Icon, window title, minimize, maximize and close)
title_object_layout=I(2)T::NXC:Normal Layout
```
## File structure <a name="files"></a>
|Name |Description |Standard|
|-------------------------|-------------------------------------------------------------------------------|--------|
|buttons.close.png |Contains textures for the close button for both active and inactive windows. |Y |
|buttons.glow.png |Contains glow textures for all the buttons when the window is active. |Y |
|buttons.inactive_glow.png|Contains glow textures for all the buttons when the window is inactive. |Y |
|buttons.max.png |Contains textures for the maximize button for both active and inactive windows.|Y |
|buttons.min.png |Contains textures for the minimize button for both active and inactive windows.|Y |
|buttons.restore.png |Contains textures for the restore button for both active and inactive windows. |Y |
|reflection.png |The default reflection texture for the Reflection KWin effect. |N |
|sidebar.png |Texture for the side border gradients when the window is active. |N |
|sidebar_unfocus.png |Texture for the side border gradients when the window is inactive. |N |
|sideglow_left.png |Texture for the left side glow effect of the window. |N |
|sideglow_right.png |Texture for the right side glow effect of the window. |N |

View file

@ -1,260 +0,0 @@
# SEVEN-BLACK KDE PLASMA THEME
## TABLE OF CONTENTS
1. [Detailed description](#description)
2. [File structure](#files)
3. [Nonstandard SVGs](#svgs)
## Detailed description <a name="description"></a>
Seven-Black is the theme for KDE Plasma's shell, responsible for defining the appearance of panels, plasmoids, dialog windows, tooltips, etc. This includes almost all components written in QML that make use of KDE's API (PlasmaComponents, PlasmaExtras).
KDE Plasma styles consist of SVG files which define the appearance of shell components and basic graphical elements. The program **Plasma Theme Explorer** can be used to examine the theme and to get a description of where each SVG file is used. The color scheme of the style can also be examined. A more detailed explanation on Plasma styles can be seen [here](https://develop.kde.org/docs/plasma/theme/theme-details/). More documentation about KDE Plasma in general can be seen [here](https://develop.kde.org/docs/plasma/).
Windows following Plasma's API can have three general appearances depending on certain system settings:
1. Default - Compositing is enabled and background contrast is disabled
2. Transparent - Compositing is enabled and background contrast is enabled
3. Opaque - Compositing is disabled, background contrast doesn't matter here
KDE Plasma will read different SVG files depending on which appearance is currently active. This theme completely ignores the transparent appearance state, so it's recommended to keep the background contrast setting off.
### Solid appearance
The solid appearance is a fourth appearance state that doesn't depend on how the system is configured, instead it is used on demand by plasmoids. Going by KDE's official documentation, this appearance state should be used for completely opaque elements, and in practice, most other themes don't include any kind of dedicated SVG here, simply letting Plasma render solid elements with a single color.
However, compositing effects are still applied to these elements, and more importantly, any SVG file can be provided for the solid appearance state, regardless if the texture is detailed, transparent or opaque. This theme takes advantage of that at the cost of using this state in an unintended, nonstandard way. Being a relatively rare method of rendering things, it's considered a worthy tradeoff.
<img src="./img/solid.png">
This project uses solid textures for the system tray, as well as DigitalClockLite. The design of the solid panel texture is meant to replicate the floating panels from the system tray as seen in Windows 7. However, due to certain limitations in the way Plasma handles theming, the text in these dialog windows cannot be drawn with a black color (or at least, definitely not easily), hence why a stylized blue background has been placed instead, to provide readability while keeping in line with Aero's aesthetics.
Regular textures are used for all other windows (plasmoids, OSD popups, task switchers, side menus and notification popups).
The opaque appearance state aims to be a recreation of Aero Basic (WIP). Currently, only plasmoids using solid textures and the window manager don't comply with the aesthetic, but everything else does. A potential solution is to detect a change in compositing in plasmoids that use solid textures, change the dialog type to ```NoBackground``` and display a custom texture as the background while compositing is disabled. A similar solution can also be applied to the window manager.
### Icons
This theme also features a small set of icons used mainly by plasmoids like the system tray. Most of these icons are simply just scaled down variants of icons taken from Breeze, while other icons are taken directly from the main icon theme of this project.
Following the release of KDE Plasma 6, this part of the Plasma theme will become deprecated.
## File structure <a name="files"></a>
This section will focus on files that are affected by the colorization effect, files that represent the Aero Basic style, as well as files that are used only by this project. It should be noted that these nonstandard files are now decoupled from Seven-Black and are located in their respective plasmoids' source code, so that they can be used without having to rely on this specific Plasma style. As such, these nonstandard files will be removed completely from Seven-Black in future releases.
The "Unique" column describes if the file itself is exclusive to Seven-Black.
<br>
|Name |Location |Description |Has accent color|Standard|Unique|
|----------------------|---------------|----------------------------------------------------|----------------|--------|------|
|background.svg |dialogs/ |Default dialog texture. |Y |Y |N |
|panel-background.svg |widgets/ |Default taskbar texture. |Y |Y |N |
|tooltip.svg |widgets/ |Default tooltip texture. |Y |Y |N |
|button-close.svg |widgets/ |Close button icon used in SevenTasks. |N |N |Y |
|menuitem.svg |widgets/ |Texture used for menu items in SevenStart and SevenTasks.|N |N |Y |
|showdesktop.svg |widgets/ |Texture used for the Show desktop plasmoid. |N |N |Y |
|sidebaritem.svg |widgets/ |Texture used for sidebar entries in SevenStart. |N |N |Y |
|startmenu-buttons.svg |widgets/ |Texture used for the shut down button in SevenStart.|N |N |Y |
|system-lock-screen.svg|widgets/ |Lock icon used in SevenStart. |N |N |Y |
|systray.svgs |widgets/ |Texture used for the expander arrow button in the system tray.|N |N |Y |
|taskbarhover.svg |widgets/ |Texture used for hovered tooltips in SevenTasks. |N |N |Y |
|arrows.svgz |widgets/ |Used mainly by SevenStart and the system tray. |N |N |N |
|button.svg |widgets/ |Used by the keyboard layout switcher plasmoid. |N |N |N |
|tabbar.svgz |widgets/ |Used mainly by SevenTasks and the system tray. |N |N |N |
|tasks.svg |widgets/ |Used by SevenTasks for custom grouped tasks. |N |N |N |
|viewitem.svgs |widgets/ |Used by the desktop containment. |N |N |N |
|background.svg |opaque/dialogs/|Used when compositing is disabled. |N |Y |N |
|panel-background.svg |opaque/widgets/|Used when compositing is disabled. |N |Y |N |
|tooltip.svg |opaque/widgets/|Used when compositing is disabled. |N |Y |N |
|background.svg |solid/dialogs/ |Used by the system tray and date and time plasmoid. |Y |Y |N |
## Nonstandard SVGs <a name="svgs"></a>
This section will go through every nonstandard SVG file used by various plasmoids featured by AeroThemePlasma. As these files have now been relocated, for every file listed here there will be a list of plasmoids from this project that use the file.
### system-lock-screen.svg
Used in: SevenStart (io.gitgud.wackyideas.SevenStart)
Used for displaying the lock button next to the Shut Down button. The SVG itself has two elements - "dark-lock" and "light-lock", so that SevenStart can toggle between them as the user enters or exits the search view.
<img src="./img/lock.png">
### button-close.svg
Used in: SevenTasks (io.gitgud.wackyideas.seventasks)
It has three prefix states:
- Default (no prefix)
- Hovered (hover-)
- Pressed (pressed-)
Used in the tooltip popup when a task is hovered over with the mouse.
<img src="./img/close.png">
### showdesktop.svg
Used in: Show Desktop (Aero) (io.gitgud.wackyideas.win7showdesktop)
It has three prefix states:
- Normal (normal-)
- Hovered (hover-)
- Selected (selected-)
Used to give the button a scalable texture.
<img src="./img/showdesktop.png">
### sidebaritem.svg
Used in: SevenStart (io.gitgud.wackyideas.SevenStart)
It doesn't have any states other than the default, as it is only visible when hovered over or focused during keyboard navigation. It is used in SevenStart as a texture for the sidebar menu entires.
<img src="./img/sidebar.png">
### startmenu-buttons.svg
Used in: SevenStart (io.gitgud.wackyideas.SevenStart)
This is a set of two 9-segment textures used as FrameSvgItems. Both textures have the following states, with the right-oriented button additionally having a ```rtl-``` prefix:
- Normal (normal-)
- Hovered (hover-)
- Pressed (pressed-)
Used for the shut down and lock screen buttons.
<img src="./img/shutdown.png">
### taskbarhover.svg
Used in: SevenTasks (io.gitgud.wackyideas.seventasks)
It has two states:
- Normal (normal-)
- Active (active-)
It is used as a tooltip hover indicator. It will appear in its active state when the task's window is active. Otherwise, the tooltip is in its normal state and invisible by default. The texture is rendered with different opacities, depending on the mouse state (hovered and clicked states).
<img src="./img/taskbarhover.png">
### arrows.svgz
Used in: SevenStart (io.gitgud.wackyideas.SevenStart)
Apart from the standard four oriented arrows, two variants have been added:
- Hovered (with a hover- prefix)
- Black (with a -black suffix)
Used in the application view and in other minor graphical elements.
<img src="./img/arrows.png">
### button.svg
Used in: Keyboard Layout (org.kde.plasma.keyboardlayout)
A 9-segment button texture has been added with two states:
- Hover (keyboard-hover-)
- Pressed (keyboard-pressed-)
Used to give the layout switcher a button appearance.
<img src="./img/switcher.png">
### tabbar.svgz
Used in: SevenTasks (io.gitgud.wackyideas.seventasks), DigitalClockLite (io.gitgud.wackyideas.digitalclocklite)
This SVG contains 9-segment textures with three states:
- Active (active-)
- Pressed (pressed-)
- North active (north-active-)
The north active state is typically used for actual tabs, which is why it has a distinct look from the other two states. The regular active state is used when the user hovers over an element.
<img src="./img/tabbar.png">
<img src="./img/tabbar2.png">
### tasks.svg
Used in: SevenTasks (io.gitgud.wackyideas.seventasks)
The biggest modification to this SVG file is the addition of a stacked modifier to each state, defined with the "stacked+" suffix. These are mostly blank 9-segment textures with the right borders kept visible. Used for grouping multiple tasks together, achieving a graphical effect of "stacking" multiple elements on top of each other.
<img src="./img/tasks.png">
### button-media.svg
Used in: SevenTasks (io.gitgud.wackyideas.seventasks)
States:
- Normal (-normal-)
- Hover (-hover-)
- Pressed (-pressed-)
Orientations:
- Left (left-)
- Center (center-)
- Right (right-)
Used for media controls in task tooltips. There are three button states in three different orientations, which makes for nine states in total. There is also a fourth orientation which isn't used that has all four rounded corners.
<img src="./img/mediabuttons.png">
### media-icons.svg
Used in: SevenTasks (io.gitgud.wackyideas.seventasks)
- Pause (pause)
- Play (play)
- Next media (skip)
- Previous media (previous)
Used for media controls in task tooltips.
<img src="./img/mediaicons.png">
### viewitem.svg
Used in: Desktop containment (org.kde.desktopcontainment)
It has three states:
- Hover (hover-)
- Selected (selected-)
- Selected+Hover (selected+hover-)
Used for signifying the highlight and selected state for icons on the desktop.
<img src="./img/desktop_icons.png">
### menuitem.svg
Used in: SevenStart (io.gitgud.wackyideas.SevenStart), SevenTasks (io.gitgud.wackyideas.seventasks)
It has three states:
- Hover (hover-)
- Selected (selected-)
- Selected+Hover (selected+hover-)
Used for all menu items in the start menu, as well as menu items in the context menu for SevenTasks.
<img src="./img/menuitem.png">
<img src="./img/menuitem2.png">

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 285 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

525
INSTALL.md Executable file → Normal file
View file

@ -1,511 +1,34 @@
# Installation
# WIP Install guide
## TABLE OF CONTENTS
## Prerequisites
1. [Prerequisites](#preq)
1. [Install Script](#script)
1. [KDE Plasma Settings](#plasma-settings)
1. [KDE Plasma Theme](#plasma-theme)
1. [Icons and Cursors](#icons)
1. [Qt Visual Style](#application-theme)
1. [Fonts](#fonts)
1. [Window Manager](#wm)
1. [Reflection Effect](#reflection)
1. [Plasma Widgets](#widgets)
1. [Task Switcher](#task-switcher)
1. [Look and Feel](#look-and-feel)
1. [Sounds](#sounds)
1. [SDDM](#sddm)
1. [Wine](#wine)
1. [Terminal](#terminal)
1. [Firefox](#firefox)
On Arch, you'll need ```cmake, extra-cmake-modules, qt6-virtualkeyboard, qt6-multimedia, qt6-5compat, plasma5support, kvantum, optionally plymouth ```
### Notes:
### Prerequisites <a name="preq"></a>
1. Wayland support seems to be better than before probably, but it's not fully supported yet, it still has some jank
The following software is required for this project:
## Plasma stuff
- KDE Plasma
- KWinFT/KWin with compositing support for blur and other effects
- Kvantum
- Qt5 GraphicalEffects package (```qt5-graphicaleffects``` on Arch)
- cmake
- extra-cmake-modules
- [Scale Minimize Animation](https://store.kde.org/p/1267839) (Can be installed through System Settings)
1. Move ```desktoptheme```, ```look-and-feel```, ```plasmoids```, ```shells``` into ```~/.local/share/plasma```
2. Move ```smod``` to ```~/.local/share```
3. Move ```sddm-theme-mod``` to ```/usr/share/sddm/themes```
4. Import color scheme through system settings
5. Apply the appropriate settings in system settings
6. Restart plasma (```plasmashell --replace & disown``` in terminal)
On Debian and Debian-based distributions (Ubuntu, Mint, etc.), the following apt packages are required:
## KWin stuff
```
$ sudo apt install cmake extra-cmake-modules build-essential qtbase5-dev libkdecorations2-dev libkf5configwidgets-dev libkf5config-dev libkf5coreaddons-dev libkf5windowsystem-dev libkf5wayland-dev kwin-dev
```
1. Compile the decoration theme and C++ KWin effects using the install scripts provided, I don't think just placing the precompiled ones will work as KWin won't register them
2. Move ```effects```, ```tabbox```, ```outline```, ```scripts``` to ```~/.local/share/kwin```
3. Apply the appropriate settings in system settings
4. Restart kwin (```kwin_x11 --replace & disown``` in terminal)
On OpenSUSE Tumbleweed, install the following packages (required for the Reflection effect):
```
$ sudo zypper install kwindowsystem-devel kwin5-devel libkdecoration2-devel libQt5Gui-devel
```
### Install Script <a name="script"></a>
AeroThemePlasma features an early experimental install script which currently serves to ease parts of the installation. It's a work in progress and marked as experimental, so things may or may not work properly. **The install script is provided as-is, and there's a nonzero chance that it might unintentionally break your system, delete your files, and/or cause a housefire. You have been warned.**
Currently, the install script just copies all the files to their intended directories, deleting any previous version of those files that might have been on the system beforehand. It also compiles the Reflection effect and installs it properly. The user still has to set up their desktop layout and other settings, as described in this document.
Features that should be implemented into the script:
- Automatically setting up the layout and settings for the user.
- Support for Debian-based distributions.
- Font installation that migrates fonts from an existing Windows installation.
- The script should probably install the dependencies for you(?)
Important notes:
- The install script does NOT download or install fonts to the system.
- Currently, only Arch-based distributions are supported.
- The install script assumes that the user has installed all the dependencies before running the script.
To run the script, do the following in the terminal:
```
$ chmod +x install.sh
$ ./install.sh install
```
Alternatively, simply run:
```
$ sh install.sh install
```
### KDE Plasma Settings <a name="plasma-settings"></a>
Starting off with the simplest modifications, this is a list of recommended settings which are configurable in the system settings, to make Plasma behave more like Windows 7:
- Under Workspace Behaviour:
- Under General Behaviour:
- Clicking files or folders: Selects them
- Under Desktop Effects:
- Disable 'Background contrast' *(This theme does not make use of this option #9)*
- Enable 'Blur', set Blur strength to 2, and Noise strength to 0
- Enable 'Desaturate unresponsive applications'
- Enable 'Fading popups'
- Enable 'Login', check 'Fade to black' *(Apparently this effect is currently broken? It won't actually fade to black.)*
- Enable 'Logout'
- Enable 'Morphing popups'
- Disable 'Sliding Popups'
- Disable 'Translucency'
- Enable 'Glide':
- Duration: 200ms
- Window Open Animation: Top, 8, 20
- Window Close Animation: Bottom, 15, 30
- Enable 'Window Aperture'
- If using KWinFT, enable 'Flip Switch':
- Flip animation duration: 200
- Angle: 45°.
- Enable 'Scale' (Appearance) - If you don't have this plugin, download 'Scale Minimize Animation' from 'Get New Desktop Effects'.
- Under Screen Edges:
- Turn off all 8 screen edges
- Under Touch Screen:
- Disable all 4 triggers
- Under Virtual Desktops:
- Remove all but one desktop, set maximum rows to 1
- Under Window Management:
- Under Window Behaviour:
- Under Window Actions:
- Modifier key: Meta
- Under KWin Scripts:
- Enable 'MinimizeAll'
When editing Plasma's bottom panel, make sure its width is set to 40 pixels (30 if using a small panel).
### KDE Plasma Theme <a name="plasma-theme"></a>
Seven-Black is the theme for Plasma's shell. To install it, put it in the following directory (create it if it doesn't exist):
```
$ ~/.local/share/plasma/desktoptheme/
```
To apply it, go to ```System Settings -> Appearance -> Plasma Style``` to find it and select it.
### Icons and Cursors <a name="icons"></a>
The icon theme is ```windowsicon```, while ```aero-drop``` is the cursor theme. Extract the tar archives and move the icon theme into the following directory:
```
$ ~/.local/share/icons/
```
To apply the icon theme, go to ```System Settings -> Appearance -> Icons``` and select the theme.
It is also strongly recommended to install the [Oxygen](https://invent.kde.org/frameworks/oxygen-icons5) icon theme if it's not already installed on your system, as this project's icon theme optionally depends on it.
As for installing the cursor theme, apply the theme in ```System Settings -> Appearance -> Cursors```, and then follow [this](https://www.youtube.com/watch?v=Dj7co2R7RKw) video tutorial to ensure the cursor theme is applied everywhere consistently. It's important to keep in mind the following:
1. Make sure that the cursor theme is installed system-wide (it has to be in ```/usr/share/icons```), or else SDDM cannot apply the theme.
2. If SDDM fails to pick up on the cursor theme, go to ```System Settings -> Startup and Shutdown -> Login Screen (SDDM)``` and click on 'Apply Plasma Settings' to ensure SDDM is properly configured.
Consult the [Arch Wiki](https://wiki.archlinux.org/title/Cursor_themes) for more information, as setting a cursor theme on Linux is not as trivial or elegant KDE's System Settings would suggest.
### Qt Visual Style <a name="application-theme"></a>
Installing Kvantum requires installing the package ```kvantum``` which is available in the community repository for Arch, and is available on most other Linux distributions as well.
Installing the Kvantum theme is simply done through Kvantum's settings. Afterwards, Kvantum can be set as the visual style in ```System Settings -> Appearance -> Application Style```.
**Installing the color scheme:**
To install the color scheme, go to ```System Settings -> Appearance -> Colors``` and click "Install from file". Locate the following file and select it:
```
./Plasma/Color_Scheme/AeroColorScheme.colors
```
Select the color scheme and apply it.
### Fonts <a name="fonts"></a>
For the sake of keeping this theme pack relatively compact, and to avoid potential licensing issues, this repository won't include Windows fonts, but acquiring them from an already present Windows installation is easy.
On Windows, fonts are stored in the following directory:
```
C:\Windows\Fonts\
```
If you have an existing Windows installation, you can simply copy the fonts over to the following directory (note that this will install the fonts across the entire system):
```
# /usr/share/fonts/windows/
```
It might be necessary to also update the fontconfig cache:
```
$ fc-cache
```
As for the actual font rendering configuration, in ```System Settings -> Appearance -> Fonts``` apply the following settings:
- General: Segoe UI 9pt
- Fixed width: Fixedsys 11pt
- Small: Segoe UI 8pt
- Toolbar: Segoe UI 9pt
- Menu: Segoe UI 9pt
- Window title: Segoe UI 9pt <br>
- Anti-aliasing: Enable
- Sub-pixel rendering: RGB *(This may vary depending on the monitor, choose the setting that looks best for your monitor and eyes.)*
- Hinting: Slight
Relog into a new Plasma session to see the results.
Note: Font rendering on Linux is [largely broken now](https://gitlab.gnome.org/GNOME/pango/-/issues/656) [and has been](https://gitlab.gnome.org/GNOME/pango/-/issues/463) [for](https://gitlab.gnome.org/GNOME/pango/-/issues/404) [several](https://github.com/harfbuzz/harfbuzz/issues/2394) [years](https://www.phoronix.com/news/HarfBuzz-Hinting-Woe). As a result, **pretty much all** font hinting options are broken except for **slight** font hinting and HiDPI rendering (because at that point, subpixel rendering isn't even needed). This regression has taken away the aggressive font hinting which made rendering nearly identical to ClearType on Windows 7. Currently, full font hinting _should technically work again_, but certain glyphs aren't horizontally aligned correctly, which still makes text unreadable. Until this issue is resolved, the only viable choice is to use slight font hinting.
### Window Manager <a name="wm"></a>
The KWin decoration theme comes in two parts: The decoration theme itself and a KWin effect for the caption button glow effect. Both components can be found in the following directory:
```
$ ./KWin/smod_kwin_theme/
```
To compile the components, run the following:
```
$ sh install-resources.sh
$ sh build-decoration.sh
$ sh install-decoration.sh
$ sh build-effect.sh
$ sh install-effect.sh
```
Log out of the Plasma session or restart KWin, and go to ```System Settings -> Appearance -> Window Decorations``` and select SMOD. In the settings for SMOD, set the shadow size to small.
To enable caption button glow, go to ```System Settings -> Desktop Effects``` and enable the SMOD Window Buttons effect.
### Reflection Effect <a name="reflection"></a>
To install the reflection effect, it's recommended to build it from source, as dumping the precompiled files doesn't seem to work on its own.
Go to the folder:
```
cd ./KWin/kwin_reflect/
sh install.sh
```
After it has been compiled, you can log out or restart Plasma and KWin, then go to ```System settings -> Workspace Behavior -> Desktop Effects``` and enable the effect.
### Plasma Widgets <a name="widgets"></a>
Installing them can be done by moving the plasmoid folder found in the following directory:
```
$ ./Plasma/Plasma_Widgets/User/
```
to:
```
$ ~/.local/share/plasma/plasmoids/
```
Example:
To install Show Desktop (Aero), move the directory:
```
$ ./Plasma/Plasma_Widgets/User/io.wackyideas.win7showdesktop/
```
to:
```
$ ~/.local/share/plasma/plasmoids/
```
#### Seven Start
Seven Start has a feature that allows the orb button to stick out of the panel, which requires a natively compiled component. Before installing Seven Start normally, move the following file:
```
$ ./Plasma/Plasma_Widgets/User/plasma_applet_SevenStart.so
```
to:
```
# /usr/lib/qt/plugins/plasma/applets/plasma_applet_SevenStart.so
```
#### Seven Tasks
Just like Seven Start, Seven Tasks also requires a similar installation process. Move the file:
```
$ ./Plasma/Plasma_Widgets/User/plasma_applet_seventasks.so
```
to:
```
# /usr/lib/qt/plugins/plasma/applets/plasma_applet_seventasks.so
```
This library is used to create [this effect](https://superuser.com/questions/730804/how-does-windows-7-calculate-the-color-to-use-for-taskbar-color-hot-tracking) from Windows 7.
It is possible to toggle showing labels by toggling the "Show labels on taskbar buttons" option in the configuration window like this:
<img src="Screenshots/SevenTasksConfig.png">
#### Digital Clock Lite
This plasmoid doesn't require additional configuration after installation if other steps have been completed. If for some reason the font and size do not look appropriate, set them to the following:
- Font size px: 9
- Font style: Segoe UI
#### Desktop containment
To make the desktop look more like Windows 7 by default, right click on the desktop and click "Configure Desktop and Wallpaper...", change the following settings:
- Icons:
- Icon size: 2
- Label width: Narrow
- Features: All checked except for "Folder preview popups"
### DefaultToolTip.qml
This is a QML component that defines the appearance of Plasma tooltips. Since this is a system-wide component, this file will be replaced with the upstream version whenever KDE is updated through the package manager of your system, meaning this installation step should be performed after every system upgrade.
To install, move the following file:
```
$ ./Plasma/Plasma_Widgets/System/Tooltips/DefaultTooltip.qml
```
to:
```
# /usr/lib/qt/qml/org/kde/plasma/core/private/
```
Restart plasma to apply changes.
### Task Switcher <a name="task-switcher"></a>
To install, move the following folder:
```
$ ./KWin/thumbnail_seven
```
to:
```
$ ~/.local/share/kwin/tabbox/
```
In ```System Settings -> Window Management -> Task Switcher```, set the following:
In Main:
- Visualization: Set "Thumbnail Seven" as the visualization style.
- Shortcuts (for All Windows):
- Forward: Alt + Tab
- Backward: Alt + Shift + Tab
- Check "Include "Show Desktop" icon"
In Alternative:
- Visualization: Set "Flip Switch" as the visualization style.
- Shortcuts (for All Windows):
- Forward: Meta + Tab
- Backward: Meta + Shift + Tab
- Check "Include "Show Desktop" icon"
### Look and Feel <a name="look-and-feel"></a>
To install the splash and lock screen, move the folder:
```
$ ./Plasma/Look_and_Feel/authui7
```
To the following directory:
```
$ ~/.local/share/plasma/look-and-feel/
```
Create the directory in case it doesn't exist.
To apply the splash and lock screen, go to ```System Settings -> Appearance -> Global Theme```, click 'Choose what to apply...' and uncheck everything but 'Lock Screen' and 'Splash Screen', and then hit Apply.
### Sounds <a name="sounds"></a>
On Windows, system sound files are located in:
```
C:\Windows\Media
```
To install the sound files bundled with this project, move the two following directories:
```
$ ./Plasma/Sounds/media_windows
$ ./Plasma/Sounds/stereo_windows
```
to:
```
# /usr/share/sounds/
```
To apply them, go to ```System Settings -> Notifications```. There, click on the 'Configure'
button. Scroll down to ```Plasma Workspace```, and click on the 'Configure Events' button.
Set the sounds for the following notifications:
|Sound |File |
|-------------------------|-------------------------------------------------------------|
|Notification |```/usr/share/sounds/stereo_windows/dialog-information.ogg```|
|Warning Message |```/usr/share/sounds/stereo_windows/dialog-warning.ogg``` |
|Fatal Error, Catastrophe |```/usr/share/sounds/stereo_windows/dialog-error.ogg``` |
|Logout |```/usr/share/sounds/stereo_windows/desktop-logout.ogg``` |
|Question |```/usr/share/sounds/stereo_windows/dialog-question.ogg``` |
|Login |```/usr/share/sounds/stereo_windows/desktop-login.ogg``` |
|Warning |```/usr/share/sounds/stereo_windows/dialog-warning.ogg``` |
|Trash, Emptied |```/usr/share/sounds/media_windows/Windows Recycle.wav``` |
|Critical Message |```/usr/share/sounds/stereo_windows/dialog-warning.ogg``` |
|Information Message |```/usr/share/sounds/stereo_windows/dialog-information.ogg```|
|Beep |```/usr/share/sounds/stereo_windows/button-pressed.ogg``` |
Then, under ```Power Management```, click on the 'Configure Events' button. Set the sounds for the following
notifications:
|Sound |File |
|-----------------------------------|------------------------------------------------------------------|
|Battery Low, Peripheral Battery Low|```/usr/share/sounds/media_windows/Windows Battery Low.wav``` |
|Battery Critical |```/usr/share/sounds/media_windows/Windows Battery Critical.wav```|
### SDDM <a name="sddm"></a>
To install the SDDM theme, move the following folder:
```
$ ./Plasma/SDDM/sddm-theme-smod
```
to:
```
# /usr/share/sddm/themes/
```
Go to ```System Settings -> Login Screen (SDDM)``` and select SMOD. If the theme doesn't look right, click the 'Apply Plasma Settings...' button and apply the changes.
### Wine <a name="wine"></a>
To install the msstyle for Wine applications, run ```winecfg```, and under the 'Desktop Integration' tab, click 'Install theme' and choose the following file:
```
$ ./Wine/VistaVG Ultimate/vistavg_ultimate.msstyles
```
After that, go through the entire 'Item' list, and change the font everywhere to:
- Font: Segoe UI
- Size: 9pt
### Terminal <a name="terminal"></a>
To make your terminal emulator of choice look a bit more like the command prompt from Windows, do the following:
- Hide the menu bar
- Hide the tab bar if there's only one tab available
- Set the terminal font to Fixedsys (Excelsior 3.01), 11pt.
- Add the following line to `~/.bashrc`:
```printf 'Microsoft Windows [Version 6.1.7601] \nCopyright <c> 2009 Microsoft Corporation. All rights reserved.\n\n'```
The last part will print the provided string every time a new bash session is started.
### Firefox <a name="firefox"></a>
The project [Aero UserChrome](https://gitgud.io/souris/aero-userchrome) by [Souris-2d07](https://gitgud.io/souris) is recommended for use with AeroThemePlasma.
In order to correctly apply blur and reflections onto Firefox, it's required to install the Firefox Blur Region Fix KWin effect.
To install the effect, it's recommended to build it from source, as dumping the precompiled files doesn't seem to work on its own.
Go to the folder:
```
cd ./KWin/kwin_fixblur/
sh install.sh
```
After it has been compiled, move the following folder:
```
$ ./KWin/.ffblurfix
```
To the home directory.
You can log out or restart Plasma and KWin, then go to ```System settings -> Workspace Behavior -> Desktop Effects``` and enable the effect.
By default, this effect is enabled for Firefox. If you're using a different Firefox-based browser (Firefox ESR, Nightly, Floorp, Librewolf, etc.), then they need to be included in the config menu by adding their secondary window class name to the list.
For example, to apply the effect to both Firefox and Librewolf, the config's text box should contain the text:
```
firefox;librewolf
```
## Misc stuff
1. Run the install script for defaulttooltip
2. Move the ```Kvantum``` folder (the one inside the ```kvantum``` folder) to ```~/.config```
3. Unpack the sound archive and move the folders to ```~/.local/share/sounds```
4. Unpack the icon and cursor archives and move the folders to ```~/.local/share/icons```
5. Configure stuff in system settings and possibly elsewhere if needed (setting up cursors and SDDM stuff can be tricky sometimes)
6. You'll need to install at least Segoe UI, Segoe UI Bold, and Segoe UI Italic as system-wide fonts

View file

@ -1,2 +0,0 @@
[icon theme]
Inherits=aero-drop

Binary file not shown.

File diff suppressed because it is too large Load diff

Before

Width:  |  Height:  |  Size: 50 KiB

File diff suppressed because it is too large Load diff

Before

Width:  |  Height:  |  Size: 50 KiB

View file

@ -1,18 +0,0 @@
[buttons]
enable_tooltips=false
use_button_fade=true
use_button_fade_pulse=false
button_fade_total_duration=250
button_fade_step_duration=50
button_fade_pulse_wait_duration=0
button_fade_pulse_min_opacity=0
hover_cursor=0
[titlebars]
double_click_action=1
middle_click_action=3
no_scroll_shade=false
[decorations]
use_decoration_cropping=true
blur_type=2

View file

@ -1,18 +0,0 @@
[buttons]
enable_tooltips=false
use_button_fade=true
use_button_fade_pulse=false
button_fade_total_duration=250
button_fade_step_duration=50
button_fade_pulse_wait_duration=0
button_fade_pulse_min_opacity=0
hover_cursor=0
[titlebars]
double_click_action=1
middle_click_action=3
no_scroll_shade=false
[decorations]
use_decoration_cropping=true
blur_type=2

View file

@ -1,4 +0,0 @@
[Dolphin]
Timestamp=2023,9,18,17,2,14.358
Version=4
VisibleRoles=Details_text,Details_size,Details_modificationtime,Details_type,CustomizedDetails

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

View file

@ -1,486 +0,0 @@
[vrunner_settings]
active_title_left=#e61f8c
active_title_left_alpha=0
#active_title_left_alpha=0.30862899999999999
active_title_middle=#e61f8c
active_title_middle_alpha=0
active_title_right=#e61f8c
active_title_right_alpha=0
active_color_contrast=1
active_alpha_contrast=1
active_title_notch_position=1
active_curve_offset=-100
active_use_glow=false
active_glow_inner=#ffffff
active_glow_inner_alpha=0.69999999999999996
active_glow_radius=12.5
active_separator_line=#202865
active_separator_line_alpha=0
active_window_halo=#000000
active_window_halo_alpha=1
active_window_highlight=#ffffff
active_window_highlight_alpha=1
active_window_shadow=#ffffff
active_window_shadow_alpha=0.59999999999999998
active_contents_halo=#404040
active_contents_halo_alpha=0.90000000000000002
active_contents_highlight=#ffffff
active_contents_highlight_alpha=0.69999999999999996
active_contents_shadow=#ffffff
active_contents_shadow_alpha=0.59999999999999998
inactive_title_left=#e61f8c
#inactive_title_left_alpha=0.15431400000000001
inactive_title_left_alpha=0
inactive_title_middle=#e61f8c
inactive_title_middle_alpha=0
inactive_title_right=#e61f8c
inactive_title_right_alpha=0
inactive_color_contrast=1
inactive_alpha_contrast=1
inactive_title_notch_position=1
inactive_curve_offset=-100
inactive_use_glow=false
inactive_glow_inner=#ffffff
inactive_glow_inner_alpha=0.40000000000000002
inactive_glow_radius=15.300000000000001
inactive_separator_line=#000000
inactive_separator_line_alpha=0
inactive_window_halo=#000000
inactive_window_halo_alpha=1
inactive_window_highlight=#ffffff
inactive_window_highlight_alpha=0.7
inactive_window_shadow=#ffffff
inactive_window_shadow_alpha=0.5
inactive_contents_halo=#404040
inactive_contents_halo_alpha=0.90000000000000002
inactive_contents_highlight=#ffffff
inactive_contents_highlight_alpha=0.40000000000000002
inactive_contents_shadow=#ffffff
inactive_contents_shadow_alpha=0.40000000000000002
round_top_left=true
round_top_right=true
round_bottom_left=true
round_bottom_right=true
radius=6
[engine_version]
oxygen=0.1
vrunner=0.2
legacy=0.1
truglass=0.5
pixmap=0.2
[engine]
engine=vrunner
[buttons]
use_pixmap_buttons=true
use_button_glow=true
use_button_inactive_glow=true
active_button=#ebebeb
active_button_alpha=1
active_button_halo=#222222
active_button_halo_alpha=0.75
inactive_button=#9c9c9c
inactive_button_alpha=1
inactive_button_halo=#404040
inactive_button_halo_alpha=1
vertical_offset=1
horizontal_offset=-2
[shadow]
shadow_color=#000000
shadow_opacity=0.71999999999999997
shadow_radius=14.300000000000001
shadow_offset_x=0
shadow_offset_y=0
[extra_grab]
top=0
bottom=0
left=0
right=0
[borders]
top=9
bottom=8
left=8
right=8
[titlebar]
active_text=#000000
active_text_alpha=1
active_text_halo=#ffffff
active_text_halo_alpha=0
inactive_text=#000000
inactive_text_alpha=1
inactive_text_halo=#ffffff
inactive_text_halo_alpha=0
titlebar_font=Segoe UI Symbol 10
min_titlebar_height=21
title_object_layout=I(2)T::NXC:Normal Layout
[theme]
creator=nicu96
description=The Windows Aero Theme for Emerald
theme_version=1.0
suggested=turn beryl blur decoration on!
version=0.8.18
[legacy_settings]
active_outer=#000000
active_outer_alpha=0
active_inner=#000000
active_inner_alpha=0
active_title_outer=#000000
active_title_outer_alpha=0
active_title_inner=#000000
active_title_inner_alpha=0
active_separator_line=#000000
active_separator_line_alpha=0
active_window_halo=#000000
active_window_halo_alpha=0
active_window_highlight=#000000
active_window_highlight_alpha=0
active_window_shadow=#000000
active_window_shadow_alpha=0
active_contents_halo=#000000
active_contents_halo_alpha=0
active_contents_highlight=#000000
active_contents_highlight_alpha=0
active_contents_shadow=#000000
active_contents_shadow_alpha=0
inactive_outer=#000000
inactive_outer_alpha=0
inactive_inner=#000000
inactive_inner_alpha=0
inactive_title_outer=#000000
inactive_title_outer_alpha=0
inactive_title_inner=#000000
inactive_title_inner_alpha=0
inactive_separator_line=#000000
inactive_separator_line_alpha=0
inactive_window_halo=#000000
inactive_window_halo_alpha=0
inactive_window_highlight=#000000
inactive_window_highlight_alpha=0
inactive_window_shadow=#000000
inactive_window_shadow_alpha=0
inactive_contents_halo=#000000
inactive_contents_halo_alpha=0
inactive_contents_highlight=#000000
inactive_contents_highlight_alpha=0
inactive_contents_shadow=#000000
inactive_contents_shadow_alpha=0
round_top_left=false
round_top_right=false
round_bottom_left=false
round_bottom_right=false
radius=0
[line_settings]
active_border=#000000
active_border_alpha=0
active_title_bar=#000000
active_title_bar_alpha=0
inactive_border=#000000
inactive_border_alpha=0
inactive_title_bar=#000000
inactive_title_bar_alpha=0
[oxygen_settings]
active_base=#000000
active_base_alpha=0
active_glow=#000000
active_glow_alpha=0
active_sides=#000000
active_sides_alpha=0
active_separator_line=#000000
active_separator_line_alpha=0
active_window_halo=#000000
active_window_halo_alpha=0
active_window_highlight=#000000
active_window_highlight_alpha=0
active_window_shadow=#000000
active_window_shadow_alpha=0
active_contents_halo=#000000
active_contents_halo_alpha=0
active_contents_highlight=#000000
active_contents_highlight_alpha=0
active_contents_shadow=#000000
active_contents_shadow_alpha=0
inactive_base=#000000
inactive_base_alpha=0
inactive_glow=#000000
inactive_glow_alpha=0
inactive_sides=#000000
inactive_sides_alpha=0
inactive_separator_line=#000000
inactive_separator_line_alpha=0
inactive_window_halo=#000000
inactive_window_halo_alpha=0
inactive_window_highlight=#000000
inactive_window_highlight_alpha=0
inactive_window_shadow=#000000
inactive_window_shadow_alpha=0
inactive_contents_halo=#000000
inactive_contents_halo_alpha=0
inactive_contents_highlight=#000000
inactive_contents_highlight_alpha=0
inactive_contents_shadow=#000000
inactive_contents_shadow_alpha=0
round_top_left=false
round_top_right=false
round_bottom_left=false
round_bottom_right=false
radius=0
[pixmap_settings]
active_top_use_scaled=false
active_top_left_use_scaled=false
active_top_left_width=0
active_top_left_use_width=false
active_top_left_height=0
active_top_left_use_height=false
active_top_right_use_scaled=false
active_top_right_width=0
active_top_right_use_width=false
active_top_right_height=0
active_top_right_use_height=false
active_left_use_scaled=false
active_left_width=0
active_left_use_width=false
active_right_use_scaled=false
active_right_width=0
active_right_use_width=false
active_bottom_use_scaled=false
active_bottom_left_use_scaled=false
active_bottom_left_width=0
active_bottom_left_use_width=false
active_bottom_left_height=0
active_bottom_left_use_height=false
active_bottom_right_use_scaled=false
active_bottom_right_width=0
active_bottom_right_use_width=false
active_bottom_right_height=0
active_bottom_right_use_height=false
active_title_use_scaled=false
active_title_left_use_scaled=false
active_title_left_width=0
active_title_left_use_width=false
active_title_right_use_scaled=false
active_title_right_width=0
active_title_right_use_width=false
inactive_use_active_pixmaps=false
inactive_top_use_scaled=false
inactive_top_left_use_scaled=false
inactive_top_left_width=0
inactive_top_left_use_width=false
inactive_top_left_height=0
inactive_top_left_use_height=false
inactive_top_right_use_scaled=false
inactive_top_right_width=0
inactive_top_right_use_width=false
inactive_top_right_height=0
inactive_top_right_use_height=false
inactive_left_use_scaled=false
inactive_left_width=0
inactive_left_use_width=false
inactive_right_use_scaled=false
inactive_right_width=0
inactive_right_use_width=false
inactive_bottom_use_scaled=false
inactive_bottom_left_use_scaled=false
inactive_bottom_left_width=0
inactive_bottom_left_use_width=false
inactive_bottom_left_height=0
inactive_bottom_left_use_height=false
inactive_bottom_right_use_scaled=false
inactive_bottom_right_width=0
inactive_bottom_right_use_width=false
inactive_bottom_right_height=0
inactive_bottom_right_use_height=false
inactive_title_use_scaled=false
inactive_title_left_use_scaled=false
inactive_title_left_width=0
inactive_title_left_use_width=false
inactive_title_right_use_scaled=false
inactive_title_right_width=0
inactive_title_right_use_width=false
active_outer=#000000
active_outer_alpha=0
active_inner=#000000
active_inner_alpha=0
active_title_outer=#000000
active_title_outer_alpha=0
active_title_inner=#000000
active_title_inner_alpha=0
active_separator_line=#000000
active_separator_line_alpha=0
inactive_outer=#000000
inactive_outer_alpha=0
inactive_inner=#000000
inactive_inner_alpha=0
inactive_title_outer=#000000
inactive_title_outer_alpha=0
inactive_title_inner=#000000
inactive_title_inner_alpha=0
inactive_separator_line=#000000
inactive_separator_line_alpha=0
round_top_left=false
round_top_right=false
round_bottom_left=false
round_bottom_right=false
top_radius=0
bottom_radius=0
[truglass_settings]
active_base=#000000
active_base_alpha=0
active_upper_title_glow=#000000
active_upper_title_glow_alpha=0
active_upper_glow=#000000
active_upper_glow_alpha=0
active_lower_glow=#000000
active_lower_glow_alpha=0
active_middle_glow=#000000
active_middle_glow_alpha=0
active_outer_glow=#000000
active_outer_glow_alpha=0
active_separator_line=#000000
active_separator_line_alpha=0
active_window_halo=#000000
active_window_halo_alpha=0
active_window_highlight=#000000
active_window_highlight_alpha=0
active_window_shadow=#000000
active_window_shadow_alpha=0
active_contents_halo=#000000
active_contents_halo_alpha=0
active_contents_highlight=#000000
active_contents_highlight_alpha=0
active_contents_shadow=#000000
active_contents_shadow_alpha=0
inactive_base=#000000
inactive_base_alpha=0
inactive_upper_title_glow=#000000
inactive_upper_title_glow_alpha=0
inactive_upper_glow=#000000
inactive_upper_glow_alpha=0
inactive_lower_glow=#000000
inactive_lower_glow_alpha=0
inactive_middle_glow=#000000
inactive_middle_glow_alpha=0
inactive_outer_glow=#000000
inactive_outer_glow_alpha=0
inactive_separator_line=#000000
inactive_separator_line_alpha=0
inactive_window_halo=#000000
inactive_window_halo_alpha=0
inactive_window_highlight=#000000
inactive_window_highlight_alpha=0
inactive_window_shadow=#000000
inactive_window_shadow_alpha=0
inactive_contents_halo=#000000
inactive_contents_halo_alpha=0
inactive_contents_highlight=#000000
inactive_contents_highlight_alpha=0
inactive_contents_shadow=#000000
inactive_contents_shadow_alpha=0
round_top_left=false
round_top_right=false
round_bottom_left=false
round_bottom_right=false
radius=0
glow_height=0
[zootreeves_settings]
active_outer=#000000
active_outer_alpha=0
active_inner=#000000
active_inner_alpha=0
active_title_outer=#000000
active_title_outer_alpha=0
active_title_inner=#000000
active_title_inner_alpha=0
active_gradient_repeat_enabled=false
active_gradient_repeat_direction_vertical=false
active_gradient_repeat_direction_diagonal=false
active_gradient_repeat_height=0
active_separator_line=#000000
active_separator_line_alpha=0
active_window_frame_halo=#000000
active_window_frame_halo_alpha=0
active_window_highlight=#000000
active_window_highlight_alpha=0
active_window_shadow=#000000
active_window_shadow_alpha=0
active_contents_halo=#000000
active_contents_halo_alpha=0
active_contents_highlight=#000000
active_contents_highlight_alpha=0
active_contents_shadow=#000000
active_contents_shadow_alpha=0
inactive_outer=#000000
inactive_outer_alpha=0
inactive_inner=#000000
inactive_inner_alpha=0
inactive_title_outer=#000000
inactive_title_outer_alpha=0
inactive_title_inner=#000000
inactive_title_inner_alpha=0
inactive_gradient_repeat_enabled=false
inactive_gradient_repeat_direction_vertical=false
inactive_gradient_repeat_direction_diagonal=false
inactive_gradient_repeat_height=0
inactive_separator_line=#000000
inactive_separator_line_alpha=0
inactive_window_frame_halo=#000000
inactive_window_frame_halo_alpha=0
inactive_window_highlight=#000000
inactive_window_highlight_alpha=0
inactive_window_shadow=#000000
inactive_window_shadow_alpha=0
inactive_contents_halo=#000000
inactive_contents_halo_alpha=0
inactive_contents_highlight=#000000
inactive_contents_highlight_alpha=0
inactive_contents_shadow=#000000
inactive_contents_shadow_alpha=0
enable_maximised_colors=false
gradient_repeat_disabled_maximised=false
outer_maximised_color=#000000
outer_maximised_alpha=0
inner_maximised_color=#000000
inner_maximised_alpha=0
round_top_left=false
round_top_right=false
round_bottom_left=false
round_bottom_right=false
frame_radius=0
titlebar_radius=0
window_gap=0
show_border_maximised=false
show_border_minimised=false
minimised_border=0
enable_title_bar_dip=false
enable_bar_dip_button_part=false
title_bar_dip_title_width=80
title_bar_dip_button_width=10
title_bar_dip_radius=1
round_tri=false
enable_left_bar_dip=false
left_bar_dip_radius=0
enable_left_bar_dip_lower_part=false
left_bar_dip_offset=0
pixmaps_titlebarpart_enabled=false
pixmaps_titlebarpart_repeat_enabled=false
pixmaps_buttonpart_enabled=false
pixmaps_buttonpart_repeat_enabled=false
pixmaps_titlebar_enabled=false
pixmaps_titlebar_repeat_enabled=false
maps_titlebar_enabled=false
pixmaps_titlebar_repeat_enabled=false

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

View file

@ -1,129 +0,0 @@
[vrunner_settings]
active_title_left=#ce0f0f
active_title_left_alpha=0.32000000000000001
active_title_middle=#ce0f0f
active_title_middle_alpha=0.32000000000000001
active_title_right=#ce0f0f
active_title_right_alpha=0.31
active_color_contrast=1
active_alpha_contrast=1
active_title_notch_position=1
active_curve_offset=-100
active_use_glow=true
active_glow_inner=#ffffff
active_glow_inner_alpha=0.69999999999999996
active_glow_radius=15.300000000000001
active_separator_line=#202865
active_separator_line_alpha=0
active_window_halo=#000000
active_window_halo_alpha=1
active_window_highlight=#ffffff
active_window_highlight_alpha=0.69999999999999996
active_window_shadow=#ffffff
active_window_shadow_alpha=0.59999999999999998
active_contents_halo=#404040
active_contents_halo_alpha=0.90000000000000002
active_contents_highlight=#ffffff
active_contents_highlight_alpha=0.69999999999999996
active_contents_shadow=#ffffff
active_contents_shadow_alpha=0.59999999999999998
inactive_title_left=#ce0f0f
inactive_title_left_alpha=0.16
inactive_title_middle=#ce0f0f
inactive_title_middle_alpha=0.16
inactive_title_right=#ce0f0f
inactive_title_right_alpha=0.16
inactive_color_contrast=1
inactive_alpha_contrast=1
inactive_title_notch_position=1
inactive_curve_offset=-100
inactive_use_glow=true
inactive_glow_inner=#ffffff
inactive_glow_inner_alpha=0.40000000000000002
inactive_glow_radius=15.300000000000001
inactive_separator_line=#000000
inactive_separator_line_alpha=0
inactive_window_halo=#000000
inactive_window_halo_alpha=1
inactive_window_highlight=#ffffff
inactive_window_highlight_alpha=0.5
inactive_window_shadow=#ffffff
inactive_window_shadow_alpha=0.5
inactive_contents_halo=#404040
inactive_contents_halo_alpha=0.90000000000000002
inactive_contents_highlight=#ffffff
inactive_contents_highlight_alpha=0.40000000000000002
inactive_contents_shadow=#ffffff
inactive_contents_shadow_alpha=0.40000000000000002
round_top_left=true
round_top_right=true
round_bottom_left=true
round_bottom_right=true
radius=6
[engine_version]
oxygen=0.1
vrunner=0.2
legacy=0.1
truglass=0.5
pixmap=0.2
[engine]
engine=vrunner
[buttons]
use_pixmap_buttons=true
use_button_glow=true
use_button_inactive_glow=true
active_button=#ebebeb
active_button_alpha=1
active_button_halo=#222222
active_button_halo_alpha=0.75
inactive_button=#9c9c9c
inactive_button_alpha=1
inactive_button_halo=#404040
inactive_button_halo_alpha=1
vertical_offset=1
horizontal_offset=0
[shadow]
shadow_color=#000000
shadow_opacity=0.71999999999999997
shadow_radius=14.300000000000001
shadow_offset_x=0
shadow_offset_y=0
[extra_grab]
top=0
bottom=0
left=0
right=0
[borders]
top=9
bottom=8
left=8
right=8
[titlebar]
active_text=#000000
active_text_alpha=1
active_text_halo=#ffffff
active_text_halo_alpha=0
inactive_text=#000000
inactive_text_alpha=1
inactive_text_halo=#ffffff
inactive_text_halo_alpha=0
titlebar_font=Segoe UI Symbol 10
min_titlebar_height=21
title_object_layout=I(2)T::NXC:Normal Layout
[theme]
creator=nicu96
description=The Windows Aero Theme for Emerald
theme_version=1.0
suggested=turn beryl blur decoration on!
version=0.8.18

View file

@ -1,486 +0,0 @@
[vrunner_settings]
active_title_left=#e61f8c
active_title_left_alpha=0
#active_title_left_alpha=0.30862899999999999
active_title_middle=#e61f8c
active_title_middle_alpha=0
active_title_right=#e61f8c
active_title_right_alpha=0
active_color_contrast=1
active_alpha_contrast=1
active_title_notch_position=1
active_curve_offset=-100
active_use_glow=false
active_glow_inner=#ffffff
active_glow_inner_alpha=0.69999999999999996
active_glow_radius=12.5
active_separator_line=#202865
active_separator_line_alpha=0
active_window_halo=#000000
active_window_halo_alpha=1
active_window_highlight=#ffffff
active_window_highlight_alpha=0.69999999999999996
active_window_shadow=#ffffff
active_window_shadow_alpha=0.59999999999999998
active_contents_halo=#404040
active_contents_halo_alpha=0.90000000000000002
active_contents_highlight=#ffffff
active_contents_highlight_alpha=0.69999999999999996
active_contents_shadow=#ffffff
active_contents_shadow_alpha=0.59999999999999998
inactive_title_left=#e61f8c
#inactive_title_left_alpha=0.15431400000000001
inactive_title_left_alpha=0
inactive_title_middle=#e61f8c
inactive_title_middle_alpha=0
inactive_title_right=#e61f8c
inactive_title_right_alpha=0
inactive_color_contrast=1
inactive_alpha_contrast=1
inactive_title_notch_position=1
inactive_curve_offset=-100
inactive_use_glow=false
inactive_glow_inner=#ffffff
inactive_glow_inner_alpha=0.40000000000000002
inactive_glow_radius=15.300000000000001
inactive_separator_line=#000000
inactive_separator_line_alpha=0
inactive_window_halo=#000000
inactive_window_halo_alpha=1
inactive_window_highlight=#ffffff
inactive_window_highlight_alpha=0.5
inactive_window_shadow=#ffffff
inactive_window_shadow_alpha=0.5
inactive_contents_halo=#404040
inactive_contents_halo_alpha=0.90000000000000002
inactive_contents_highlight=#ffffff
inactive_contents_highlight_alpha=0.40000000000000002
inactive_contents_shadow=#ffffff
inactive_contents_shadow_alpha=0.40000000000000002
round_top_left=true
round_top_right=true
round_bottom_left=true
round_bottom_right=true
radius=6
[engine_version]
oxygen=0.1
vrunner=0.2
legacy=0.1
truglass=0.5
pixmap=0.2
[engine]
engine=vrunner
[buttons]
use_pixmap_buttons=true
use_button_glow=true
use_button_inactive_glow=true
active_button=#ebebeb
active_button_alpha=1
active_button_halo=#222222
active_button_halo_alpha=0.75
inactive_button=#9c9c9c
inactive_button_alpha=1
inactive_button_halo=#404040
inactive_button_halo_alpha=1
vertical_offset=1
horizontal_offset=-2
[shadow]
shadow_color=#000000
shadow_opacity=0.71999999999999997
shadow_radius=14.300000000000001
shadow_offset_x=0
shadow_offset_y=0
[extra_grab]
top=0
bottom=0
left=0
right=0
[borders]
top=7
bottom=8
left=8
right=8
[titlebar]
active_text=#000000
active_text_alpha=1
active_text_halo=#ffffff
active_text_halo_alpha=0
inactive_text=#000000
inactive_text_alpha=1
inactive_text_halo=#ffffff
inactive_text_halo_alpha=0
titlebar_font=Segoe UI Symbol 10
min_titlebar_height=21
title_object_layout=I(2)T::NXC:Normal Layout
[theme]
creator=nicu96
description=The Windows Aero Theme for Emerald
theme_version=1.0
suggested=turn beryl blur decoration on!
version=0.8.18
[legacy_settings]
active_outer=#000000
active_outer_alpha=0
active_inner=#000000
active_inner_alpha=0
active_title_outer=#000000
active_title_outer_alpha=0
active_title_inner=#000000
active_title_inner_alpha=0
active_separator_line=#000000
active_separator_line_alpha=0
active_window_halo=#000000
active_window_halo_alpha=0
active_window_highlight=#000000
active_window_highlight_alpha=0
active_window_shadow=#000000
active_window_shadow_alpha=0
active_contents_halo=#000000
active_contents_halo_alpha=0
active_contents_highlight=#000000
active_contents_highlight_alpha=0
active_contents_shadow=#000000
active_contents_shadow_alpha=0
inactive_outer=#000000
inactive_outer_alpha=0
inactive_inner=#000000
inactive_inner_alpha=0
inactive_title_outer=#000000
inactive_title_outer_alpha=0
inactive_title_inner=#000000
inactive_title_inner_alpha=0
inactive_separator_line=#000000
inactive_separator_line_alpha=0
inactive_window_halo=#000000
inactive_window_halo_alpha=0
inactive_window_highlight=#000000
inactive_window_highlight_alpha=0
inactive_window_shadow=#000000
inactive_window_shadow_alpha=0
inactive_contents_halo=#000000
inactive_contents_halo_alpha=0
inactive_contents_highlight=#000000
inactive_contents_highlight_alpha=0
inactive_contents_shadow=#000000
inactive_contents_shadow_alpha=0
round_top_left=false
round_top_right=false
round_bottom_left=false
round_bottom_right=false
radius=0
[line_settings]
active_border=#000000
active_border_alpha=0
active_title_bar=#000000
active_title_bar_alpha=0
inactive_border=#000000
inactive_border_alpha=0
inactive_title_bar=#000000
inactive_title_bar_alpha=0
[oxygen_settings]
active_base=#000000
active_base_alpha=0
active_glow=#000000
active_glow_alpha=0
active_sides=#000000
active_sides_alpha=0
active_separator_line=#000000
active_separator_line_alpha=0
active_window_halo=#000000
active_window_halo_alpha=0
active_window_highlight=#000000
active_window_highlight_alpha=0
active_window_shadow=#000000
active_window_shadow_alpha=0
active_contents_halo=#000000
active_contents_halo_alpha=0
active_contents_highlight=#000000
active_contents_highlight_alpha=0
active_contents_shadow=#000000
active_contents_shadow_alpha=0
inactive_base=#000000
inactive_base_alpha=0
inactive_glow=#000000
inactive_glow_alpha=0
inactive_sides=#000000
inactive_sides_alpha=0
inactive_separator_line=#000000
inactive_separator_line_alpha=0
inactive_window_halo=#000000
inactive_window_halo_alpha=0
inactive_window_highlight=#000000
inactive_window_highlight_alpha=0
inactive_window_shadow=#000000
inactive_window_shadow_alpha=0
inactive_contents_halo=#000000
inactive_contents_halo_alpha=0
inactive_contents_highlight=#000000
inactive_contents_highlight_alpha=0
inactive_contents_shadow=#000000
inactive_contents_shadow_alpha=0
round_top_left=false
round_top_right=false
round_bottom_left=false
round_bottom_right=false
radius=0
[pixmap_settings]
active_top_use_scaled=false
active_top_left_use_scaled=false
active_top_left_width=0
active_top_left_use_width=false
active_top_left_height=0
active_top_left_use_height=false
active_top_right_use_scaled=false
active_top_right_width=0
active_top_right_use_width=false
active_top_right_height=0
active_top_right_use_height=false
active_left_use_scaled=false
active_left_width=0
active_left_use_width=false
active_right_use_scaled=false
active_right_width=0
active_right_use_width=false
active_bottom_use_scaled=false
active_bottom_left_use_scaled=false
active_bottom_left_width=0
active_bottom_left_use_width=false
active_bottom_left_height=0
active_bottom_left_use_height=false
active_bottom_right_use_scaled=false
active_bottom_right_width=0
active_bottom_right_use_width=false
active_bottom_right_height=0
active_bottom_right_use_height=false
active_title_use_scaled=false
active_title_left_use_scaled=false
active_title_left_width=0
active_title_left_use_width=false
active_title_right_use_scaled=false
active_title_right_width=0
active_title_right_use_width=false
inactive_use_active_pixmaps=false
inactive_top_use_scaled=false
inactive_top_left_use_scaled=false
inactive_top_left_width=0
inactive_top_left_use_width=false
inactive_top_left_height=0
inactive_top_left_use_height=false
inactive_top_right_use_scaled=false
inactive_top_right_width=0
inactive_top_right_use_width=false
inactive_top_right_height=0
inactive_top_right_use_height=false
inactive_left_use_scaled=false
inactive_left_width=0
inactive_left_use_width=false
inactive_right_use_scaled=false
inactive_right_width=0
inactive_right_use_width=false
inactive_bottom_use_scaled=false
inactive_bottom_left_use_scaled=false
inactive_bottom_left_width=0
inactive_bottom_left_use_width=false
inactive_bottom_left_height=0
inactive_bottom_left_use_height=false
inactive_bottom_right_use_scaled=false
inactive_bottom_right_width=0
inactive_bottom_right_use_width=false
inactive_bottom_right_height=0
inactive_bottom_right_use_height=false
inactive_title_use_scaled=false
inactive_title_left_use_scaled=false
inactive_title_left_width=0
inactive_title_left_use_width=false
inactive_title_right_use_scaled=false
inactive_title_right_width=0
inactive_title_right_use_width=false
active_outer=#000000
active_outer_alpha=0
active_inner=#000000
active_inner_alpha=0
active_title_outer=#000000
active_title_outer_alpha=0
active_title_inner=#000000
active_title_inner_alpha=0
active_separator_line=#000000
active_separator_line_alpha=0
inactive_outer=#000000
inactive_outer_alpha=0
inactive_inner=#000000
inactive_inner_alpha=0
inactive_title_outer=#000000
inactive_title_outer_alpha=0
inactive_title_inner=#000000
inactive_title_inner_alpha=0
inactive_separator_line=#000000
inactive_separator_line_alpha=0
round_top_left=false
round_top_right=false
round_bottom_left=false
round_bottom_right=false
top_radius=0
bottom_radius=0
[truglass_settings]
active_base=#000000
active_base_alpha=0
active_upper_title_glow=#000000
active_upper_title_glow_alpha=0
active_upper_glow=#000000
active_upper_glow_alpha=0
active_lower_glow=#000000
active_lower_glow_alpha=0
active_middle_glow=#000000
active_middle_glow_alpha=0
active_outer_glow=#000000
active_outer_glow_alpha=0
active_separator_line=#000000
active_separator_line_alpha=0
active_window_halo=#000000
active_window_halo_alpha=0
active_window_highlight=#000000
active_window_highlight_alpha=0
active_window_shadow=#000000
active_window_shadow_alpha=0
active_contents_halo=#000000
active_contents_halo_alpha=0
active_contents_highlight=#000000
active_contents_highlight_alpha=0
active_contents_shadow=#000000
active_contents_shadow_alpha=0
inactive_base=#000000
inactive_base_alpha=0
inactive_upper_title_glow=#000000
inactive_upper_title_glow_alpha=0
inactive_upper_glow=#000000
inactive_upper_glow_alpha=0
inactive_lower_glow=#000000
inactive_lower_glow_alpha=0
inactive_middle_glow=#000000
inactive_middle_glow_alpha=0
inactive_outer_glow=#000000
inactive_outer_glow_alpha=0
inactive_separator_line=#000000
inactive_separator_line_alpha=0
inactive_window_halo=#000000
inactive_window_halo_alpha=0
inactive_window_highlight=#000000
inactive_window_highlight_alpha=0
inactive_window_shadow=#000000
inactive_window_shadow_alpha=0
inactive_contents_halo=#000000
inactive_contents_halo_alpha=0
inactive_contents_highlight=#000000
inactive_contents_highlight_alpha=0
inactive_contents_shadow=#000000
inactive_contents_shadow_alpha=0
round_top_left=false
round_top_right=false
round_bottom_left=false
round_bottom_right=false
radius=0
glow_height=0
[zootreeves_settings]
active_outer=#000000
active_outer_alpha=0
active_inner=#000000
active_inner_alpha=0
active_title_outer=#000000
active_title_outer_alpha=0
active_title_inner=#000000
active_title_inner_alpha=0
active_gradient_repeat_enabled=false
active_gradient_repeat_direction_vertical=false
active_gradient_repeat_direction_diagonal=false
active_gradient_repeat_height=0
active_separator_line=#000000
active_separator_line_alpha=0
active_window_frame_halo=#000000
active_window_frame_halo_alpha=0
active_window_highlight=#000000
active_window_highlight_alpha=0
active_window_shadow=#000000
active_window_shadow_alpha=0
active_contents_halo=#000000
active_contents_halo_alpha=0
active_contents_highlight=#000000
active_contents_highlight_alpha=0
active_contents_shadow=#000000
active_contents_shadow_alpha=0
inactive_outer=#000000
inactive_outer_alpha=0
inactive_inner=#000000
inactive_inner_alpha=0
inactive_title_outer=#000000
inactive_title_outer_alpha=0
inactive_title_inner=#000000
inactive_title_inner_alpha=0
inactive_gradient_repeat_enabled=false
inactive_gradient_repeat_direction_vertical=false
inactive_gradient_repeat_direction_diagonal=false
inactive_gradient_repeat_height=0
inactive_separator_line=#000000
inactive_separator_line_alpha=0
inactive_window_frame_halo=#000000
inactive_window_frame_halo_alpha=0
inactive_window_highlight=#000000
inactive_window_highlight_alpha=0
inactive_window_shadow=#000000
inactive_window_shadow_alpha=0
inactive_contents_halo=#000000
inactive_contents_halo_alpha=0
inactive_contents_highlight=#000000
inactive_contents_highlight_alpha=0
inactive_contents_shadow=#000000
inactive_contents_shadow_alpha=0
enable_maximised_colors=false
gradient_repeat_disabled_maximised=false
outer_maximised_color=#000000
outer_maximised_alpha=0
inner_maximised_color=#000000
inner_maximised_alpha=0
round_top_left=false
round_top_right=false
round_bottom_left=false
round_bottom_right=false
frame_radius=0
titlebar_radius=0
window_gap=0
show_border_maximised=false
show_border_minimised=false
minimised_border=0
enable_title_bar_dip=false
enable_bar_dip_button_part=false
title_bar_dip_title_width=80
title_bar_dip_button_width=10
title_bar_dip_radius=1
round_tri=false
enable_left_bar_dip=false
left_bar_dip_radius=0
enable_left_bar_dip_lower_part=false
left_bar_dip_offset=0
pixmaps_titlebarpart_enabled=false
pixmaps_titlebarpart_repeat_enabled=false
pixmaps_buttonpart_enabled=false
pixmaps_buttonpart_repeat_enabled=false
pixmaps_titlebar_enabled=false
pixmaps_titlebar_repeat_enabled=false
maps_titlebar_enabled=false
pixmaps_titlebar_repeat_enabled=false

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

View file

@ -1,12 +0,0 @@
Smaragd KWin Decoration:
Christoph Feck <christoph@maxiom.de>
Emerald Core:
David Reveman <davidr@novell.com>
Quinn Storm <livinglatexkali@gmail.com>
Additional Engines:
Patrick Niklaus <patrick.niklaus@googlemail.com>
Alain <big_al326@hotmail.com>
Varun <varunratnakar@gmail.com>
Ben Reeves <john@reeves160.freeserve.co.uk>

View file

@ -1,30 +0,0 @@
project (smaragd)
cmake_minimum_required (VERSION 2.8.12 FATAL_ERROR)
find_package (ECM 1.0.0 REQUIRED NO_MODULE)
set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH}
${ECM_MODULE_PATH}
${ECM_KDE_MODULE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules
)
find_package (Qt5 REQUIRED CONFIG COMPONENTS Core Gui Widgets)
find_package (KF5 REQUIRED COMPONENTS Config CoreAddons I18n WidgetsAddons)
find_package (KDecoration2 REQUIRED)
find_package (GLIB2 REQUIRED)
find_package (Cairo REQUIRED)
include (KDEInstallDirs)
include (KDECMakeSettings)
include (KDECompilerSettings)
include_directories (
${CMAKE_BINARY_DIR}
${CAIRO_INCLUDE_DIRS}
${GLIB2_INCLUDE_DIR}
)
add_subdirectory (src)

View file

@ -1,15 +0,0 @@
Requirements:
cmake
kdebase-workspace
cairo
glib2
To Install:
cd smaragd
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` ..
make
sudo make install

View file

@ -1 +0,0 @@
The .emerald file has to be extracted to $HOME/.emerald/theme for this to work.

View file

@ -1,14 +0,0 @@
Smaragd
Smaragd is a themable window decoration engine for KDE's KWin window manager.
It uses the original Emerald engines to render the decorations to support all
current Emerald themes.
Read INSTALL for installation and NOTES for usage hints.
See individual files for Copyright information.
To install the theme, you should put the kwin_smaragd.so file into the following directory
(This works on Arch Linux, I haven't tested on other distros)
/usr/lib/qt/plugins/org.kde.kdecoration2/kwin_smaragd.so

File diff suppressed because it is too large Load diff

View file

@ -1,72 +0,0 @@
set(CMAKE_C_COMPILER "/usr/bin/cc")
set(CMAKE_C_COMPILER_ARG1 "")
set(CMAKE_C_COMPILER_ID "GNU")
set(CMAKE_C_COMPILER_VERSION "12.1.1")
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")
set(CMAKE_RANLIB "/usr/bin/ranlib")
set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib")
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 "")
if(CMAKE_C_SIZEOF_DATA_PTR)
set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
endif()
if(CMAKE_C_COMPILER_ABI)
set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
endif()
if(CMAKE_C_LIBRARY_ARCHITECTURE)
set(CMAKE_LIBRARY_ARCHITECTURE "")
endif()
set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
endif()
set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include;/usr/local/include;/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed;/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-pc-linux-gnu/12.1.1;/usr/lib;/lib")
set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")

View file

@ -1,83 +0,0 @@
set(CMAKE_CXX_COMPILER "/usr/bin/c++")
set(CMAKE_CXX_COMPILER_ARG1 "")
set(CMAKE_CXX_COMPILER_ID "GNU")
set(CMAKE_CXX_COMPILER_VERSION "12.1.1")
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")
set(CMAKE_RANLIB "/usr/bin/ranlib")
set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib")
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 "")
if(CMAKE_CXX_SIZEOF_DATA_PTR)
set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
endif()
if(CMAKE_CXX_COMPILER_ABI)
set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
endif()
if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
set(CMAKE_LIBRARY_ARCHITECTURE "")
endif()
set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
endif()
set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/12.1.1;/usr/include/c++/12.1.1/x86_64-pc-linux-gnu;/usr/include/c++/12.1.1/backward;/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include;/usr/local/include;/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed;/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-pc-linux-gnu/12.1.1;/usr/lib;/lib")
set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")

View file

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

View file

@ -1,828 +0,0 @@
#ifdef __cplusplus
# error "A C++ compiler has been selected for C."
#endif
#if defined(__18CXX)
# define ID_VOID_MAIN
#endif
#if defined(__CLASSIC_C__)
/* cv-qualifiers did not exist in K&R C */
# define const
# define volatile
#endif
#if !defined(__has_include)
/* If the compiler does not have __has_include, pretend the answer is
always no. */
# define __has_include(x) 0
#endif
/* Version number components: V=Version, R=Revision, P=Patch
Version date components: YYYY=Year, MM=Month, DD=Day */
#if defined(__INTEL_COMPILER) || defined(__ICC)
# define COMPILER_ID "Intel"
# if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
# endif
# if defined(__GNUC__)
# define SIMULATE_ID "GNU"
# endif
/* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
except that a few beta releases use the old format with V=2021. */
# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
# if defined(__INTEL_COMPILER_UPDATE)
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
# else
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
# endif
# else
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER)
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE)
/* The third version component from --version is an update index,
but no macro is provided for it. */
# define COMPILER_VERSION_PATCH DEC(0)
# endif
# if defined(__INTEL_COMPILER_BUILD_DATE)
/* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
# endif
# if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
# endif
# if defined(__GNUC__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
# elif defined(__GNUG__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
# endif
# if defined(__GNUC_MINOR__)
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
# endif
# if defined(__GNUC_PATCHLEVEL__)
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)
# define COMPILER_ID "IntelLLVM"
#if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
#endif
#if defined(__GNUC__)
# define SIMULATE_ID "GNU"
#endif
/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
* later. Look for 6 digit vs. 8 digit version number to decide encoding.
* VVVV is no smaller than the current year when a version is released.
*/
#if __INTEL_LLVM_COMPILER < 1000000L
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100)
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10)
#else
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000)
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100)
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100)
#endif
#if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
#endif
#if defined(__GNUC__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
#elif defined(__GNUG__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
#endif
#if defined(__GNUC_MINOR__)
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
#endif
#if defined(__GNUC_PATCHLEVEL__)
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
#endif
#elif defined(__PATHCC__)
# define COMPILER_ID "PathScale"
# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
# if defined(__PATHCC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
# endif
#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
# define COMPILER_ID "Embarcadero"
# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
#elif defined(__BORLANDC__)
# define COMPILER_ID "Borland"
/* __BORLANDC__ = 0xVRR */
# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
# define COMPILER_ID "Watcom"
/* __WATCOMC__ = VVRR */
# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
# if (__WATCOMC__ % 10) > 0
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
# endif
#elif defined(__WATCOMC__)
# define COMPILER_ID "OpenWatcom"
/* __WATCOMC__ = VVRP + 1100 */
# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
# if (__WATCOMC__ % 10) > 0
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
# endif
#elif defined(__SUNPRO_C)
# define COMPILER_ID "SunPro"
# if __SUNPRO_C >= 0x5100
/* __SUNPRO_C = 0xVRRP */
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12)
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF)
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
# else
/* __SUNPRO_CC = 0xVRP */
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8)
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF)
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
# endif
#elif defined(__HP_cc)
# define COMPILER_ID "HP"
/* __HP_cc = VVRRPP */
# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000)
# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100)
# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100)
#elif defined(__DECC)
# define COMPILER_ID "Compaq"
/* __DECC_VER = VVRRTPPPP */
# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000)
# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100)
# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000)
#elif defined(__IBMC__) && defined(__COMPILER_VER__)
# define COMPILER_ID "zOS"
/* __IBMC__ = VRP */
# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
#elif defined(__open_xl__) && defined(__clang__)
# define COMPILER_ID "IBMClang"
# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__)
# define COMPILER_VERSION_MINOR DEC(__open_xl_release__)
# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__)
# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__)
#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(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__))
# define COMPILER_ID "LCC"
# define COMPILER_VERSION_MAJOR DEC(1)
# if defined(__LCC__)
# define COMPILER_VERSION_MINOR DEC(__LCC__- 100)
# endif
# if defined(__LCC_MINOR__)
# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__)
# endif
# if defined(__GNUC__) && defined(__GNUC_MINOR__)
# define SIMULATE_ID "GNU"
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
# if defined(__GNUC_PATCHLEVEL__)
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
# endif
#elif defined(__GNUC__)
# define COMPILER_ID "GNU"
# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
# if defined(__GNUC_MINOR__)
# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
# endif
# if defined(__GNUC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
#elif defined(_MSC_VER)
# define COMPILER_ID "MSVC"
/* _MSC_VER = VVRR */
# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
# if defined(_MSC_FULL_VER)
# if _MSC_VER >= 1400
/* _MSC_FULL_VER = VVRRPPPPP */
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
# else
/* _MSC_FULL_VER = VVRRPPPP */
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
# endif
# endif
# if defined(_MSC_BUILD)
# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
# endif
#elif defined(__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["
#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \
defined(__TI_COMPILER_VERSION__)) && \
!defined(__STRICT_ANSI__)
"ON"
#else
"OFF"
#endif
"]";
/*--------------------------------------------------------------------------*/
#ifdef ID_VOID_MAIN
void main() {}
#else
# if defined(__CLASSIC_C__)
int main(argc, argv) int argc; char *argv[];
# else
int main(int argc, char* argv[])
# endif
{
int require = 0;
require += info_compiler[argc];
require += info_platform[argc];
require += info_arch[argc];
#ifdef COMPILER_VERSION_MAJOR
require += info_version[argc];
#endif
#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

View file

@ -1,816 +0,0 @@
/* 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(__open_xl__) && defined(__clang__)
# define COMPILER_ID "IBMClang"
# define COMPILER_VERSION_MAJOR DEC(__open_xl_version__)
# define COMPILER_VERSION_MINOR DEC(__open_xl_release__)
# define COMPILER_VERSION_PATCH DEC(__open_xl_modification__)
# define COMPILER_VERSION_TWEAK DEC(__open_xl_ptf_fix_level__)
#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(__LCC__) && (defined(__GNUC__) || defined(__GNUG__) || defined(__MCST__))
# define COMPILER_ID "LCC"
# define COMPILER_VERSION_MAJOR DEC(1)
# if defined(__LCC__)
# define COMPILER_VERSION_MINOR DEC(__LCC__- 100)
# endif
# if defined(__LCC_MINOR__)
# define COMPILER_VERSION_PATCH DEC(__LCC_MINOR__)
# endif
# if defined(__GNUC__) && defined(__GNUC_MINOR__)
# define SIMULATE_ID "GNU"
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
# if defined(__GNUC_PATCHLEVEL__)
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
# endif
#elif defined(__GNUC__) || defined(__GNUG__)
# define COMPILER_ID "GNU"
# if defined(__GNUC__)
# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
# else
# define COMPILER_VERSION_MAJOR DEC(__GNUG__)
# endif
# if defined(__GNUC_MINOR__)
# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
# endif
# if defined(__GNUC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
#elif defined(_MSC_VER)
# define COMPILER_ID "MSVC"
/* _MSC_VER = VVRR */
# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
# if defined(_MSC_FULL_VER)
# if _MSC_VER >= 1400
/* _MSC_FULL_VER = VVRRPPPPP */
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
# else
/* _MSC_FULL_VER = VVRRPPPP */
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
# endif
# endif
# if defined(_MSC_BUILD)
# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
# endif
#elif defined(__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["
#if (defined(__clang__) || defined(__GNUC__) || defined(__xlC__) || \
defined(__TI_COMPILER_VERSION__)) && \
!defined(__STRICT_ANSI__)
"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;
}

View file

@ -1,16 +0,0 @@
# CMAKE generated file: DO NOT EDIT!
# Generated by "Unix Makefiles" Generator, CMake Version 3.23
# Relative path conversion top directories.
set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1")
set(CMAKE_RELATIVE_PATH_TOP_BINARY "/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build")
# Force unix paths in dependencies.
set(CMAKE_FORCE_UNIX_PATHS 1)
# The C and CXX include file regular expressions for this directory.
set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$")
set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$")
set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN})
set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN})

View file

@ -1,557 +0,0 @@
The system is: Linux - 5.15.59-2-lts - 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 "/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/3.23.3/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 "/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/3.23.3/CompilerIdCXX/a.out"
Detecting C compiler ABI info compiled with the following output:
Change Dir: /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_1de8a/fast && /usr/bin/make -f CMakeFiles/cmTC_1de8a.dir/build.make CMakeFiles/cmTC_1de8a.dir/build
make[1]: Entering directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o
/usr/bin/cc -v -o CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake/Modules/CMakeCCompilerABI.c
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 12.1.1 20220730 (GCC)
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_1de8a.dir/'
/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/cc1 -quiet -v /usr/share/cmake/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_1de8a.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -o /tmp/ccNId0xV.s
GNU C17 (GCC) version 12.1.1 20220730 (x86_64-pc-linux-gnu)
compiled by GNU C version 12.1.1 20220730, GMP version 6.2.1, MPFR version 4.1.0-p13, MPC version 1.2.1, isl version isl-0.25-GMP
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../x86_64-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include
/usr/local/include
/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed
/usr/include
End of search list.
GNU C17 (GCC) version 12.1.1 20220730 (x86_64-pc-linux-gnu)
compiled by GNU C version 12.1.1 20220730, GMP version 6.2.1, MPFR version 4.1.0-p13, MPC version 1.2.1, isl version isl-0.25-GMP
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 6dadb53059c00a18874576e950e4a0dc
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_1de8a.dir/'
as -v --64 -o CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o /tmp/ccNId0xV.s
GNU assembler version 2.39 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.39
COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.'
Linking C executable cmTC_1de8a
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1de8a.dir/link.txt --verbose=1
/usr/bin/cc -v -rdynamic CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o -o cmTC_1de8a
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 12.1.1 20220730 (GCC)
COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_1de8a' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_1de8a.'
/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/collect2 -plugin /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/lto-wrapper -plugin-opt=-fresolution=/tmp/ccB0FEMD.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 --hash-style=gnu -m elf_x86_64 -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_1de8a /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1 -L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../.. CMakeFiles/cmTC_1de8a.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-pc-linux-gnu/12.1.1/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crtn.o
COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_1de8a' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_1de8a.'
make[1]: Leaving directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
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-pc-linux-gnu/12.1.1/include]
add: [/usr/local/include]
add: [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed]
add: [/usr/include]
end of search list found
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include]
collapse include dir [/usr/local/include] ==> [/usr/local/include]
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed]
collapse include dir [/usr/include] ==> [/usr/include]
implicit include dirs: [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include;/usr/local/include;/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed;/usr/include]
Parsed C implicit link information from above output:
link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
ignore line: [Change Dir: /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp]
ignore line: []
ignore line: [Run Build Command(s):/usr/bin/make -f Makefile cmTC_1de8a/fast && /usr/bin/make -f CMakeFiles/cmTC_1de8a.dir/build.make CMakeFiles/cmTC_1de8a.dir/build]
ignore line: [make[1]: Entering directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp']
ignore line: [Building C object CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o]
ignore line: [/usr/bin/cc -v -o CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake/Modules/CMakeCCompilerABI.c]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/cc]
ignore line: [Target: x86_64-pc-linux-gnu]
ignore line: [Configured with: /build/gcc/src/gcc/configure --enable-languages=c c++ ada fortran go lto objc obj-c++ d --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 12.1.1 20220730 (GCC) ]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_1de8a.dir/']
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/cc1 -quiet -v /usr/share/cmake/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_1de8a.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -o /tmp/ccNId0xV.s]
ignore line: [GNU C17 (GCC) version 12.1.1 20220730 (x86_64-pc-linux-gnu)]
ignore line: [ compiled by GNU C version 12.1.1 20220730 GMP version 6.2.1 MPFR version 4.1.0-p13 MPC version 1.2.1 isl version isl-0.25-GMP]
ignore line: []
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../x86_64-pc-linux-gnu/include"]
ignore line: [#include "..." search starts here:]
ignore line: [#include <...> search starts here:]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include]
ignore line: [ /usr/local/include]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed]
ignore line: [ /usr/include]
ignore line: [End of search list.]
ignore line: [GNU C17 (GCC) version 12.1.1 20220730 (x86_64-pc-linux-gnu)]
ignore line: [ compiled by GNU C version 12.1.1 20220730 GMP version 6.2.1 MPFR version 4.1.0-p13 MPC version 1.2.1 isl version isl-0.25-GMP]
ignore line: []
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [Compiler executable checksum: 6dadb53059c00a18874576e950e4a0dc]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_1de8a.dir/']
ignore line: [ as -v --64 -o CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o /tmp/ccNId0xV.s]
ignore line: [GNU assembler version 2.39 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.39]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.']
ignore line: [Linking C executable cmTC_1de8a]
ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1de8a.dir/link.txt --verbose=1]
ignore line: [/usr/bin/cc -v -rdynamic CMakeFiles/cmTC_1de8a.dir/CMakeCCompilerABI.c.o -o cmTC_1de8a ]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/cc]
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/lto-wrapper]
ignore line: [Target: x86_64-pc-linux-gnu]
ignore line: [Configured with: /build/gcc/src/gcc/configure --enable-languages=c c++ ada fortran go lto objc obj-c++ d --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 12.1.1 20220730 (GCC) ]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_1de8a' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_1de8a.']
link line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/collect2 -plugin /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/lto-wrapper -plugin-opt=-fresolution=/tmp/ccB0FEMD.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 --hash-style=gnu -m elf_x86_64 -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_1de8a /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1 -L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../.. CMakeFiles/cmTC_1de8a.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-pc-linux-gnu/12.1.1/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crtn.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/collect2] ==> ignore
arg [-plugin] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/liblto_plugin.so] ==> ignore
arg [-plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/lto-wrapper] ==> ignore
arg [-plugin-opt=-fresolution=/tmp/ccB0FEMD.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 [--hash-style=gnu] ==> ignore
arg [-m] ==> ignore
arg [elf_x86_64] ==> ignore
arg [-export-dynamic] ==> ignore
arg [-dynamic-linker] ==> ignore
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
arg [-pie] ==> ignore
arg [-o] ==> ignore
arg [cmTC_1de8a] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/Scrt1.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crti.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crti.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtbeginS.o]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib]
arg [-L/lib/../lib] ==> dir [/lib/../lib]
arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../..] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../..]
arg [CMakeFiles/cmTC_1de8a.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-pc-linux-gnu/12.1.1/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtendS.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crtn.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crtn.o]
collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/Scrt1.o] ==> [/usr/lib/Scrt1.o]
collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crti.o] ==> [/usr/lib/crti.o]
collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crtn.o] ==> [/usr/lib/crtn.o]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib] ==> [/usr/lib]
collapse library dir [/lib/../lib] ==> [/lib]
collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../..] ==> [/usr/lib]
implicit libs: [gcc;gcc_s;c;gcc;gcc_s]
implicit objs: [/usr/lib/Scrt1.o;/usr/lib/crti.o;/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtbeginS.o;/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtendS.o;/usr/lib/crtn.o]
implicit dirs: [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1;/usr/lib;/lib]
implicit fwks: []
Detecting CXX compiler ABI info compiled with the following output:
Change Dir: /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_70f93/fast && /usr/bin/make -f CMakeFiles/cmTC_70f93.dir/build.make CMakeFiles/cmTC_70f93.dir/build
make[1]: Entering directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Building CXX object CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o
/usr/bin/c++ -v -o CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake/Modules/CMakeCXXCompilerABI.cpp
Using built-in specs.
COLLECT_GCC=/usr/bin/c++
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 12.1.1 20220730 (GCC)
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_70f93.dir/'
/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/cc1plus -quiet -v -D_GNU_SOURCE /usr/share/cmake/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_70f93.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -o /tmp/cc2kfjbT.s
GNU C++17 (GCC) version 12.1.1 20220730 (x86_64-pc-linux-gnu)
compiled by GNU C version 12.1.1 20220730, GMP version 6.2.1, MPFR version 4.1.0-p13, MPC version 1.2.1, isl version isl-0.25-GMP
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../x86_64-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../include/c++/12.1.1
/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../include/c++/12.1.1/x86_64-pc-linux-gnu
/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../include/c++/12.1.1/backward
/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include
/usr/local/include
/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed
/usr/include
End of search list.
GNU C++17 (GCC) version 12.1.1 20220730 (x86_64-pc-linux-gnu)
compiled by GNU C version 12.1.1 20220730, GMP version 6.2.1, MPFR version 4.1.0-p13, MPC version 1.2.1, isl version isl-0.25-GMP
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 8630496add660d955c9a9ad9553de44a
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_70f93.dir/'
as -v --64 -o CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o /tmp/cc2kfjbT.s
GNU assembler version 2.39 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.39
COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.'
Linking CXX executable cmTC_70f93
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_70f93.dir/link.txt --verbose=1
/usr/bin/c++ -v -rdynamic CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_70f93
Using built-in specs.
COLLECT_GCC=/usr/bin/c++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 12.1.1 20220730 (GCC)
COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_70f93' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_70f93.'
/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/collect2 -plugin /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/lto-wrapper -plugin-opt=-fresolution=/tmp/ccfqVoB1.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 --hash-style=gnu -m elf_x86_64 -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_70f93 /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1 -L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../.. CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crtn.o
COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_70f93' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_70f93.'
make[1]: Leaving directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Parsed CXX 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-pc-linux-gnu/12.1.1/../../../../include/c++/12.1.1]
add: [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../include/c++/12.1.1/x86_64-pc-linux-gnu]
add: [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../include/c++/12.1.1/backward]
add: [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include]
add: [/usr/local/include]
add: [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed]
add: [/usr/include]
end of search list found
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../include/c++/12.1.1] ==> [/usr/include/c++/12.1.1]
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../include/c++/12.1.1/x86_64-pc-linux-gnu] ==> [/usr/include/c++/12.1.1/x86_64-pc-linux-gnu]
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../include/c++/12.1.1/backward] ==> [/usr/include/c++/12.1.1/backward]
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include]
collapse include dir [/usr/local/include] ==> [/usr/local/include]
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed]
collapse include dir [/usr/include] ==> [/usr/include]
implicit include dirs: [/usr/include/c++/12.1.1;/usr/include/c++/12.1.1/x86_64-pc-linux-gnu;/usr/include/c++/12.1.1/backward;/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include;/usr/local/include;/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed;/usr/include]
Parsed CXX implicit link information from above output:
link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
ignore line: [Change Dir: /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp]
ignore line: []
ignore line: [Run Build Command(s):/usr/bin/make -f Makefile cmTC_70f93/fast && /usr/bin/make -f CMakeFiles/cmTC_70f93.dir/build.make CMakeFiles/cmTC_70f93.dir/build]
ignore line: [make[1]: Entering directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp']
ignore line: [Building CXX object CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o]
ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake/Modules/CMakeCXXCompilerABI.cpp]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/c++]
ignore line: [Target: x86_64-pc-linux-gnu]
ignore line: [Configured with: /build/gcc/src/gcc/configure --enable-languages=c c++ ada fortran go lto objc obj-c++ d --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 12.1.1 20220730 (GCC) ]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_70f93.dir/']
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/cc1plus -quiet -v -D_GNU_SOURCE /usr/share/cmake/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_70f93.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -o /tmp/cc2kfjbT.s]
ignore line: [GNU C++17 (GCC) version 12.1.1 20220730 (x86_64-pc-linux-gnu)]
ignore line: [ compiled by GNU C version 12.1.1 20220730 GMP version 6.2.1 MPFR version 4.1.0-p13 MPC version 1.2.1 isl version isl-0.25-GMP]
ignore line: []
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../x86_64-pc-linux-gnu/include"]
ignore line: [#include "..." search starts here:]
ignore line: [#include <...> search starts here:]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../include/c++/12.1.1]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../include/c++/12.1.1/x86_64-pc-linux-gnu]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../include/c++/12.1.1/backward]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include]
ignore line: [ /usr/local/include]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/include-fixed]
ignore line: [ /usr/include]
ignore line: [End of search list.]
ignore line: [GNU C++17 (GCC) version 12.1.1 20220730 (x86_64-pc-linux-gnu)]
ignore line: [ compiled by GNU C version 12.1.1 20220730 GMP version 6.2.1 MPFR version 4.1.0-p13 MPC version 1.2.1 isl version isl-0.25-GMP]
ignore line: []
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [Compiler executable checksum: 8630496add660d955c9a9ad9553de44a]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_70f93.dir/']
ignore line: [ as -v --64 -o CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o /tmp/cc2kfjbT.s]
ignore line: [GNU assembler version 2.39 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.39]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.']
ignore line: [Linking CXX executable cmTC_70f93]
ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_70f93.dir/link.txt --verbose=1]
ignore line: [/usr/bin/c++ -v -rdynamic CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_70f93 ]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/c++]
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/lto-wrapper]
ignore line: [Target: x86_64-pc-linux-gnu]
ignore line: [Configured with: /build/gcc/src/gcc/configure --enable-languages=c c++ ada fortran go lto objc obj-c++ d --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 12.1.1 20220730 (GCC) ]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_70f93' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_70f93.']
link line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/collect2 -plugin /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/lto-wrapper -plugin-opt=-fresolution=/tmp/ccfqVoB1.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 --hash-style=gnu -m elf_x86_64 -export-dynamic -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_70f93 /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1 -L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../.. CMakeFiles/cmTC_70f93.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crtn.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/collect2] ==> ignore
arg [-plugin] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/liblto_plugin.so] ==> ignore
arg [-plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/lto-wrapper] ==> ignore
arg [-plugin-opt=-fresolution=/tmp/ccfqVoB1.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 [--hash-style=gnu] ==> ignore
arg [-m] ==> ignore
arg [elf_x86_64] ==> ignore
arg [-export-dynamic] ==> ignore
arg [-dynamic-linker] ==> ignore
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
arg [-pie] ==> ignore
arg [-o] ==> ignore
arg [cmTC_70f93] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/Scrt1.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crti.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crti.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtbeginS.o]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib]
arg [-L/lib/../lib] ==> dir [/lib/../lib]
arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../..] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../..]
arg [CMakeFiles/cmTC_70f93.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-pc-linux-gnu/12.1.1/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtendS.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crtn.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crtn.o]
collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/Scrt1.o] ==> [/usr/lib/Scrt1.o]
collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crti.o] ==> [/usr/lib/crti.o]
collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib/crtn.o] ==> [/usr/lib/crtn.o]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../../../lib] ==> [/usr/lib]
collapse library dir [/lib/../lib] ==> [/lib]
collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/../../..] ==> [/usr/lib]
implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc]
implicit objs: [/usr/lib/Scrt1.o;/usr/lib/crti.o;/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtbeginS.o;/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1/crtendS.o;/usr/lib/crtn.o]
implicit dirs: [/usr/lib/gcc/x86_64-pc-linux-gnu/12.1.1;/usr/lib;/lib]
implicit fwks: []
Determining if the __GLIBC__ exist passed with the following output:
Change Dir: /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_bf370/fast && /usr/bin/make -f CMakeFiles/cmTC_bf370.dir/build.make CMakeFiles/cmTC_bf370.dir/build
make[1]: Entering directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_bf370.dir/CheckSymbolExists.c.o
/usr/bin/cc -o CMakeFiles/cmTC_bf370.dir/CheckSymbolExists.c.o -c /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp/CheckSymbolExists.c
Linking C executable cmTC_bf370
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_bf370.dir/link.txt --verbose=1
/usr/bin/cc -rdynamic CMakeFiles/cmTC_bf370.dir/CheckSymbolExists.c.o -o cmTC_bf370
make[1]: Leaving directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
File /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp/CheckSymbolExists.c:
/* */
#include <stdlib.h>
int main(int argc, char** argv)
{
(void)argv;
#ifndef __GLIBC__
return ((int*)(&__GLIBC__))[argc];
#else
(void)argc;
return 0;
#endif
}
Performing C++ SOURCE FILE Test _OFFT_IS_64BIT succeeded with the following output:
Change Dir: /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_0c38a/fast && /usr/bin/make -f CMakeFiles/cmTC_0c38a.dir/build.make CMakeFiles/cmTC_0c38a.dir/build
make[1]: Entering directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Building CXX object CMakeFiles/cmTC_0c38a.dir/src.cxx.o
/usr/bin/c++ -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -D_OFFT_IS_64BIT -o CMakeFiles/cmTC_0c38a.dir/src.cxx.o -c /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp/src.cxx
Linking CXX executable cmTC_0c38a
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_0c38a.dir/link.txt --verbose=1
/usr/bin/c++ -rdynamic CMakeFiles/cmTC_0c38a.dir/src.cxx.o -o cmTC_0c38a
make[1]: Leaving directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Source file was:
#include <sys/types.h>
/* Check that off_t can represent 2**63 - 1 correctly.
We can't simply define LARGE_OFF_T to be 9223372036854775807,
since some C++ compilers masquerading as C compilers
incorrectly reject 9223372036854775807. */
#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 && LARGE_OFF_T % 2147483647 == 1) ? 1 : -1];
int main() { return 0; }
Performing C++ SOURCE FILE Test HAVE_DATE_TIME succeeded with the following output:
Change Dir: /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_94378/fast && /usr/bin/make -f CMakeFiles/cmTC_94378.dir/build.make CMakeFiles/cmTC_94378.dir/build
make[1]: Entering directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Building CXX object CMakeFiles/cmTC_94378.dir/src.cxx.o
/usr/bin/c++ -DHAVE_DATE_TIME -fno-operator-names -fno-exceptions -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self -Wvla -Wdate-time -o CMakeFiles/cmTC_94378.dir/src.cxx.o -c /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp/src.cxx
Linking CXX executable cmTC_94378
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_94378.dir/link.txt --verbose=1
/usr/bin/c++ -fno-operator-names -fno-exceptions -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Werror=init-self -Wvla -rdynamic CMakeFiles/cmTC_94378.dir/src.cxx.o -o cmTC_94378
make[1]: Leaving directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Source file was:
int main() { return 0; }
Determining if the function XOpenDisplay exists in the /usr/lib/libX11.so;/usr/lib/libXext.so passed with the following output:
Change Dir: /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_15047/fast && /usr/bin/make -f CMakeFiles/cmTC_15047.dir/build.make CMakeFiles/cmTC_15047.dir/build
make[1]: Entering directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_15047.dir/CheckFunctionExists.c.o
/usr/bin/cc -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -fno-common -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wmissing-format-attribute -Wwrite-strings -Werror=implicit-function-declaration -DCHECK_FUNCTION_EXISTS=XOpenDisplay -o CMakeFiles/cmTC_15047.dir/CheckFunctionExists.c.o -c /usr/share/cmake/Modules/CheckFunctionExists.c
Linking C executable cmTC_15047
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_15047.dir/link.txt --verbose=1
/usr/bin/cc -fno-common -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wmissing-format-attribute -Wwrite-strings -Werror=implicit-function-declaration -DCHECK_FUNCTION_EXISTS=XOpenDisplay -rdynamic CMakeFiles/cmTC_15047.dir/CheckFunctionExists.c.o -o cmTC_15047 /usr/lib/libX11.so /usr/lib/libXext.so
make[1]: Leaving directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Determining if the function gethostbyname exists passed with the following output:
Change Dir: /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_1dd6c/fast && /usr/bin/make -f CMakeFiles/cmTC_1dd6c.dir/build.make CMakeFiles/cmTC_1dd6c.dir/build
make[1]: Entering directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_1dd6c.dir/CheckFunctionExists.c.o
/usr/bin/cc -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -fno-common -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wmissing-format-attribute -Wwrite-strings -Werror=implicit-function-declaration -DCHECK_FUNCTION_EXISTS=gethostbyname -o CMakeFiles/cmTC_1dd6c.dir/CheckFunctionExists.c.o -c /usr/share/cmake/Modules/CheckFunctionExists.c
Linking C executable cmTC_1dd6c
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_1dd6c.dir/link.txt --verbose=1
/usr/bin/cc -fno-common -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wmissing-format-attribute -Wwrite-strings -Werror=implicit-function-declaration -DCHECK_FUNCTION_EXISTS=gethostbyname -rdynamic CMakeFiles/cmTC_1dd6c.dir/CheckFunctionExists.c.o -o cmTC_1dd6c
make[1]: Leaving directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Determining if the function connect exists passed with the following output:
Change Dir: /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_2758d/fast && /usr/bin/make -f CMakeFiles/cmTC_2758d.dir/build.make CMakeFiles/cmTC_2758d.dir/build
make[1]: Entering directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_2758d.dir/CheckFunctionExists.c.o
/usr/bin/cc -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -fno-common -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wmissing-format-attribute -Wwrite-strings -Werror=implicit-function-declaration -DCHECK_FUNCTION_EXISTS=connect -o CMakeFiles/cmTC_2758d.dir/CheckFunctionExists.c.o -c /usr/share/cmake/Modules/CheckFunctionExists.c
Linking C executable cmTC_2758d
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_2758d.dir/link.txt --verbose=1
/usr/bin/cc -fno-common -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wmissing-format-attribute -Wwrite-strings -Werror=implicit-function-declaration -DCHECK_FUNCTION_EXISTS=connect -rdynamic CMakeFiles/cmTC_2758d.dir/CheckFunctionExists.c.o -o cmTC_2758d
make[1]: Leaving directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Determining if the function remove exists passed with the following output:
Change Dir: /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_94b91/fast && /usr/bin/make -f CMakeFiles/cmTC_94b91.dir/build.make CMakeFiles/cmTC_94b91.dir/build
make[1]: Entering directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_94b91.dir/CheckFunctionExists.c.o
/usr/bin/cc -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -fno-common -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wmissing-format-attribute -Wwrite-strings -Werror=implicit-function-declaration -DCHECK_FUNCTION_EXISTS=remove -o CMakeFiles/cmTC_94b91.dir/CheckFunctionExists.c.o -c /usr/share/cmake/Modules/CheckFunctionExists.c
Linking C executable cmTC_94b91
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_94b91.dir/link.txt --verbose=1
/usr/bin/cc -fno-common -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wmissing-format-attribute -Wwrite-strings -Werror=implicit-function-declaration -DCHECK_FUNCTION_EXISTS=remove -rdynamic CMakeFiles/cmTC_94b91.dir/CheckFunctionExists.c.o -o cmTC_94b91
make[1]: Leaving directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Determining if the function shmat exists passed with the following output:
Change Dir: /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_2a095/fast && /usr/bin/make -f CMakeFiles/cmTC_2a095.dir/build.make CMakeFiles/cmTC_2a095.dir/build
make[1]: Entering directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_2a095.dir/CheckFunctionExists.c.o
/usr/bin/cc -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -fno-common -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wmissing-format-attribute -Wwrite-strings -Werror=implicit-function-declaration -DCHECK_FUNCTION_EXISTS=shmat -o CMakeFiles/cmTC_2a095.dir/CheckFunctionExists.c.o -c /usr/share/cmake/Modules/CheckFunctionExists.c
Linking C executable cmTC_2a095
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_2a095.dir/link.txt --verbose=1
/usr/bin/cc -fno-common -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wmissing-format-attribute -Wwrite-strings -Werror=implicit-function-declaration -DCHECK_FUNCTION_EXISTS=shmat -rdynamic CMakeFiles/cmTC_2a095.dir/CheckFunctionExists.c.o -o cmTC_2a095
make[1]: Leaving directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Determining if the function IceConnectionNumber exists in the ICE passed with the following output:
Change Dir: /mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_3a8bc/fast && /usr/bin/make -f CMakeFiles/cmTC_3a8bc.dir/build.make CMakeFiles/cmTC_3a8bc.dir/build
make[1]: Entering directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_3a8bc.dir/CheckFunctionExists.c.o
/usr/bin/cc -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -fno-common -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wmissing-format-attribute -Wwrite-strings -Werror=implicit-function-declaration -DCHECK_FUNCTION_EXISTS=IceConnectionNumber -o CMakeFiles/cmTC_3a8bc.dir/CheckFunctionExists.c.o -c /usr/share/cmake/Modules/CheckFunctionExists.c
Linking C executable cmTC_3a8bc
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_3a8bc.dir/link.txt --verbose=1
/usr/bin/cc -fno-common -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wmissing-format-attribute -Wwrite-strings -Werror=implicit-function-declaration -DCHECK_FUNCTION_EXISTS=IceConnectionNumber -rdynamic CMakeFiles/cmTC_3a8bc.dir/CheckFunctionExists.c.o -o cmTC_3a8bc -lICE
make[1]: Leaving directory '/mnt/792afca2-ecd6-4e41-938a-2e818d0f60d1/home/anon/Desktop/Aero_Theme/KWin/smaragd-0.1.1/build/CMakeFiles/CMakeTmp'

View file

@ -1,6 +0,0 @@
# Hashes of file build rules.
8bf0ab1733e8e8e0c05fbb93fc2dcd78 CMakeFiles/fetch-translations
837eadc7c0beaa8ed0d4a556755d1875 CMakeFiles/uninstall
33ff0623d21e35901a4324d20c2592df releaseme
016ea9bd942e816e89b81cb83852ed9b src/CMakeFiles/kwin_smaragd_autogen
8c2bc7af80b5e3bc2ef6e65981f94cd3 src/ui_kwin_smaragd_dialog.h

View file

@ -1,18 +0,0 @@
# Consider dependencies only in project.
set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF)
# The set of languages for which implicit dependencies are needed:
set(CMAKE_DEPENDS_LANGUAGES
)
# The set of dependency files which are needed:
set(CMAKE_DEPENDS_DEPENDENCY_FILES
)
# Targets to which this target links.
set(CMAKE_TARGET_LINKED_INFO_FILES
)
# Fortran module output directory.
set(CMAKE_Fortran_TARGET_MODULE_DIR "")

Some files were not shown because too many files have changed in this diff Show more