/[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 1191955 by tv, Tue Jan 9 20:55:13 2018 UTC revision 1322549 by tv, Fri Oct 19 18:37:19 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.3  %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.3.2  %define main_version            18.2.3
15  #define relc                    1  #define relc                    6
16  %define rel                     1  %define rel                     1
17    
18  %define release                 %mkrel %{?relc:0.rc%{relc}.}%{rel}  %define release                 %mkrel %{?relc:0.rc%{relc}.}%{rel}
# 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  %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 121  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 154  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  # mesa staging/18.2 branch from 1
 # git://git.freedesktop.org/git/mesa/mesa  
 # git checkout mesa_7_5_branch  
 # 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-/'  
   
 # from mesa master: https://cgit.freedesktop.org/mesa/mesa/commit/?id=c591b1e59454db2e8854e36852e0d413ce38b2f2  
 Patch100:       i965-expose-SRGB-visuals-and-turn-on-EGL_KHR_gl-colorspace.patch  
   
 # 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  
   
 # https://cgit.freedesktop.org/~ajax/mesa/log/?h=mesa-17.2-s3tc  
171    
172  # Patches from ChromiumOS  # mesa master branch from 101
173  # http://git.chromium.org/gitweb/?p=chromiumos/overlays/chromiumos-overlay.git;a=tree;f=media-libs/mesa/files;hb=HEAD  Patch101:       0101-mesa-enable-ARB_vertex_buffer_object-in-core-profile.patch
174    
 # Mageia/Mandriva patches  
 # git format-patch --start-number 900 mdv-redhat..mdv-patches  
175    
176  #------------------------------------------------------------------------------  #------------------------------------------------------------------------------
177    
# Line 318  Requires:      %{libgbmname} = %{version}-%{r Line 307  Requires:      %{libgbmname} = %{version}-%{r
307  Provides:       lib%{gbmname}-devel  Provides:       lib%{gbmname}-devel
308  Provides:       %{gbmname}-devel  Provides:       %{gbmname}-devel
309    
310    %if %{?with_wayland_egl}
311  %package -n     %{libwaylandeglname}  %package -n     %{libwaylandeglname}
312  Summary:        Files for Mesa (Wayland EGL libs)  Summary:        Files for Mesa (Wayland EGL libs)
313  Group:          System/Libraries  Group:          System/Libraries
# Line 329  Group:         Development/C Line 319  Group:         Development/C
319  Requires:       %{libwaylandeglname} = %{version}-%{release}  Requires:       %{libwaylandeglname} = %{version}-%{release}
320  Provides:       lib%{waylandeglname}-devel  Provides:       lib%{waylandeglname}-devel
321  Provides:       %{waylandeglname}-devel  Provides:       %{waylandeglname}-devel
322    %endif
323    
324  %package -n     %{_lib}vdpau-driver-nouveau  %package -n     %{_lib}vdpau-driver-nouveau
325  Summary:        VDPAU plugin for nouveau driver  Summary:        VDPAU plugin for nouveau driver
# Line 472  GBM (Graphics Buffer Manager) parts. Line 463  GBM (Graphics Buffer Manager) parts.
463  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
464  GBM (Graphics Buffer Manager) development parts.  GBM (Graphics Buffer Manager) development parts.
465    
466    %if %{?with_wayland_egl}
467  %description -n %{libwaylandeglname}  %description -n %{libwaylandeglname}
468  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
469  Wayland EGL platform parts.  Wayland EGL platform parts.
# Line 479  Wayland EGL platform parts. Line 471  Wayland EGL platform parts.
471  %description -n %{libwaylandeglname}-devel  %description -n %{libwaylandeglname}-devel
472  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.  Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
473  Wayland EGL platform development parts.  Wayland EGL platform development parts.
474    %endif
475    
476  %description -n %{libxaname}  %description -n %{libxaname}
477  This packages provides the xa shared library used by gallium.  This packages provides the xa shared library used by gallium.
# Line 518  This package contains the development fi Line 511  This package contains the development fi
511  %prep  %prep
512  %autosetup -n %{name}-%{version}%{?relc:-rc%{relc}} -p1  %autosetup -n %{name}-%{version}%{?relc:-rc%{relc}} -p1
513    
 # this is a hack for S3TC support. r200_screen.c is symlinked to  
 # radeon_screen.c in git, but is its own file in the tarball.  
 cp -f src/mesa/drivers/dri/{radeon,r200}/radeon_screen.c  
   
514  %build  %build
515  # (re)generate auto* generated files using our autotools and libtoolize  # (re)generate auto* generated files using our autotools and libtoolize
516  autoreconf -vfi  autoreconf -vfi
# Line 540  automake --add-missing Line 529  automake --add-missing
529                  --enable-gles2 \                  --enable-gles2 \
530                  --disable-xvmc \                  --disable-xvmc \
531                  --enable-vdpau \                  --enable-vdpau \
532                  --enable-va \                  %{?with_vaapi:--enable-va} \
533                  --with-platforms=x11,wayland,drm \                  --with-platforms=x11,drm,surfaceless,wayland \
534                  --enable-shared-glapi \                  --enable-shared-glapi \
535                  --enable-gbm \                  --enable-gbm \
536                  --enable-glx \                  --enable-glx \
# Line 551  automake --add-missing Line 540  automake --add-missing
540                  --enable-dri \                  --enable-dri \
541                  --enable-xa \                  --enable-xa \
542                  --enable-nine \                  --enable-nine \
543                  --with-gallium-drivers=r300,r600,radeonsi,nouveau,swrast,virgl%{?gallium_platform_drivers} \                  --with-gallium-drivers=r300,r600,radeonsi,nouveau,swrast,%{?with_freedreno:freedreno,}%{?with_etnaviv:etnaviv,imx,}%{?with_vc4:vc4,}virgl%{?gallium_platform_drivers} \
544          %{?dri_drivers}          %{?dri_drivers}
545                  # end of configure options                  # end of configure options
546    
# Line 582  rm -f %{buildroot}%{_includedir}/GL/w*.h Line 571  rm -f %{buildroot}%{_includedir}/GL/w*.h
571  # remove .la files  # remove .la files
572  find %{buildroot} -name '*.la' -delete  find %{buildroot} -name '*.la' -delete
573    
574    # remove libwayland-egl on F28+ where it's built as part of wayland source package
575    %if !%{?with_wayland_egl}
576    rm -f %{buildroot}%{_libdir}/libwayland-egl.so*
577    rm -f %{buildroot}%{_libdir}/pkgconfig/wayland-egl.pc
578    %endif
579    
580  #------------------------------------------------------------------------------  #------------------------------------------------------------------------------
581    
582  %files  %files
# Line 619  find %{buildroot} -name '*.la' -delete Line 614  find %{buildroot} -name '*.la' -delete
614  %{_libdir}/libgbm.so.%{gbmmajor}  %{_libdir}/libgbm.so.%{gbmmajor}
615  %{_libdir}/libgbm.so.%{gbmmajor}.*  %{_libdir}/libgbm.so.%{gbmmajor}.*
616    
617    %if %{?with_wayland_egl}
618  %files -n %{libwaylandeglname}  %files -n %{libwaylandeglname}
619  %{_libdir}/libwayland-egl.so.%{waylandeglmajor}  %{_libdir}/libwayland-egl.so.%{waylandeglmajor}
620  %{_libdir}/libwayland-egl.so.%{waylandeglmajor}.*  %{_libdir}/libwayland-egl.so.%{waylandeglmajor}.*
621    %endif
622    
623  %files -n %{libxaname}  %files -n %{libxaname}
624  %{_libdir}/libxatracker.so.%{xamajor}{,.*}  %{_libdir}/libxatracker.so.%{xamajor}{,.*}
# Line 679  find %{buildroot} -name '*.la' -delete Line 676  find %{buildroot} -name '*.la' -delete
676  %{_includedir}/gbm.h  %{_includedir}/gbm.h
677  %{_libdir}/pkgconfig/gbm.pc  %{_libdir}/pkgconfig/gbm.pc
678    
679    %if %{?with_wayland_egl}
680  %files -n %{libwaylandeglname}-devel  %files -n %{libwaylandeglname}-devel
681  %{_libdir}/libwayland-egl.so  %{_libdir}/libwayland-egl.so
682  %{_libdir}/pkgconfig/wayland-egl.pc  %{_libdir}/pkgconfig/wayland-egl.pc
683    %endif
684    
685  %files -n %{libxaname}-devel  %files -n %{libxaname}-devel
686  %{_libdir}/libxatracker.so  %{_libdir}/libxatracker.so

Legend:
Removed from v.1191955  
changed lines
  Added in v.1322549

  ViewVC Help
Powered by ViewVC 1.1.30