SHA256
1
0
forked from pool/meson

Accepting request 436348 from devel:tools:building

OBS-URL: https://build.opensuse.org/request/show/436348
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/meson?expand=0&rev=10
This commit is contained in:
Dominique Leuenberger 2016-10-20 21:09:46 +00:00 committed by Git OBS Bridge
commit 8f8e0a15f0
8 changed files with 37 additions and 151 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c3a5bfe863b3a041469bccee9ad5b4fd7c8d451d633381fe40102731cec5b294
size 482217

View File

@ -1,17 +0,0 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJXnQE5AAoJEDv0aTv+65QoRTIQAJ5FNydWlg/fH+ClJ8EqAffE
pejBz8/gxnp87z2nWsvJQNqz2oCk2HJx6VmcaZv5RUvWpyz3aq6R4OR8m8F0HMLU
hSAXten62GlEy9jz2zL9k+VmC+kxnBWMqAD5zSbddVRDeeJqt6/iSq/XK1lhE1ol
YSz2uhxZ3diouKlE9YCTq2kBpEnC6G1Q4p7F5QIfLkxLJvhHaE/toMrn/eijTev6
zMvSSgCNzdjl61xYj0kaur04wM2B1RlHeZ7UOa2Q1g5dHjf16WLKMAwr8B3rxDwj
SNIyEO9ytOP2BD/Oa+Vcp71ym+euJqSj+NmUvi77CtHVWH7hF+DfAkw7ccZx0NrC
XyA/xLI3QlW9nUW1CDo5PVwTuRx5WJ1kHyUHtwKjGEFfEB2Z+FPu53JkubRLEuMv
hUCLg0NVAZA7HtdxbA0yJl1DJ78LRRRM2mt3Gsn4sYUClUml1jybTqfPT4ydT2z7
2dsix1/y/lRvLklSkWoXMQu6vzLYKEnVm/PRTx7+KO+wmNDupWByVlU0pPvHzFRm
3ci2rMaX4gwVbwd5OVGqtvsH3MU4g6Sh572NfQk4ARHoSN+Mf31wvVGUC5FMLR6k
OLinhO8PbmIHnCr9uOGsuRqoDsWUYvk+6cy7SZW8HG18l/Qq/EkTeVTE5RUpi7/j
k+S5sef2G0zSDGY3Cgx2
=+Twl
-----END PGP SIGNATURE-----

3
meson-0.35.1.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b47edb53bd7554cb7890a32399fdf6402e8079379393893ab3dec8fffcbfba2c
size 510957

16
meson-0.35.1.tar.gz.asc Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIcBAABCAAGBQJYBRSVAAoJEDv0aTv+65QoCk4P/0rS+s70UeA5WvG/wyMKHD9Y
kTCVA4j1J6a6cHkV3sXnzB+pAOhNt3s+l1aeVXu8CqAA4THNmz/5Ih64b4tT//fX
/kI61IAuXqVCzvmXmf9/rdQAAdlEa7kZtP87jstD2BvcYg7YeKTlzutJNqu4x/da
wTJYgSbJ5WNeVSM96k1SZX/0WULeE1AiNPatBu5XIx2sujfyBy97pQBqtGQHzSA5
rfpDtp1zQy+OPPWCBWk6Ya0eTBOv2FdleM+kcszoOMwXeWNVerrhm5ReB9fcxMYd
n78GzhdntDtbXwew5WxqDoj7OL4m/MW3oVpbnIycabOxuazLSQP/C+6K3UbMLClS
pNCqWdfi0pBIRdWl839MTqSkxyoiXIs1Pi0NvUO32r/xzx06g9qdlWAEavc5rege
i7zm2mpeRGdgcYfdyn5MZXo6MpYd0kumPyE3YiGKYby3NxAAM+jgcwEs1EjOYul7
CC/vbDx3PhtITUKxKKilhnH7cAyDVRkMh+EnpAJBH6VizT1XySs18AmxLs23hga9
YIgJJQNKWkmLLHaZVRj+c6QS/pcfbbJXYiCL6IFSXhIE1Uzw0NMYSNNxjmUWAyLY
b6Y0CaJ1pLOT0bt3dLkkmL/LJirM7CB9xSGomlX4/L3Y7mboL9OmNbyLBK2XctyE
Yucuxwe9Ghk4dNMjUoPv
=3doe
-----END PGP SIGNATURE-----

View File

@ -1,96 +0,0 @@
From 3671c40a4b8ea0c0e7899caf27074f604cb95bcf Mon Sep 17 00:00:00 2001
From: Jussi Pakkanen <jpakkane@gmail.com>
Date: Tue, 2 Aug 2016 21:45:45 +0300
Subject: [PATCH] Handle both DT_RPATH as well as DT_RUNPATH when fixing rpath
settings.
---
mesonbuild/scripts/depfixer.py | 30 +++++++++++++++++++++++-------
1 file changed, 23 insertions(+), 7 deletions(-)
diff --git a/mesonbuild/scripts/depfixer.py b/mesonbuild/scripts/depfixer.py
index 8ff0dd1..cb136f4 100644
--- a/mesonbuild/scripts/depfixer.py
+++ b/mesonbuild/scripts/depfixer.py
@@ -20,6 +20,7 @@
SHT_STRTAB = 3
DT_NEEDED = 1
DT_RPATH = 15
+DT_RUNPATH = 29
DT_STRTAB = 5
DT_SONAME = 14
@@ -211,21 +212,29 @@ def print_soname(self):
self.bf.seek(strtab.val + soname.val)
print(self.read_str())
- def get_rpath_offset(self):
+ def get_entry_offset(self, entrynum):
sec = self.find_section(b'.dynstr')
for i in self.dynamic:
- if i.d_tag == DT_RPATH:
+ if i.d_tag == entrynum:
return sec.sh_offset + i.val
return None
def print_rpath(self):
- offset = self.get_rpath_offset()
+ offset = self.get_entry_offset(DT_RPATH)
if offset is None:
print("This file does not have an rpath.")
else:
self.bf.seek(offset)
print(self.read_str())
+ def print_runpath(self):
+ offset = self.get_entry_offset(DT_RUNPATH)
+ if offset is None:
+ print("This file does not have a runpath.")
+ else:
+ self.bf.seek(offset)
+ print(self.read_str())
+
def print_deps(self):
sec = self.find_section(b'.dynstr')
deps = []
@@ -257,9 +266,15 @@ def fix_deps(self, prefix):
self.bf.write(newname)
def fix_rpath(self, new_rpath):
+ # The path to search for can be either rpath or runpath.
+ # Fix both of them to be sure.
+ self.fix_rpathtype_entry(new_rpath, DT_RPATH)
+ self.fix_rpathtype_entry(new_rpath, DT_RUNPATH)
+
+ def fix_rpathtype_entry(self, new_rpath, entrynum):
if isinstance(new_rpath, str):
new_rpath = new_rpath.encode('utf8')
- rp_off = self.get_rpath_offset()
+ rp_off = self.get_entry_offset(entrynum)
if rp_off is None:
if self.verbose:
print('File does not have rpath. It should be a fully static executable.')
@@ -272,12 +287,12 @@ def fix_rpath(self, new_rpath):
self.bf.write(new_rpath)
self.bf.write(b'\0'*(len(old_rpath) - len(new_rpath) + 1))
if len(new_rpath) == 0:
- self.remove_rpath_entry()
+ self.remove_rpath_entry(entrynum)
- def remove_rpath_entry(self):
+ def remove_rpath_entry(self, entrynum):
sec = self.find_section(b'.dynamic')
for (i, entry) in enumerate(self.dynamic):
- if entry.d_tag == DT_RPATH:
+ if entry.d_tag == entrynum:
rpentry = self.dynamic[i]
rpentry.d_tag = 0
self.dynamic = self.dynamic[:i] + self.dynamic[i+1:] + [rpentry]
@@ -296,6 +311,7 @@ def run(args):
e = Elf(args[0])
if len(args) == 1:
e.print_rpath()
+ e.print_runpath()
else:
new_rpath = args[1]
e.fix_rpath(new_rpath)

View File

@ -1,27 +0,0 @@
From 660c872422be4ed7fb4499d1263793fb0e976141 Mon Sep 17 00:00:00 2001
From: Wim Taymans <wtaymans@redhat.com>
Date: Mon, 4 Jul 2016 12:29:56 +0200
Subject: [PATCH] gnome.py: typelib files should be installed in libdir
The typelib files should be installed in libdir, even on debian (which
has them in /usr/lib/x86_64-linux-gnu/girepository-1.0/).
---
mesonbuild/modules/gnome.py | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
index 2c37655..037b1f5 100644
--- a/mesonbuild/modules/gnome.py
+++ b/mesonbuild/modules/gnome.py
@@ -228,9 +228,7 @@ def generate_gir(self, state, args, kwargs):
kwargs['output'] = typelib_output
kwargs['command'] = typelib_cmd
- # Note that this can't be libdir, because e.g. on Debian it points to
- # lib/x86_64-linux-gnu but the girepo dir is always under lib.
- kwargs['install_dir'] = 'lib/girepository-1.0'
+ kwargs['install_dir'] = os.path.join(state.environment.get_libdir(), 'girepository-1.0')
typelib_target = TypelibTarget(typelib_output, state.subdir, kwargs)
return [scan_target, typelib_target]

View File

@ -1,3 +1,19 @@
-------------------------------------------------------------------
Tue Oct 18 20:43:34 UTC 2016 - sor.alexei@meowr.ru
- Update to version 0.35.1:
* No changelog available.
-------------------------------------------------------------------
Fri Oct 14 20:46:56 UTC 2016 - zaitor@opensuse.org
- Update to version 0.35.0:
+ No changelog available from upstream.
- Changes from version 0.34.0:
+ No changelog available from upstream.
- Drop meson-633.patch and meson-typelib-install.patch : Fixed
upstream.
-------------------------------------------------------------------
Wed Aug 17 15:43:57 UTC 2016 - dimstar@opensuse.org

View File

@ -18,7 +18,7 @@
%define _name mesonbuild
Name: meson
Version: 0.33.0
Version: 0.35.1
Release: 0
Summary: High productivity build system
License: Apache-2.0
@ -27,10 +27,6 @@ Url: http://mesonbuild.com/
Source: https://github.com/%{_name}/%{name}/releases/download/%{version}/%{name}-%{version}.tar.gz
Source1: https://github.com/%{_name}/%{name}/releases/download/%{version}/%{name}-%{version}.tar.gz.asc
Source2: %{name}.keyring
# PATCH-FIX-UPSTREAM meson-633.patch dimstar@opensuse.org -- Handle both DT_RPATH as well as DT_RUNPATH when fixing rpath settings
Patch0: meson-633.patch
# PATCH-FIX-UPSTREAM meson-typelib-install.patch dimstar@opensuse.org -- Correct install path for gi typelibs, taken from upstream git
Patch1: meson-typelib-install.patch
BuildRequires: bison
BuildRequires: boost-devel
BuildRequires: flex
@ -72,8 +68,6 @@ and the like.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
# Lack of gtest, gmock, gnustep.
rm -rf "test cases/frameworks/2 gtest" \
@ -90,7 +84,7 @@ python3 setup.py install \
for file in %{buildroot}%{_bindir}/*.py; do
mv -fv "$file" "${file%.py}"
done
install -Dm 0644 data/macros.%{name} \
install -Dpm 0644 data/macros.%{name} \
%{buildroot}%{_rpmconfigdir}/macros.d/macros.%{name}
%check