packaging: set pc file name for devel package explicitly
[platform/upstream/libdrm.git] / packaging / libdrm.spec
1 Name:           libdrm
2 Version:        2.4.103
3 Release:        0
4 License:        MIT
5 Url:            http://cgit.freedesktop.org/mesa/drm
6 Summary:        Userspace interface to kernel DRM services
7 Group:          Graphics & UI Framework/Libraries
8 Source0:        %{name}-%{version}.tar.bz2
9 Source1001:             %name.manifest
10
11 BuildRequires:  kernel-headers
12 BuildRequires:  pkgconfig(pciaccess)
13 BuildRequires:  meson
14 BuildRequires:  python3
15
16 %description
17 Direct Rendering Manager headers and kernel modules.
18
19 %package tools
20 Summary:        Diagnostic utilities for DRI and DRM
21 Group:          Graphics & UI Framework/Utilities
22 Obsoletes:      libdrm < %version-%release
23 Provides:       libdrm = %version-%release
24
25 %description tools
26 Diagnoistic tools to run a test for DRI and DRM
27
28 %package tools-exynos
29 Summary:        Diagnostic utilities for exynos
30 Group:          Graphics & UI Framework/Utilities
31
32 %description tools-exynos
33 Diagnoistic tools to run a test for exynos
34
35 %package devel
36 Summary:        Userspace interface to kernel DRM services
37 Requires:       kernel-headers
38 Requires:       libdrm = %{version}-%{release}
39 %ifarch i586 i686 %ix86 x86_64
40 Requires:       libdrm-intel = %{version}-%{release}
41 %endif
42 Requires:       libkms = %{version}-%{release}
43
44 %description devel
45 Direct Rendering Manager headers and kernel modules.
46
47 Development related files.
48
49 %package -n libkms
50 Summary:        Userspace interface to kernel DRM buffer management
51
52 %description -n libkms
53 Userspace interface to kernel DRM buffer management files
54
55 %package intel
56 Summary:        Userspace interface to intel graphics kernel DRM buffer management
57
58 %description intel
59 Userspace interface to intel graphics kernel DRM buffer management files
60
61 %prep
62 %setup -q
63 cp %{SOURCE1001} .
64
65 %build
66 export CFLAGS+=" -fPIE -Wno-format-truncation"
67 meson setup --prefix /usr --libdir %{_libdir} \
68        -Dudev=true \
69        -Dlibkms=true \
70        -Dradeon=false \
71        -Damdgpu=false \
72        -Dnouveau=false \
73        -Dfreedreno=false \
74 %ifarch i586 i686 %ix86 x86_64
75        -Dintel=true \
76 %endif
77        -Dexynos=true \
78        -Dvigs=true \
79        -Dnexell=true \
80        -Dinstall-test-programs=true \
81        -Dcairo-tests=false \
82        -Db_pie=true \
83        builddir
84
85 ninja -C builddir all
86
87 %install
88 export DESTDIR=%{buildroot}
89 ninja -C builddir install
90
91 %post -p /sbin/ldconfig
92
93 %postun -p /sbin/ldconfig
94
95 %post -n libkms -p /sbin/ldconfig
96
97 %postun -n libkms -p /sbin/ldconfig
98
99 %post intel -p /sbin/ldconfig
100
101 %postun intel -p /sbin/ldconfig
102
103 %files
104 %manifest %{name}.manifest
105 %license COPYING
106 %{_libdir}/libdrm.so.*
107 %{_libdir}/libdrm_exynos.so.*
108 %{_libdir}/libdrm_vigs.so.*
109 %{_libdir}/libdrm_nexell.so.*
110
111 %files tools
112 %manifest %{name}.manifest
113 %{_bindir}/drmdevice
114 %{_bindir}/kms-steal-crtc
115 %{_bindir}/kms-universal-planes
116 %{_bindir}/kmstest
117 %{_bindir}/modeprint
118 %{_bindir}/modetest
119 %{_bindir}/proptest
120 %{_bindir}/vbltest
121
122 %files tools-exynos
123 %manifest %{name}.manifest
124 %{_bindir}/exynos_fimg2d_event
125 %{_bindir}/exynos_fimg2d_perf
126 %{_bindir}/exynos_fimg2d_test
127
128 %files devel
129 %manifest %{name}.manifest
130 %dir %{_includedir}/libdrm
131 %{_includedir}/libdrm/*.h
132 %dir %{_includedir}/libkms
133 %{_includedir}/libkms/*.h
134 %dir %{_includedir}/exynos
135 %{_includedir}/exynos/*.h
136 %dir %{_includedir}/nexell
137 %{_includedir}/nexell/*.h
138 %{_includedir}/*.h
139 %{_libdir}/libdrm.so
140 %{_libdir}/pkgconfig/libdrm.pc
141 %ifarch i586 i686 %ix86 x86_64
142 %{_libdir}/libdrm_intel.so
143 %{_libdir}/pkgconfig/libdrm_intel.pc
144 %endif
145 %{_libdir}/libkms.so
146 %{_libdir}/pkgconfig/libkms.pc
147 %ifarch %{arm} aarch64
148 %{_libdir}/pkgconfig/libdrm_vc4.pc
149 %endif
150 %{_libdir}/libdrm_exynos.so
151 %{_libdir}/pkgconfig/libdrm_exynos.pc
152 %{_libdir}/libdrm_nexell.so
153 %{_libdir}/pkgconfig/libdrm_nexell.pc
154 %{_libdir}/libdrm_vigs.so
155 %{_libdir}/pkgconfig/libdrm_vigs.pc
156
157 %files -n libkms
158 %manifest %{name}.manifest
159 %{_libdir}/libkms.so.*
160
161 %ifarch i586 i686 %ix86 x86_64
162 %files intel
163 %manifest %{name}.manifest
164 %{_libdir}/libdrm_intel.so.*
165 %endif