/[packages]/cauldron/mesa/current/SPECS/mesa.spec
ViewVC logotype

Diff of /cauldron/mesa/current/SPECS/mesa.spec

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1167695 by tv, Tue Oct 3 08:14:29 2017 UTC revision 1338779 by tmb, Fri Dec 7 12:35:10 2018 UTC
# Line 1  Line 1 
 %if "%distro_section" == "tainted"  
 %global build_plf 1  
 %else  
 %global build_plf 0  
 %endif  
   
1  # (cg) Cheater...  # (cg) Cheater...
2  %define Werror_cflags %nil  %define Werror_cflags %nil
3    
# Line 12  Line 6 
6    
7  # https://cgit.freedesktop.org/mesa/mesa/commit/?h=13.0&id=3bb0415ab96f74183f7aa58c1a543448653ccb3e  # https://cgit.freedesktop.org/mesa/mesa/commit/?h=13.0&id=3bb0415ab96f74183f7aa58c1a543448653ccb3e
8  %define git 0  %define git 0
9  %define git_branch 17.1  %define git_branch 18.0
10    
11  %define opengl_ver 4.5  %define opengl_ver 4.5
12    
13  # define version, RC & release  # define version, RC & release
14  %define main_version            17.2.2  %define main_version            18.3.0
15  #define relc                    5  #define relc                    1
16  %define rel                     2  %define rel                     1
17    
18  %define release                 %mkrel %{?relc:0.rc%{relc}.}%{rel}  %define release                 %mkrel %{?relc:0.rc%{relc}.}%{rel}
19    
# Line 90  Line 84 
84    
85  %define mesasrcdir              %{_prefix}/src/Mesa/  %define mesasrcdir              %{_prefix}/src/Mesa/
86    
87    %define with_vaapi 1
88    
89  # (akien) Not adding on arm as it would break the build there  # (akien) Not adding on arm as it would break the build there
90  %define enable_vulkan   0  %define enable_vulkan   0
91  %ifarch %{ix86} x86_64  %ifarch %{ix86} x86_64
92  %define enable_vulkan   1  %define enable_vulkan   1
93  %endif  %endif
94    
95    
96    %ifarch %{arm} aarch64
97    %define with_etnaviv   1
98    %define with_freedreno 1
99    %define with_vc4       1
100    %endif
101    
102  %define base_drivers swrast,nouveau,radeon,r200  %define base_drivers swrast,nouveau,radeon,r200
103  %ifarch %{ix86} x86_64  %ifarch %{ix86} x86_64
104  %define platform_drivers ,i915,i965  %define platform_drivers ,i915,i965
105    %define gallium_platform_drivers ,svga
106  %endif  %endif
107    
108    %define with_wayland_egl 0
109    
110  %define dri_drivers --with-dri-drivers=%{?base_drivers}%{?platform_drivers}  %define dri_drivers --with-dri-drivers=%{?base_drivers}%{?platform_drivers}
111    
112  Name:           mesa  Name:           mesa
# Line 120  BuildRequires: pkgconfig(xdamage)      >= 1.1 Line 127  BuildRequires: pkgconfig(xdamage)      >= 1.1
127  BuildRequires:  pkgconfig(expat)                >= 2.0.1  BuildRequires:  pkgconfig(expat)                >= 2.0.1
128  BuildRequires:  gccmakedep  BuildRequires:  gccmakedep
129  BuildRequires:  x11-proto-devel         >= 7.3  BuildRequires:  x11-proto-devel         >= 7.3
130  BuildRequires:  pkgconfig(libdrm)       >= 2.4.60  BuildRequires:  pkgconfig(libdrm)       >= 2.4.91
131  BuildRequires:  pkgconfig(xcb-dri3)  BuildRequires:  pkgconfig(xcb-dri3)
132  BuildRequires:  pkgconfig(xcb-present)  >= 1.11  BuildRequires:  pkgconfig(xcb-present)  >= 1.11
133  BuildRequires:  pkgconfig(xext)         >= 1.1.1  BuildRequires:  pkgconfig(xext)         >= 1.1.1
134  BuildRequires:  pkgconfig(xxf86vm)      >= 1.1.0  BuildRequires:  pkgconfig(xxf86vm)      >= 1.1.0
135  BuildRequires:  pkgconfig(xi)           >= 1.3  BuildRequires:  pkgconfig(xi)           >= 1.3
136    BuildRequires:  pkgconfig(xrandr)
137  BuildRequires:  pkgconfig(talloc)  BuildRequires:  pkgconfig(talloc)
138  BuildRequires:  libxml2-python  BuildRequires:  python2-libxml2
139  BuildRequires:  python-mako  BuildRequires:  python2-mako
140    BuildRequires:  python3-libxml2
141    BuildRequires:  python3-mako
142  BuildRequires:  makedepend  BuildRequires:  makedepend
143  BuildRequires:  bison  BuildRequires:  bison
144  BuildRequires:  flex  BuildRequires:  flex
145  BuildRequires:  pkgconfig(libelf)  BuildRequires:  pkgconfig(libelf)
146  BuildRequires:  llvm-devel >= 3.9.1-5  BuildRequires:  llvm-devel >= 3.9.1-5
147  BuildRequires:  pkgconfig(libudev)  BuildRequires:  pkgconfig(libudev)
148    %if 0%{?with_vaapi}
149  BuildRequires:  pkgconfig(libva)  BuildRequires:  pkgconfig(libva)
150    %endif
151  BuildRequires:  pkgconfig(vdpau)  BuildRequires:  pkgconfig(vdpau)
152  BuildRequires:  wayland-devel  BuildRequires: pkgconfig(wayland-client)
153    BuildRequires: pkgconfig(wayland-server)
154    BuildRequires: pkgconfig(wayland-protocols)
155  %if %{enable_vulkan}  %if %{enable_vulkan}
156  BuildRequires:  libgcrypt-devel  BuildRequires:  libgcrypt-devel
157  %endif  %endif
# Line 153  Source0:       https://mesa.freedesktop.org/ar Line 167  Source0:       https://mesa.freedesktop.org/ar
167  %endif  %endif
168  Source3:        make-git-snapshot.sh  Source3:        make-git-snapshot.sh
169    
170  # Instructions to setup your repository clone  Patch000:       fix-linking.patch
171  # git://git.freedesktop.org/git/mesa/mesa  
172  # git checkout mesa_7_5_branch  # mesa staging/18.3 branch from 1
 # git branch mdv-cherry-picks  
 # git am ../02??-*.patch  
 # git branch mdv-redhat  
 # git am ../03??-*.patch  
 # git branch mdv-patches  
 # git am ../09??-*.patch  
 # In order to update to the branch via patches, issue this command:  
 # git format-patch --start-number 100 mesa_7_5_1..mesa_7_5_branch | sed 's/^0\([0-9]\+\)-/Patch\1: 0\1-/'  
   
 # Cherry picks  
 # git format-patch --start-number 200 mesa_7_5_branch..mdv-cherry-picks  
   
 # Patches "liberated" from Fedora:  
 # http://pkgs.fedoraproject.org/cgit/rpms/mesa.git/  
 # git format-patch --start-number 300 mdv-cherry-picks..mdv-redhat  
