summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTreeve Jelbert2019-03-19 18:47:57 +0100
committerTreeve Jelbert2019-03-19 18:47:57 +0100
commit7875fe1ad011aeb7545915a04fe39a430dd5a378 (patch)
tree8d21d0f6b4c2049c0c1eecb91953232b945ed11c
parent040fe5003b881adba70147d50832d671be49d87b (diff)
xf86-video-ati: => 19.0.1
-rwxr-xr-xxorg-driver/xf86-video-ati/DEPENDS25
-rwxr-xr-xxorg-driver/xf86-video-ati/DETAILS3
-rw-r--r--xorg-driver/xf86-video-ati/HISTORY5
-rw-r--r--[-rwxr-xr-x]xorg-driver/xf86-video-ati/PRE_BUILD8
-rw-r--r--xorg-driver/xf86-video-ati/patches/0001-meson-build.patch274
-rw-r--r--xorg-driver/xf86-video-ati/patches/0002-rename-man-files-for-meson.patch23
6 files changed, 315 insertions, 23 deletions
diff --git a/xorg-driver/xf86-video-ati/DEPENDS b/xorg-driver/xf86-video-ati/DEPENDS
index 4b075eca1d..9ab605f5c7 100755
--- a/xorg-driver/xf86-video-ati/DEPENDS
+++ b/xorg-driver/xf86-video-ati/DEPENDS
@@ -1,18 +1,9 @@
+depends meson &&
+depends ninja-build-system &&
depends xorgproto &&
-depends -sub "RADEON" libdrm &&
-depends libpciaccess &&
-depends libpciaccess &&
-depends pixman &&
-depends util-macros &&
-
-if [[ $XF86_VIDEO_ATI_BRANCH == scm ]]; then
- depends git
-fi &&
-
-depends -sub GLAMOR XSERVER &&
-depends -sub DRI OPENGL &&
-
-optional_depends eudev \
- '--enable-udev' \
- '--disable-udev' \
- 'for libudev hardware detection'
+depends -sub "RADEON" libdrm &&
+depends XSERVER &&
+depends libpciaccess &&
+depends libxcb &&
+depends -sub DRI MESA
+optional_depends eudev '' '' 'libudev support'
diff --git a/xorg-driver/xf86-video-ati/DETAILS b/xorg-driver/xf86-video-ati/DETAILS
index 31b3711868..f31c092de5 100755
--- a/xorg-driver/xf86-video-ati/DETAILS
+++ b/xorg-driver/xf86-video-ati/DETAILS
@@ -1,4 +1,5 @@
. "$GRIMOIRE/FUNCTIONS"
+. "$GRIMOIRE/MESONFUNCTIONS"
SPELL=xf86-video-ati
if [[ $XF86_VIDEO_ATI_BRANCH == scm ]]; then
VERSION=$(get_scm_version)
@@ -8,7 +9,7 @@ if [[ $XF86_VIDEO_ATI_BRANCH == scm ]]; then
SOURCE_IGNORE=volatile
SOURCE_DIRECTORY=${BUILD_DIRECTORY}/${SPELL}-scm
else
- VERSION=19.0.0
+ VERSION=19.0.1
SOURCE=${SPELL}-${VERSION}.tar.bz2
SOURCE_URL[0]=https://xorg.freedesktop.org/releases/individual/driver/${SOURCE}
SOURCE2=$SOURCE.sig
diff --git a/xorg-driver/xf86-video-ati/HISTORY b/xorg-driver/xf86-video-ati/HISTORY
index 1e1a11e670..ed85e036e1 100644
--- a/xorg-driver/xf86-video-ati/HISTORY
+++ b/xorg-driver/xf86-video-ati/HISTORY
@@ -1,3 +1,8 @@
+2019-03-19 Treeve Jelbert <treeve@sourcemage.org>
+ * DETAILS: version 19.0.1
+ * PRE_BUILD DEPENDS patches/*: support meson build
+ this give much faster builds I have used it for several months
+
2019-03-06 Treeve Jelbert <treeve@sourcemage.org>
* DETAILS: version 19.0.0
diff --git a/xorg-driver/xf86-video-ati/PRE_BUILD b/xorg-driver/xf86-video-ati/PRE_BUILD
index faba109e21..922c0ab256 100755..100644
--- a/xorg-driver/xf86-video-ati/PRE_BUILD
+++ b/xorg-driver/xf86-video-ati/PRE_BUILD
@@ -1,5 +1,3 @@
-default_pre_build &&
-if [[ $XF86_VIDEO_ATI_BRANCH == scm ]]; then
- cd "$SOURCE_DIRECTORY" &&
- NOCONFIGURE=1 ./autogen.sh
-fi
+default_pre_build &&
+cd $SOURCE_DIRECTORY &&
+apply_patch_dir patches
diff --git a/xorg-driver/xf86-video-ati/patches/0001-meson-build.patch b/xorg-driver/xf86-video-ati/patches/0001-meson-build.patch
new file mode 100644
index 0000000000..422b17a894
--- /dev/null
+++ b/xorg-driver/xf86-video-ati/patches/0001-meson-build.patch
@@ -0,0 +1,274 @@
+From 32a32744c1338970e3e06b64a396d12a6b2e651f Mon Sep 17 00:00:00 2001
+From: Treeve Jelbert <treeve@sourcemage.org>
+Date: Tue, 22 May 2018 16:19:02 +0200
+Subject: [PATCH 1/2] meson build
+
+---
+ config.h.meson | 44 ++++++++++++++++++
+ meson.build | 121 ++++++++++++++++++++++++++++++++++++++++++++++++
+ src/meson.build | 74 +++++++++++++++++++++++++++++
+ 3 files changed, 239 insertions(+)
+ create mode 100644 config.h.meson
+ create mode 100644 meson.build
+ create mode 100644 src/meson.build
+
+diff --git a/config.h.meson b/config.h.meson
+new file mode 100644
+index 00000000..f7688cc8
+--- /dev/null
++++ b/config.h.meson
+@@ -0,0 +1,44 @@
++#include "xorg-server.h"
++#define STDC_HEADERS 1
++#mesondefine GLAMOR
++
++#mesondefine HAVE_BYTESWAP_H
++#mesondefine HAVE_DRI3_H
++#mesondefine HAVE_FBGLYPHS
++#mesondefine HAVE_GBM_BO_USE_LINEAR
++#mesondefine HAVE_GLAMOR_EGL_DESTROY_TEXTURED_PIXMAP
++#mesondefine HAVE_GLAMOR_FINISH
++#mesondefine HAVE_GLAMOR_GLYPHS_INIT
++#mesondefine HAVE_GLAMOR_H
++#mesondefine HAVE_INTTYPES_H
++#mesondefine HAVE_LIBUDEV
++#mesondefine HAVE_MEMORY_H
++#mesondefine HAVE_MISYNCSHM_H
++#mesondefine HAVE_PRESENT_H
++#mesondefine HAVE_REGIONDUPLICATE
++#mesondefine HAVE_STRING_H
++#mesondefine HAVE_SYS_STAT_H
++#mesondefine HAVE_SYS_TYPES_H
++#mesondefine HAVE_UNISTD_H
++
++#mesondefine HAVE_XEXTPROTO_71
++#mesondefine HAVE_XF86_CURSOR_RESET_CURSOR
++
++/* Name of package */
++#mesondefine PACKAGE
++#mesondefine PACKAGE_BUGREPORT
++#mesondefine PACKAGE_NAME
++#mesondefine PACKAGE_STRING
++#mesondefine PACKAGE_TARNAME
++#mesondefine PACKAGE_URL
++#mesondefine PACKAGE_VERSION
++#mesondefine PACKAGE_VERSION_MAJOR
++#mesondefine PACKAGE_VERSION_MINOR
++#mesondefine PACKAGE_VERSION_PATCHLEVEL
++
++#mesondefine USE_GLAMOR
++
++#mesondefine USE_SYS_ENDIAN_H
++
++#mesondefine VERSION
++
+diff --git a/meson.build b/meson.build
+new file mode 100644
+index 00000000..320679b6
+--- /dev/null
++++ b/meson.build
+@@ -0,0 +1,121 @@
++project(
++'xf86-video-ati',
++ ['c'],
++ version : '19.0.0',
++ license : 'MIT',
++ meson_version : '>= 0.46',
++ default_options : ['buildtype=debugoptimized']
++)
++vers_parts = meson.project_version().split('.')
++
++config = configuration_data()
++
++config.set_quoted('PACKAGE_NAME', meson.project_name())
++config.set_quoted('PACKAGE_VERSION', meson.project_version())
++config.set('PACKAGE_VERSION_MAJOR', vers_parts[0])
++config.set('PACKAGE_VERSION_MINOR', vers_parts[1])
++config.set('PACKAGE_VERSION_PATCHLEVEL', vers_parts[2])
++config.set_quoted('PACKAGE_STRING', '@0@-@1@'.format(meson.project_name(),
++meson.project_version()))
++
++pkg = import('pkgconfig')
++c_args = ['-D_GNU_SOURCE', '-std=gnu99']
++foreach a : c_args
++ add_global_arguments(a, language : ['c'])
++endforeach
++
++#add_project_arguments( language : 'c')
++
++cc = meson.get_compiler('c')
++
++c_args = ['-DHAVE_CONFIG_H']
++
++#pre_args = ['-D__USE_POSIX']
++
++foreach a : c_args
++ add_project_arguments(a, language : ['c'])
++endforeach
++
++dri_dep = dependency ('xf86driproto', required : true)
++drip_dep = dependency ('xf86driproto')
++libdrm_dep = dependency('libdrm_radeon', version: '>= 2.4.88', required : true)
++libxcb_dep = dependency('xcb-dri3', required : true)
++pciaccess_dep = dependency('pciaccess', version: '>= 0.12.901')
++udev_dep = dependency('libudev', version: '>= 143')
++presentproto_dep = dependency ('presentproto')
++randrproto_dep = dependency ('randrproto')
++renderproto_dep = dependency ('renderproto')
++videoproto_dep = dependency ('videoproto')
++xextproto_dep = dependency ('xextproto', required : true)
++xproto_dep = dependency ('xproto')
++xorg_dep = dependency('xorg-server')
++# _dep = dependency ('')
++moddir = xorg_dep.get_pkgconfig_variable('moduledir') + '/drivers'
++
++inc_root = include_directories('.')
++dri_inc = include_directories(dri_dep.get_pkgconfig_variable('includedir'))
++drip_inc = include_directories(drip_dep.get_pkgconfig_variable('includedir'))
++xcb_inc = include_directories(libxcb_dep.get_pkgconfig_variable('includedir'))
++xorg_inc = include_directories(xorg_dep.get_pkgconfig_variable('sdkdir'))
++
++config.set10('HAVE_LIBUDEV', udev_dep.found())
++
++foreach header : ['byteswap.h','sys/endian.h','unistd.h','sys/types.h','sys/stat.h', 'string.h']
++ if cc.compiles('#include <@0@>'.format(header), name : '@0@ works'.format(header))
++ config.set10('HAVE_' + header.underscorify().to_upper(),true)
++ endif
++endforeach
++
++foreach header : ['dri3.h','present.h','xextproto_71','misyncshm.h','xorg-server.h']
++ config.set10('HAVE_' + header.underscorify().to_upper(),true)
++# cc.compiles('#include <xorg/@0@>'.format(header), name : '@0@ works'.format(header)))
++endforeach
++
++
++# hdrinc is used for lots of subsequent tests
++hdrinc = '''
++#include <xorg/xorg-server.h>
++'''
++header = 'xorg/glamor.h'
++if cc.has_header(header)
++ config.set10('GLAMOR',true)
++ config.set10('USE_GLAMOR',true)
++ config.set10('GLAMOR_NO_DRI3',true)
++ foreach symbol : ['glamor_glyphs_init','glamor_egl_destroy_textured_pixmap','glamor_finish']
++ if cc.has_header_symbol(header,symbol, prefix : hdrinc, dependencies : [xorg_dep])
++ config.set10('HAVE_' + symbol.underscorify(),true)
++ endif
++ endforeach
++endif
++
++header = 'xorg/regionstr.h'
++symbol = 'RegionDuplicate'
++if cc.has_header_symbol(header,symbol, prefix : hdrinc, dependencies : [xorg_dep])
++ config.set10('HAVE_' + symbol.to_upper(),true)
++endif
++
++header = 'xorg/xf86Cursor.h'
++symbol = 'xf86CursorResetCursor'
++if cc.has_header_symbol(header,symbol, prefix : hdrinc, dependencies : [xorg_dep])
++ config.set10('HAVE_XF86_CURSOR_RESET_CURSOR',true)
++endif
++
++
++
++# don't know how to check these yet
++foreach symbol : [ 'fbGlyphs']
++ config.set10('HAVE_' + symbol.to_upper(),true)
++endforeach
++
++
++config_file = configure_file(
++ input : 'config.h.meson',
++ output : 'config.h',
++ configuration : config,
++)
++
++subdir('src')
++install_man('man/ati.4','man/radeon.4')
++
++datadir = xorg_dep.get_pkgconfig_variable('sysconfigdir')
++install_data('conf/10-radeon.conf',install_dir: datadir)
+diff --git a/src/meson.build b/src/meson.build
+new file mode 100644
+index 00000000..70edb6fc
+--- /dev/null
++++ b/src/meson.build
+@@ -0,0 +1,74 @@
++#kate: indent-width 2; tab-width 2;
++ati_files = files(
++ 'ati.c' ,
++ 'atimodule.c' ,
++)
++radeon_files = files(
++ 'cayman_accel.c' ,
++ 'cayman_shader.c' ,
++ 'drmmode_display.c' ,
++ 'evergreen_accel.c' ,
++ 'evergreen_exa.c' ,
++ 'evergreen_shader.c' ,
++ 'evergreen_textured_videofuncs.c' ,
++ 'r600_exa.c' ,
++ 'r600_shader.c' ,
++ 'r600_textured_videofuncs.c' ,
++ 'r6xx_accel.c' ,
++ 'radeon_accel.c' ,
++ 'radeon_bo_helper.c' ,
++ 'radeon_dri2.c' ,
++ 'radeon_dri3.c' ,
++ 'radeon_drm_queue.c' ,
++ 'radeon_exa.c' ,
++# 'radeon_exa_funcs.c' ,
++# 'radeon_exa_render.c' ,
++# 'radeon_exa_shared.c' ,
++ 'radeon_kms.c' ,
++ 'radeon_misc.c' ,
++ 'radeon_present.c' ,
++ 'radeon_probe.c' ,
++ 'radeon_sync.c' ,
++ 'radeon_textured_video.c' ,
++# 'radeon_textured_videofuncs.c' ,
++ 'radeon_vbo.c' ,
++ 'radeon_video.c' ,
++ 'radeon_xvmc.c' ,
++ )
++
++if config.has('GLAMOR')
++ radeon_files += files(
++ 'radeon_glamor.c' ,
++ 'radeon_glamor_wrappers.c' ,
++ )
++endif
++
++common_ldflags = []
++common_ldflags += cc.get_supported_link_arguments([ '-Wl,-Bsymbolic-functions', '-Wl,-z,relro' ])
++
++ati = shared_module(
++ 'ati_drv',
++ ati_files,
++ dependencies : [pciaccess_dep,xorg_dep,libdrm_dep,presentproto_dep,xproto_dep],
++ include_directories : [inc_root,xcb_inc,xorg_inc,dri_inc] ,
++ #link_depends : [],
++ #link_with : [],
++ link_args: [common_ldflags],
++ install : true,
++ name_prefix : '',
++ install_dir: moddir,
++)
++
++radeon = shared_module(
++ 'radeon_drv',
++ radeon_files,
++ dependencies : [udev_dep, libdrm_dep,xorg_dep,xextproto_dep,drip_dep],
++ include_directories : [inc_root,xcb_inc,xorg_inc,dri_inc,drip_inc] ,
++ #link_depends : [],
++ #link_with : [],
++ link_args: [common_ldflags],
++ install : true,
++ name_prefix : '',
++ install_dir: moddir,
++)
++
+--
+2.21.0
+
diff --git a/xorg-driver/xf86-video-ati/patches/0002-rename-man-files-for-meson.patch b/xorg-driver/xf86-video-ati/patches/0002-rename-man-files-for-meson.patch
new file mode 100644
index 0000000000..48b73da4d4
--- /dev/null
+++ b/xorg-driver/xf86-video-ati/patches/0002-rename-man-files-for-meson.patch
@@ -0,0 +1,23 @@
+From ec1ddb5243f9b4e2b885c1ddd7f607411c4e0765 Mon Sep 17 00:00:00 2001
+From: Treeve Jelbert <treeve@sourcemage.org>
+Date: Mon, 11 Mar 2019 10:06:06 +0100
+Subject: [PATCH 2/2] rename man files, for meson
+
+---
+ man/{ati.man => ati.4} | 0
+ man/{radeon.man => radeon.4} | 0
+ 2 files changed, 0 insertions(+), 0 deletions(-)
+ rename man/{ati.man => ati.4} (100%)
+ rename man/{radeon.man => radeon.4} (100%)
+
+diff --git a/man/ati.man b/man/ati.4
+similarity index 100%
+rename from man/ati.man
+rename to man/ati.4
+diff --git a/man/radeon.man b/man/radeon.4
+similarity index 100%
+rename from man/radeon.man
+rename to man/radeon.4
+--
+2.21.0
+