Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:malkavi
gamemode-git
_service:set_version:gamemode.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:set_version:gamemode.spec of Package gamemode-git
%define name gamemode %define release 2 %define gamemodetar gamemode-dev-%{version} %define libversion 0 Summary: Optimise Linux system performance on demand Name: %{name} Version: 2020.09.14 Release: 0%{release} Source0: %{gamemodetar}.tar.gz Source1: gamemode-rpmlintrc Source3: baselibs.conf Patch0: lto.patch License: BSD-3-Clause Group: Amusements/Games/Other BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot Prefix: %{_prefix} Vendor: Marc Di Luzio (Feral Interactive) Url: https://github.com/FeralInteractive/gamemode # Common build dependencies BuildRequires: cmake BuildRequires: meson BuildRequires: ninja BuildRequires: pkgconfig BuildRequires: polkit-devel BuildRequires: pkgconfig(dbus-1) # Yes, it needs both BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(systemd) BuildRequires: libinih-devel %if 0%{?sle_version} == 120300 && 0%{?is_opensuse} BuildRequires: gcc7 %else BuildRequires: gcc >= 4.9 BuildRequires: gcc-c++ >= 4.9 %endif BuildRequires: git # Needed to workaround "directories not owned by a package" issue BuildRequires: hicolor-icon-theme BuildRequires: polkit BuildRequires: systemd-devel BuildRequires: systemd-rpm-macros ExclusiveArch: %{ix86} x86_64 ppc %arm aarch64ix86 %description GameMode is a daemon/lib combo for Linux that allows games to request a set of optimisations be temporarily applied to the host OS. The design has a clear-cut abstraction between the host daemon and library (gamemoded and libgamemode), and the client loaders (libgamemodeauto and gamemode_client.h) that allows for safe use without worrying about whether the daemon is installed or running. This design also means that while the host library currently relies on systemd for exchanging messages with the daemon, it's entirely possible to implement other internals that still work with the same clients. GameMode was designed primarily as a stop-gap solution to problems with the Intel and AMD CPU powersave or ondemand governors, but is intended to be expanded beyond just CPU governor states, as there are a wealth of automation tasks one might want to apply. Issues with GameMode should be reported here (https://github.com/FeralInteractive/gamemode) in the issues section, and not reported to Feral directly. %package -n gamemoded Summary: The GameMode daemon required by GameMode enabled games Recommends: libgamemode Suggests: libgamemodeauto %description -n gamemoded GameMode is a daemon/lib combo for Linux that allows games to request a set of optimisations be temporarily applied to the host OS. The GameMode needs to be running for games to be able request game mode. It should be running within a users session. First, enable it: systemctl --user enable gamemoded Then, start it as follows: systemctl --user start gamemoded %package -n libgamemode%{libversion} Summary: GameMode client library Group: System/Libraries Requires: gamemoded %systemd_requires %description -n libgamemode%{libversion} GameMode is a daemon/lib combo for Linux that allows games to request a set of optimisations be temporarily applied to the host OS. Libgamemode is the client library used by games or libgamemodeauto to talk to the GameMode daemon. %package -n libgamemodeauto%{libversion} Summary: Helper library allowing to equip any game with GameMode support Requires: libgamemode%{libversion} %description -n libgamemodeauto%{libversion} GameMode is a daemon/lib combo for Linux that allows games to request a set of optimisations be temporarily applied to the host OS. Libgamemodeauto allows you to use GameMode with any Game by preloading it into the game. LD_PRELOAD=%{_libdir}/libgamemodeauto.so.0 ./game For Steam games this can be done by editing the launch options: LD_PRELOAD=$LD_PRELOAD:%{_libdir}/libgamemodeauto.so.0 %%command%% %package -n libgamemode-devel Summary: Headers for compiling games using GameMode Group: Development/Libraries/C and C++ Requires: libgamemode%{libversion} = %{version} Requires: libgamemodeauto%{libversion} = %{version} %description -n libgamemode-devel GameMode is a daemon/lib combo for Linux that allows games to request a set of optimisations be temporarily applied to the host OS. This package contains the headers required to compile games with built-in GameMode support. %prep %setup -n %{gamemodetar} %patch0 -p0 %build %if 0%{?sle_version} == 120300 && 0%{?is_opensuse} export CC=gcc-7 # gcc4.8 does not work because of https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58016 export CXX=g++-7 %endif %meson #a%meson -Dwith-systemd-user-unit-dir=%{_userunitdir} #meson --prefix=/usr build -Dwith-systemd-user-unit-dir=%{_userunitdir} %meson_build %check %meson_test %install %meson_install %clean rm -rf $RPM_BUILD_ROOT %pre %icon_theme_cache_post %desktop_database_post %post -n gamemoded %systemd_user_post gamemoded.service %preun -n gamemoded %systemd_user_preun gamemoded.service %postun -n gamemoded #%icon_theme_cache_postun #%desktop_database_postun %systemd_user_postun gamemoded.service %post -n libgamemode%{libversion} -p /sbin/ldconfig %postun -n libgamemode%{libversion} -p /sbin/ldconfig %post -n libgamemodeauto%{libversion} -p /sbin/ldconfig %postun -n libgamemodeauto%{libversion} -p /sbin/ldconfig %files -n gamemoded %defattr(-,root,root) %{_bindir}/gamemoded %{_bindir}/gamemoderun %{_bindir}/gamemode-simulate-game %defattr(-,root,root) %{_libexecdir}/cpugovctl %{_libexecdir}/gpuclockctl %{_datadir}/polkit-1/actions/com.feralinteractive.GameMode.policy %{_datadir}/dbus-1/services/com.feralinteractive.GameMode.service %defattr(-,root,root) %{_datadir}/gamemode %{_datadir}/gamemode/gamemode.ini %{_datadir}/metainfo/io.github.feralinteractive.gamemode.metainfo.xml %{_userunitdir}/gamemoded.service %{_mandir}/*/* %files -n libgamemode%{libversion} %defattr(-,root,root) #%{_libdir}/libgamemode.so %{_libdir}/libgamemode.so.* %files -n libgamemodeauto%{libversion} %defattr(-,root,root) #%{_libdir}/libgamemodeauto.so %{_libdir}/libgamemodeauto.so.* #%{_libdir}/libgamemodeauto.a %files -n libgamemode-devel %defattr(-,root,root) %{_includedir}/gamemode_client.h %{_libdir}/libgamemode.so %{_libdir}/libgamemodeauto.so %{_libdir}/libgamemodeauto.a %{_libdir}/pkgconfig/gamemode* %{_libdir}/pkgconfig/libgamemodeauto.pc
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor