-
Notifications
You must be signed in to change notification settings - Fork 48
/
geopm-runtime.spec.in
126 lines (107 loc) · 3.18 KB
/
geopm-runtime.spec.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# Copyright (c) 2015 - 2024 Intel Corporation
# SPDX-License-Identifier: BSD-3-Clause
#
Summary: Global Extensible Open Power Manager Runtime
Name: geopm-runtime
Version: @VERSION@
Release: 1
License: BSD-3-Clause
Group: System Environment/Libraries
Vendor: Intel Corporation
URL: https://geopm.github.io
Source0: geopm-runtime-%{version}.tar.gz
BuildRoot: %{_tmppath}/geopm-runtime-%{version}-%{release}-root
Prefix: %{_prefix}
BuildRequires: gcc-c++
BuildRequires: unzip
BuildRequires: libtool
BuildRequires: geopm-service-devel
%if 0%{?suse_version}
BuildRequires: libelf-devel
%else
BuildRequires: elfutils-libelf-devel
%endif
%if 0%{?rhel} >= 8
# Needed to generate debuginfo packages
BuildRequires: gdb-headless
%endif
%if 0%{?suse_version}
BuildRequires: systemd-rpm-macros
%endif
Recommends: geopm-runtime-doc
%if %{defined suse_version}
%define docdir %{_defaultdocdir}/geopm
%else
%define docdir %{_defaultdocdir}/geopm-%{version}
%endif
Requires: libgeopm2 = %{version}
%description
The GEOPM Runtime is software designed to enhance energy efficiency of
applications through active hardware configuration. The architecture is
designed to provide a secure infrastructure to support a wide range of tuning
algorithms.
%prep
%setup -n geopm-runtime-%{version}
%package devel
Summary: Global Extensible Open Power Manager - development
Group: Development/Libraries
Requires: geopm-runtime
%description devel
Development package for GEOPM.
%package -n libgeopm2
Summary: Provides libgeopm shared object library
%if 0%{?rhel_version} || 0%{?centos_version}
# Deprecated for RHEL and CentOS
Group: System Environment/Libraries
%else
Group: System/Libraries
%endif
Recommends: libgeopm-doc
%description -n libgeopm2
Library supportingthe GEOPM Runtime. This provides the libgeopm
library which provides C and C++ interfaces.
%build
test -f configure || ./autogen.sh
./configure --prefix=%{_prefix} --libdir=%{_libdir} --libexecdir=%{_libexecdir} \
--includedir=%{_includedir} --sbindir=%{_sbindir} \
--docdir=%{docdir} \
--disable-mpi --disable-openmp \
--disable-fortran \
--disable-geopmd-local \
|| ( cat config.log && false )
%{__make} %{?_smp_mflags}
%install
%{__make} DESTDIR=%{buildroot} install
rm -f $(find %{buildroot}/%{_libdir} -name '*.a'; \
find %{buildroot}/%{_libdir} -name '*.la')
%clean
%files
%defattr(-,root,root,-)
%{_bindir}/geopmadmin
%{_bindir}/geopmagent
%{_bindir}/geopmctl
%files -n libgeopm2
%defattr(-,root,root,-)
%{_libdir}/libgeopm.so.2.1.0
%{_libdir}/libgeopm.so.2
%files devel
%defattr(-,root,root,-)
%dir %{_includedir}/geopm
%{_includedir}/geopm/Agent.hpp
%{_includedir}/geopm/Environment.hpp
%{_includedir}/geopm/FrequencyGovernor.hpp
%{_includedir}/geopm/ModelRegion.hpp
%{_includedir}/geopm/PlatformIOProf.hpp
%{_includedir}/geopm/PowerBalancer.hpp
%{_includedir}/geopm/PowerGovernor.hpp
%{_includedir}/geopm/Profile.hpp
%{_includedir}/geopm/SampleAggregator.hpp
%{_includedir}/geopm/Waiter.hpp
%{_includedir}/geopm_agent.h
%{_includedir}/geopm_imbalancer.h
%{_includedir}/geopm_prof.h
%{_libdir}/libgeopm.so
%dir %{docdir}
%doc %{docdir}/LICENSE-BSD-3-Clause
%doc %{docdir}/README.md
%doc %{docdir}/VERSION