173    
174  # Patches from ChromiumOS  # mesa master branch from 101
 # http://git.chromium.org/gitweb/?p=chromiumos/overlays/chromiumos-overlay.git;a=tree;f=media-libs/mesa/files;hb=HEAD  
175    
 # Mageia/Mandriva patches  
 # git format-patch --start-number 900 mdv-redhat..mdv-patches  
176    
177  #------------------------------------------------------------------------------  #------------------------------------------------------------------------------
178    
# Line 195  Obsoletes:     %{oldlibglname} < 6.4 Line 191  Obsoletes:     %{oldlibglname} < 6.4
191  Provides:       %{oldlibglname} = %{version}-%{release}  Provides:       %{oldlibglname} = %{version}-%{release}
192  Provides:       %{libglname_virt} = %{version}-%{release}  Provides:       %{libglname_virt} = %{version}-%{release}
193  Requires:       %{dridrivers} >= %{version}-%{release}  Requires:       %{dridrivers} >= %{version}-%{release}
 %if %{build_plf}  
 Requires:       %mklibname txc-dxtn  
 %endif  
194    
195  # (anssi) Forces the upgrade of x11-server-common to happen before  # (anssi) Forces the upgrade of x11-server-common to happen before
196  # alternatives removal, which allows x11-server-common to grab the symlink.  # alternatives removal, which allows x11-server-common to grab the symlink.
# Line 315  Requires:      %{libgbmname} = %{version}-%{r Line 308  Requires:      %{libgbmname} = %{version}-%{r
308  Provides:       lib%{gbmname}-devel  Provides:       lib%{gbmname}-devel
309  Provides:       %{gbmname}-devel  Provides:       %{gbmname}-devel
310    
311    %if %{?with_wayland_egl}
312  %package -n     %{libwaylandeglname}  %package -n     %{libwaylandeglname}
313  Summary:        Files for Mesa (Wayland EGL libs)  Summary:        Files for Mesa (Wayland EGL libs)
314  Group:          System/Libraries  Group:          System/Libraries
# Line 326  Group:         Development/C Line 320  Group:         Development/C
320  Requires:       %{libwaylandeglname} = %{version}-%{release}  Requires:       %{libwaylandeglname} = %{version}-%{release}
321  Provides:       lib%{waylandeglname}-devel  Provides:       lib%{waylandeglname}-devel
322  Provides:       %{waylandeglname}-devel  Provides:       %{waylandeglname}-devel
323    %endif
324    
325  %package -n     %{_lib}vdpau-driver-nouveau  %package -n     %{_lib}vdpau-driver-nouveau
326  Summary:        VDPAU plugin for nouveau driver  Summary:        VDPAU plugin for nouveau driver
# Line 398  Requires:      %{libglesv2name}-devel = %{ver Line 393  Requires:      %{libglesv2name}-devel = %{ver
393    
394  %description  %description
395  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
 %if %{build_plf}  
   
 This package is in the "tainted" section because it enables some  
 OpenGL extentions that are covered by software patents.  
 %endif  
