[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] Improve build system for offline environments
Hi, As stated by the documentation: "_Xen Project downloads various dependencies at build time_" This makes Xen a difficult project to work with in an offline environment. Thanks to the IRC channel, I heard of the command `make subtree-force-update-all` (We could document this option in the wiki "Compiling Xen From Source") However, the overall process stays problematic: 1. the target 'subtree-force-update-all' implies that you can run a ./configure, otherwise you will get the following error: make[1]: Entering directory '~/xen/tools/' ~/xen/tools/../tools/Rules.mk:258: *** You have to run ./configure before building or installing the tools. Stop. This is sometimes not possible because you are in a download-oriented and locked environment, and therefore lack the system dependencies required for the configure. Also you don't have the root privileges to install them. 2. the download of external dependencies remains incomplete and the qemu-xen-dir build will fail since the submodules have not been checked out (dtc, capstone, etc...) make: Entering directory '~/xen/tools/qemu-xen-build' GEN config-host.h GIT ui/keycodemapdb dtc Cloning into '~/xen/tools/qemu-xen-dir-remote/dtc'... fatal: Unable to look up git.qemu-project.org (port 9418) (Name or service not known) 3. it becomes impossible to clean the sources in order to rebuild them, since the Makefile will remove the external dependencies via the `make clean` target. So using the `make world` target is excluded. This is why I would like to start a discussion on how to improve the situation for those working in an air-gapped network environment. I would suggest to track the dependencies via submodules, and fully clone the Xen repository will become as simple as `git clone git://xenbits.xen.org/xen.git --recursive` One of the advantages is that you can `clean` the sources without removing the external dependencies, since they are part of the repo now. -> How do you think we can improve the build system to be more "offline environment" friendly ? -> How much of these external files could be installed via the distribution, and linked with Xen instead of downloading a .tar.gz source ? For example I have newlib-dev in my debian repositories. Do I really have to download the one from Xen mirrors ? Thanks Mathieu Tarral Sent with ProtonMail Secure Email. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |