mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-28 22:57:37 +00:00
extra/gtk4 to 4.6.0-2
This commit is contained in:
parent
3a6eddf866
commit
856891d241
2 changed files with 111 additions and 3 deletions
|
@ -6,7 +6,7 @@
|
||||||
pkgbase=gtk4
|
pkgbase=gtk4
|
||||||
pkgname=(gtk4 gtk-update-icon-cache gtk4-docs gtk4-demos)
|
pkgname=(gtk4 gtk-update-icon-cache gtk4-docs gtk4-demos)
|
||||||
pkgver=4.6.0
|
pkgver=4.6.0
|
||||||
pkgrel=1
|
pkgrel=2
|
||||||
epoch=1
|
epoch=1
|
||||||
pkgdesc="GObject-based multi-platform GUI toolkit"
|
pkgdesc="GObject-based multi-platform GUI toolkit"
|
||||||
url="https://www.gtk.org/"
|
url="https://www.gtk.org/"
|
||||||
|
@ -16,15 +16,17 @@ depends=(glib2 cairo pango fribidi gdk-pixbuf2 libpng libtiff libjpeg libepoxy
|
||||||
libgl libegl harfbuzz libxkbcommon graphene iso-codes tracker3
|
libgl libegl harfbuzz libxkbcommon graphene iso-codes tracker3
|
||||||
libcolord wayland libxrandr libx11 libxrender libxi libxext libxcursor
|
libcolord wayland libxrandr libx11 libxrender libxi libxext libxcursor
|
||||||
libxdamage libxfixes fontconfig libxinerama libcloudproviders libcups
|
libxdamage libxfixes fontconfig libxinerama libcloudproviders libcups
|
||||||
rest json-glib gst-plugins-bad-libs librsvg dconf shared-mime-info
|
gst-plugins-bad-libs librsvg dconf shared-mime-info desktop-file-utils
|
||||||
desktop-file-utils adwaita-icon-theme cantarell-fonts)
|
adwaita-icon-theme cantarell-fonts)
|
||||||
makedepends=(git meson gi-docgen shaderc sassc gobject-introspection docbook-xsl
|
makedepends=(git meson gi-docgen shaderc sassc gobject-introspection docbook-xsl
|
||||||
wayland-protocols python-gobject python-docutils)
|
wayland-protocols python-gobject python-docutils)
|
||||||
checkdepends=(weston)
|
checkdepends=(weston)
|
||||||
_commit=70cb61fb7104c76a15bc6494a10e6ff1d470f6d8 # tags/4.6.0^0
|
_commit=70cb61fb7104c76a15bc6494a10e6ff1d470f6d8 # tags/4.6.0^0
|
||||||
source=("git+https://github.com/GNOME/gtk.git#commit=$_commit"
|
source=("git+https://github.com/GNOME/gtk.git#commit=$_commit"
|
||||||
|
fix-resources.diff
|
||||||
gtk-update-icon-cache.{hook,script} gtk4-querymodules.hook)
|
gtk-update-icon-cache.{hook,script} gtk4-querymodules.hook)
|
||||||
sha256sums=('SKIP'
|
sha256sums=('SKIP'
|
||||||
|
'd458d2b9621f5131510238f1167a758d1f6c4baabc2a7fe5f445c7bdba2b0802'
|
||||||
'2d435e3bec8b79b533f00f6d04decb1d7c299c6e89b5b175f20be0459f003fe8'
|
'2d435e3bec8b79b533f00f6d04decb1d7c299c6e89b5b175f20be0459f003fe8'
|
||||||
'f1d3a0dbfd82f7339301abecdbe5f024337919b48bd0e09296bb0e79863b2541'
|
'f1d3a0dbfd82f7339301abecdbe5f024337919b48bd0e09296bb0e79863b2541'
|
||||||
'cd8e607eddd9941f279084e1d15309941423d26cca1897f43524a02e58e48816')
|
'cd8e607eddd9941f279084e1d15309941423d26cca1897f43524a02e58e48816')
|
||||||
|
@ -36,6 +38,10 @@ pkgver() {
|
||||||
|
|
||||||
prepare() {
|
prepare() {
|
||||||
cd gtk
|
cd gtk
|
||||||
|
|
||||||
|
# Ensure noexecstack
|
||||||
|
git cherry-pick -n 46509b6dd28c58ae 17c2a1cb4ea2093d
|
||||||
|
git apply -3 ../fix-resources.diff
|
||||||
}
|
}
|
||||||
|
|
||||||
build() {
|
build() {
|
||||||
|
|
102
extra/gtk4/fix-resources.diff
Normal file
102
extra/gtk4/fix-resources.diff
Normal file
|
@ -0,0 +1,102 @@
|
||||||
|
diff --git i/demos/gtk-demo/meson.build w/demos/gtk-demo/meson.build
|
||||||
|
index 5b79dfad5f..7f82c2d6d6 100644
|
||||||
|
--- i/demos/gtk-demo/meson.build
|
||||||
|
+++ w/demos/gtk-demo/meson.build
|
||||||
|
@@ -174,42 +174,46 @@ if build_machine.system() == 'linux' and objcopy.found() and objcopy_supports_ad
|
||||||
|
depfile : 'gtkdemo.gresource.d',
|
||||||
|
command : [glib_compile_resources,
|
||||||
|
'--generate',
|
||||||
|
+ '--internal',
|
||||||
|
'--target=@OUTPUT@',
|
||||||
|
'--dependency-file=@DEPFILE@',
|
||||||
|
'--sourcedir=' + meson.current_source_dir(),
|
||||||
|
'--sourcedir=' + meson.current_build_dir(),
|
||||||
|
'@INPUT@'])
|
||||||
|
|
||||||
|
# Create resource data file
|
||||||
|
gtkdemo_resources_c = custom_target('gtkdemo_resources.c',
|
||||||
|
input : 'demo.gresource.xml',
|
||||||
|
output : 'gtkdemo_resources.c',
|
||||||
|
depfile : 'gtkdemo_resources.c.d',
|
||||||
|
command : [glib_compile_resources,
|
||||||
|
'--generate-source',
|
||||||
|
+ '--internal',
|
||||||
|
'--target=@OUTPUT@',
|
||||||
|
'--dependency-file=@DEPFILE@',
|
||||||
|
'--sourcedir=' + meson.current_source_dir(),
|
||||||
|
'--sourcedir=' + meson.current_build_dir(),
|
||||||
|
'--external-data',
|
||||||
|
'--c-name', '_g_binary_gtkdemo',
|
||||||
|
'@INPUT@'])
|
||||||
|
|
||||||
|
# Create object file containing resource data
|
||||||
|
gtkdemo_resources_binary = custom_target('gtkdemo_resources.o',
|
||||||
|
input : gtkdemo_gresource,
|
||||||
|
output : 'gtkdemo_resources.o',
|
||||||
|
command : [ld,
|
||||||
|
+ '-z', 'noexecstack',
|
||||||
|
'-r',
|
||||||
|
'-b','binary',
|
||||||
|
'@INPUT@',
|
||||||
|
'-o','@OUTPUT@'])
|
||||||
|
|
||||||
|
# Rename symbol to match the one in the C file
|
||||||
|
gtkdemo_resources_o = custom_target('gtkdemo_resources2.o',
|
||||||
|
input : gtkdemo_resources_binary,
|
||||||
|
output : 'gtkdemo_resources2.o',
|
||||||
|
command : [objcopy,
|
||||||
|
+ '--strip-all',
|
||||||
|
'--add-symbol','_g_binary_gtkdemo_resource_data=.data:0',
|
||||||
|
'@INPUT@',
|
||||||
|
'@OUTPUT@'])
|
||||||
|
diff --git i/demos/widget-factory/meson.build w/demos/widget-factory/meson.build
|
||||||
|
index 800230b512..9a083eb1ac 100644
|
||||||
|
--- i/demos/widget-factory/meson.build
|
||||||
|
+++ w/demos/widget-factory/meson.build
|
||||||
|
@@ -18,42 +18,46 @@ if build_machine.system() == 'linux' and objcopy.found() and objcopy_supports_ad
|
||||||
|
depfile: 'widgetfactory.gresource.d',
|
||||||
|
command : [glib_compile_resources,
|
||||||
|
'--generate',
|
||||||
|
+ '--internal',
|
||||||
|
'--target=@OUTPUT@',
|
||||||
|
'--dependency-file=@DEPFILE@',
|
||||||
|
'--sourcedir=' + meson.current_source_dir(),
|
||||||
|
'--sourcedir=' + meson.current_build_dir(),
|
||||||
|
'@INPUT@'])
|
||||||
|
|
||||||
|
# Create resource data file
|
||||||
|
widgetfactory_resources_c = custom_target('widgetfactory_resources.c',
|
||||||
|
input : 'widget-factory.gresource.xml',
|
||||||
|
output : 'widgetfactory_resources.c',
|
||||||
|
depfile: 'widgetfactory_resources.c.d',
|
||||||
|
command : [glib_compile_resources,
|
||||||
|
'--generate-source',
|
||||||
|
+ '--internal',
|
||||||
|
'--target=@OUTPUT@',
|
||||||
|
'--dependency-file=@DEPFILE@',
|
||||||
|
'--sourcedir=' + meson.current_source_dir(),
|
||||||
|
'--sourcedir=' + meson.current_build_dir(),
|
||||||
|
'--external-data',
|
||||||
|
'--c-name', '_g_binary_widgetfactory',
|
||||||
|
'@INPUT@'])
|
||||||
|
|
||||||
|
# Create object file containing resource data
|
||||||
|
widgetfactory_resources_binary = custom_target('widgetfactory_resources.o',
|
||||||
|
input : widgetfactory_gresource,
|
||||||
|
output : 'widgetfactory_resources.o',
|
||||||
|
command : [ld,
|
||||||
|
+ '-z', 'noexecstack',
|
||||||
|
'-r',
|
||||||
|
'-b','binary',
|
||||||
|
'@INPUT@',
|
||||||
|
'-o','@OUTPUT@'])
|
||||||
|
|
||||||
|
# Rename symbol to match the one in the C file
|
||||||
|
widgetfactory_resources_o = custom_target('widgetfactory_resources2.o',
|
||||||
|
input : widgetfactory_resources_binary,
|
||||||
|
output : 'widgetfactory_resources2.o',
|
||||||
|
command : [objcopy,
|
||||||
|
+ '--strip-all',
|
||||||
|
'--add-symbol','_g_binary_widgetfactory_resource_data=.data:0',
|
||||||
|
'@INPUT@',
|
||||||
|
'@OUTPUT@'])
|
Loading…
Reference in a new issue