396    
397  %description common-devel  %description common-devel
398  Mesa common metapackage devel  Mesa common metapackage devel
# Line 419  EGL development parts. Line 409  EGL development parts.
409  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
410  GL and GLX parts.  GL and GLX parts.
411    
 %if %{build_plf}  
 This package is in the "tainted" section because it enables some  
 OpenGL extentions that are covered by software patents.  
 %endif  
   
412  %description -n %{dridrivers}  %description -n %{dridrivers}
413  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
414  DRI drivers.  DRI drivers.
# Line 479  GBM (Graphics Buffer Manager) parts. Line 464  GBM (Graphics Buffer Manager) parts.
464  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
465  GBM (Graphics Buffer Manager) development parts.  GBM (Graphics Buffer Manager) development parts.
466    
467    %if %{?with_wayland_egl}
468  %description -n %{libwaylandeglname}  %description -n %{libwaylandeglname}
469  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
470  Wayland EGL platform parts.  Wayland EGL platform parts.
# Line 486  Wayland EGL platform parts. Line 472  Wayland EGL platform parts.
472  %description -n %{libwaylandeglname}-devel  %description -n %{libwaylandeglname}-devel
473  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
474  Wayland EGL platform development parts.  Wayland EGL platform development parts.
475    %endif
476    
477  %description -n %{libxaname}  %description -n %{libxaname}
478  This packages provides the xa shared library used by gallium.  This packages provides the xa shared library used by gallium.
# Line 543  automake --add-missing Line 530  automake --add-missing
530                  --enable-gles2 \                  --enable-gles2 \
531                  --disable-xvmc \                  --disable-xvmc \
532                  --enable-vdpau \                  --enable-vdpau \
533                  --enable-va \                  %{?with_vaapi:--enable-va} \
534                  --with-platforms=x11,wayland,drm \                  --with-platforms=x11,drm,surfaceless,wayland \
535                  --enable-shared-glapi \                  --enable-shared-glapi \
536                  --enable-gbm \                  --enable-gbm \
537                  --enable-glx \                  --enable-glx \
538                  --enable-glx-tls \                  --enable-glx-tls \
 %if %{build_plf}  
