aboutsummaryrefslogtreecommitdiff
path: root/subprojects
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2023-05-18 16:50:00 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2023-06-06 16:30:01 +0200
commit2019cabfee08dd49c28359b6fd0bac63fb12df9b (patch)
tree97d332166364fecde526bf2729119dd4e7b3781b /subprojects
parentd120116b5d6e81831332f807028a29c5e5815a6a (diff)
meson: subprojects: replace submodules with wrap files
Compared to submodules, .wrap files have several advantages: * option parsing and downloading is delegated to meson * the commit is stored in a text file instead of a magic entry in the git tree object * we could stop shipping external dependencies that are only used as a fallback, but not break compilation on platforms that lack them. For example it may make sense to download dtc at build time, controlled by --enable-download, even when building from a tarball. Right now, this patch does the opposite: make-release treats dtc like libvfio-user (which is not stable API and therefore hasn't found its way into any distros) and keycodemap (which is a copylib, for better or worse). dependency() can fall back to a wrap automatically. However, this is only possible for libraries that come with a .pc file, and this is not very common for libfdt even though the upstream project in principle provides it; it also removes the control that we provide with --enable-fdt={system,internal}. Therefore, the logic to pick system vs. internal libfdt is left untouched. --enable-fdt=git is removed; it was already a synonym for --enable-fdt=internal. Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'subprojects')
-rw-r--r--subprojects/.gitignore3
m---------subprojects/dtc0
-rw-r--r--subprojects/dtc.wrap4
m---------subprojects/keycodemapdb0
-rw-r--r--subprojects/keycodemapdb.wrap4
m---------subprojects/libvfio-user0
-rw-r--r--subprojects/libvfio-user.wrap4
7 files changed, 15 insertions, 0 deletions
diff --git a/subprojects/.gitignore b/subprojects/.gitignore
index 7560ebb0b1..935e9a72a8 100644
--- a/subprojects/.gitignore
+++ b/subprojects/.gitignore
@@ -1,3 +1,6 @@
/packagecache
+/dtc
+/keycodemapdb
+/libvfio-user
/slirp
diff --git a/subprojects/dtc b/subprojects/dtc
deleted file mode 160000
-Subproject b6910bec11614980a21e46fbccc35934b671bd8
diff --git a/subprojects/dtc.wrap b/subprojects/dtc.wrap
new file mode 100644
index 0000000000..d1bc9174e9
--- /dev/null
+++ b/subprojects/dtc.wrap
@@ -0,0 +1,4 @@
+[wrap-git]
+url = https://gitlab.com/qemu-project/dtc.git
+revision = b6910bec11614980a21e46fbccc35934b671bd81
+depth = 1
diff --git a/subprojects/keycodemapdb b/subprojects/keycodemapdb
deleted file mode 160000
-Subproject f5772a62ec52591ff6870b7e8ef32482371f22c
diff --git a/subprojects/keycodemapdb.wrap b/subprojects/keycodemapdb.wrap
new file mode 100644
index 0000000000..dda7b0e571
--- /dev/null
+++ b/subprojects/keycodemapdb.wrap
@@ -0,0 +1,4 @@
+[wrap-git]
+url = https://gitlab.com/qemu-project/keycodemapdb.git
+revision = f5772a62ec52591ff6870b7e8ef32482371f22c6
+depth = 1
diff --git a/subprojects/libvfio-user b/subprojects/libvfio-user
deleted file mode 160000
-Subproject 0b28d205572c80b568a1003db2c8f37ca333e4d
diff --git a/subprojects/libvfio-user.wrap b/subprojects/libvfio-user.wrap
new file mode 100644
index 0000000000..416955ca45
--- /dev/null
+++ b/subprojects/libvfio-user.wrap
@@ -0,0 +1,4 @@
+[wrap-git]
+url = https://gitlab.com/qemu-project/libvfio-user.git
+revision = 0b28d205572c80b568a1003db2c8f37ca333e4d7
+depth = 1