NetworkManager: fix cross-compile for mipselhf

This commit is contained in:
Đoàn Trần Công Danh 2020-03-23 23:25:54 +07:00 committed by Jürgen Buchmüller
parent d4ef14930b
commit 0b53e778d5
2 changed files with 18 additions and 21 deletions

View file

@ -1,8 +1,10 @@
Reason: Fix crossbuilding GIR
Upstream: No, not upstreamable since this is very specific to the Void setup
diff --git clients/common/meson.build clients/common/meson.build
index afa257b..50b53e7 100644
--- clients/common/meson.build
+++ clients/common/meson.build
@@ -34,7 +34,7 @@ if enable_introspection
@@ -35,7 +35,7 @@ if enable_introspection
settings_docs,
input: nm_property_docs,
output: settings_docs,
@ -11,26 +13,17 @@ Upstream: No, not upstreamable since this is very specific to the Void setup
)
test(
--- libnm/meson.build.orig Mon Jan 13 02:12:09 2020
+++ libnm/meson.build Mon Jan 13 02:17:17 2020
@@ -236,7 +236,24 @@
diff --git libnm/meson.build libnm/meson.build
index 51ca46d..f14d861 100644
--- libnm/meson.build
+++ libnm/meson.build
@@ -236,7 +236,13 @@ if enable_introspection
)
endif
- generate_setting_docs = join_paths(meson.current_source_dir(), 'generate-setting-docs.py')
+ if meson.is_cross_build()
+ arch = host_machine.cpu_family()
+ endian = host_machine.endian()
+ if arch == 'x86'
+ qemu_arch = 'i386'
+ elif arch == 'x86_64'
+ qemu_arch = 'x86_64'
+ elif arch == 'ppc64' and endian == 'little'
+ qemu_arch = 'ppc64le'
+ else
+ qemu_arch = host_machine.cpu_family()
+ endif
+ qemu = '/usr/bin/qemu-' + qemu_arch + '-static'
+ qemu = '/usr/bin/qemu-@XBPS_TARGET_QEMU_MACHINE@-static'
+ qemu_python3_cmd = qemu + ' -L @XBPS_CROSS_BASE@ @XBPS_CROSS_BASE@/bin/python3'
+ generate_setting_docs = ['sh', '-c', qemu_python3_cmd, join_paths(meson.current_source_dir(), 'generate-setting-docs.py')]
+ else
@ -39,7 +32,7 @@ Upstream: No, not upstreamable since this is very specific to the Void setup
gi_typelib_path = run_command('printenv', 'GI_TYPELIB_PATH').stdout()
if gi_typelib_path != ''
@@ -261,7 +278,7 @@
@@ -261,7 +267,7 @@ if enable_introspection
name,
input: libnm_gir[0],
output: name,
@ -48,7 +41,7 @@ Upstream: No, not upstreamable since this is very specific to the Void setup
depends: libnm_gir,
)
@@ -270,7 +287,7 @@
@@ -270,7 +276,7 @@ if enable_introspection
name,
input: [libnm_gir[0], nm_settings_docs_overrides],
output: name,

View file

@ -1,9 +1,9 @@
# Template file for 'NetworkManager'
pkgname=NetworkManager
version=1.22.6
revision=1
revision=2
build_style=meson
build_helper="gir"
build_helper="gir qemu"
configure_args="-Dpolkit_agent=true -Dsystemd_journal=false
-Dlibaudit=no -Dovs=false -Dlibnm_glib=true -Dselinux=false
-Dmodify_system=true -Dpolkit_agent=true -Dsystemdsystemunitdir=no
@ -12,6 +12,7 @@ configure_args="-Dpolkit_agent=true -Dsystemd_journal=false
-Dpppd_plugin_dir=/usr/lib/pppd/2.4.7 -Dresolvconf=/usr/bin/resolvconf
-Ddhclient=/usr/bin/dhclient -Dkernel_firmware_dir=/usr/lib/firmware
-Ddnsmasq=/usr/bin/dnsmasq -Ddbus_conf_dir=/etc/dbus-1/system.d
-Ddhcpcd=/usr/bin/dhcpcd -Diptables=/usr/bin/iptables
-Diwd=true
-Dudev_dir=/usr/lib/udev -Dintrospection=$(vopt_if gir true false)
-Dvapi=$(vopt_if vala true false)
@ -58,7 +59,10 @@ build_options_default="gir vala elogind"
pre_configure() {
if [ "$CROSS_BUILD" ]; then
# Replace the values from our patch into the system itself
sed -i -e "s|@XBPS_CROSS_BASE@|${XBPS_CROSS_BASE}|g" libnm/meson.build
vsed -i \
-e "s|@XBPS_CROSS_BASE@|${XBPS_CROSS_BASE}|g" \
-e "s|@XBPS_TARGET_QEMU_MACHINE@|${XBPS_TARGET_QEMU_MACHINE}|" \
libnm/meson.build
fi
}