539                  --enable-texture-float=yes  \                  --enable-texture-float=yes  \
 %endif  
540                  --enable-llvm \                  --enable-llvm \
541                  --enable-dri \                  --enable-dri \
542                  --enable-xa \                  --enable-xa \
543                  --enable-nine \                  --enable-nine \
544                  --with-gallium-drivers=r300,r600,radeonsi,nouveau,svga,swrast,virgl \                  --with-gallium-drivers=r300,r600,radeonsi,nouveau,swrast,%{?with_freedreno:freedreno,}%{?with_etnaviv:etnaviv,imx,}%{?with_vc4:vc4,}virgl%{?gallium_platform_drivers} \
545          %{?dri_drivers}          %{?dri_drivers}
546                  # end of configure options                  # end of configure options
547    
# Line 587  rm -f %{buildroot}%{_includedir}/GL/w*.h Line 572  rm -f %{buildroot}%{_includedir}/GL/w*.h
572  # remove .la files  # remove .la files
573  find %{buildroot} -name '*.la' -delete  find %{buildroot} -name '*.la' -delete
574    
575    # remove libwayland-egl on F28+ where it's built as part of wayland source package
576    %if !%{?with_wayland_egl}
577    rm -f %{buildroot}%{_libdir}/libwayland-egl.so*
578    rm -f %{buildroot}%{_libdir}/pkgconfig/wayland-egl.pc
579    %endif
580    
581  #------------------------------------------------------------------------------  #------------------------------------------------------------------------------
582    
583  %files  %files
584  %config(noreplace) %{_sysconfdir}/drirc  /usr/share/drirc.d/
585    
586  %files -n %{dridrivers}  %files -n %{dridrivers}
587  %dir %{_libdir}/dri  %dir %{_libdir}/dri
# Line 624  find %{buildroot} -name '*.la' -delete Line 615  find %{buildroot} -name '*.la' -delete
615  %{_libdir}/libgbm.so.%{gbmmajor}  %{_libdir}/libgbm.so.%{gbmmajor}
616  %{_libdir}/libgbm.so.%{gbmmajor}.*  %{_libdir}/libgbm.so.%{gbmmajor}.*
617    
618    %if %{?with_wayland_egl}
619  %files -n %{libwaylandeglname}  %files -n %{libwaylandeglname}
620  %{_libdir}/libwayland-egl.so.%{waylandeglmajor}  %{_libdir}/libwayland-egl.so.%{waylandeglmajor}
621  %{_libdir}/libwayland-egl.so.%{waylandeglmajor}.*  %{_libdir}/libwayland-egl.so.%{waylandeglmajor}.*
622    %endif
623    
624  %files -n %{libxaname}  %files -n %{libxaname}
625  %{_libdir}/libxatracker.so.%{xamajor}{,.*}  %{_libdir}/libxatracker.so.%{xamajor}{,.*}
# Line 684  find %{buildroot} -name '*.la' -delete Line 677  find %{buildroot} -name '*.la' -delete
677  %{_includedir}/gbm.h  %{_includedir}/gbm.h
678  %{_libdir}/pkgconfig/gbm.pc  %{_libdir}/pkgconfig/gbm.pc
679    
680    %if %{?with_wayland_egl}
681  %files -n %{libwaylandeglname}-devel  %files -n %{libwaylandeglname}-devel
682  %{_libdir}/libwayland-egl.so  %{_libdir}/libwayland-egl.so
683  %{_libdir}/pkgconfig/wayland-egl.pc  %{_libdir}/pkgconfig/wayland-egl.pc
684    %endif
685    
686  %files -n %{libxaname}-devel  %files -n %{libxaname}-devel
687  %{_libdir}/libxatracker.so  %{_libdir}/libxatracker.so

Legend:
Removed from v.1167695  
changed lines
  Added in v.1338779

  ViewVC Help
Powered by ViewVC 1.1.30