From 7875fe1ad011aeb7545915a04fe39a430dd5a378 Mon Sep 17 00:00:00 2001 From: Treeve Jelbert Date: Tue, 19 Mar 2019 18:47:57 +0100 Subject: xf86-video-ati: => 19.0.1 --- xorg-driver/xf86-video-ati/DEPENDS | 25 +- xorg-driver/xf86-video-ati/DETAILS | 3 +- xorg-driver/xf86-video-ati/HISTORY | 5 + xorg-driver/xf86-video-ati/PRE_BUILD | 8 +- .../xf86-video-ati/patches/0001-meson-build.patch | 274 +++++++++++++++++++++ .../patches/0002-rename-man-files-for-meson.patch | 23 ++ 6 files changed, 315 insertions(+), 23 deletions(-) mode change 100755 => 100644 xorg-driver/xf86-video-ati/PRE_BUILD create mode 100644 xorg-driver/xf86-video-ati/patches/0001-meson-build.patch create mode 100644 xorg-driver/xf86-video-ati/patches/0002-rename-man-files-for-meson.patch (limited to 'xorg-driver') 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 + * 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 * DETAILS: version 19.0.0 diff --git a/xorg-driver/xf86-video-ati/PRE_BUILD b/xorg-driver/xf86-video-ati/PRE_BUILD old mode 100755 new mode 100644 index faba109e21..922c0ab256 --- 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 +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 '.format(header), name : '@0@ works'.format(header))) ++endforeach ++ ++ ++# hdrinc is used for lots of subsequent tests ++hdrinc = ''' ++#include ++''' ++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 +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 + -- cgit v1.2.3